﻿/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
#intro h3,#contents1 .con_box,#contents1 .con_box h3,#contents2 .con_box,#contents2 .con_box h3,#contents3 .con_box h3,
#cms_5-c .title_wrap,#cms_5-c .txt_wrap,.cms_5-c .title_wrap,.cms_5-c .txt_wrap{position: relative;}
/*リピートなし*/
#intro h3:after,#contents1 .con_box:before,#contents1 .con_box:after,#contents1 .con_box h3:after,
#contents2 .con_box:before,#contents2 .con_box:after,#contents2 .con_box h3:after,
#contents3 .con_box h3:after,
#cms_5-c .title_wrap:before,#cms_5-c .title_wrap:after,#cms_5-c .txt_wrap:before,#cms_5-c .txt_wrap:after,
.cms_5-c .title_wrap:before,.cms_5-c .title_wrap:after,.cms_5-c .txt_wrap:before,.cms_5-c .txt_wrap:after{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}



#intro h3:after{
background-image: url(./Dup/img/txt1.png);
width: 100px;
height: 20px;
top: -20px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
#contents1 .con_box:before{
background-image: url(./Dup/img/bg.jpg);
width: 100%;
height: 100%;
top: 0;
left: 0;
z-index: -1;
opacity: 0.2;
}
#contents1 .con_box:after{
background-image: url(./Dup/img/obj1.png);
width: 180px;
height: 180px;
bottom: -50px;
right: -85px;
}
#contents1 .con_box h3:after{
background-image: url(./Dup/img/txt2.png);
width: 81px;
height: 54px;
top: -55px;
left: -60px;
}


#contents2 .con_box:after{
background-image: url(./Dup/img/obj2.png);
width: 150px;
height: 150px;
bottom: -55px;
left: -60px;
}
#contents2 .con_box h3:after{
background-image: url(./Dup/img/txt3.png);
width: 81px;
height: 54px;
top: -55px;
left: -60px;
}

#contents3 .con_box h3:after{
background-image: url(./Dup/img/txt4.png);
width: 81px;
height: 54px;
top: -60px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}

#cms_5-c .title_wrap:before,.cms_5-c .title_wrap:before{
content: "Q";
top:50%;
right: -55px;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
color: white;
font-size: 20px;
z-index: 1;
}
#cms_5-c .title_wrap:after,.cms_5-c .title_wrap:after{
content: "";
width: 50px;
height: 50px;
background-color: #78b978;
border-radius: 50%;
top:50%;
right: -70px;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
}

#cms_5-c .txt_wrap:before,.cms_5-c .txt_wrap:before{
content: "A";
top:50%;
left: -52px;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
color: white;
font-size: 20px;
z-index: 1;
}
#cms_5-c .txt_wrap:after,.cms_5-c .txt_wrap:after{
content: "";
width: 50px;
height: 50px;
background-color: #001e41;
border-radius: 50%;
top:50%;
left: -70px;
-ms-transform: translate(0,-50%);
-webkit-transform: translate(0,-50%);
transform: translate(0,-50%);
}
/*--------------------------------
全体
--------------------------------*/
.button_container span:nth-of-type(1){width: 43px;}

footer.bg_color2{background-color: #e8e8e8;}

/*--------------------------------
TOP
--------------------------------*/
.num{display: none;}

#intro_wrap,#contents2 .con_box,#contents3 .con_box{border: 1px solid #b9aa8c;}

#intro_wrap,#contents3 .con_box{padding: 70px;}

#contents1 .con_box{
background-color: rgba(15,15,35,0.9);
color: #fff;
border: 1px solid #a5864f;
padding: 70px;
margin-top: 15%;
margin-left: -50px;
z-index: 1;
}
#contents1 .line:before{background-color: #cdaa82!important;}

#contents2 .con_box{
background-color: rgba(255,255,255,0.9);
padding: 70px;
margin-top: 8%;
margin-right: -50px;
z-index: 1;
}
#contents2 .line:before{background-color: #73a06e!important;}
/*--------------------------------
下層
--------------------------------*/
/* 5-b Q削除 */
#cms_5-b .cate_box .open_bt .box_title1::before, .cms_5-b .cate_box .open_bt .box_title1::before{display: none;}
#cms_5-b .cate_box .open_bt .box_title1, .cms_5-b .cate_box .open_bt .box_title1{margin-left: 70px;}

#cms_5-c .box_title1,.cms_5-c .box_title1{
position: relative;
background-color: #fff;
width: 80%;
box-sizing: border-box;
margin-left: auto;
border: 1px solid #78b978;
}
#cms_5-c .box_title1:before,.cms_5-c .box_title1:before{
content: "";
position: absolute;
top: 50%;
left: 100%;
margin-top: -15px;
border: 15px solid transparent;
border-left: 15px solid #fff;
z-index: 1;
}
#cms_5-c .box_title1:after,.cms_5-c .box_title1:after{
content: "";
position: absolute;
top: 50%;
left: 100%;
margin-top: -16px;
border: 16px solid transparent;
border-left: 16px solid #78b978;
}

#cms_5-c .box_txt1,.cms_5-c .box_txt1{
position: relative;
background-color: #001e41;
width: 80%;
box-sizing: border-box;
}
#cms_5-c .box_txt1:before,.cms_5-c .box_txt1:before{
content: "";
position: absolute;
top: 50%;
left: -30px;
margin-top: -15px;
border: 15px solid transparent;
border-right: 15px solid #001e41;
}



/*タブレット用（768px以下）*/
@media  screen and (max-width: 768px){

#contents1 .con_box:after{
width: 150px;
height: 150px;
}
#contents2 .con_box:after{
width: 120px;
height: 120px;
}

}

/*スマホ用（667px以下）*/
@media  screen and (max-width: 667px){
.button_container span:nth-of-type(1){font-size: 10px;text-align: center;left: 28px;}

#intro_wrap,#contents1 .con_box,#contents2 .con_box,#contents3 .con_box{padding: 50px 20px;}
#contents1 .con_box,#contents2 .con_box{
width: 95%!important;
margin: 0 auto;
margin-top: -10%;
}
#contents2 .con_box:after{
width: 100px;
height: 100px;
bottom: -40px;
left: -40px;
}
#contents1 .con_box:after{
width: 120px;
height: 120px;
bottom: -40px;
right: -45px;
}
#contents1 .line:before, #contents2 .line:before{
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}
#contents1 .con_box h3:after,#contents2 .con_box h3:after,#contents3 .con_box h3:after{
width: 51px;
height: 34px;
top: -40px;
left: 50%;
-ms-transform: translate(-50%,0);
-webkit-transform: translate(-50%,0);
transform: translate(-50%,0);
}


#cms_5-c .title_wrap,.cms_5-c .title_wrap{padding-right: 50px;}
#cms_5-c .title_wrap:before,.cms_5-c .title_wrap:before{right: -2px;}
#cms_5-c .title_wrap:after,.cms_5-c .title_wrap:after{
width: 35px;
height: 35px;
right: -10px;
}
#cms_5-c .txt_wrap,.cms_5-c .txt_wrap{padding-left: 50px;}
#cms_5-c .txt_wrap:before,.cms_5-c .txt_wrap:before{left: 1px;}
#cms_5-c .txt_wrap:after,.cms_5-c .txt_wrap:after{
width: 35px;
height: 35px;
left: -10px;
}
#cms_5-c .box_title1,#cms_5-c .box_txt1,.cms_5-c .box_title1,.cms_5-c .box_txt1{width: 100%;}


}

/*IE*/
@media all and (-ms-high-contrast: none) {

#cms_5-c .box_title1,#cms_5-c .box_txt1,.cms_5-c .box_title1,.cms_5-c .box_txt1{padding-bottom: 15px;}
#cms_5-c .title_wrap:before,.cms_5-c .title_wrap:before,
#cms_5-c .txt_wrap:before,.cms_5-c .txt_wrap:before{top: 52%;}

.contact_tel a{padding-bottom: 24px;}
#tel_txt h3{padding-bottom: 0;}
#tel_txt p{padding-bottom: 15px;}

}

@media all and (max-width: 667px) and (-ms-high-contrast: none){
#cms_5-c .box_title1,#cms_5-c .box_txt1,.cms_5-c .box_title1,.cms_5-c .box_txt1{padding-bottom: 5px;}
}


/*--------------------------------
自動リンク
--------------------------------*/
/* color */
.linkStyle{color: #cdaa82; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #cdaa82;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #fff;}
.bg_color2 .linkStyle{color: #fff;}
.bg_color3 .linkStyle{color: #fff;}
.bg_color4 .linkStyle{color: #78b978;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.linkStyle{display: inline-block;}
}

/*--------------------------------
カラー
--------------------------------*/
body,.txt_color_nomal,.hvr_txt_color_nomal:hover{color: #333333;}
.txt_black,.hvr_txt_black:hover{color: black;}
.txt_white,.hvr_txt_white:hover{color: white;}
.txt_red,.hvr_txt_red:hover{color: red;}
.txt_color1,.hvr_txt_color1:hover{color: #001E41;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #CDAA82;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #78b978;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #e1efe1;} /* アクセントカラー2 */

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_color1,.hvr_bg_color1:hover{background-color: #001E41;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #CDAA82;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #78b978;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #e1efe1;} /* アクセントカラー2 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}

/* border-color */
.border_white,.hvr_border_white:hover{border-color: white;}
.border_black,.hvr_border_black:hover{border-color: black;}
.border_color1,.hvr_border_color1:hover{border-color: #001E41;}
.border_color2,.hvr_border_color2:hover{border-color: #CDAA82;}
.border_color3,.hvr_border_color3:hover{border-color: #78b978;}
.border_color4,.hvr_border_color4:hover{border-color: #e1efe1;}




html{font-size: 16px;}
body{-webkit-text-size-adjust: 120%;font-size: 16px;}

.font_12{font-size: 14px;}
.font_14{font-size: 16px;}
.font_16{font-size: 18px;}
.font_18{font-size: 20px;}
.font_20{font-size: 22px;}
.font_22{font-size: 24px;}
.font_24{font-size: 26px;}
.font_26{font-size: 28px;}
.font_28{font-size: 30px;}
.font_30{font-size: 32px;}
.font_100per{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}

@media  screen and (max-width: 768px){
.font_12_tb{font-size: 14px;}
.font_14_tb{font-size: 16px;}
.font_16_tb{font-size: 18px;}
.font_18_tb{font-size: 20px;}
.font_20_tb{font-size: 22px;}
.font_22_tb{font-size: 24px;}
.font_24_tb{font-size: 26px;}
.font_26_tb{font-size: 28px;}
.font_28_tb{font-size: 30px;}
.font_30_tb{font-size: 32px;}
.font_100per_tb{
font-size: -webkit-calc(1rem + 2px);
font-size: calc(1rem + 2px);
}
.font_2up_tb{
font-size: -webkit-calc(1rem + 4px);
font-size: calc(1rem + 4px);
}
.font_4up_tb{
font-size: -webkit-calc(1rem + 6px);
font-size: calc(1rem + 6px);
}
.font_6up_tb{
font-size: -webkit-calc(1rem + 8px);
font-size: calc(1rem + 8px);
}
.font_8up_tb{
font-size: -webkit-calc(1rem + 10px);
font-size: calc(1rem + 10px);
}
.font_10up_tb{
font-size: -webkit-calc(1rem + 12px);
font-size: calc(1rem + 12px);
}
.font_2dw_tb{
font-size: -webkit-calc(1rem);
font-size: calc(1rem);
}
}

@media  screen and (max-width: 667px){
html{font-size: 15px;}
body{-webkit-text-size-adjust: 110%;font-size: 15px;}
.font_30_sp{font-size: 31px;}
.font_28_sp{font-size: 29px;}
.font_26_sp{font-size: 27px;}
.font_24_sp{font-size: 25px;}
.font_22_sp{font-size: 23px;}
.font_20_sp{font-size: 21px;}
.font_18_sp{font-size: 19px;}
.font_16_sp{font-size: 17px;}
.font_14_sp{font-size: 15px;}
.font_12_sp{font-size: 13px;}

.font_10up_sp{
font-size: -webkit-calc(1rem + 11px);
font-size: calc(1rem + 11px);
}
.font_8up_sp{
font-size: -webkit-calc(1rem + 9px);
font-size: calc(1rem + 9px);
}
.font_6up_sp{
font-size: -webkit-calc(1rem + 7px);
font-size: calc(1rem + 7px);
}
.font_4up_sp{
font-size: -webkit-calc(1rem + 5px);
font-size: calc(1rem + 5px);
}
.font_2up_sp{
font-size: -webkit-calc(1rem + 3px);
font-size: calc(1rem + 3px);
}
.font_100per_sp{
font-size: -webkit-calc(1rem + 1px);
font-size: calc(1rem + 1px);
}
.font_2dw_sp{
font-size: -webkit-calc(1rem - 1px);
font-size: calc(1rem - 1px);
}
}