@charset "utf-8";
/*
Theme Name: res
Version: 1.3.5
Author: T8,Inc.
*/
@import url('https://fonts.googleapis.com/css?family=Noto+Sans+JP:300,400,700&display=swap');
:root {
	--break: 1920;
	--guideline-color: #be8533;
	font-size: calc(16 / var(--break) * 100vw);
	--color01: #C7C7C7;
	--color02: #231815;
	--color03: #9D9D9D;
	--color04: #F3E5CC;
	--color05: #F7F8F9;
	--color06: #E1BE7F;
	--color07: #CC9840;
	--color08: #E6E8EC;
	--color09: #000000;
	--color10: #5F6168;
	--color11: #CA101A;
	--color12: #BE8533;
	--color13: #32b0c3;
	--color14: #;
	--color15: #;
	--color16: #;
	--color17: #;
	--color18: #;
	--color19: #;

    --size5px:  calc(5 / var(--break) * 100vw);
    --size10px:  calc(10 / var(--break) * 100vw);
    --size15px:  calc(15 / var(--break) * 100vw);
    --size20px:  calc(20 / var(--break) * 100vw); 
    --size25px:  calc(25 / var(--break) * 100vw);
    --size30px:  calc(30 / var(--break) * 100vw);
    --size35px:  calc(35 / var(--break) * 100vw);
    --size40px:  calc(40 / var(--break) * 100vw);
    --size45px:  calc(45 / var(--break) * 100vw);
    --size50px:  calc(50 / var(--break) * 100vw);
    --size55px:  calc(55 / var(--break) * 100vw);
    --size60px:  calc(60/ var(--break) * 100vw);
    --size65px:  calc(65 / var(--break) * 100vw);
    --size70px:  calc(70 / var(--break) * 100vw);
    --size75px:  calc(75 / var(--break) * 100vw);
    --size80px:  calc(80 / var(--break) * 100vw);
    --size85px:  calc(85 / var(--break) * 100vw);
    --size90px:  calc(90 / var(--break) * 100vw);
    --size95px:  calc(95 / var(--break) * 100vw);
    --size100px:  calc(100 / var(--break) * 100vw);
    --size105px:  calc(105 / var(--break) * 100vw);
    --size110px:  calc(110 / var(--break) * 100vw);
    --size115px:  calc(115 / var(--break) * 100vw);
    --size120px:  calc(120 / var(--break) * 100vw);
    --size125px:  calc(125 / var(--break) * 100vw);
    --size130px:  calc(130 / var(--break) * 100vw);
    --size135px:  calc(135 / var(--break) * 100vw);
    --size140px:  calc(140 / var(--break) * 100vw);
    --size145px:  calc(145 / var(--break) * 100vw);
    --size150px:  calc(150 / var(--break) * 100vw);
    --size160px:  calc(160 / var(--break) * 100vw);
    --size170px:  calc(170 / var(--break) * 100vw);
    --size180px:  calc(180 / var(--break) * 100vw);
    --size190px:  calc(190 / var(--break) * 100vw);
    --size200px:  calc(200 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width: 1599px) {
    :root {
		--break: 1599;
    }
}
@media(min-width: 768px) and (max-width: 1299px) {
    :root {
		--break: 1299;
    }
}
@media(max-width:767px) {
        :root {
		--break: 750;
    }
}

/*サイト別フォント・カラー設定*/
.txt_link {
	color: #be8533;
	text-decoration: underline;
}

/*ここまで*/
html, body {
	font-size: 1.125rem;
	font-weight: 300;
	line-height: 2;
	color: #000000;
	letter-spacing: .1em;
	font-family: "Noto Sans JP", "游ゴシック Medium", "游ゴシック体", "Yu Gothic Medium", YuGothic, "ヒラギノ角ゴ ProN", "Hiragino Kaku Gothic ProN", "メイリオ", Meiryo, "ＭＳ Ｐゴシック", "MS PGothic", sans-serif;
}
.min {
	font-family: "yu-mincho-pr6n", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.gar {
	font-family: "garamond-premier-pro-display", serif;
	font-weight: 300;
	font-style: normal;
}
.zan {
	font-family: "p22-zaner-pro-two", sans-serif;
	font-weight: 600;
	font-style: normal;
}
.fwn {
	font-weight: normal;
}
.fwb {
	font-weight: bold;
}
img {
	max-width: 100%;
	height: auto;
}
iframe {
	max-width: 100%;
}
video {
	max-width: 100%;
}
* {
	margin: 0;
	padding: 0;
}
li {
	list-style: none;
}
a {
	color: inherit;
	text-decoration: none;
}
#wrap {
	overflow-x: hidden;
}
.oh {
	overflow: hidden;
}
a:hover {
	opacity: .85;
	transition: .3s;
}
a.zoom{
	pointer-events: none;
}
.inner,.inner1000,.inner1140,.inner1200,.inner1340,.inner1500
{
	max-width: 1240px;
	width: 90%;
	margin: 0 auto;
}
.inner1000 {
	max-width: 1000px;
}
.inner1140 {
	max-width: 1140px;
}
.inner1200 {
	max-width: 1200px;
}
.inner1340 {
	max-width: 1340px;
}
.inner1500 {
	max-width: 1500px;
}
.w100 {
	width: 100%!important;
}
table{
	table-layout: fixed;
}
td input{
	max-width: 100%;
}
a[href^="tel:"] {
	cursor: default;
}
a[href^="tel:"]:hover {
	opacity: 1;
}
.slick-slide {
	outline: none;
}
.adjust {
	display: none;
}
.tb_only {
	display: none;
}
.sp_only {
	display: none;
}
.tb_pc {
	display: inherit;
}
.sp_tb {
	display: none;
}
.flex {
	display:-webkit-box;
	display:-ms-flexbox;
	display: -webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	-webkit-justify-content:space-between;
	justify-content:space-between;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-webkit-align-items: flex-start;
	align-items: flex-start;
}
.flex.start     { -webkit-justify-content: flex-start; justify-content: flex-start; }
.flex.end       { -webkit-justify-content: flex-end; justify-content: flex-end; }
.flex.center    { -webkit-justify-content: center; justify-content: center; }
.flex.around    { -webkit-justify-content: space-around; justify-content: space-around; }
.flex.between   { -webkit-justify-content: space-between; justify-content: space-between; }
.flex.stretch   { -webkit-align-items: stretch; align-items: stretch; }
.flex.ai_center { -webkit-align-items: center; align-items: center; }
.flex.ai_start  { -webkit-align-items: flex-start; align-items: flex-start; }
.flex.ai_end    { -webkit-align-items: flex-end; align-items: flex-end; }
.flex.nowrap    { -webkit-flex-wrap: nowrap; flex-wrap: nowrap; }
.flex.column    { -ms-flex-direction:column; -webkit-flex-direction:column; flex-direction:column; }
.flex.row       { -ms-flex-direction:row; -webkit-flex-direction:row; flex-direction:row; }
.flex.c_reverse { -ms-flex-direction:column-reverse; -webkit-flex-direction:column-reverse; flex-direction:column-reverse; }
.flex.r_reverse { -ms-flex-direction:row-reverse; -webkit-flex-direction:row-reverse; flex-direction:row-reverse; }
.flex.cc { -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; }
.flex.ccc { -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; text-align: center;}
.flex.cccc { -webkit-align-items: center; align-items: center; -webkit-justify-content: center; justify-content: center; text-align: center; -webkit-flex-direction:column; flex-direction:column;}
.noshrink       { flex: 0 0 auto; }
.grow           { flex: 1 1 auto; }

.ccl { border-radius: 100%; }
.bdrd5 {border-radius: var(--size5px);}
.bdrd10 {border-radius: var(--size10px);}
.bdrd15 {border-radius: var(--size15px);}
.bdrd20 {border-radius: var(--size20px);}
.bdrd25 {border-radius: var(--size25px);}
.bdrd30 {border-radius: var(--size30px);}
.bdrd35 {border-radius: var(--size35px);}
.bdrd40 {border-radius: var(--size40px);}
.bdrd45 {border-radius: var(--size45px);}
.bdrd50 {border-radius: var(--size50px);}

.txt_center { text-align: center; }
.txt_right { text-align: right; }
.txt_rl {
	-webkit-writing-mode: vertical-rl;
	-ms-writing-mode: tb-rl;
	writing-mode: vertical-rl;
	text-orientation: upright;
}

.mgn_a {
	margin-left: auto;
	margin-right: auto;
}
.mgn_l { margin-left: auto; }
.mgn_r { margin-right: auto; }
.no_mgn { margin-bottom: 0!important;}
.mb5    { margin-bottom: var(--size5px); }
.mb10   { margin-bottom: var(--size10px); }
.mb15   { margin-bottom: var(--size15px); }
.mb20   { margin-bottom: var(--size20px); }
.mb25   { margin-bottom: var(--size25px); }
.mb30   { margin-bottom: var(--size30px); }
.mb35   { margin-bottom: var(--size35px); }
.mb40   { margin-bottom: var(--size40px); }
.mb45   { margin-bottom: var(--size45px); }
.mb50   { margin-bottom: var(--size50px); }
.mb55   { margin-bottom: var(--size55px); }
.mb60   { margin-bottom: var(--size60px); }
.mb65   { margin-bottom: var(--size65px); }
.mb70   { margin-bottom: var(--size70px); }
.mb75   { margin-bottom: var(--size75px); }
.mb80   { margin-bottom: var(--size80px); }
.mb85   { margin-bottom: var(--size85px); }
.mb90   { margin-bottom: var(--size90px); }
.mb95   { margin-bottom: var(--size95px); }
.mb100  { margin-bottom: var(--size100px); }
.mb105  { margin-bottom: var(--size105px); }
.mb110  { margin-bottom: var(--size110px); }
.mb115  { margin-bottom: var(--size115px); }
.mb120  { margin-bottom: var(--size120px); }
.mb125  { margin-bottom: var(--size125px); }
.mb130  { margin-bottom: var(--size130px); }
.mb135  { margin-bottom: var(--size135px); }
.mb140  { margin-bottom: var(--size140px); }
.mb145  { margin-bottom: var(--size145px); }
.mb150  { margin-bottom: var(--size150px); }
.mb05em { margin-bottom:0.5em; }
.mb10em { margin-bottom:1.0em; }
.mb15em { margin-bottom:1.5em; }
.mb20em { margin-bottom:2.0em; }
.mb25em { margin-bottom:2.5em; }
.mb30em { margin-bottom:3.0em; }

.mt5    { margin-top: var(--size5px); }
.mt10   { margin-top: var(--size10px); }
.mt15   { margin-top: var(--size15px); }
.mt20   { margin-top: var(--size20px); }
.mt25   { margin-top: var(--size25px); }
.mt30   { margin-top: var(--size30px); }
.mt35   { margin-top: var(--size35px); }
.mt40   { margin-top: var(--size40px); }
.mt45   { margin-top: var(--size45px); }
.mt50   { margin-top: var(--size50px); }
.mt55   { margin-top: var(--size55px); }
.mt60   { margin-top: var(--size60px); }
.mt65   { margin-top: var(--size65px); }
.mt70   { margin-top: var(--size70px); }
.mt75   { margin-top: var(--size75px); }
.mt80   { margin-top: var(--size80px); }
.mt85   { margin-top: var(--size85px); }
.mt90   { margin-top: var(--size90px); }
.mt95   { margin-top: var(--size95px); }
.mt100  { margin-top: var(--size100px); }
.mt105  { margin-top: var(--size105px); }
.mt110  { margin-top: var(--size110px); }
.mt115  { margin-top: var(--size115px); }
.mt120  { margin-top: var(--size120px); }
.mt125  { margin-top: var(--size125px); }
.mt130  { margin-top: var(--size130px); }
.mt135  { margin-top: var(--size135px); }
.mt140  { margin-top: var(--size140px); }
.mt145  { margin-top: var(--size145px); }
.mt150  { margin-top: var(--size150px); }
.mt05em { margin-top:0.5em; }
.mt10em { margin-top:1.0em; }
.mt15em { margin-top:1.5em; }
.mt20em { margin-top:2.0em; }
.mt25em { margin-top:2.5em; }
.mt30em { margin-top:3.0em; }

.mr5 {margin-right: var(--size5px); }
.mr10 {margin-right: var(--size10px); }
.mr15 {margin-right: var(--size15px); }
.mr20 {margin-right: var(--size20px); }
.mr25 {margin-right: var(--size25px); }
.mr30 {margin-right: var(--size30px); }
.mr35 {margin-right: var(--size35px); }
.mr40 {margin-right: var(--size40px); }
.mr45 {margin-right: var(--size45px); }
.mr50 {margin-right: var(--size50px); }

.ml5 {margin-left: var(--size5px); }
.ml10 {margin-left: var(--size10px); }
.ml15 {margin-left: var(--size15px); }
.ml20 {margin-left: var(--size20px); }
.ml25 {margin-left: var(--size25px); }
.ml30 {margin-left: var(--size30px); }
.ml35 {margin-left: var(--size35px); }
.ml40 {margin-left: var(--size40px); }
.ml45 {margin-left: var(--size45px); }
.ml50 {margin-left: var(--size50px); }

.db { display: block; }
.dib { display: inline-block; }
.por { position: relative; z-index: 1; }
.poa { position: absolute; }
.zi0 { z-index: 0; }
.zi1 { z-index: 1; }
.zi2 { z-index: 2; }

.turn_up {
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	transform: translateY(-50%);
	-webkit-transform: translateY(-50%);
}

.lh1 { line-height: 1; }
.lh11 { line-height: 1.1; }
.lh12 { line-height: 1.2; }
.lh13 { line-height: 1.3; }
.lh14 { line-height: 1.4; }
.lh15 { line-height: 1.5; }
.lh16 { line-height: 1.6; }
.lh17 { line-height: 1.7; }
.lh18 { line-height: 1.8; }
.lh19 { line-height: 1.9; }
.lh2 { line-height: 2; }
.lh22 { line-height: 2.2; }
.lh25 { line-height: 2.5; }

.pt0 { padding-top: 0; }
.pt5 { padding-top: var(--size5px); }
.pt10 { padding-top: var(--size10px); }
.pt15 { padding-top: var(--size15px); }
.pt20 { padding-top: var(--size20px); }
.pt25 { padding-top: var(--size25px); }
.pt30 { padding-top: var(--size30px); }
.pt35 { padding-top: var(--size35px); }
.pt40 { padding-top: var(--size40px); }
.pt45 { padding-top: var(--size45px); }
.pt50 { padding-top: var(--size50px); }
.pt55 { padding-top: var(--size55px); }
.pt60 { padding-top: var(--size60px); }
.pt65 { padding-top: var(--size65px); }
.pt70 { padding-top: var(--size70px); }
.pt75 { padding-top: var(--size75px); }
.pt80 { padding-top: var(--size80px); }
.pt85 { padding-top: var(--size85px); }
.pt90 { padding-top: var(--size90px); }
.pt95 { padding-top: var(--size95px); }
.pt100 { padding-top: var(--size100px); }
.pt105 { padding-top: var(--size105px); }
.pt110 { padding-top: var(--size110px); }
.pt115 { padding-top: var(--size115px); }
.pt120 { padding-top: var(--size120px); }
.pt125 { padding-top: var(--size125px); }
.pt130 { padding-top: var(--size130px); }
.pt135 { padding-top: var(--size135px); }
.pt140 { padding-top: var(--size140px); }
.pt145 { padding-top: var(--size145px); }
.pt150 { padding-top: var(--size150px); }
.pt160 { padding-top: var(--size160px); }
.pt170 { padding-top: var(--size170px); }
.pt180 { padding-top: var(--size180px); }
.pt190 { padding-top: var(--size190px); }
.pt200 { padding-top: var(--size200px); }

.pb0 { padding-bottom: 0; }
.pb5 { padding-bottom: var(--size5px); }
.pb10 { padding-bottom: var(--size10px); }
.pb15 { padding-bottom: var(--size15px); }
.pb20 { padding-bottom: var(--size20px); }
.pb25 { padding-bottom: var(--size25px); }
.pb30 { padding-bottom: var(--size30px); }
.pb35 { padding-bottom: var(--size35px); }
.pb40 { padding-bottom: var(--size40px); }
.pb45 { padding-bottom: var(--size45px); }
.pb50 { padding-bottom: var(--size50px); }
.pb55 { padding-bottom: var(--size55px); }
.pb60 { padding-bottom: var(--size60px); }
.pb65 { padding-bottom: var(--size65px); }
.pb70 { padding-bottom: var(--size70px); }
.pb75 { padding-bottom: var(--size75px); }
.pb80 { padding-bottom: var(--size80px); }
.pb85 { padding-bottom: var(--size85px); }
.pb90 { padding-bottom: var(--size90px); }
.pb95 { padding-bottom: var(--size95px); }
.pb100 { padding-bottom: var(--size100px); }
.pb105 { padding-bottom: var(--size105px); }
.pb110 { padding-bottom: var(--size110px); }
.pb115 { padding-bottom: var(--size115px); }
.pb120 { padding-bottom: var(--size120px); }
.pb125 { padding-bottom: var(--size125px); }
.pb130 { padding-bottom: var(--size130px); }
.pb135 { padding-bottom: var(--size135px); }
.pb140 { padding-bottom: var(--size140px); }
.pb145 { padding-bottom: var(--size145px); }
.pb150 { padding-bottom: var(--size150px); }
.pb160 { padding-bottom: var(--size160px); }
.pb170 { padding-bottom: var(--size170px); }
.pb180 { padding-bottom: var(--size180px); }
.pb190 { padding-bottom: var(--size190px); }
.pb200 { padding-bottom: var(--size200px); }

.pr5 {padding-right: var(--size5px); }
.pr10 {padding-right: var(--size10px); }
.pr15 {padding-right: var(--size15px); }
.pr20 {padding-right: var(--size20px); }
.pr25 {padding-right: var(--size25px); }
.pr30 {padding-right: var(--size30px); }
.pr35 {padding-right: var(--size35px); }
.pr40 {padding-right: var(--size40px); }
.pr45 {padding-right: var(--size45px); }
.pr50 {padding-right: var(--size50px); }
.pr55 {padding-right: var(--size55px); }
.pr60 {padding-right: var(--size60px); }
.pr65 {padding-right: var(--size65px); }
.pr70 {padding-right: var(--size70px); }
.pr75 {padding-right: var(--size75px); }
.pr80 {padding-right: var(--size80px); }
.pr85 {padding-right: var(--size85px); }
.pr90 {padding-right: var(--size90px); }
.pr95 {padding-right: var(--size95px); }
.pr100 { padding-right: var(--size100px); }

.pl5 {padding-left: var(--size5px); }
.pl10 {padding-left: var(--size10px); }
.pl15 {padding-left: var(--size15px); }
.pl20 {padding-left: var(--size20px); }
.pl25 {padding-left: var(--size25px); }
.pl30 {padding-left: var(--size30px); }
.pl35 {padding-left: var(--size35px); }
.pl40 {padding-left: var(--size40px); }
.pl45 {padding-left: var(--size45px); }
.pl50 {padding-left: var(--size50px); }
.pl55 {padding-left: var(--size55px); }
.pl60 {padding-left: var(--size60px); }
.pl65 {padding-left: var(--size65px); }
.pl70 {padding-left: var(--size70px); }
.pl75 {padding-left: var(--size75px); }
.pl80 {padding-left: var(--size80px); }
.pl85 {padding-left: var(--size85px); }
.pl90 {padding-left: var(--size90px); }
.pl95 {padding-left: var(--size95px); }
.pl100 { padding-left: var(--size100px); }

.prl5 { padding-right: var(--size5px); padding-left: var(--size5px); }
.prl10 { padding-right: var(--size10px); padding-left: var(--size10px); }
.prl15 { padding-right: var(--size15px); padding-left: var(--size15px); }
.prl20 { padding-right: var(--size20px); padding-left: var(--size20px); }
.prl25 { padding-right: var(--size25px); padding-left: var(--size25px); }
.prl30 { padding-right: var(--size30px); padding-left: var(--size30px); }
.prl35 { padding-right: var(--size35px); padding-left: var(--size35px); }
.prl40 { padding-right: var(--size40px); padding-left: var(--size40px); }
.prl45 { padding-right: var(--size45px); padding-left: var(--size45px); }
.prl50 { padding-right: var(--size50px); padding-left: var(--size50px); }
.prl55 { padding-right: var(--size55px); padding-left: var(--size55px); }
.prl60 { padding-right: var(--size60px); padding-left: var(--size60px); }
.prl65 { padding-right: var(--size65px); padding-left: var(--size65px); }
.prl70 { padding-right: var(--size70px); padding-left: var(--size70px); }
.prl75 { padding-right: var(--size75px); padding-left: var(--size75px); }
.prl80 { padding-right: var(--size80px); padding-left: var(--size80px); }
.prl85 { padding-right: var(--size85px); padding-left: var(--size85px); }
.prl90 { padding-right: var(--size90px); padding-left: var(--size90px); }
.prl95 { padding-right: var(--size95px); padding-left: var(--size95px); }
.prl100 { padding-right: var(--size100px); padding-left: var(--size100px); }

.fz10{font-size: .625rem; letter-spacing: .1em;}
.fz12{font-size: .75rem; letter-spacing: .1em;}
.fz13{font-size: .8125rem; letter-spacing: .1em;}
.fz14{font-size: .875rem; letter-spacing: .1em;}
.fz15{font-size: .9375rem; letter-spacing: .1em;}
.fz16{font-size: 1rem; letter-spacing: .1em;}
.fz18{font-size: 1.125rem; letter-spacing: .1em;}
.fz20{font-size: 1.25rem; letter-spacing: .1em;}
.fz22{font-size: 1.375rem; letter-spacing: .1em;}
.fz24{font-size: 1.5rem; letter-spacing: .1em;}
.fz25{font-size: 1.5625rem; letter-spacing: .1em;}
.fz26{font-size: 1.625rem; letter-spacing: .1em;}
.fz28{font-size: 1.75rem; letter-spacing: .1em;}
.fz30{font-size: 1.875rem; letter-spacing: .1em;}
.fz32{font-size: 2rem; letter-spacing: .1em;}
.fz34{font-size: 2.125rem; letter-spacing: .1em;}
.fz36{font-size: 2.25rem; letter-spacing: .1em;}
.fz38{font-size: 2.375rem; letter-spacing: .1em;}
.fz40{font-size: 2.5rem; letter-spacing: .1em;}
.fz42{font-size: 2.625rem; letter-spacing: .1em;}
.fz44{font-size: 2.75rem; letter-spacing: .1em;}
.fz46{font-size: 2.875rem; letter-spacing: .1em;}
.fz48{font-size: 3rem; letter-spacing: .1em;}
.fz50{font-size: 3.125rem; letter-spacing: .1em;}
.fz52{font-size: 3.25rem; letter-spacing: .1em;}
.fz54{font-size: 3.375rem; letter-spacing: .1em;}
.fz56{font-size: 3.5rem; letter-spacing: .1em;}
.fz58{font-size: 3.625rem; letter-spacing: .1em;}
.fz60{font-size: 3.75rem; letter-spacing: .1em;}
.fz62{font-size: 3.875rem; letter-spacing: .1em;}
.fz64{font-size: 4rem; letter-spacing: .1em;}
.fz66{font-size: 4.125rem; letter-spacing: .1em;}
.fz68{font-size: 4.25rem; letter-spacing: .1em;}
.fz70{font-size: 4.375rem; letter-spacing: .1em;}
.fz80{font-size: 5rem; letter-spacing: .1em;}
.fz84{font-size: 5.25rem; letter-spacing: .1em;}
.fz90{font-size: 5.625rem; letter-spacing: .1em;}
.fz96{font-size: 6rem; letter-spacing: .1em;}
.fz100{font-size: 6.25rem; letter-spacing: .1em;}
.fz110{font-size: 6.875rem; letter-spacing: .1em;}
.fz120{font-size: 7.5rem; letter-spacing: .1em;}
.fz130{font-size: 8.125rem; letter-spacing: .1em;}
.fz140{font-size: 8.75rem; letter-spacing: .1em;}
.fz150{font-size: 9.375rem; letter-spacing: .1em;}

.ls0 { letter-spacing: 0; }
.ls05 { letter-spacing: .05em; }
.ls1 { letter-spacing: .1em; }
.ls15 { letter-spacing: .15em; }
.ls2 { letter-spacing: .2em; }

.txt_white { color: #fff!important; }
.bg_white { background-color: #fff!important; }
.shadow_w {
	text-shadow: 0px 0px 5px #fff, 0px 0px 5px #fff, 0px 0px 10px #fff, 0px 0px 10px #fff, 0px 0px 15px #fff, 0px 0px 15px #fff;
}
em { font-style: normal; }


.txt_col01{color: var(--color01) !important;}
.txt_col02{color: var(--color02) !important;}
.txt_col03{color: var(--color03) !important;}
.txt_col04{color: var(--color04) !important;}
.txt_col05{color: var(--color05) !important;}
.txt_col06{color: var(--color06) !important;}
.txt_col07{color: var(--color07) !important;}
.txt_col08{color: var(--color08) !important;}
.txt_col09{color: var(--color09) !important;}
.txt_col10{color: var(--color10) !important;}
.txt_col11{color: var(--color11) !important;}
.txt_col12{color: var(--color12) !important;}
.txt_col13{color: var(--color13) !important;}
.txt_col14{color: var(--color14) !important;}
.txt_col15{color: var(--color15) !important;}
.txt_col16{color: var(--color16) !important;}
.txt_col17{color: var(--color17) !important;}
.txt_col18{color: var(--color18) !important;}
.txt_col19{color: var(--color19) !important;}
.txt_col20{color: var(--color20) !important;}

.txt_col_fl01::first-letter{color: var(--color01) !important;}
.txt_col_fl02::first-letter{color: var(--color02) !important;}
.txt_col_fl03::first-letter{color: var(--color03) !important;}
.txt_col_fl04::first-letter{color: var(--color04) !important;}
.txt_col_fl05::first-letter{color: var(--color05) !important;}
.txt_col_fl06::first-letter{color: var(--color06) !important;}
.txt_col_fl07::first-letter{color: var(--color07) !important;}
.txt_col_fl08::first-letter{color: var(--color08) !important;}
.txt_col_fl09::first-letter{color: var(--color09) !important;}
.txt_col_fl10::first-letter{color: var(--color10) !important;}
.txt_col_fl11::first-letter{color: var(--color11) !important;}
.txt_col_fl12::first-letter{color: var(--color12) !important;}
.txt_col_fl13::first-letter{color: var(--color13) !important;}
.txt_col_fl14::first-letter{color: var(--color14) !important;}
.txt_col_fl15::first-letter{color: var(--color15) !important;}
.txt_col_fl16::first-letter{color: var(--color16) !important;}
.txt_col_fl17::first-letter{color: var(--color17) !important;}
.txt_col_fl18::first-letter{color: var(--color18) !important;}
.txt_col_fl19::first-letter{color: var(--color19) !important;}
.txt_col_fl20::first-letter{color: var(--color20) !important;}

.bg_col01{background-color: var(--color01) !important;}
.bg_col02{background-color: var(--color02) !important;}
.bg_col03{background-color: var(--color03) !important;}
.bg_col04{background-color: var(--color04) !important;}
.bg_col05{background-color: var(--color05) !important;}
.bg_col06{background-color: var(--color06) !important;}
.bg_col07{background-color: var(--color07) !important;}
.bg_col08{background-color: var(--color08) !important;}
.bg_col09{background-color: var(--color09) !important;}
.bg_col10{background-color: var(--color10) !important;}
.bg_col11{background-color: var(--color11) !important;}
.bg_col12{background-color: var(--color12) !important;}
.bg_col13{background-color: var(--color13) !important;}
.bg_col14{background-color: var(--color14) !important;}
.bg_col15{background-color: var(--color15) !important;}
.bg_col16{background-color: var(--color16) !important;}
.bg_col17{background-color: var(--color17) !important;}
.bg_col18{background-color: var(--color18) !important;}
.bg_col19{background-color: var(--color19) !important;}
.bg_col20{background-color: var(--color20) !important;}

.bdr_col01{border-color: var(--color01) !important;}
.bdr_col02{border-color: var(--color02) !important;}
.bdr_col03{border-color: var(--color03) !important;}
.bdr_col04{border-color: var(--color04) !important;}
.bdr_col05{border-color: var(--color05) !important;}
.bdr_col06{border-color: var(--color06) !important;}
.bdr_col07{border-color: var(--color07) !important;}
.bdr_col08{border-color: var(--color08) !important;}
.bdr_col09{border-color: var(--color09) !important;}
.bdr_col10{border-color: var(--color10) !important;}
.bdr_col11{border-color: var(--color11) !important;}
.bdr_col12{border-color: var(--color12) !important;}
.bdr_col13{border-color: var(--color13) !important;}
.bdr_col14{border-color: var(--color14) !important;}
.bdr_col15{border-color: var(--color15) !important;}
.bdr_col16{border-color: var(--color16) !important;}
.bdr_col17{border-color: var(--color17) !important;}
.bdr_col18{border-color: var(--color18) !important;}
.bdr_col19{border-color: var(--color19) !important;}
.bdr_col20{border-color: var(--color20) !important;}

.bbw {
	border-bottom: 1px solid #fff;
}

.parallax { 
	width: 100%; 
	background-attachment: fixed!important; 
} 
.parallax.is_ios, .tab.parallax { 
	background-attachment: inherit!important; 
} 
.ready {
	position: relative;
}
.ready a {
	pointer-events: none;
}
.ready a:hover {
	opacity: 1;
	cursor: default;
}
.ready:before {
	content: "準備中";
    color: #fff;
    text-align: center;
    width: calc(100 / var(--break) * 100vw);
    height: calc(40 / var(--break) * 100vw);
    line-height: calc(40 / var(--break) * 100vw);
    background: rgba(51,51,51,.7);
    font-size: 1.125rem;
    letter-spacing: .1em;
    top: 0;
    bottom: 0;
    right: 0;
    left: 0;
    margin: auto;
    z-index: 2;
    position: absolute;
}
.bg_ptn01 {
	background: url("images/page/pattern01.png") repeat center / auto;
}
.bg_ptn02 {
	background: url("images/page/pattern02.png") repeat center / auto;
}
.bg_ptn03 {
	background: url("images/page/pattern03.png") repeat center / auto;
}
@media(max-width: 767px){ 
.parallax, .parallax.is_ios, .tab.parallax {  
		width: 100%;  
		background-attachment: inherit!important;  
	}
}
@media(min-width: 768px) {
	a[href^="tel:"] {
		pointer-events: none;
	}
	.slick-slide img,
	#sb_instagram .sbi_photo_wrap
	{
		backface-visibility: hidden;
		-webkit-backface-visibility: hidden;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
	.pc_only {
		display: none;
	}
	.tb_only {
		display: inherit;
	}
	.sp_only {
		display: none;
	}
	.tb_pc {
		display: inherit;
	}
	.sp_tb {
		display: inherit;
	}
}
@media(max-width: 767px) {
	:root {
		font-size: 4.27vw;
	}
	html, body {
		font-size: 1rem;
		letter-spacing: 0;
	}
	.lum-lightbox {
		background-color: rgba(255,255,255,.9);
	}
	.lum-close-button:after, .lum-close-button:before {
		background-color: rgb(000,000,000);
	}
	.lum-gallery-button {
		display: none !important;
	}
	a.zoom{
		position: relative;
		display: block;
		pointer-events: auto;
	}
	a.zoom:before {
		content: "タップで拡大します";
		position: absolute;
		width: 100%;
		height: 4.27vw;
		left: 0;
		right: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		letter-spacing: .1em;
		line-height: 4.27vw;
		text-shadow: 0 0 calc(5 / var(--break) * 100vw) #fff, 0 0 calc(5 / var(--break) * 100vw) #fff, 0 0 calc(10 / var(--break) * 100vw) #fff, 0 0 calc(10 / var(--break) * 100vw) #fff, 0 0 calc(15 / var(--break) * 100vw) #fff, 0 0 calc(15 / var(--break) * 100vw) #fff;
		text-align: center;
	}
	a.zoom:after{
		content: '';
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		width: 1.5em;
		height: 1.5em;
		background-color: rgba(0,0,0,0.5);
		background-image: url("images/page/icn_zoom.svg");
		background-size: 1em 1em;
		background-position: center center;
		background-repeat: no-repeat;
	}
	.lum-lightbox.lum-open {
		z-index: 10;
	}
	.lum-lightbox-image-wrapper {
		overflow-x: scroll;
	}
	.lum-lightbox-inner img {
		max-width: calc(1000 / var(--break) * 100vw);
	}
	.inner,.inner1000,.inner1140,.inner1200,.inner1340,.inner1500 {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
	}
	.pc_only {
		display: none;
	}
	.tb_only {
		display: none;
	}
	.sp_only {
		display: inherit;
	}
	.tb_pc {
		display: none;
	}
	.sp_tb {
		display: inherit;
	}

	.pt_1vw { padding-top: 1vw;}
	.pt_2vw { padding-top: 2vw;}
	.pt_3vw { padding-top: 3vw;}
	.pt_4vw { padding-top: 3vw;}
	.pt_5vw { padding-top: 5vw;}
	.pt_6vw { padding-top: 6vw;}
	.pt_7vw { padding-top: 7vw;}
	.pt_8vw { padding-top: 8vw;}
	.pt_9vw { padding-top: 9vw;}
	.pt_10vw { padding-top: 10vw;}
	.pt_11vw { padding-top: 11vw;}
	.pt_12vw { padding-top: 12vw;}
	.pt_13vw { padding-top: 13vw;}
	.pt_14vw { padding-top: 14vw;}
	.pt_15vw { padding-top: 15vw;}

	.pb_1vw { padding-bottom: 1vw; }
	.pb_2vw { padding-bottom: 2vw; }
	.pb_3vw { padding-bottom: 4vw; }
	.pb_5vw { padding-bottom: 5vw; }
	.pb_6vw { padding-bottom: 6vw; }
	.pb_7vw { padding-bottom: 7vw; }
	.pb_8vw { padding-bottom: 8vw; }
	.pb_9vw { padding-bottom: 9vw; }
	.pb_10vw { padding-bottom: 10vw; }
	.pb_11vw { padding-bottom: 11vw; }
	.pb_12vw { padding-bottom: 12vw; }
	.pb_13vw { padding-bottom: 13vw; }
	.pb_14vw { padding-bottom: 14vw; }
	.pb_15vw { padding-bottom: 15vw; }
	
	.ls0_sp { letter-spacing: 0!important; }
	.ls05_sp { letter-spacing: .05em!important; }
	.ls15_sp { letter-spacing: .15em!important; }
	.ls2_sp { letter-spacing: .2em!important; }

	.txt_width {
		max-width: calc(646 / var(--break) * 100vw)!important;
		margin-left: auto;
		margin-right: auto;
	}
	.sp_left {
		text-align: left!important;
	}
	.shadow_w {
		text-shadow: 0 0 calc(5 / var(--break) * 100vw) #fff, 0 0 calc(5 / var(--break) * 100vw) #fff, 0 0 calc(10 / var(--break) * 100vw) #fff, 0 0 calc(10 / var(--break) * 100vw) #fff, 0 0 calc(15 / var(--break) * 100vw) #fff, 0 0 calc(15 / var(--break) * 100vw) #fff;
	}
	.txt_tb {
		writing-mode: horizontal-tb;
	}
	.ready:before {
		font-size: .75rem;
	}
	.bg_ptn01 {
		background: url("images/page/pattern01.png") repeat center / calc(3 / var(--break) * 100vw) auto;
	}
	.bg_ptn02 {
		background: url("images/page/pattern02.png") repeat center / calc(6 / var(--break) * 100vw) auto;
	}
	.bg_ptn03 {
		background: url("images/page/pattern03.png") repeat center / calc(7 / var(--break) * 100vw) auto;
	}
}


/* ヘッダー header
------------------------------------------------------------------*/
header {
	position: relative;
    z-index: 10!important;
}
.row_head01 > .lh1 {
	width: calc(379 / var(--break) * 100vw);
}
.row_head02 {
	margin-right: calc(110 / var(--break) * 100vw);
}
.add_head {
	width: calc(438 / var(--break) * 100vw);
}
.add_head::before {
	content: "";
    position: absolute;
	background: #000000;
    width: calc(1 / var(--break) * 100vw);
    height: calc(30 / var(--break) * 100vw);
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.tel_head {
	width: calc(317 / var(--break) * 100vw);
}
.add_head,.tel_head a,.web_head a {
	height: calc(110 / var(--break) * 100vw);
}
.tel_head a::before {
	content: "";
    position: absolute;
	background: #000000;
    width: calc(1 / var(--break) * 100vw);
    height: calc(30 / var(--break) * 100vw);
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.tel_head .icn,.web_head .icn {
	width: calc(26 / var(--break) * 100vw);
}
.web_head {
	width: calc(200 / var(--break) * 100vw);
}
.web_head .arw {
	width: calc(124 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.row_head01 > .lh1 {
		width: calc(369 / var(--break) * 100vw);
	}
	.row_head02 {
		margin-right: calc(110 / var(--break) * 100vw);
	}
	.add_head {
		width: calc(320 / var(--break) * 100vw);
        padding-left: calc(20 / var(--break) * 100vw);
	}
	.add_head::before {
		height: calc(30 / var(--break) * 100vw);
	}
	.tel_head {
		width: calc(240 / var(--break) * 100vw);
	}
	.add_head,.tel_head a,.web_head a {
		height: calc(110 / var(--break) * 100vw);
	}
	.tel_head a::before {
		height: calc(30 / var(--break) * 100vw);
	}
	.tel_head .icn,.web_head .icn {
		width: calc(20 / var(--break) * 100vw);
		margin-right: calc(5 / var(--break) * 100vw);
	}
	.tel_head .num {
		font-size: 1.825rem;
	}
	.web_head {
		width: calc(160 / var(--break) * 100vw);
	}
	.web_head .arw {
		width: calc(124 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	header {
		padding: 2.5vw 0 7vw;
	}
	.row_head02 {
		display: none;
	}
}


/* メインイメージ main_img
------------------------------------------------------------------*/
.main_img {
	position: relative;
}
.main_img .slide_main {
	opacity: 0;
	transition: opacity .3s linear;
	pointer-events: none;
}
.main_img .slide_main.slick-initialized {
	opacity: 1;
}
.main_img .slide_main li {
	min-height: 600px;
	height: calc(100vh - (110 /var(--break)*100vw));
}
.main_img.tab .slide_main li {
	height: auto;
}
.main01 {
	background: url(images/index/main01.jpg)no-repeat center / cover;
}
.main02 {
	background: url(images/index/main02.jpg)no-repeat center / cover;
}
.main03 {
	background: url(images/index/main03.jpg)no-repeat center / cover;
}
.ttl_main01 {
	top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
}
.ttl_main02 {
	width: calc(383 / var(--break) * 100vw);
    right: 0;
    left: 0;
    top: 54.5%;
}
.ccl_common01 {
	width: calc(200 / var(--break) * 100vw);
    height: calc(200 / var(--break) * 100vw);
    background: url(images/index/bg_main01.png) no-repeat center / cover;
    box-shadow: 0 0 18px 2px rgba(95, 97, 104, 0.5);
    right: 1.2%;
	bottom: 5%;
}
.ccl_common01 .txt {
	background-image: linear-gradient(to right, #be8533, #000);
	background-clip: text;
	-webkit-background-clip: text;
	color: transparent;
	-webkit-text-fill-color: transparent;
}
.main_img .scroll {
	width: 1px;
	height: calc(100 / var(--break) * 100vw);
	left: calc(40 / var(--break) * 100vw);
	bottom: calc(40 / var(--break) * 100vw);
}
.main_img .scroll:after {
	content: "";
	position: absolute;
	width: 1px;
	height: 100%;
	left: 0;
	top: 0;
	background: #fff;
	animation: 2s ease-in .2s infinite scrollbtn;
}
@keyframes scrollbtn {
	0% {
		height: 0;
		top: 0;
	}
	80% {
		height: 100%;
		top: 0;
	}
	100% {
		top: 100%;
	}
}
@media(min-width: 768px) and (max-width:1599px) {
	.main_img .slide_main li {
		min-height: calc(690 / var(--break) * 100vw);
		height: auto;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.main_img .slide_main li {
		min-height: calc(580 / var(--break) * 100vw);
		height: auto;
	}
	.ttl_main01 {
		font-size: 2.5rem;
		top: 47%;
	}
	.ttl_main02 {
		top: 50.5%;
		width: calc(353 / var(--break) * 100vw);
	}
	.ccl_main01 {
		right: 14.2%;
	}
}
@media only screen and (max-width: 767px) {
	.main_img {
		margin-bottom: 0;
	}
	.main_img .slide_main li {
		min-height: auto;
		height: calc(100svh - calc(268 / var(--break) * 100vw));
	}
	.main01 {
		background: url(images/index/main01_sp.jpg)no-repeat center / cover;
	}
	.main02 {
		background: url(images/index/main02_sp.jpg)no-repeat center / cover;
	}
	.main03 {
		background: url(images/index/main03_sp.jpg)no-repeat center / cover;
	}
	.ttl_main01 {
		font-size: 1.3125rem;
		line-height: 1.6;
		top: 43%;
	}
	.ttl_main02 {
		width: calc(257 / var(--break) * 100vw);
		top: 48.5%;
	}
	.ccl_common01 {
		width: calc(200 / var(--break) * 100vw);
		height: calc(200 / var(--break) * 100vw);
	}
	.ccl_main01 {
		right: 0;
		left: 0;
		margin: auto;
		top: 58%;
		bottom: auto;
	}
	.ccl_common01 .txt {
		font-size: .6875rem;
	}
}

/* グローバルナビゲーション gnav
------------------------------------------------------------------*/
.gnav, .fix_nav {
	display: none;
}
.btn_gnav_sp {
	position: fixed;
	top: calc(0 / var(--break) * 100vw);
	right: calc(0 / var(--break) * 100vw);
	height: calc(110 / var(--break) * 100vw);
	width: calc(110 / var(--break) * 100vw);
	background: #fff;
	z-index: 10000;
	outline: none;
	border: solid 1px #9d9d9d;
}
.btn_gnav_sp .txt_gnav {
	position: absolute;
	width: calc(46 / var(--break) * 100vw);
	right: 0;
	left: 0;
	bottom: calc(29 / var(--break) * 100vw);
	margin: auto;
	line-height: 1;
}
.btn_gnav_sp .icn_gnav {
	width: calc(38 / var(--break) * 100vw);
	height:calc(1 / var(--break) * 100vw);
	position: absolute;
	top: calc(-19 / var(--break) * 100vw);
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: #000;
	transition: transform .3s ease-in-out;
}
.btn_gnav_sp .icn_gnav:before, .btn_gnav_sp .icn_gnav:after {
	content: "";
	width: 100%;
	height: calc(1 / var(--break) * 100vw);
	position: absolute;
	left: 0;
	background: #000;
	transition: transform .3s ease-in-out;
}
.btn_gnav_sp .icn_gnav:before {
	top: calc(-10 / var(--break) * 100vw);
}
.btn_gnav_sp .icn_gnav:after {
	bottom: calc(-10 / var(--break) * 100vw);
}
.open .btn_gnav_sp .icn_gnav {
	background: none;
}
.open .btn_gnav_sp .icn_gnav:before, .open .btn_gnav_sp .icn_gnav:after {
	background: #000;
	transition: transform .3s ease-in-out;
}
.open .btn_gnav_sp .icn_gnav:before {
	transform: rotate(45deg);
	top: 0;
}
.open .btn_gnav_sp .icn_gnav:after {
	transform: rotate(-45deg);
	bottom: 0;
}
.gnav_sp {
	padding: calc(160 / var(--break) * 100vw) 0 0;
	overflow-y: auto;
	overflow-x: hidden;
	background: #fff;
	position: fixed;
	top: 0;
	right: 0;
	z-index: 9999;
	height: 100%;
	visibility: hidden;
	opacity: 0;
	width: calc(795 / var(--break) * 100vw);
	transition: opacity .6s ease, visibility .6s ease;
	line-height: 1.45;
}
.bg_gnav {
	visibility: hidden;
	transition: .3s;
	opacity: 0;
}
.open .bg_gnav {
	width: 100%;
	height: 100%;
	position: fixed;
	z-index: 9998;
	background: rgba(0,0,0,0);
	visibility: visible;
	opacity: 1;
	transition: .3s;
	left: 0;
	top: 0;
}
.gnav_sp .nav_main {
	padding-bottom: calc(200 / var(--break) * 100vw);
}
.gnav_sp .nav_main > ul {
	padding: 0 calc(20 / var(--break) * 100vw);
	display: block;
	max-width: calc(670 / var(--break) * 100vw);
}
.gnav_sp .nav_main > ul > li:first-child {
	border-top: solid 1px #9d9d9d;
}
.gnav_sp .nav_main > ul > li {
	opacity: 0;
	transform: translateX(50%);
	transition: transform .6s ease, opacity .2s ease;
	border-bottom: solid 1px #9d9d9d;
}
.gnav_sp .nav_main > ul > li.nav_drawer {
	padding-bottom: calc(20 / var(--break) * 100vw);
}
.gnav_sp .nav_main > ul > li > a {
	padding: calc(14 / var(--break) * 100vw) calc(50 / var(--break) * 100vw) calc(12 / var(--break) * 100vw) calc(16 / var(--break) * 100vw);
	display:-webkit-box;/*--- Androidブラウザ用 ---*/
	display:-ms-flexbox;/*--- IE10 ---*/
	display: -webkit-flex;/*--- safari（PC）用 ---*/
	display:flex;
	-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
	-ms-flex-pack:justify;/*--- IE10 ---*/
	-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
	justify-content:space-between;
	-webkit-flex-wrap: wrap; /* Safari */
	flex-wrap: wrap;
	-ms-align-items: center;
	align-items: center;
	position: relative;
	letter-spacing: 0;
}
.gnav_sp .nav_main > ul > li > a:after {
	content: "";
    position: absolute;
    right: calc(22 / var(--break) * 100vw);
    top: 0;
    bottom: 0;
    width: calc(18 / var(--break) * 100vw);
    height: calc(10 / var(--break) * 100vw);
    background: url(images/page/arw_nav01.svg) no-repeat center / cover;
    margin: auto;
}
.gnav_sp .nav_main > ul > li.nav_drawer > a {
	border-bottom: none;
}
.gnav_sp .nav_main > ul > li.nav_drawer > a.open:after {
	transform: rotate(-90deg);
}
.gnav_sp .nav_main > ul > li > a .ja {
}
.open .gnav_sp {
	visibility: visible;
	opacity: 1;
	scrollbar-width: none;
}
.open .gnav_sp .nav_main > ul > li, .open .gnav_sp .nav_sub li {
	opacity: 1;
	transform: translateX(0);
	transition: transform 1s ease, opacity .9s ease;
}
.btn_gnav_sp {
    cursor: pointer;
}
.gnav_sp .ps__thumb-y {
	background: transparent !important;
}
.gnav_sp .ps__thumb-x {
	background: transparent !important;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media only screen and (max-width: 767px) {
	.gnav, .fix_nav {
		display: none;
	}
	.btn_gnav_sp {
		position: fixed;
		top: 3vw;
		right: 3.2vw;
		height: calc(100 / var(--break) * 100vw);
		width: calc(100 / var(--break) * 100vw);
		background: #fff;
		z-index: 10000;
		outline: none;
	}
	.btn_gnav_sp .txt_gnav {
		position: absolute;
        width: calc(55 / var(--break) * 100vw);
        right: 0;
        left: 0;
        bottom: 2vw;
        margin: auto;
	}
	.btn_gnav_sp .icn_gnav {
		width: calc(40 / var(--break) * 100vw);
		height: 2px;
		position: absolute;
		top: -3.5vw;
		bottom: 0;
		left: 0;
		right: 0;
		margin: auto;
		background: #000;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before, .btn_gnav_sp .icn_gnav:after {
		content: "";
		width: 100%;
		height: 2px;
		position: absolute;
		left: 0;
		background: #000;
		transition: transform .3s ease-in-out;
	}
	.btn_gnav_sp .icn_gnav:before {
		top: -1.5vw;
	}
	.btn_gnav_sp .icn_gnav:after {
		bottom: -1.5vw;
	}
	.open .btn_gnav_sp .icn_gnav {
		background: none;
	}
	.open .btn_gnav_sp .icn_gnav:before, .open .btn_gnav_sp .icn_gnav:after {
		background: #000;
		transition: transform .3s ease-in-out;
	}
	.open .btn_gnav_sp .icn_gnav:before {
		transform: rotate(45deg);
		top: 0;
	}
	.open .btn_gnav_sp .icn_gnav:after {
		transform: rotate(-45deg);
		bottom: 0;
	}
	.gnav_sp {
		padding: 19vw 0 0;
		overflow-y: auto;
		overflow-x: hidden;
		background: #fff;
		position: fixed;
		top: 0;
		right: 0;
		z-index: 9999;
		height: 100%;
		visibility: hidden;
		opacity: 0;
		width: 80%;
		transition: opacity .6s ease, visibility .6s ease;
		line-height: 1.45;
	}
	.bg_gnav {
		visibility: hidden;
		transition: .3s;
		opacity: 0;
	}
	.open .bg_gnav {
		width: 100%;
		height: 100%;
		position: fixed;
		z-index: 9998;
		background: rgba(0,0,0,0);
		visibility: visible;
		opacity: 1;
		transition: .3s;
		left: 0;
		top: 0;
	}
	.gnav_sp .nav_main {
		padding-bottom: 20vw;
	}
	.gnav_sp .nav_main > ul {
		padding: 0 3vw;
		display: block;
	}
	.gnav_sp .nav_main > ul > li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_main > ul > li:first-child {
		border-top: calc(2 / var(--break) * 100vw) solid #9d9d9d;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer {
		padding-bottom: 2.5vw;
		border-bottom: calc(2 / var(--break) * 100vw) solid #9d9d9d;
	}
	.gnav_sp .nav_main > ul > li {
		border-bottom: none;
	}
	.gnav_sp .nav_main > ul > li > a {
		padding: 3.5vw 6vw 3.3vw 0;
		border-bottom: calc(2 / var(--break) * 100vw) solid #9d9d9d;
		display:-webkit-box;/*--- Androidブラウザ用 ---*/
		display:-ms-flexbox;/*--- IE10 ---*/
		display: -webkit-flex;/*--- safari（PC）用 ---*/
		display:flex;
		-webkit-box-pack:justify;/*--- Androidブラウザ用 ---*/
		-ms-flex-pack:justify;/*--- IE10 ---*/
		-webkit-justify-content:space-between;/*--- safari（PC）用 ---*/
		justify-content:space-between;
		-webkit-flex-wrap: wrap; /* Safari */
		flex-wrap: wrap;
		-ms-align-items: center;
		align-items: center;
		position: relative;
		letter-spacing: 0;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a {
		border-bottom: none;
	}
	.gnav_sp .nav_main > ul > li > a:after {
		content: "";
        position: absolute;
        right: calc(3 / var(--break) * 100vw);
        top: calc(-2 / var(--break) * 100vw);
        bottom: 0;
        width: calc(30 / var(--break) * 100vw);
        height: calc(17 / var(--break) * 100vw);
        background: url(images/page/arw_nav01.svg) no-repeat center / cover;
        margin: auto;
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a:after {
		transform: rotate(90deg);
	}
	.gnav_sp .nav_main > ul > li.nav_drawer > a.open:after {
		transform: rotate(-90deg);
	}
	.gnav_sp .nav_main > ul > li > a .ja {
		font-size: 1rem;
		line-height: 1.56;
		letter-spacing: 0;
	}
	.gnav_sp .nav_sub {
		background: rgba(51,51,51,.9);
		padding: 5.5vw 8vw 7.5vw;
		/*display: none;*/ /* クリックで開閉させる場合はコメント解除 */
	}
	.gnav_sp .nav_sub li {
		opacity: 0;
		transform: translateX(50%);
		transition: transform .6s ease, opacity .2s ease;
	}
	.gnav_sp .nav_sub li:not(:last-child) {
		margin-bottom: 2.5vw;
	}
	.gnav_sp .nav_sub a {
		padding: 1vw 0 1vw 6vw;
		display: block;
		position: relative;
		color: #fff;
	}
	.gnav_sp .nav_sub a:after {
		content: "";
		position: absolute;
		left: 0;
		top: 1vw;
		bottom: 0;
		width: 0;
		height: 0;
		border-left: calc(16 / var(--break) * 100vw) solid #fff;
		border-top: calc(12 / var(--break) * 100vw) solid transparent;
		border-bottom: calc(12 / var(--break) * 100vw) solid transparent;
		margin: auto;
	}
	.open .gnav_sp {
		visibility: visible;
		opacity: 1;
	}
	.open .gnav_sp .nav_main > ul > li, .open .gnav_sp .nav_sub li {
		opacity: 1;
		transform: translateX(0);
		transition: transform 1s ease, opacity .9s ease;
	}
}


/* counseling
------------------------------------------------------------------*/
.bg_counseling01 {
	background: url("images/page/deco_counseling01.png")no-repeat right bottom / calc(400 / var(--break) * 100vw) auto #e6e8ec;
}
.bg_counseling01::before {
	content: "";
    position: absolute;
	background: url("images/page/pattern02.png") repeat center / auto #5f6168;
    width: 100%;
    height: calc(10 / var(--break) * 100vw);
	right: 0;
	left: 0;
	top: 0;
	margin: auto;
}
.bg_counseling01 .deco01 {
	width: calc(240 / var(--break) * 100vw);
	bottom: 0;
	left: 10.5%;
}
.bg_counseling01 .deco02 {
	width: calc(240 / var(--break) * 100vw);
	bottom: 0;
	right: 10.5%;
}
.ttl_counseling01 .en {
	font-size: 11.25rem;
	line-height: .8;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.row_counseling01 .col {
	width: 48%;
    max-width: 480px;
}
.row_counseling01 .col a {
	height: calc(160 / var(--break) * 100vw);
}
.row_counseling01 .col .wrap {
	position: relative;
}
.row_counseling01 .col .wrap::before {
	content: "";
    position: absolute;
	background: #0000001a;
    width: 100%;
    height: 100%;
	right: calc(-10 / var(--break) * 100vw);
	bottom: calc(-10 / var(--break) * 100vw);
	z-index: -1;
}
.row_counseling01 .col a .icn {
	width: calc(34 / var(--break) * 100vw);
}
.row_counseling01 .web_common a .icn {
	width: calc(38 / var(--break) * 100vw);
}
.row_counseling01 .tel_common a::after {
	content: "";
    position: absolute;
	background: 
	url("images/page/deco_counseling02.png") no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw),
	url("images/page/deco_counseling03.png") no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw);
    width: 100%;
    height: 100%;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.row_counseling01 .web_common .arw {
	width: calc(303 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.ttl_counseling01 .en {
		font-size: 9rem;
	}
	.bg_counseling01 .deco01 {
		width: calc(240 / var(--break) * 100vw);
		left: 0%;
	}
	.bg_counseling01 .deco02 {
		width: calc(240 / var(--break) * 100vw);
		right: 0%;
	}
}
@media(max-width: 767px) {
	.bg_counseling01 {
		background: url("images/page/deco_counseling01.png")no-repeat right bottom / calc(400 / var(--break) * 100vw) auto #e6e8ec;
		padding: 9vw 0 62vw;
	}
	.bg_counseling01::before {
		background: url("images/page/pattern02.png") repeat center / calc(6 / var(--break) * 100vw) auto #5f6168;
		height: calc(10 / var(--break) * 100vw);
	}
	.bg_counseling01 .deco01 {
		width: calc(245 / var(--break) * 100vw);
		bottom: 0;
		left: 17.5%;
	}
	.bg_counseling01 .deco02 {
		width: calc(245 / var(--break) * 100vw);
		bottom: 0;
		right: 17.5%;
	}
	.ttl_counseling01 {
		margin-bottom: 5vw;
	}
	.ttl_counseling01 .ja {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.ttl_counseling01 .ja .fz28 {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
	.ttl_counseling01 .en {
		font-size: 4.6875rem;
        letter-spacing: 0;
        top: -1vw;
	}
	.row_counseling01 {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_counseling01 .col {
		width: 100%;
		max-width: 100%;
	}
	.row_counseling01 .col:nth-child(n+2) {
		margin-top: calc(40 / var(--break) * 100vw);
	}
	.row_counseling01 .col a {
		height: calc(160 / var(--break) * 100vw);
	}
	.row_counseling01 .col .wrap::before {
		right: calc(-10 / var(--break) * 100vw);
		bottom: calc(-10 / var(--break) * 100vw);
	}
	.row_counseling01 .col a .icn {
		width: calc(32 / var(--break) * 100vw);
	}
	.row_counseling01 .web_common a .icn {
		width: calc(39 / var(--break) * 100vw);
	}
	.row_counseling01 .web_common a .flex.ccc {
		margin-bottom: 0vw;
	}
	.row_counseling01 .web_common .arw {
		width: calc(303 / var(--break) * 100vw);
	}
	.tel_common .ja {
		font-size: .875rem;
	}
	.tel_common .num {
		font-size: 1.5rem;
	}
	.web_common .ja {
		font-size: .875rem;
	}
	.web_common .en {
		font-size: 1.3125rem;
	}
	.row_counseling01 .tel_common a::after {
		background: 
		url("images/page/deco_counseling02.png") no-repeat left calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw),
		url("images/page/deco_counseling03.png") no-repeat right calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw);
	}
	
}

/* gift
------------------------------------------------------------------*/
.index_gift {
	background: url("images/index/bg_gift01.png")no-repeat center / cover;
}
.box_gift01 {
	background-color: #ffffffe6;
}
.box_common01 {
	position: relative;
}
.box_common01::before,.box_common01::after {
	content: "";
    position: absolute;
	border: solid 1px #000000;
    width: calc(250 / var(--break) * 100vw);
    height: calc(250 / var(--break) * 100vw);
	top: calc(10 / var(--break) * 100vw);
	border-bottom: none;
}
.box_common01::before {
	left: calc(10 / var(--break) * 100vw);
	border-right: none;
}
.box_common01::after {
	right: calc(10 / var(--break) * 100vw);
	border-left: none;
}
.ttl_gift01 {
	width: 90%;
    max-width: 1240px;
	padding: calc(10 / var(--break) * 100vw) calc(10 / var(--break) * 100vw) calc(10 / var(--break) * 100vw);
	z-index: 1;
}
.ttl_gift01::before,.ttl_gift01::after {
	content: "";
    position: absolute;
    width: calc(25 / var(--break) * 100vw);
    height: calc(25 / var(--break) * 100vw);
	top: calc(6 / var(--break) * 100vw);
}
.ttl_gift01::before {
	background: url("images/index/deco_gift01.png") no-repeat center / cover;
	left: calc(6 / var(--break) * 100vw);
}
.ttl_gift01::after {
	background: url("images/index/deco_gift02.png") no-repeat center / cover;
	right: calc(6 / var(--break) * 100vw);
}
.box_gift01 .wrap {
	width: 90%;
    max-width: 1000px;
}
.row_gift01 .col {
	width: 48%;
    max-width: 480px;
}
.row_gift01 .col {
	width: 48%;
    max-width: 480px;
	border: solid 1px #5f6168;
}
.row_gift01 .col .wrap {
	background: url(images/page/deco_counseling02.png) no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw), url(images/page/deco_counseling03.png) no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw) #fff;
}
.shadow_common01::before {
	content: "";
    position: absolute;
	background: #0000001a;
    width: 100%;
    height: 100%;
	right: calc(-10 / var(--break) * 100vw);
	bottom: calc(-10 / var(--break) * 100vw);
	z-index: -1;
}
.row_gift01 .col .ja01 {
	border: solid 1px #5f6168;
	border-radius: 100vh;
	height: calc(50 / var(--break) * 100vw);
}
.row_gift01 .col .ja02 span {
	background: linear-gradient(transparent 60%, #f1f1f1 60%);
    display: inline;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_gift {
		background: url(images/index/bg_gift01_sp.png) no-repeat center / cover;
		padding: 21vw 0 0vw;
	}
	.box_gift01 {
		padding: 15vw 0vw 0vw;
	}
	.ttl_gift01 {
		width: 100%;
		max-width: calc(646 / var(--break) * 100vw);
		padding: calc(15 / var(--break) * 100vw) calc(10 / var(--break) * 100vw) calc(15 / var(--break) * 100vw);
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.box_gift01 .wrap {
		width: 92%;
		max-width: 100%;
	}
	.row_gift01 {
		margin-bottom: 5vw;
	}
	.row_gift01 .col {
		width: 100%;
		max-width: 100%;
		border: solid 1px #5f6168;
	}
	.row_gift01 .col:nth-child(n+2) {
		margin-top: 8vw;
	}
	.row_gift01 .col .wrap {
		background: url("images/page/deco_counseling02.png") no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw), url(images/page/deco_counseling03.png) no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw) #fff;
		padding: 5vw 5vw 3vw;
	}
	.row_gift01 .col .ja01 {
		height: calc(60 / var(--break) * 100vw);
		font-size: 1.1875rem;
		letter-spacing: 0;
		margin-bottom: 3vw;
	}
	.row_gift01 .col .ja02 {
		font-size: 1.125rem;
		letter-spacing: 0;
		margin-bottom: 2vw;
	}
	.row_gift01 .col .price {
		font-size: 1.5625rem;
		margin-bottom: 1vw;
	}
	.row_gift01 .col .price .txt_col11 {
		font-size: 2.8125rem;
	}
}

/* charms
------------------------------------------------------------------*/
.ttl_common01 {
	border-bottom: solid calc(2 / var(--break) * 100vw) #000;
} 
.ttl_common01::before {
	content: "";
    position: absolute;
    background: url(images/page/pattern02.png) repeat center / auto #5f6168;
    width: 100%;
    height: calc(10 / var(--break) * 100vw);
    right: 0;
    left: 0;
    top: 0;
    margin: auto;
}
.ttl_common01 .en {
	line-height: .8;
	color: #9d9d9d;
    background: #00783d;
    background: linear-gradient(0deg, #c7c7c7 0%, #c7c7c7 50%, #231815 50%, #231815 100%);
    -webkit-background-clip: text;
    -webkit-text-fill-color: transparent;
} 
.row_charms01 {
	width: 92%;
    max-width: 1720px;
}
.row_charms01 .col_img {
	width: 50%;
    max-width: 860px;
}
.row_charms01 .col_img::before {
	content: "";
    position: absolute;
	background: #5f6168;
    width: calc(640 / var(--break) * 100vw);
    height: calc(640 / var(--break) * 100vw);
	top: calc(40 / var(--break) * 100vw);
	left: calc(-100 / var(--break) * 100vw);
	z-index: -1;
}
.row_charms01 .col_img .ccl01 {
	bottom: 30%;
	right: 13%;
	z-index: 3;
}
.row_charms01 .col_img .ccl02 {
	bottom: 3%;
	right: 23.5%;
}
.row_charms01 .col_img .ccl03 {
	bottom: 3%;
	right: 2%;
}
.row_charms01 .col_txt {
	width: 50%;
	position: relative;
}
.row_charms01 .col_txt::before,.row_charms01 .col_txt::after {
	content: "";
    position: absolute;
	background: #f7f8f9;
    width: 100%;
    height: 100%;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.row_charms01 .col_txt::before {
	clip-path: polygon(100% 0, 53% 0, 100% 62%);
}
.row_charms01 .col_txt::after {
	clip-path: polygon(0 100%, 0 37%, 46% 100%);
}
.row_charms01 .col_txt .wrap {
	width: 77%;
}
.wrap_charms01 .num {
	width: calc(156 / var(--break) * 100vw);
	margin-left: 34%;
}
.wrap_charms01 .copy::before {
	content: "";
    position: absolute;
	background: #5f6168;
    width: calc(60 / var(--break) * 100vw);
    height: calc(2 / var(--break) * 100vw);
	bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
}
/*ptn02*/
.row_charms01.ptn02 .col_img::before {
    background: #9d9d9d;
    width: calc(640 / var(--break) * 100vw);
    height: calc(640 / var(--break) * 100vw);
    top: calc(-40 / var(--break) * 100vw);
    right: calc(-100 / var(--break) * 100vw);
	left: auto;
}
.row_charms01.ptn02 .wrap_charms01 .num {
   width: calc(170 / var(--break) * 100vw);
    margin-left: auto;
    margin-right: 43%;
}
.row_charms01.ptn02 .col_txt::before {
	clip-path: polygon(0 63%, 0 0, 47% 0);
}
.row_charms01.ptn02 .col_txt::after {
	clip-path: polygon(53% 100%, 100% 100%, 100% 38%);
}
.row_charms02 {
	gap: calc(10 / var(--break) * 100vw) 0.8%;
}
.row_charms02 .col {
	width: 19.3%;
	height: calc(260 / var(--break) * 100vw);
	border: solid 1px #5f6168;
	background: url(images/page/deco_contact02.png) no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw), url(images/page/deco_contact03.png) no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw) #fff;
}
.row_charms02 .col .icn {
	width: calc(120 / var(--break) * 100vw);
}
.bg_charms01::before {
	content: "";
    position: absolute;
	background: #e6e8ec;
    width: 100%;
    height: 93.5%;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.bg_charms01::after {
	content: "";
    position: absolute;
	background: url("images/page/pattern02.png") repeat center / auto;
    width: 100%;
    height: calc(120 / var(--break) * 100vw);
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
}
.box_charms01 .wrap {
	width: 81%;
}
.ttl_charms02 span::before,.ttl_charms02 span::after {
	content: "";
    position: absolute;
	background: #000000;
    width: calc(10 / var(--break) * 100vw);
    height: calc(2 / var(--break) * 100vw);
	top: 0;
	bottom: 0;
	margin: auto;
}
.ttl_charms02 span::before {
	left: 0;
}
.ttl_charms02 span::after {
	right: 0;
}
.tbl_charms01 table {
	border: 1px solid #5f6168;
}
.tbl_charms01 thead th,.tbl_charms01 thead td {
    background-color: #5f6168;
	font-weight: bold;
	line-height: 1.4;
	color: #fff;
}
.tbl_charms01 thead td {
    border-left: solid 1px #fff;
}
.tbl_charms01 tbody td {
    border-left: solid 1px #231815;
}
.tbl_charms01 thead td {
    text-align: center;
}
.tbl_charms01 tbody th {
    background: #9d9d9d;
    font-weight: bold;
	line-height: 1.4;
	color: #fff;
}
.tbl_charms01 tbody td {
    text-align: center;
}
.tbl_charms01 th,.tbl_charms01 tbody td,.tbl_charms01 td {
    width: 15%;
}
.tbl_charms01 th {
	padding: calc(17 / var(--break) * 100vw) calc(18 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
}
.tbl_charms01 td {
	padding: calc(16 / var(--break) * 100vw ) calc(10 / var(--break) * 100vw ) calc(16 / var(--break) * 100vw );
}
/*ptn03*/
.row_charms03 .col_img {
	width: 50%;
	max-width: 960px;
}
.row_charms03 .col_txt {
	width: 50%;
}
.row_charms03 .col_txt {
	background: url("images/index/bg_charms01.png")no-repeat center / cover;
}
.row_charms03.ptn04 .col_txt {
	background: url("images/index/bg_charms02.png")no-repeat center / cover;
}
.row_charms03 .col_txt .wrap {
    width: 69%;
}
.row_charms03 .wrap_charms01 .num {
    width: calc(166 / var(--break) * 100vw);
    margin-left: 34%;
}
/*ptn04*/
.wrap_charms02.num04 .num {
	width: calc(169 / var(--break) * 100vw);
	margin-left: 32%;
}
.bg_charms02 {
	background: url("images/index/bg_charms03.jpg")no-repeat center / cover;
}
.bg_charms02 .wrap_charms01 .num {
    width: calc(162 / var(--break) * 100vw);
    margin-left: 42.5%;
}
.row_charms04 .col {
	width: 24%;
}
.row_charms04 .ccl01,.row_charms04 .ccl02 {
	width: calc(160 / var(--break) * 100vw);
    height: calc(160 / var(--break) * 100vw);
	box-shadow: 0 0 18px 2px rgba(95, 97, 104, 0.5);
}
.row_charms04 .ccl01 {
	left: -2.5%;
	bottom: -19%;
}
.row_charms04 .ccl02 {
	right: -2.5%;
	bottom: -17%;
}

.wrap_charms02 {
	position: relative;
}
.wrap_charms02:before {
	content: "";
	position: absolute;
	width: 50%;
	height: calc(640 / var(--break) * 100vw);
	background: url("images/index/img_charms03.jpg")no-repeat center / cover;
	left: 0;
	top: 0;
}
.wrap_charms02.img02:before {
	left: auto;
	right: 0;
	background-image: url("images/index/img_charms04.jpg");
}
.wrap_charms02 .col_txt {
	width: 50%;
	min-height: calc(640 / var(--break) * 100vw);
	padding: 0 calc(40 / var(--break) * 100vw);
}
.wrap_charms02.img01 .col_txt {
	background: url(images/index/bg_charms01.png) no-repeat center / cover;
}
.wrap_charms02.img02 .col_txt {
	background: url(images/index/bg_charms02.png) no-repeat center / cover;
}
.wrap_charms02 .wrap {
	width: 75%;
}
@media(min-width: 768px) and (max-width:1599px) {
	.row_charms01 .col_img::before {
		height: calc(540 / var(--break) * 100vw);
	}
	.row_charms01.ptn02 .col_img::before {
		height: calc(540 / var(--break) * 100vw);
	}
	.row_charms01 .col_img .ccl01 {
		bottom: 32%;
	}
	.row_charms01 .col_img .ccl02 {
		right: 25.5%;
	}
	.wrap_charms02 .wrap {
		width: 82%;
	}
	.wrap_charms01 .copy {
		font-size: 1.875rem;
	}
	.wrap_charms02 .copy {
		font-size: 1.875rem;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.row_charms01 {
		width: 95%;
	}
	.row_charms01 .col_img {
		display: -webkit-flex;
		display: -moz-flex;
		display: -ms-flex;
		display: -o-flex;
		display: flex;
    	align-items: center!important;
	}
	.row_charms01 .col_img::before {
		height: calc(540 / var(--break) * 100vw);
	}
	.row_charms01 .ccl_common01 {
		width: calc(180 / var(--break) * 100vw);
		height: calc(180 / var(--break) * 100vw);
	}
	.row_charms01 .ccl_common01 .txt {
		font-size: 1.25rem;
	}
	.row_charms01 .col_img .ccl01 {
        bottom: 29%;
        right: 15%;
    }
	.row_charms01 .col_img .ccl02 {
        right: 28.5%;
    }
	.row_charms01 .col_txt {
		padding: calc(40 / var(--break) * 100vw) 0 calc(45 / var(--break) * 100vw);
	}
	.wrap_charms01 .num {
		width: calc(128 / var(--break) * 100vw);
		margin-left: 32%;
	}
	.row_charms01.ptn02 .wrap_charms01 .num {
		width: calc(130 / var(--break) * 100vw);
		margin-right: 43%;
	}
	.wrap_charms02 .wrap {
		width: 85%;
	}
	.wrap_charms01 .copy {
		font-size: 1.5rem;
	}
	.wrap_charms02 .copy {
		font-size: 1.5rem;
	}
	.wrap_charms02 .col_txt {
		min-height: calc(600 / var(--break) * 100vw);
	}
	.wrap_charms02:before {
		height: calc(600 / var(--break) * 100vw);
	}
	.bg_charms02 .wrap_charms01 .num {
		width: calc(142 / var(--break) * 100vw);
		margin-left: 42.5%;
	}
	.row_charms04 .ccl01 {
		left: -4.5%;
		bottom: -53%;
	}
	.row_charms04 .ccl02 {
		right: -4.5%;
		bottom: -53%;
	}
}
@media(max-width: 767px) {
	.ttl_charms01 {
		margin-bottom: 8vw;
		margin-top: 13vw;
	}
	.ttl_common01 {
		border-bottom: solid calc(2 / var(--break) * 100vw) #000;
		padding: 10.5vw 0 8vw;
	} 
	.ttl_common01::before {
		background: url(images/page/pattern02.png) repeat center / calc(6 / var(--break) * 100vw) auto #5f6168;
		height: calc(10 / var(--break) * 100vw);
	}
	.ttl_common01 .en {
		font-size: 3.125rem;
		letter-spacing: 0;
		margin-bottom: 3vw;
	}
	.ttl_common01 .ja {
		font-size: 1.5625rem;
		letter-spacing: 0;
	}
	.row_charms01 {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
		margin-bottom: 18vw;
	}
	.row_charms01 .col_img {
		width: 100%;
		max-width: 100%;
		margin-bottom: 5vw;
	}
	.row_charms01 .col_img::before {
		width: calc(522 / var(--break) * 100vw);
		height: calc(522 / var(--break) * 100vw);
		top: calc(40 / var(--break) * 100vw);
		left: calc(-24 / var(--break) * 100vw);
	}
	.row_charms01 .col_img .ccl01 {
		bottom: 24vw;
		right: 13vw;
		z-index: 3;
		top: auto;
		left: auto;
	}
	.row_charms01 .col_img .ccl02 {
		bottom: 2vw;
		right: 25vw;
		left: auto;
		top: auto;
	}
	.row_charms01 .col_img .ccl03 {
		bottom: 2vw;
		right: 1vw;
		left: auto;
		top: auto;
	}
	.row_charms01 .col_txt {
		width: 100%;
		position: relative;
		display: block;
		padding: 11vw 0 10vw;
	}
	.row_charms01 .col_txt::before {
		clip-path: polygon(100% 0, 40% 0, 100% 43%);
	}
	.row_charms01 .col_txt::after {
		clip-path: polygon(0 100%, 0 58%, 59% 100%);
	}
	.row_charms01 .col_txt .wrap {
		width: 100%;
	}
	.wrap_charms01 .num {
		width: calc(156 / var(--break) * 100vw);
		margin-left: 34%;
		margin-bottom: 1vw;
	}
	.wrap_charms01 .copy {
		font-size: 1.25rem;
		letter-spacing: 0;
		margin-bottom: 2vw;
	}
	.wrap_charms01 .txt {
		max-width: calc(646 / var(--break) * 100vw) !important;
        margin-left: auto;
        margin-right: auto;
	}
	.row_charms01.ptn02 {
		margin-bottom: 8.5vw;
	}
	.row_charms01.ptn02 .col_img::before {
		width: calc(522 / var(--break) * 100vw);
		height: calc(522 / var(--break) * 100vw);
		top: calc(-40 / var(--break) * 100vw);
		right: calc(-24 / var(--break) * 100vw);
		left: auto;
	}
	.row_charms01.ptn02 .wrap_charms01 .num {
		width: calc(170 / var(--break) * 100vw);
		margin-left: auto;
		margin-right: 43%;
		margin-bottom: 3vw;
	}
	.row_charms01.ptn02 .col_txt {
        padding: 5.5vw 0 11vw;
    }
	.row_charms01.ptn02 .col_txt::before {
		clip-path: polygon(0 40%, 0 0, 50% 0);
	}
	.row_charms01.ptn02 .col_txt::after {
		clip-path: polygon(44% 100%, 100% 100%, 100% 53%);
	}
	.row_charms02 {
		gap: calc(30 / var(--break) * 100vw) calc(26 / var(--break) * 100vw);
	}
	.row_charms02 .col {
		width: 48%;
		max-width: calc(310 / var(--break) * 100vw);
		height: calc(310 / var(--break) * 100vw);
		background: url(images/page/deco_contact02.png) no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw), url(images/page/deco_contact03.png) no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw) #fff;
	}
	.row_charms02 .col .icn {
		width: calc(145 / var(--break) * 100vw);
	}
	.row_charms02 .col .txt {
		font-size: .8125rem;
		letter-spacing: 0;
	}
	.box_charms01 {
		padding: 7vw 0 7vw;
	}
	.box_charms01 .wrap {
		width: 92%;
	}
	.ttl_charms02 {
		font-size: 1.0625rem;
		letter-spacing: 0;
		margin-bottom: 4vw;
	}
	.tbl_charms01 {
		overflow-y: hidden!important;
	}
	.tbl_charms01 table {
		width: calc(1400 / var(--break) * 100vw);
	}
	.tbl_charms01 thead th,.tbl_charms01 thead td {
		font-size: .725rem;
	}
	.tbl_charms01 tbody th,.tbl_charms01 tbody td {
		font-size: .725rem;
	}
	.tbl_txt01 {
		font-size: 1.125rem;
    	letter-spacing: 0;
		margin-top: 5.5vw;
	}
	.bg_charms01::after {
		background: url(images/page/pattern02.png) repeat center / calc(6 / var(--break) * 100vw) auto;
		height: calc(120 / var(--break) * 100vw);
	}
	.bg_charms01::before {
		height: 98%;
	}
	.wrap_charms02:before {
		width: 100%;
		height: calc(500 / var(--break) * 100vw);
		display: block;
		position: relative;
	}
	.wrap_charms02 .col_txt {
		width: 100%;
		min-height: auto;
		padding: 11vw 0 12vw;
		background: url(images/index/bg_charms01_sp.png) no-repeat center / cover;
	}
	.wrap_charms02 .wrap {
		width: 86%;
	}
	.wrap_charms01 .num {
        width: calc(156 / var(--break) * 100vw);
        margin-left: 34%;
        margin-bottom: 1.5vw;
    }
	.wrap_charms01 .copy {
        font-size: 1.25rem;
        letter-spacing: 0;
        margin-bottom: 2vw;
    }
	.wrap_charms02.num03 {
		margin-bottom: 13.5vw;
	}
	.wrap_charms02.num04  {
		margin-bottom: 13vw;
	}
	.wrap_charms02.num03 .num {
		margin-bottom: 3.5vw;
        width: calc(166 / var(--break) * 100vw);
        margin-left: 33%;
	}
	.wrap_charms02.num04 .num {
        width: calc(169 / var(--break) * 100vw);
        margin-bottom: 3.5vw;
		margin-left: 32%;
    }
	.wrap_charms02.img01 .col_txt {
		background: url(images/index/bg_charms01_sp.png) no-repeat center / cover;
	}
	.wrap_charms02.img02 .col_txt {
		background: url(images/index/bg_charms02_sp.png) no-repeat center / cover;
		padding: 11vw 0 9vw;
	}
	.bg_charms02 {
		background: url(images/index/bg_charms03_sp.jpg) no-repeat center / cover;
		padding: 13vw 0 28vw;
	}
	.bg_charms02 .wrap_charms01 .num {
		width: calc(162 / var(--break) * 100vw);
		margin-left: 34.5%;
		margin-bottom: 1.5vw;
	}
	.bg_charms02 .wrap_charms01 {
		margin-bottom: 5.5vw;
	}
	.row_charms04 {
		width: 92%;
    	margin: auto;
	}
	.row_charms04 .col {
		width: 48%;
	}
	.row_charms04 .col:nth-child(n+3) {
		margin-top: calc(24 / var(--break) * 100vw);
	}
	.row_charms04 .ccl01 {
		left: -4vw;
        bottom: -14vw;
        right: auto;
	}
	.row_charms04 .ccl02 {
		right: -4vw;
        bottom: -14vw;
		left: auto;
		top: auto;
	}
}

/* philosophy
------------------------------------------------------------------*/
.row_philosophy01 .col {
	width: 50%;
} 
.ttl_philosophy02 {
	top: calc(-50 / var(--break) * 100vw);
	right: 0;
	left: 0;
	margin: auto;
	width: calc(162 / var(--break) * 100vw);
}
.ttl_philosophy02 .ja {
	padding: calc(30 / var(--break) * 100vw) calc(5 / var(--break) * 100vw) calc(25 / var(--break) * 100vw);
}
.row_philosophy01::before {
    content: "";
    position: absolute;
    background: url(images/page/pattern02.png) repeat center / auto #5f6168;
    width: 100%;
    height: calc(10 / var(--break) * 100vw);
    right: 0;
    left: 0;
    top: 0;
    margin: auto;
}
@media(min-width: 768px) and (max-width:1599px) {
	.ttl_philosophy02 .ja {
		font-size: 1.625rem;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.ttl_philosophy02 {
		top: calc(-50 / var(--break) * 100vw);
	}
	.ttl_philosophy02 .ja {
        font-size: 1.3125rem;
        padding: calc(15 / var(--break) * 100vw) calc(5 / var(--break) * 100vw) calc(25 / var(--break) * 100vw);
    }
}
@media(max-width: 767px) {
	.index_philosophy {
		margin-bottom: 13vw;
	}
	.row_philosophy01 .col {
		width: 100%;
	}
	.ttl_philosophy01 {
		    margin-bottom: 16vw;
	}
	.ttl_philosophy02 {
		top: calc(-60 / var(--break) * 100vw);
        left: calc(19 / var(--break) * 100vw);
        right: auto;
        width: calc(159 / var(--break) * 100vw);
	}
	.ttl_philosophy02 .ja {
        font-size: .9375rem;
        padding: calc(30 / var(--break) * 100vw) calc(5 / var(--break) * 100vw) calc(26 / var(--break) * 100vw);
        letter-spacing: 0;
    }
	.box_philosophy01 {
		padding: 8vw 0 8vw;
	}
}

/* ideal
------------------------------------------------------------------*/
.ttl_ideal02::before {
	content: "";
    position: absolute;
	background: #000000;
    width: 100%;
    height: 1px;
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.bg_ideal01::before {
	content: "";
    position: absolute;
	background: url("images/index/bg_ideal01.png") no-repeat center / cover;
    width: 100%;
    height: calc(490 / var(--break) * 100vw);
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.img_ideal01 {
	width: calc(646 / var(--break) * 100vw);
}
.bg_ideal02 {
	background: url("images/index/deco_ideal01.png")no-repeat left top / calc(400 / var(--break) * 100vw) auto,url("images/index/deco_ideal02.png")no-repeat right top / calc(400 / var(--break) * 100vw) auto #9d9d9d;
}
.row_ideal01 {
	gap: calc(20 / var(--break) * 100vw) 2%;
}
.row_ideal01 .col {
	width: 32%;
	height: calc(140 / var(--break) * 100vw);
	box-shadow: 0 0 18px 2px rgba(95, 97, 104, 0.5);
	background-color: #fff;
}
.row_ideal01 .col::before {
	content: "";
    position: absolute;
	background: #f7f8f9;
    width: 100%;
    height: 100%;
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.row_ideal01 .col .icn {
	width: calc(31 / var(--break) * 100vw);
	z-index: 1;
}
.row_ideal01 .col .ttl {
	z-index: 1;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_ideal {
		margin-bottom: 13vw;
	}
	.ttl_ideal01 {
		margin-bottom: 5vw;
	}
	.ttl_ideal02 {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.bg_ideal01::before {
		height: calc(490 / var(--break) * 100vw);
	}
	.txt_ideal01 {
		margin-bottom: 6vw;
	}
	.img_ideal01 {
		width: calc(646 / var(--break) * 100vw);
	}
	.row_ideal01 {
		gap: calc(20 / var(--break) * 100vw) calc(22 / var(--break) * 100vw);
	}
	.row_ideal01 .col {
		width: 48%;
		height: calc(148 / var(--break) * 100vw);
		padding-top: 0vw;
		justify-content: center!important;
	}
	.row_ideal01 .col .icn {
		width: calc(31 / var(--break) * 100vw);
	}
	.row_ideal01 .col .ttl {
		font-size: .75rem;
		letter-spacing: 0;
	}
}

/* message
------------------------------------------------------------------*/
.bg_message01::before {
	content: "";
    position: absolute;
	background: url("images/index/bg_message01.png") no-repeat center / cover;
    width: 100%;
    height: calc(650 / var(--break) * 100vw);
	right: 0;
    left: 0;
    margin: auto;
    bottom: 0;
}
.wrap_message01 {
	width: 90%;
    max-width: 1710px;
}
.row_message01 .col_img {
	width: 65%;
    max-width: 1100px;
}
.row_message01 .col_img::before {
	content: "";
    position: absolute;
	background: url("images/index/deco_message01.png") no-repeat center / cover;
    width: 100%;
    height: calc(100% - calc(20 / var(--break) * 100vw));
	left: calc(-20 / var(--break) * 100vw);
	bottom: 0;
	z-index: -1;
}
.row_message01 .col_txt {
	width: 34%;
}
.box_message01 {
	height: calc(174 / var(--break) * 100vw);
	background-color: #ffffffe6;
}
.box_message01::before,.box_message01::after {
	content: "";
    position: absolute;
	border: solid 1px #000000;
    width: calc(20 / var(--break) * 100vw);
    height: calc(20 / var(--break) * 100vw);
	top: calc(6 / var(--break) * 100vw);
	border-bottom: none;
}
.box_message01::before {
	left: calc(6 / var(--break) * 100vw);
	border-right: none;
}
.box_message01::after {
	right: calc(6 / var(--break) * 100vw);
	border-left: none;
}
.box_message01 .ja02::before {
	content: "";
    position: absolute;
	background: #000;
    width: calc(1 / var(--break) * 100vw);
    height: calc(60 / var(--break) * 100vw);
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.box_message02 {
	background-color: #e6e8ec;
}
.box_message02 .box {
    width: calc(60 / var(--break) * 100vw);
    height: calc(60 / var(--break) * 100vw);
    background: #5f6168;
	position: relative;
}
.box_message02 .box > span {
    z-index: 1;
}
.box_message02 .box::before {
    content: "";
    position: absolute;
	background: #7f8186;
    width: 100%;
    height: 100%;
	clip-path: polygon(100% 0, 0% 100%, 100% 100%);
	right: 0;
	left: 0;
	top: 0;
	bottom: 0;
	margin: auto;
}
.box_message02 .txt {
    width: calc(100% - calc(60 / var(--break) * 100vw));
	padding: calc(18 / var(--break) * 100vw) calc(40 / var(--break) * 100vw) calc(14 / var(--break) * 100vw);
}
.box_message03 {
	border-bottom: solid 1px #5f6168;
}
.bg_message02::before {
	content: "";
    position: absolute;
	background: #9d9d9d;
    width: calc(580 / var(--break) * 100vw);
    height: calc(580 / var(--break) * 100vw);
	top: calc(20 / var(--break) * 100vw);
	right: 0;
	z-index: -1;
}
.index_assistant .bg_message02::before,.index_interview .bg_message02::before,.index_hygieneist .bg_message02::before {
	display: none;
}
.row_message02 .col_img {
	width: 45%;
    max-width: 600px;
}
.row_message02 .col_txt {
	width: 51%;
}
.bg_message02.ptn02::before {
    right: auto;
	left: 0;
}
.box_common02 {
	background: url(images/page/deco_contact02.png) no-repeat left calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw), url(images/page/deco_contact03.png) no-repeat right calc(5 / var(--break) * 100vw) top calc(5 / var(--break) * 100vw) / calc(26 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.box_message01 .ja02 {
		font-size: 2.9375rem;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.box_message01 .ja01 {
		margin-right: calc(15 / var(--break) * 100vw);
	}
	.box_message01 .ja02 {
		font-size: 2.5rem;
		padding-left: calc(15 / var(--break) * 100vw);
	}
	.bg_message01::before {
		height: calc(450 / var(--break) * 100vw);
	}
	.bg_message02::before {
		width: calc(530 / var(--break) * 100vw);
		height: calc(530 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.index_message {
		margin-top: 6vw;
		margin-bottom: 24vw;
	}
	.ttl_message01 {
        margin-bottom: 8vw;
    }
	.bg_message01 {
		padding-bottom: 0;
	}
	.wrap_message01 {
		width: 100%;
		max-width: 100%;
	}
	.bg_message01::before {
		background: url(images/index/bg_message01_sp.png) no-repeat center / cover;
		height: calc(665 / var(--break) * 100vw);
	}
	.row_message01 .col_img {
		width: 100%;
		max-width: calc(724 / var(--break) * 100vw);
		padding-bottom: calc(10 / var(--break) * 100vw);
	}
	.row_message01 .col_img::before {
		height: calc(100% - calc(10 / var(--break) * 100vw));
		left: calc(-10 / var(--break) * 100vw);
	}
	.row_message01 .col_txt {
		width: 100%;
		padding-top: 7vw;
		padding-bottom: 6vw;
	}
	.box_message01 {
		width: calc(584 / var(--break) * 100vw);
		height: calc(176 / var(--break) * 100vw);
		margin: auto;
	}
	.box_message01 .ja01 {
		font-size: .9375rem;
    	letter-spacing: 0;
	}
	.box_message01 .ja02 {
		font-size: 1.875rem;
    	letter-spacing: 0;
	}
	.box_message02 .box {
		width: calc(80 / var(--break) * 100vw);
		height: calc(80 / var(--break) * 100vw);
		font-size: 1.5625rem;
	}
	.box_message02 .txt {
		width: calc(100% - calc(80 / var(--break) * 100vw));
		font-size: 1.125rem;
		letter-spacing: 0;
		padding: calc(9 / var(--break) * 100vw) calc(55 / var(--break) * 100vw) calc(11 / var(--break) * 100vw) calc(28 / var(--break) * 100vw);
	}
	.box_message03 {
		border-bottom: solid 1px #5f6168;
		padding: 1.5vw 4vw 6vw;
	}
	.bg_message02 {
		margin-bottom: 8vw;
	}
	.bg_message02::before {
		width: calc(702 / var(--break) * 100vw);
		height: calc(679 / var(--break) * 100vw);
		top: calc(20 / var(--break) * 100vw);
	}
	.row_message02 .col_img {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
		margin-bottom: 10vw;
	}
	.row_message02 .col_txt {
		width: 100%;
	}
	.row_message02 .box_message02 .txt {
        padding: calc(12 / var(--break) * 100vw) calc(55 / var(--break) * 100vw) calc(13 / var(--break) * 100vw) calc(28 / var(--break) * 100vw);
        line-height: 1.6;
    }
	.box_message04 {
		padding: 6.5vw 4vw 6vw;
	}
	.box_message04 .ttl {
		font-size: 1.125rem;
    	letter-spacing: 0;
	}
}

/* person
------------------------------------------------------------------*/
.bg_person01::before {
	content: "";
    position: absolute;
	background: url("images/index/bg_person01.png") no-repeat center / cover;
    width: 100%;
    height: calc(600 / var(--break) * 100vw);
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.img_person01 {
	width: calc(291 / var(--break) * 100vw);
} 
.row_person01 .col_img {
	width: 20%;
    max-width: 300px;
}
.row_person01 .col_txt {
	width: 72.5%;
	border-radius: calc(6 / var(--break) * 100vw);
}
.row_person01 .col_txt::before {
	content: "";
    position: absolute;
    width: 0;
    height: 0;
    border-style: solid;
    border-color: transparent #e6e8ec transparent transparent;
    border-width: calc(15 / var(--break) * 100vw) calc(60 / var(--break) * 100vw) calc(15 / var(--break) * 100vw) 0px;
    top: calc(38 / var(--break) * 100vw);
    left: calc(-59 / var(--break) * 100vw);
}
.row_person01.ptn02 .col_txt::before {
	border-color: transparent transparent transparent #f3e5cc;
	border-width: calc(15 / var(--break) * 100vw) 0px calc(15 / var(--break) * 100vw) calc(60 / var(--break) * 100vw);
    right: calc(-59 / var(--break) * 100vw);
	left: auto;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.img_person01 {
		width: calc(253 / var(--break) * 100vw);
	}
	.bg_person01::before {
		height: calc(500 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.index_person {
		margin-bottom: 14vw;
	}
	.ttl_person01 {
		margin-bottom: 8vw;
	}
	.bg_person01 {
		margin-bottom: 7vw;
	}
	.img_person01 {
		width: calc(204 / var(--break) * 100vw);
	}
	.bg_person01::before {
		background: url(images/index/bg_person01_sp.png) no-repeat center / cover;
		height: calc(336 / var(--break) * 100vw);
	}
	.row_person01 {
		margin-bottom: 7vw;
	}
	.row_person01 .col_img {
		width: 100%;
		max-width: calc(180 / var(--break) * 100vw);
		margin: 0 auto 8vw;
	}
	.row_person01 .col_txt {
        width: 100%;
        border-radius: calc(6 / var(--break) * 100vw);
        padding: 4vw 4vw 6vw;
    }
	.row_person01 .col_txt .lh22 {
        line-height: 2;
    }
	.row_person01 .col_txt::before {
		border-color: transparent transparent #e6e8ec transparent;
		border-width: 0 calc(9 / var(--break) * 100vw) calc(37 / var(--break) * 100vw) calc(9 / var(--break) * 100vw);
		top: calc(-35 / var(--break) * 100vw);
		left: 0;
		right: 0;
		margin: auto;
	}
	.row_person01.ptn02 .col_txt::before {
		border-color: transparent transparent #f3e5cc transparent;
		border-width: 0 calc(9 / var(--break) * 100vw) calc(37 / var(--break) * 100vw) calc(9 / var(--break) * 100vw);
		top: calc(-35 / var(--break) * 100vw);
		right: 0;
		left: 0;
	}
}

/* contact02
------------------------------------------------------------------*/
.ttl_contact01 .en {
	font-size: 8.75rem;
}
.bg_contact02-01 .deco01,.bg_contact02-01 .deco02 {
	width: calc(340 / var(--break) * 100vw);
	bottom: 0;
	z-index: 1;
}
.bg_contact02-01 .deco01 {
	left: 10.7%;
}
.bg_contact02-01 .deco02 {
	right: 11%;
}
.bg_contact02-01 .wrap {
	width: 83%;
}
.ttl_contact02-01 span {
	border-bottom: dotted calc(2 / var(--break) * 100vw) #000;
}
.ttl_contact02-02 {
	height: calc(70 / var(--break) * 100vw);
}
.bg_contact02-02::before {
	content: "";
    position: absolute;
	background: #5f6168;
    width: 100%;
    height: calc(240 / var(--break) * 100vw);
	right: 0;
	left: 0;
	margin: auto;
	top: 0;
	z-index: -1;
}
.row_contact02-01 .col {
	width: 22%;
    max-width: 330px;
	position: relative;
}
.row_contact02-01 .col:not(:last-child)::after {
	content: "";
    position: absolute;
	background: url("images/page/arw02.svg") no-repeat center / cover;
    width: calc(26 / var(--break) * 100vw);
    height: calc(50 / var(--break) * 100vw);
	top: 0;
	bottom: 0;
	margin: auto;
	right: calc(-45 / var(--break) * 100vw);
}
.row_contact02-01 .col .wrap::before,.row_contact02-01 .col .wrap::after {
	content: "";
    position: absolute;
    width: calc(100 / var(--break) * 100vw);
    height: calc(100 / var(--break) * 100vw);
}
.row_contact02-01 .col .wrap::before {
	background: url("images/index/deco_contact02-01.png") no-repeat center / cover;
	left: calc(6 / var(--break) * 100vw);
	top: calc(6 / var(--break) * 100vw);
}
.row_contact02-01 .col .wrap::after {
	background: url("images/index/deco_contact02-02.png") no-repeat center / cover;
	right: calc(6 / var(--break) * 100vw);
	bottom: calc(6 / var(--break) * 100vw);
}
.bg_contact02-03 {
	background: url("images/index/bg_contact02-01.png")no-repeat center / cover;
}
.img_contact02-1 {
	width: calc(470 / var(--break) * 100vw);
}
.deco_contact02-01 {
	width: calc(801 / var(--break) * 100vw);
	height: calc(378 / var(--break) * 100vw);
	background: url("images/index/bg_contact02-02.png")no-repeat center / cover;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: 0;
}
.deco_contact02-01 .en01 {
	width: calc(205 / var(--break) * 100vw);
}
.deco_contact02-01 .en02 {
	font-size: 20rem;
	line-height: .8;
	right: 0;
	left: 0;
	top: auto;
    bottom: -2%;
	margin: auto;
	color: #f7f8f9;
	z-index: -1;
}
.ttl_contact02-04 span {
    border-bottom: dotted calc(2 / var(--break) * 100vw) #000;
}
@media(min-width: 768px) and (max-width:1599px) {
	.bg_contact02-01 .deco01 {
		left: 4.7%;
	}
	.bg_contact02-01 .deco02 {
		right: 4.7%;
	}
	.row_contact02-01 .col .box {
		margin-bottom: calc(40 / var(--break) * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_contact02-01 .deco01, .bg_contact02-01 .deco02 {
		width: calc(291 / var(--break) * 100vw);
	}
	.bg_contact02-01 .deco01 {
		left: 2%;
	}
	.bg_contact02-01 .deco02 {
		right: 2%;
	}
	.row_contact02-01 .col .box {
		margin-bottom: calc(40 / var(--break) * 100vw);
	}
	.row_contact02-01 .col .wrap {
		padding: calc(30 / var(--break) * 100vw) calc(30 / var(--break) * 100vw) calc(40 / var(--break) * 100vw);
	}
	.row_contact02-01 .col .ttl {
		font-size: 2rem;
	}
	.row_contact02-01 .col:not(:last-child)::after {
		width: calc(26 / var(--break) * 100vw);
		height: calc(50 / var(--break) * 100vw);
		right: calc(-39 / var(--break) * 100vw);
	}
	.img_contact02-1 {
		width: calc(349 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.index_contact {
		margin-bottom: 14vw;
	}
	.ttl_contact01 .en {
		font-size: 3.125rem;
	}
	.bg_contact02-01 {
		padding: 8vw 0 54vw;
	}
	.bg_contact02-01 .deco01,.bg_contact02-01 .deco02 {
		width: calc(266 / var(--break) * 100vw);
	}
	.bg_contact02-01 .deco01 {
		left: 7.7%;
	}
	.bg_contact02-01 .deco02 {
		right: 7%;
	}
	.bg_contact02-01 .wrap {
		width: 92%;
	}
	.ttl_contact02-01 {
		font-size: 1.4375rem;
		letter-spacing: 0;
    	margin-bottom: 5vw;
	}
	.ttl_contact02-02 {
		height: calc(80 / var(--break) * 100vw);
		font-size: 1.25rem;
		letter-spacing: 0;
		margin-bottom: 5vw;
	}
	.txt_contact02-01 {
		font-size: 1rem;
    	letter-spacing: 0;
	}
	.txt_contact02-02 {
		text-align: left;
		line-height: 2;
	}
	.ttl_contact02-03 {
		font-size: 1.4375rem;
    	letter-spacing: 0;
		margin-bottom: 5vw;
	}
	.row_contact02-01 {
		margin-right: auto;
		width: 100%;
		max-width: calc(660 / var(--break) * 100vw);
	}
	.row_contact02-01 .col {
		width: 48%;
		max-width: calc(310 / var(--break) * 100vw);
		position: relative;
	}
	.row_contact02-01 .col:nth-child(n+3) {
		margin-top: calc(40 / var(--break) * 100vw);
	}
	.row_contact02-01 .col:not(:last-child)::after {
		width: calc(26 / var(--break) * 100vw);
		height: calc(50 / var(--break) * 100vw);
		top: 1vw;
		right: calc(-36 / var(--break) * 100vw);
	}
	.row_contact02-01 .col .wrap {
		height: calc(310 / var(--break) * 100vw);
		padding: 5vw 3.5vw 6.5vw;
	}
	.row_contact02-01 .col .box {
		font-size: .6875rem;
        line-height: 1.6;
        letter-spacing: 0;
        margin-bottom: 7vw;
	}
	.row_contact02-01 .col .ttl {
		font-size: 1.25rem;
		letter-spacing: 0;
	}
	.bg_contact02-02 {
		padding-bottom: 13vw;
	}
	.bg_contact02-03 {
		background: url(images/index/bg_contact02-01_sp.png) no-repeat center / cover;
		padding-top: 17vw;
	}
	.bg_contact02-03 .inner1340 {
		max-width: 100%;
	}
	.img_contact02-1 {
		width: calc(232 / var(--break) * 100vw);
	}
	.deco_contact02-01 {
		width: calc(641 / var(--break) * 100vw);
		height: calc(304 / var(--break) * 100vw);
		padding-top: 4vw;
	}
	.deco_contact02-01 .en01 {
		width: calc(168 / var(--break) * 100vw);
		margin-bottom: 1vw;
	}
	.deco_contact02-01 .en02 {
		font-size: 8rem;
		line-height: .8;
		right: 0;
		left: 0;
		top: 0;
		bottom: 0;
		margin: auto;
		color: #f7f8f9;
		z-index: -1;
	}
	.ttl_contact02-04 {
		font-size: 1rem;
    	letter-spacing: 0;
	}
}

/* educational
------------------------------------------------------------------*/
.ttl_educational01 {
	width: 90%;
    max-width: 1240px;
}
.row_educational01 .col {
	width: 31%;
}
.row_educational01 .col .wrap {
	border: solid 1px #5f6168;
}
.box_educational01 {
	background: url("images/index/deco_educational01.svg")no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(100 / var(--break) * 100vw),url("images/index/deco_educational02.svg")no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(100 / var(--break) * 100vw);
}
.row_educational02 {
	width: 86.5%;
    margin-right: 5%;
    margin-left: auto;
}
.row_educational02 .col_txt {
	width: 57%;
}
.row_educational02 .col_img {
	width: 41%;
    max-width: 500px;
}
.row_educational02 .col_img::before {
	content: "";
    position: absolute;
	background: url("images/page/pattern01.png") repeat center / auto;
    width: calc(300 / var(--break) * 100vw);
    height: calc(300 / var(--break) * 100vw);
	left: calc(-20 / var(--break) * 100vw);
	bottom: calc(-20 / var(--break) * 100vw);
	z-index: -1;
}
@media(min-width: 768px) and (max-width:1599px) {
	.row_educational02 .col_txt {
		width: 54%;
	}
}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.ttl_contact02 {
		margin-bottom: 14vw;
	}
	.ttl_educational01 {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
		font-size: 1.1875rem;
		letter-spacing: 0;
	}
	.bg_educational01 {
		padding: 11vw 0 10vw;
		margin-bottom: 17vw;
	}
	.bg_educational01.mb60 {
		margin-bottom: 8vw;
	}
	.bg_educational01 {
		margin-bottom: 14vw; 
	}
	.row_educational01 {
		width: 100%;
		max-width: calc(646 / var(--break) * 100vw);
		margin: auto;
	}
	.row_educational01 .col {
		width: 100%;
	}
	.row_educational01 .col:nth-child(n+2) {
		margin-top: calc(60 / var(--break) * 100vw);
	}
	.row_educational01 .col .wrap {
		padding-bottom: 3vw;
	}
	.row_educational01 .col .ttl {
		font-size: 1rem;
        letter-spacing: 0;
        padding: 1.5vw 1vw 1.5vw;
        margin-bottom: 1vw;
	}
	.row_educational01 .col .txt {
		line-height: 2;
	}
	.box_educational01 {
		background: url(images/index/deco_educational01.svg) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(100 / var(--break) * 100vw), url(images/index/deco_educational02.svg) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(100 / var(--break) * 100vw);
		padding: 10vw 0vw 10vw;
	}
	.row_educational02 {
		width: calc(646 / var(--break) * 100vw);
		margin-right: auto;
		margin-left: auto;
	}
	.row_educational02 .col_img {
		width: 100%;
		max-width: 100%;
		margin-bottom: 8vw;
	}
	.row_educational02 .col_txt {
		width: 100%;
	}
	.row_educational02 .col_txt .ttl {
		font-size: 1.25rem;
		letter-spacing: 0;
		text-align: center;
		margin-bottom: 4vw;
	}
	.row_educational02 .col_txt .txt {
		line-height: 2;
	}
}

/* interview
------------------------------------------------------------------*/
.row_interview01 {
	width: 92%;
    max-width: 1720px;
	gap: 0 .5%;
}
.row_interview01 .col {
	width: 19.5%;
    max-width: 334px;
}
.row_interview01 .col:nth-child(2),.row_interview01 .col:nth-child(4) {
	margin-top: calc(50 / var(--break) * 100vw);
}
.row_interview01 .col:nth-child(3) {
	margin-top: calc(100 / var(--break) * 100vw);
}
.btn_interview {
	width: calc(280 / var(--break) * 100vw);
	position: absolute;
    bottom: 0;
    right: 0;
    left: 0;
    transform: translateY(50%);
    -webkit-transform: translateY(50%);
}
.btn_interview a {
	height: calc(120 / var(--break) * 100vw);
}
.btn_interview a::before {
	content: "";
    position: absolute;
    width: calc(12 / var(--break) * 100vw);
    height: calc(12 / var(--break) * 100vw);
    border-bottom: calc(1 / var(--break) * 100vw) solid #fff;
    border-right: calc(1 / var(--break) * 100vw) solid #fff;
    transform: rotate(45deg);
    right: calc(21 / var(--break) * 100vw);
    top: 0;
    bottom: 0;
    margin: auto;
    border-left: none;
    border-top: none;
}
@media(min-width: 768px) and (max-width:1599px) {
	.btn_interview {
		width: calc(255 / var(--break) * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.btn_interview {
		width: calc(200 / var(--break) * 100vw);
	}
	.btn_interview a {
		height: calc(100 / var(--break) * 100vw);
	}
	.btn_interview .txt {
		font-size: 1.3125rem;
	}
	.btn_interview a::before {
		width: calc(10 / var(--break) * 100vw);
		height: calc(10 / var(--break) * 100vw);
		right: calc(15 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.ttl_interview01 {
		margin-bottom: 8vw;
	}
	.row_interview01 {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
		gap: calc(130 / var(--break) * 100vw) calc(32 / var(--break) * 100vw);
	}
	.row_interview01 .col {
		width: 48%;
		max-width: calc(328 / var(--break) * 100vw);
	}
	.row_interview01 .col:nth-child(2),.row_interview01 .col:nth-child(4) {
		margin-top: calc(0 / var(--break) * 100vw);
	}
	.btn_interview {
		width: calc(280 / var(--break) * 100vw);
		bottom: -3%;
	}
	.btn_interview a {
		height: calc(120 / var(--break) * 100vw);
	}
	.btn_interview a::before {
        width: calc(16 / var(--break) * 100vw);
        height: calc(16 / var(--break) * 100vw);
        border-bottom: calc(1 / var(--break) * 100vw) solid #fff;
        border-right: calc(1 / var(--break) * 100vw) solid #fff;
        right: calc(21 / var(--break) * 100vw);
    }
	.btn_interview .txt {
		font-size: .875rem;
		letter-spacing: 0;
	}
	.row_interview01 .col:nth-child(3) {
		margin-top: calc(0 / var(--break) * 100vw);
	}
}

/* hygieneist
------------------------------------------------------------------*/
.bg_hygieneist01::before {
	content: "";
    position: absolute;
	background: url(images/index/bg_hygieneist01.png) no-repeat center / cover;
    width: 100%;
    height: calc(650 / var(--break) * 100vw);
    bottom: 0;
	right: 0;
	left: 0;
	margin: auto;
	z-index: -1;
}
.bg_hygieneist01.ptn02::before {
    background: url(images/index/bg_hygieneist02.png) no-repeat center / cover;
}
.img_hygieneist01 {
	width: 60%;
    max-width: 900px;
}
.box_hygieneist01 {
	padding: 0 calc(55 / var(--break) * 100vw);
	height: calc(272 / var(--break) * 100vw);
	top: calc(100 / var(--break) * 100vw);
	bottom: 0;
	margin: auto;
	left: 0;
}
.box_hygieneist01.ptn02 {
    left: auto;
	right: 0;
}
.box_hygieneist01::before {
	content: "";
    position: absolute;
	border: solid 1px #000;
	border-left: none;
	border-top: none;
    width: calc(20 / var(--break) * 100vw);
    height: calc(20 / var(--break) * 100vw);
	right: calc(10 / var(--break) * 100vw);
	bottom: calc(10 / var(--break) * 100vw);
}
.box_hygieneist01::after {
	content: "";
    position: absolute;
    background: url(images/index/num_hygieneist01.png) no-repeat center / cover;
    width: calc(243 / var(--break) * 100vw);
    height: calc(123 / var(--break) * 100vw);
    right: 0;
    left: calc(-108 / var(--break) * 100vw);
    margin: auto;
    top: calc(-100 / var(--break) * 100vw);
}
.box_hygieneist01.num2::after {
    background: url(images/index/num_hygieneist02.png) no-repeat center / cover;
}
.box_hygieneist01.num3::after {
	width: calc(237 / var(--break) * 100vw);
    height: calc(132 / var(--break) * 100vw);
    background: url(images/index/num_hygieneist03.png) no-repeat center / cover;
}
.row_message02.ptn02 .col_img {
	position: relative;
}
.row_message02.ptn02 .col_img::before {
	content: "";
    position: absolute;
	background: #5f6168;
    width: 100%;
    height: 100%;
	right: calc(-20 / var(--break) * 100vw);
	bottom: calc(-20 / var(--break) * 100vw);
	z-index: -1;
}
.row_message02.ptn02.left .col_img::before {
	left: calc(-20 / var(--break) * 100vw);
	right: auto;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_hygieneist01::before {
		height: 100%;
	}
	.box_hygieneist01::after {
		width: calc(198 / var(--break) * 100vw);
        height: calc(101 / var(--break) * 100vw);
        left: calc(-38 / var(--break) * 100vw);
        top: calc(-86 / var(--break) * 100vw);
	}
	.box_hygieneist01.num3::after {
		width: calc(193 / var(--break) * 100vw);
        height: calc(109 / var(--break) * 100vw);
	}
	.box_hygieneist01 {
		width: 43%;
		padding: 0 calc(55 / var(--break) * 100vw);
		height: calc(272 / var(--break) * 100vw);
		top: calc(100 / var(--break) * 100vw);
	}
	.box_hygieneist01 .ja {
		font-size: 3rem;
	}
}
@media(max-width: 767px) {
	.index_hygieneist {
		margin-bottom: 14vw;
	}
	.ttl_hygieneist01 {
        margin-bottom: 8vw;
    }
	.bg_hygieneist01 {
		padding-top: 20vw;
	}
	.bg_hygieneist01::before {
		background: url(images/index/bg_hygieneist01_sp.png) no-repeat center / cover;
		height: calc(870 / var(--break) * 100vw);
	}
	.bg_hygieneist01.ptn02::before {
		background: url(images/index/bg_hygieneist02_sp.png) no-repeat center / cover;
	}
	.wrap_hygieneist01 {
		display: flex;
    	flex-direction: column;
	}
	.img_hygieneist01 {
		width: calc(539 / var(--break) * 100vw);
		max-width: 100%;
		margin: auto;
		order: 2;
	}
	.box_hygieneist01 {
		padding: 0;
		width: calc(419 / var(--break) * 100vw);
		height: calc(267 / var(--break) * 100vw);
		top: auto;
		bottom: auto;
		margin: 0 auto 5vw;
		left: auto;
		right: auto;
		position: relative;
	}
	.box_hygieneist01 .ja {
		font-size: 1.875rem;
		letter-spacing: 0;
	}
	.box_hygieneist01 .en {
		font-size: .8125rem;
		letter-spacing: 0;
	}
	.row_message02.ptn02 .col_img::before {
		right: calc(-10 / var(--break) * 100vw);
		bottom: calc(-10 / var(--break) * 100vw);
	}
	.row_message02.ptn02.left .col_img::before {
		left: calc(-10 / var(--break) * 100vw);
		right: auto;
	}
}

/* assistant
------------------------------------------------------------------*/
.ttl_assistant01 .en {
	font-size: 8.75rem;
}
@media(max-width: 767px) {
	.index_assistant {
		margin-bottom: 14vw;
	}
	.ttl_assistant01 {
		margin-bottom: 9vw;
	}
	.ttl_assistant01 .en {
		font-size: 3.125rem;
	}
	.index_assistant .box_hygieneist01 {
        width: calc(543 / var(--break) * 100vw);
    }
}

/* recruit
------------------------------------------------------------------*/
.row_recruit01 .col {
	width: 48%;
}
.row_recruit01 .col:nth-child(n+3) {
	margin-top: calc(20 / var(--break) * 100vw);
}
.row_recruit01 .col a {
	height: calc(80 / var(--break) * 100vw);
}
.row_recruit01 .col a::before {
    content: "";
    position: absolute;
    width: calc(12 / var(--break) * 100vw);
    height: calc(12 / var(--break) * 100vw);
    border-bottom: calc(1 / var(--break) * 100vw) solid #fff;
    border-right: calc(1 / var(--break) * 100vw) solid #fff;
    transform: rotate(45deg);
    right: calc(21 / var(--break) * 100vw);
    top: 0;
    bottom: 0;
    margin: auto;
    border-left: none;
    border-top: none;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_recruit {
		margin-bottom: 14vw;
	}
	.ttl_recruit02 {
		margin-bottom: 8vw;
	}
	.row_recruit01 {
		margin-bottom: 8vw;
	}
	.row_recruit01 .col .txt {
		font-size: .9375rem;
		letter-spacing: 0;
	}
	.row_recruit01 .col:nth-child(n+3) {
		margin-top: calc(20 / var(--break) * 100vw);
	}
	.row_recruit01 .col a {
		height: auto;
        padding: 2vw 6vw 2vw 2vw;
	}
	.row_recruit01 .col a::before {
		width: calc(16 / var(--break) * 100vw);
		height: calc(16 / var(--break) * 100vw);
		right: calc(21 / var(--break) * 100vw);
	}
	.ttl_recruit01 {
		font-size: 1.1875rem;
		letter-spacing: 0;
		padding: 1.7vw;
		margin-bottom: 6vw;
	}
}

/* clinic
------------------------------------------------------------------*/
/*スライダー*/
.slide_clinic01 .slide img { 
	width: calc(480 / var(--break) * 100vw); 
} 
.slide_clinic01 .slide li { 
	z-index: 1; 
}
.logo_clinic {
	width: calc(288 / var(--break) * 100vw);
}
.bg_clinic01::before {
	content: "";
    position: absolute;
	background: #e6e8ec;
    width: 100%;
    height: calc(448 / var(--break) * 100vw);
	right: 0;
	left: 0;
	margin: auto;
	bottom: 0;
	z-index: -1;
}
.row_clinic01 > .col_l {
    width: 48.5%;
}
.row_clinic01 .row_contact01 .col {
    max-width: 100%;
}
.row_clinic01 .row_contact01 .col a {
    height: calc(200 / var(--break) * 100vw);
}
.row_clinic01 .row_contact01 .col .icn {
     width: calc(34 / var(--break) * 100vw);
}
.row_clinic01 > .col_r {
    width: 45%;
    max-width: 530px;
}
.clinic_map {
	width: 91%;
    max-width: 1720px;
}
.bg_clinic02::before {
	content: "";
    position: absolute;
	background: #e6e8ec;
    width: 100%;
    height: 50%;
	right: 0;
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
.bg_clinic02.ptn02::before {
	height: 56%;
}
.tbl_foot .box {
    background: #5f6168;
}
.tbl_foot.tbl_time02.ptn02 tbody tr:first-child th {
    padding-left: 0;
}
.tbl_foot.tbl_time02.day8 tbody th {
    padding-right: calc(0 / var(--break) * 100vw);
}
.ttl_clinic01 .icn {
	width: calc(40 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_clinic {
		margin-top: 13vw;
		margin-bottom: 14vw;
	}
	.bg_clinic01 {
		padding-bottom: 6vw;
	}
	.ttl_clinic02 {
		margin-bottom: 7vw;
	}
	.slide_clinic01 {
		margin-bottom: 9vw;
	}
	.logo_clinic {
		width: calc(288 / var(--break) * 100vw);
		margin-bottom: 4vw;
	}
	.address_foot {
		line-height: 1.6;
	}
	.bg_clinic01::before {
		height: calc(892 / var(--break) * 100vw);
	}
	.row_clinic01 > .col_l {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_clinic01 .row_contact01 .col a {
		height: calc(200 / var(--break) * 100vw);
	}
	.row_clinic01 .row_contact01 .col .icn {
		 width: calc(34 / var(--break) * 100vw);
	}
	.row_clinic01 .tel_common .ja {
        font-size: .8125rem;
		margin-bottom: 2vw;
    }
	.row_clinic01 .tel_common .flex.ccc {
        font-size: .8125rem;
		margin-bottom: 0vw;
    }
	.row_clinic01 .tel_common .num {
        font-size: 1.6875rem;
    }
	.row_clinic01 > .col_r {
		width: 100%;
		max-width: calc(702 / var(--break) * 100vw);
		margin-top: calc(65/ var(--break) * 100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.bg_clinic02 {
		padding: 4vw 0 6vw;
	}
	.wrap_insta {
		margin-bottom: 10vw;
	}
	.wrap_clinic01 {
		max-width: calc(646 / var(--break) * 100vw) !important;
        margin-left: auto;
        margin-right: auto;
	}
	.ttl_clinic01 {
		padding-bottom: 5vw;
	}
	.ttl_clinic01 .icn {
		width: calc(50 / var(--break) * 100vw);
	}
	.ttl_clinic01 .ja {
		font-size: 1.125rem;
		letter-spacing: 0;
	}
}

/* insta
------------------------------------------------------------------*/
.wrap_insta .btn_insta {
	top: 49%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.btn_insta {
	width: calc(100 / 1920 * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.btn_insta {
		width: calc(100 / 1599 * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.btn_insta {
		width: calc(100 / 1299 * 100vw);
	}
}
@media(max-width: 767px) {
	.btn_insta {
		width: calc(100 / 750 * 100vw);
	}
}

/* clinic02
------------------------------------------------------------------*/
.logo_clinic02 {
	width: calc(580 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_clinic02 {
		margin-bottom: 14vw;
	}
	.bg_clinic01.ptn02::before {
        height: calc(828 / var(--break) * 100vw);
    }
	.wrap_clinic01.mb50 {
		margin-bottom: 5vw;
	}
	.bg_clinic02::before {
		height: 60%;
	}
}

/* form
------------------------------------------------------------------*/
.tbl_form01 {
	margin-top: calc(50 / var(--break) * 100vw);
	margin-bottom: 0;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {

}
@media(max-width: 767px) {
	.index_form {
		padding-bottom: 12.5vw;
	}
	.ttl_form01 {
		margin-bottom: 8vw;
	}
	.tbl_form01 {
		margin-top: calc(115 / var(--break) * 100vw);
	}
	.tbl_form01 th {
        font-size: 1.25rem;
    }
	.tbl_form01 .require span:after {
        width: calc(100 / var(--break) * 100vw);
        height: calc(60 / var(--break) * 100vw);
        line-height: calc(60 / var(--break) * 100vw);
        font-size: .875rem;
        letter-spacing: 0;
        position: relative;
        margin-left: 3vw;
        top: -1vw;
    }
	.tbl_recruit td input {
        padding: 3vw 2vw;
    }
	.adjust_form01 {
		padding-top: calc(35 / var(--break) * 100vw) !important;
		padding-bottom: calc(63 / var(--break) * 100vw) !important;
	}
	.tbl_form01 tr:last-child .adjust_form01 {
		padding-bottom: calc(0 / var(--break) * 100vw) !important;
	}
}

/* フッター footer
------------------------------------------------------------------*/
.logo_foot {
	width: calc(382 / var(--break) * 100vw);
}
.row_foot01 > .col {
	border: solid 1px #5f6168;
	width: 49%;
}
.ttl_foot01 {
	border-top: solid 1px #000;
	border-bottom: solid 1px #000;
	padding: calc(12 / var(--break) * 100vw) calc(15 / var(--break) * 100vw);
}
.tel_foot a {
	height: calc(160 / var(--break) * 100vw);
}
.tel_foot .icn {
	width: calc(34 / var(--break) * 100vw);
}
.row_foot01 .tbl_foot {
    margin-left: auto;
	margin-right: auto;
}
.foot_map .btn_map {
    width: calc(300 / var(--break) * 100vw);
    position: static;
    margin: 0 auto calc(30 / var(--break) * 100vw);
}
.foot_map .map {
    padding: calc(300 / var(--break) * 100vw) 0 0 0;
}
.row_foot02 .col {
	width: 48.5%;
    max-width: 600px;
}
.pagetop {
	position: fixed;
	right: calc(30 / var(--break) * 100vw);
	bottom: calc(30 / var(--break) * 100vw);
	z-index: 1000;
	width: calc(80 / var(--break) * 100vw);
}
.copyright {
	height: calc(80 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.main_foot .inner1340 {
		max-width: calc(726 / var(--break) * 100vw);
	}
	.row_foot01 {
		display: block;
	}
	.logo_foot {
		width: calc(362 / var(--break) * 100vw);
	}
	.row_foot01 > .col_l {
		width: 100%;
		max-width: 100%;
		padding: 11vw 1.5vw 10vw;
	}
	.ttl_foot01 {
		padding: calc(8 / var(--break) * 100vw) calc(15 / var(--break) * 100vw);
		font-size: 1.125rem;
		letter-spacing: 0;
		margin-bottom: 7vw;
		width: 91%;
        margin-left: auto;
        margin-right: auto;
	}
	.tel_foot {
		width: calc(600 / var(--break) * 100vw) !important;
    	margin: 0 auto 5vw;
	}
	.tel_foot .ja {
        font-size: .8125rem;
        margin-bottom: 2vw;
    }
	.tel_foot .flex.ccc {
		margin-bottom: 4vw;
	}
	.tel_foot .icn {
		width: calc(43 / var(--break) * 100vw);
	}
	.tel_foot .num {
        font-size: 1.6875rem;
    }
	.tbl_foot .tbl_caption {
		line-height: 1.5;
	}
	.foot_map .btn_map {
		width: calc(600 / var(--break) * 100vw);
		position: static;
		margin: 0 auto calc(60 / var(--break) * 100vw);
	}
	.foot_map {
		width: 100%;
    	max-width: calc(646 / var(--break) * 100vw);
		margin: calc(50 / var(--break) * 100vw) auto 0;
	}
	.foot_map .map {
		padding: calc(500 / var(--break) * 100vw) 0 0 0;
	}
	.row_foot01 > .col_r {
		width: 100%;
		max-width: 100%;
		padding: 11vw 1.5vw 10vw;
		margin: calc(60 / var(--break) * 100vw) auto 0;
	}
	.bg_foot01 {
		padding: 10vw 0 10vw;
	}
	.row_foot02 {
		width: 100%;
		max-width: calc(600 / var(--break) * 100vw);
		margin: auto;
	}
	.row_foot02 .col {
		width: 100%;
		max-width: 100%;
	}
	.row_foot02 .col:nth-child(n+2) {
		margin-top: calc(45 / var(--break) * 100vw);
	}
	.copyright {
		font-size: 75%;
		letter-spacing: 0;
		padding: 4vw 0 20vw;
		height: auto;
	}
	.pagetop {
		display: none!important;
	}
	.fix {
		position: fixed;
		width: 100%;
		left: 0;
		bottom: 0;
		z-index: 9;
	}
	.fix_tel {
		width: calc(300 / var(--break) * 100vw);
	}
	.fix_web {
		width: calc(300 / var(--break) * 100vw);
	}
	.pagetop_sp {
		width: calc(150 / var(--break) * 100vw);
	}
	.fix a {
		display: block;
	}
}

/* グーグルマップ
------------------------------------------------------------------*/
.map {
	position: relative;
	width: 100%;
	padding: calc(500 / var(--break) * 100vw) 0 0 0;
	overflow: hidden;
}
.map iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	margin-top: calc(-150 / var(--break) * 100vw);
	height: calc(100% + calc(150 / var(--break) * 100vw));
}
.btn_map {
	width: calc(300 / var(--break) * 100vw);
	font-size: 1.25rem;
	letter-spacing: .1em;
	left: calc(30 / var(--break) * 100vw);
	top: calc(30 / var(--break) * 100vw);
	z-index: 1;
}
.btn_map a {
	height: calc(60 / var(--break) * 100vw);
	background: url("images/page/icn_map.svg")no-repeat left calc(30 / var(--break) * 100vw) center / calc(16 / var(--break) * 100vw) auto;
	border: 1px solid #fff;
}
.btn_map a::after {
	content: "";
    position: absolute;
    width: calc(10 / var(--break) * 100vw);
    height: calc(10 / var(--break) * 100vw);
    border-bottom: calc(1 / var(--break) * 100vw) solid #fff;
    border-right: calc(1 / var(--break) * 100vw) solid #fff;
    transform: rotate(-45deg);
    right: calc(30 / var(--break) * 100vw);
    top: 0;
    bottom: 0;
    margin: auto;
    border-left: none;
    border-top: none;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.map iframe {
		margin-top: calc(-200 / var(--break) * 100vw);
		height: calc(100% + calc(200 / var(--break) * 100vw));
	}
	.btn_map {
		width: calc(600 / var(--break) * 100vw);
		margin: 0 auto calc(60 / var(--break) * 100vw);
		font-size: 1.0625rem;
		letter-spacing: 0;
		position: relative;
		left: auto;
		top: auto;
	}
	.btn_map a {
		height: calc(100 / var(--break) * 100vw);
		background-position: left 4vw center;
		background-size: calc(30 / var(--break) * 100vw) auto;
	}
	.btn_map a::after {
		width: calc(16 / var(--break) * 100vw);
		height: calc(16 / var(--break) * 100vw);
		border-bottom: calc(1 / var(--break) * 100vw) solid #fff;
		border-right: calc(1 / var(--break) * 100vw) solid #fff;
		right: calc(30 / var(--break) * 100vw);
	}
}