﻿@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;300;400;500;700;900&family=Roboto:wght@100;300;400;500;700;900&display=swap');

/* ----------　all　---------- */
.linkStyle{
	color:#bad540;
}
.linkStyle:hover{
	color:#bad540;
	opacity: 0.5;
	transition: all 0.5s;
}

html {
    font-family: 'Roboto','Noto Sans JP', sans-serif;
    font-size: 16px;
}

.font_shippori {
    font-family: 'Noto Sans JP', sans-serif;
}


/* color */
body,.txt_color_nomal{color: #1a1a1a!important;}
.txt_color1{color: #0b186f!important;} /* メインカラー */
.txt_color2{color: #bad540!important;} /* サブカラー */
.txt_color3{color: #3c468c!important;} /* アクセントカラー1 */
.txt_color4{color: #e3eeb3!important;} /* アクセントカラー2 */


/* background-color */
.bg_color1{background-color: #0b186f!important;} /* メインカラー */
.bg_color2{background-color: #bad540!important;} /* サブカラー */
.bg_color3{background-color: #3c468c!important;} /* アクセントカラー1 */
.bg_color4{background-color: #e3eeb3!important;} /* アクセントカラー2 */



/* border-color ※!important */
.border_color1{border-color: #0b186f!important;}
.border_color2{border-color: #bad540!important;}
.border_color3{border-color: #3c468c!important;}
.border_color4{border-color: #e3eeb3!important;}



/* hover ---------------------------------------------------------------------------------------------*/
/* color */
.hvr_txt_color_nomal:hover{color: #1a1a1a!important;}
.hvr_txt_color1:hover{color: #0b186f!important;} /* メインカラー */
.hvr_txt_color2:hover{color: #bad540!important;} /* サブカラー */
.hvr_txt_color3:hover{color: #3c468c!important;} /* アクセントカラー1 */
.hvr_txt_color4:hover{color: #e3eeb3!important;} /* アクセントカラー2 */


/* background-color */
.hvr_bg_color1:hover{background-color: #0b186f!important;} /* メインカラー */
.hvr_bg_color2:hover{background-color: #bad540!important;} /* サブカラー */
.hvr_bg_color3:hover{background-color: #3c468c!important;} /* アクセントカラー1 */
.hvr_bg_color4:hover{background-color: #e3eeb3!important;} /* アクセントカラー2 */



/* border-color ※!important */
.hvr_border_color1:hover{border-color: #0b186f!important;}
.hvr_border_color2:hover{border-color: #bad540!important;}
.hvr_border_color3:hover{border-color: #3c468c!important;}
.hvr_border_color4:hover{border-color: #e3eeb3!important;}



.more_bt {
    font-weight: 700;
}


.nowrap {
    display: inline-block;
}


/* nav */

#pc_nav {
    z-index: 3;
    font-weight: 700;
}

.button_container span {
    background: #ffffff!important;
    opacity: 1!important;
}

.button_container.active .middle {
    opacity: 0!important;
}

.overlay.open .menu_bg_box {
    width: 40vw;
    background-position: 20%!important;
}



/* footer */

#footer {
    background-color: #ffffff!important;
}

#page-top a {
    color: #bad540!important;
}

footer .f_btn_box p a, #contents_wrap .contact_bt a {
    padding: 15px!important;
}


/* ----------　TOP　---------- */

/* main-img */

#main_img{
    max-width: 1920px;
        position: relative;
}

#main_img::before {
    content: "";
    max-width: 920px;
    width: 40%;
    height: 100%;
    background-image: url(/Dup/img/copy.png);
    background-position: center;
    background-size: 100%;
    background-repeat: no-repeat;
    position: absolute;
    left: 0;
    right: 0;
    margin: auto;
    top: 0;
    z-index: 3;
}

.waku1{
    width: 100%;
    position: absolute;
    bottom: -1px;
    z-index: 1;
}

.waku4{
    width: 100%;
    position: absolute;
    top: -1px;
    z-index: 1;
}

.waku2 {
    height: 100%;
    position: absolute;
    right: -1px;
}

.waku3 {
    height: 100%;
    position: absolute;
    left: -1px;
}

.waku2 img, .waku3 img {
    height: 100%!important;
    width: auto;

}


/* top */

.intro_title {
    font-size: 25px;
    font-weight: 700;
    padding: 20px;
    position: relative;
}

#intro span.bg_box {
    background-color: #e3eeb3!important;
}

.intro_img img {
        width: 100%!important;
    height: auto!important;
}

.intro_title:before, .intro_title:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
.intro_title:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
.intro_title:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}





#contents_links .box_wrap h3 {
    font-size: 80px;
    font-weight: 900;
}


#contents_links .box_wrap .box a::after {
    z-index: 0;
}

#contents_links .box_wrap .box a::before {
    content: "";
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #e6e6e6;
    z-index: 1;
    opacity: 0.35;
}

#contents_links .box_wrap .box a h4 {
    background-color: rgba(255,255,255,0.8);
}

#contents_links span.bg_box {
    background-color: #3c468c!important;
}


#contents_wrap .title_wrap h3 {
    font-weight: 700;
    text-align: left;
    padding: 20px;
    position: relative;
}




#contents_wrap .title_wrap h3:before, #contents_wrap .title_wrap h3:after { 
  position: absolute;
  top: 0;
  content:'';
  width: 8px;
  height: 100%;
  display: inline-block;
}
#contents_wrap .title_wrap h3:before {
  border-left: solid 1px black;
  border-top: solid 1px black;
  border-bottom: solid 1px black;
  left: 0;
}
#contents_wrap .title_wrap h3:after {
  content: '';
  border-top: solid 1px black;
  border-right: solid 1px black;
  border-bottom: solid 1px black;
  right: 0;
}


.con2-ul {
    opacity: 0;
    transition: all 0.5s .15s;
    transform: translateY(30px);
    transition-timing-function: cubic-bezier(0,0,0,1);
    background-color: #ffffff;
    padding: 15px;
    margin: 25px auto;
    border-radius: 20px;
}

.con2-li {
    padding: 10px 0 10px 20px;
    background-image: url(Dup/img/check.png);
    background-repeat: no-repeat;
    background-size: 15px;
    background-position: left top 16px;
    line-height: 1.5em;
}

#contents_wrap .tab_content .box.active .con2-ul {
    opacity: 1!important;
    transform: translateY(0);
    transition-duration: 1s;
    transition-delay: .65s;
}
 
 
#contents_wrap .bg_container {
    background-color:#e6e6e6!important;
}

#contents_wrap .tab_content .box.active #content1 {
    margin-top: 3%;
}

#contents_wrap .contact_bt {
    position: absolute;
    bottom: 15%;
    left: 0;
    right: 0;
    margin: auto;
    width: 50%;
}
 
/* top-cms */

#top_cms1 .top_cms_title p, #top_cms2 .top_cms_title p {
        font-weight: 700;
        font-size: 100px;
}

#top_cms1 .top_cms_title h3, #top_cms2 .top_cms_title h3 {
        font-weight: 900;
        color: #1a1a1a!important;
}


/* ----------　下層ページ　---------- */
.anchor {
    content: "";
    display: block;
    padding-top: 70px;
    margin-top: -70px;
}

#page_title h2 span {
    font-weight: 900;
}

.pager li a:hover {
    color: #ffffff!important;
}

/* 会社情報 */
/* お問い合わせ */

#contact_tel_wrap .tel_txt {
        background-color: #e6e6e6!important;
}

/* プライバシーポリシー */
/* サイトマップ */


/*-------------------------------------------------------
			          タブレット
-------------------------------------------------------*/
@media screen and (max-width: 768px){
    
    .overlay.open .menu_box {
            padding: 0 0 0 20px;
    }
    
    .overlay.open .menu_bg_box {
        width: 35vw;
    }
    
#contents_links .box_wrap h3 {
    text-shadow: 0 0 3px rgb(255 255 255 / 15%);
}
    
.con2-ul {
    opacity: 1!important;
}

#contents_wrap .contact_bt {
    bottom: 1%;

}
    
}

/*-------------------------------------------------------
		            	スマホ
-------------------------------------------------------*/
@media screen and (max-width: 667px){
    
.overlay.open .menu_box {
    padding: 5%;
}
    
.overlay.open .menu_bg_box {
        width: 52vw;
}
    
.waku3 {
    height: 100%;
    position: absolute;
    left: -10px;
}
    
.waku4 {
    top: -10px;
}
    
#contents_wrap .contents_inner {
    padding: 0 5% 100px;
}
    
#contents_wrap .contact_bt {
        width: 70%;
        padding: 15px;
}
    
#contents_links .box_wrap h3 {
    font-size: 45px;
    opacity: 1;
}
    
#top_cms1 .top_cms_title p, #top_cms2 .top_cms_title p {
        font-size: 60px;
        bottom: 5px;
}
    
    .prev a span {
        width: 100%;
        text-align: center;
    }
    
}





/* ギャラリーページ */

.BA_type2 .cate {
    width: 100%;
}

.BA_type2 .box_wrap {
        justify-content: flex-start;
}

.BA_type2 .cate_txt1 {
    padding-bottom: 0;
} 

.BA_type2 .box_img1, .BA_type2 .box_img2 {
        background-color: rgb(230, 230, 230)!important;
}

.BA_type2 .box_img1_wrap, .BA_type2 .box_img2_wrap {
	width: 48%!important;
	margin: 0 1%;
}
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before {
	position: absolute;
	content: "Before";
	width: 121px;
	background-color: #4d4d4d;
	color: #fff;
	text-align: center;
	display: block;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: 1;
	font-size: 14px;
	letter-spacing: 1px;
	padding: 4px 0px;
	box-sizing: border-box;
}
.BA_type2 .box_img2_wrap::before {
	content: "After";
	background-color: #bad540;
}

/* ---------- スマホ ---------- */
@media screen and (max-width: 667px){
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before{
	width: 76px;
	font-size: 13px;
}
.BA_type2 .box_img1_wrap::before, .BA_type2 .box_img2_wrap::before{padding: 1px 0px;}
}

