﻿@import url("https://use.typekit.net/itx3ftg.css");
@font-face {
font-family: "utsukushi";
  src: url("./Dup/img/utsukushi.otf") format("otf"),url("./Dup/img/utsukushi.woff") format("woff"),url("./Dup/img/utsukushi.woff2") format("woff2");
}
.font1,.hannari{font-family: "utsukushi","serif";}
.font2{
font-family: p22-allyson-pro,sans-serif;
font-weight: 400;
font-style: normal;
}
/*--------------------------------
疑似要素にオブジェクト
--------------------------------*/
.frame1,.frame2{position: relative;}
/*リピートなし*/
.frame1:before,.frame1:after,
.frame2:before,.frame2:after{
content: "";
display: block;
background-size: cover;
background-repeat: no-repeat;
position: absolute;
}

.frame1:before,.frame1:after,
.frame2:before,.frame2:after{
background-image: url(./Dup/img/frame1.png);
width: 30px;
height: 30px;
}

.frame1:before{
top: 10px;
left: 10px;
}
.frame1:after{
top: 10px;
right: 10px;
transform: scale(-1, 1);
}
.frame2:before{
bottom: 10px;
left: 10px;
transform: scale(1, -1);
}
.frame2:after{
bottom: 10px;
right: 10px;
transform: scale(-1, -1);
}
/*--------------------------------
全体
--------------------------------*/
#fakeloader .fl{
width: 70%!important;
max-width: 300px;
}
#logo{max-width: 350px;}
header.scr_header{backdrop-filter: blur(2px);}
header.scr_header #logo{max-width: 300px;}
#overlay .nav_menu_more a{background-color: white;color:#919ba5;}
#overlay .nav_menu_more a:hover{background-color: #919ba5;color: white;}
#pc_nav li a.txt_white{color: #4b4599;}
#pc_nav li a::after{background: rgba(75,65,170,0.5);}

header.scr_header .button_container span{background: rgba(75,65,170,1);}
header.scr_header .button_container span:nth-of-type(1){color:#4b41aa;}
.button_container.active span:nth-of-type(1){color:#fff!important;}
.button_container span:nth-of-type(1){width: 43px;background-color: transparent!important;}

#main_img:before,#info_contact .con_img:before,#page_title:before{background-color: rgba(180,180,180,0.3);}
#intro_wrap,#contents3 .con_box,.page section .con_box,.cms_2-c .cate_box{border: 1px solid #d2c8b9;}

.back1:before,.back2:before{
background-image: url(./Dup/img/bg.jpg);
opacity: 0.3;
}

footer.bg_color2{background-color: #f5f5ff;}
#copyright{background-color: #a5b4c3;}
/*--------------------------------
TOP
--------------------------------*/
#top_pc_nav li a::after{background: #4C42A8;opacity: 0.7;}

#intro_wrap,#contents3 .con_box{
padding-top: 0;
padding-bottom: 0;
}
#intro .con_box,#contents3 .con_box > div{padding: 7% 10%;}

#contents1 .con_box,#contents2 .con_box{margin-top: 5%;}
.back1:before{z-index: -1;}
/*--------------------------------
下層
--------------------------------*/
#page_title .page_title_box{background-color: rgba(255,255,255,0.9);border: 1px solid #d2c8b9;}
#page_title .page_title_box p.txt_white{
color:#a08c64;
font-size: 30px;
letter-spacing: 1px;
opacity: 1;
line-height: 1.5;
font-family: p22-allyson-pro,sans-serif;
font-weight: 400;
font-style: normal;
}
#page_title .page_title_box h2.txt_white{color:#919ba5;}

#cms_1-e .pager li a:hover i{color: #919ba5;}

/* 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;}

#page8 #contact_tel a{background-color: #6ed7dc;border-color: #6ed7dc;}

/*IEのみ*/
@media all and (-ms-high-contrast: none) {
.contact_tel a{padding-bottom: 24px;}
#tel_txt h3{padding-bottom: 0;}
#tel_txt p{padding-bottom: 15px;}
}

@media  screen and (max-width: 1350px){
footer .con_box{
width: 50%;
box-sizing: border-box;
}
}
@media  screen and (max-width: 1280px){
#footer_con{padding: 5% 5% 0;}
footer h2.font_26{font-size: 24px;}
}

/*タブレット用（768px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 768px){

.width_250-max_tb{max-width: 250px;}
#fakeloader .fl{max-width: 250px;}
#logo,header.scr_header #logo{max-width: 250px;}
footer h2.font_26{font-size: 17px;}

#intro_wrap,#contents3 .con_box{
padding: 0;
}
#intro .con_box,#contents3 .con_box > div{padding: 6% 5%;}

#page_title .page_title_box{width: 50%;}

}

/*スマホ用（667px以下）
--------------------------------------------------------------------------*/
@media  screen and (max-width: 667px){
#logo,header.scr_header #logo{max-width: 180px;}
.button_container span:nth-of-type(1){font-size: 10px;text-align: center;left: 28px;}

#footer_con{padding: 5% 0 0;}
footer .con_box{width: 100%;}
footer .con_box a.font_18{font-size: 24px;letter-spacing: 1px;}
footer h2.font_26{font-size: 20px;}

.frame1:before, .frame1:after, .frame2:before, .frame2:after{
width: 20px;
height: 20px;
}
#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,#contents2 .con_box{margin-top: 0;}
#page_title .page_title_box{width: 72%;}
.page section .con_box{padding-top: 50px;}

#cms_5-c .box_title1::before{top: 11px!important;}

}

/*--------------------------自動リンク--------------------------*/
/* color */
.linkStyle{color: #6fd7dc; text-decoration: underline;}
.txt_color_nomal .linkStyle{color: #6fd7dc;}
.txt_white .linkStyle{color: white;}
.txt_red .linkStyle{color: red;}
.bg_color1 .linkStyle{color: #919ba5;}
.bg_color2 .linkStyle{color: #a7a9f3;}
.bg_color3 .linkStyle{color: #6fd7dc;}
.bg_color4 .linkStyle{color: #919ba5;}

/*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{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: #919ba5;} /* メインカラー */
.txt_color2,.hvr_txt_color2:hover{color: #edebf6;} /* サブカラー */
.txt_color3,.hvr_txt_color3:hover{color: #5fc3c3;} /* アクセントカラー1 */
.txt_color4,.hvr_txt_color4:hover{color: #eeeeee;} /* アクセントカラー2 */
.txt_color5,.hvr_txt_color5:hover{color: #a08c64;}

/* background-color */
.bg_white,.hvr_bg_white:hover{background-color: white;} /* 白背景 */
.bg_black,.hvr_bg_black:hover{background-color: black;} /* 黒背景 */
.bg_white09{background-color: rgba(255,255,255,0.9);}
.bg_white07{background-color: rgba(255,255,255,0.7);}
.bg_color1,.hvr_bg_color1:hover{background-color: #e3eaf0;} /* メインカラー */
.bg_color2,.hvr_bg_color2:hover{background-color: #edebf6;} /* サブカラー */
.bg_color3,.hvr_bg_color3:hover{background-color: #e5f1f0;} /* アクセントカラー1 */
.bg_color4,.hvr_bg_color4:hover{background-color: #eeeeee;} /* アクセントカラー2 */
.bg_color5,.hvr_bg_color5:hover{background-color: #9bd2d2;}/* 青緑 */
.bg_color_clear,.hvr_bg_color_clear:hover{background-color: transparent!important;}


/* border-color ※!important */
.border_black{border-color: black;}
.border_color1,.hvr_border_color1:hover{border-color: #e3eaf0;}
.border_color2,.hvr_border_color2:hover{border-color: #edebf6;}
.border_color3,.hvr_border_color3:hover{border-color: #e5f1f0;}
.border_color4,.hvr_border_color4:hover{border-color: #eeeeee;}
.border_color5,.hvr_border_color5:hover{border-color: #919ba5;}/* 濃い青灰 */


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,.font_30_sp{font-size: 31px;}
.font_28,.font_28_sp{font-size: 29px;}
.font_26,.font_26_sp{font-size: 27px;}
.font_24,.font_24_sp{font-size: 25px;}
.font_22,.font_22_sp{font-size: 23px;}
.font_20,.font_20_sp{font-size: 21px;}
.font_18,.font_18_sp{font-size: 19px;}
.font_16,.font_16_sp{font-size: 17px;}
.font_14,.font_14_sp{font-size: 15px;}
.font_12,.font_12_sp{font-size: 13px;}

.font_10up,.font_10up_sp{
font-size: -webkit-calc(1rem + 11px);
font-size: calc(1rem + 11px);
}
.font_8up,.font_8up_sp{
font-size: -webkit-calc(1rem + 9px);
font-size: calc(1rem + 9px);
}
.font_6up,.font_6up_sp{
font-size: -webkit-calc(1rem + 7px);
font-size: calc(1rem + 7px);
}
.font_4up,.font_4up_sp{
font-size: -webkit-calc(1rem + 5px);
font-size: calc(1rem + 5px);
}
.font_2up,.font_2up_sp{
font-size: -webkit-calc(1rem + 3px);
font-size: calc(1rem + 3px);
}
.font_100per,.font_100per_sp{
font-size: -webkit-calc(1rem + 1px);
font-size: calc(1rem + 1px);
}
.font_2dw,.font_2dw_sp{
font-size: -webkit-calc(1rem - 1px);
font-size: calc(1rem - 1px);
}

}
