@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: #0e1d78;
	font-size: calc(16 / var(--break) * 100vw);
	--color01: #00ADCF;
	--color02: #2B467D;
	--color03: #999999;
	--color04: #4C9CE5;
	--color05: #021440;
	--color06: #E3E9F1;
	--color07: #DBD2C2;
	--color08: #FBFBFB;
	--color09: #FFC745;
	--color10: #EFE8DD;
	--color11: #B67715;
	--color12: #0E1D78;
	--color13: #000000;
	--color14: #FFFFFF;
	--color15: #584F42;
	--color16: #EFEFEF;
	--color17: #9C8C75;

    --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: #0e1d78;
	text-decoration: underline;
}
.mat {
	font-family: "fot-matisse-pron", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.gar {
	font-family: "garamond-premier-pro-display", serif;
	font-weight: 300;
	font-style: normal;
}
.yum {
	font-family: "yu-mincho-pr6n", sans-serif;
	font-weight: 400;
	font-style: normal;
}
.bg_pt01 {
	background: url("images/page/pattern01.png") repeat right top/ calc(860 / var(--break) * 100vw) auto;
}
.bg_pt02 {
	background: url("images/page/pattern02.png") repeat left top/ calc(860 / var(--break) * 100vw) auto;
}
.bg_pt03 {
	background: url("images/page/pattern03.png") repeat left top/ calc(320 / var(--break) * 100vw) auto;
}
.bg_pt04 {
	background: url("images/page/pattern04.png") repeat left top/ calc(400 / var(--break) * 100vw) auto;
}
.bg_pt05 {
	background: url("images/page/pattern05.png") repeat left top/ calc(400 / var(--break) * 100vw) auto;
}
.bg_pt06 {
	background: url("images/page/pattern06.png") repeat left top/ calc(6 / var(--break) * 100vw) auto;
}
.bg_pt07 {
	background: url("images/page/pattern07.png") repeat left top/ calc(800 / var(--break) * 100vw) auto;
}

/*ここまで*/
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;
}
.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,.inner1720
{
	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;
}
.inner1720 {
	max-width: 1720px;
}
.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;
}
.shadow_b {
	text-shadow: 0px 0px 5px #00000033, 0px 0px 5px #00000033, 0px 0px 10px #00000033, 0px 0px 10px #00000033, 0px 0px 15px #00000033, 0px 0px 15px #00000033;
}
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;
}
.bbw2 {
	border-bottom: 2px solid #fff;
}
.btw {
	border-top: 1px solid #fff;
}
.btw2 {
	border-top: 2px solid #fff;
}
.border {
	border: solid 1px #fff;
}
.border2 {
	border: solid 2px #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;
}
@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,.inner1720 {
		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_pt01 {
		background: url("images/page/pattern01.png") repeat left top/ calc(320 / var(--break) * 100vw) auto;
	}
}


/* ヘッダー header
------------------------------------------------------------------*/
header {
	z-index: 10!important;
}
header h1 {
	width: 100%;
	max-width: calc(618 / var(--break) * 100vw);
}
.row_head01 {
	position: fixed;
	top: calc(20 / var(--break) * 100vw);
	right: calc(140 / var(--break) * 100vw);
}
.tel_head {
	width: calc(340 / var(--break) * 100vw);
}
.tel_head a {
	height: calc(110 / var(--break) * 100vw);
}
.tel_head .num:before {
	position: absolute;
	content: "";
	background: url("images/page/icn_tel01.svg") no-repeat left center / contain;
	width: calc(26 / var(--break)* 100vw);
	height: calc(26 / var(--break)* 100vw);
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.web_head {
	width: calc(200 / var(--break) * 100vw);
}
.web_head a {
	background: url("images/page/deco_web01.svg") no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
	height: calc(110 / var(--break) * 100vw);
}
.web_head a::after {
	border-width: calc(7 / var(--break) * 100vw);
	bottom: calc(6 / var(--break) * 100vw);
    right:calc(6 / var(--break) * 100vw);
}
.web_head .txt02:before {
	position: absolute;
	content: "";
	background: url("images/page/icn_web01.svg") no-repeat left center / contain;
	width: calc(26 / var(--break)* 100vw);
	height: calc(26 / var(--break)* 100vw);
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.wrap_head01 {
	top: calc(170 / var(--break) * 100vw);
	left: calc(40 / var(--break) * 100vw);
}
.row_head02 {
	position: fixed;
	top: calc(30 / var(--break) * 100vw);
	left: calc(40 / var(--break) * 100vw);
}
.row_head02 .logo {
	filter: drop-shadow(5px 5px 5px #aaa);
	width: calc(107 / var(--break) * 100vw);
}
.row_head02 .txt02 {
	letter-spacing: .8em;
}
@media(min-width: 768px) and (max-width:1599px) {
	header .tel_head a {
		background: #fff;
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	header h1 {
		font-size: calc(14 / var(--break) * 100vw)!important;
	}
	.row_head02 .logo {
		width: calc(70 / var(--break) * 100vw);
	}
	.row_head02 .txt {
		font-size: calc(30 / var(--break) * 100vw);
	}
	.row_head02 .txt .fz40{
		font-size: calc(34 / var(--break) * 100vw);
	}
	.row_head02 .txt02 {
		font-size: calc(14 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.wrap_head01 {
		top: calc(143 / var(--break) * 100vw);
		left: 0;
		right: 0;
		margin: auto;
		width: 100%;
	}
	.row_head01 {
		display: none;
	}
	.row_head02 {
		position: fixed;
		top: calc(20 / var(--break) * 100vw);
		left: calc(24 / var(--break) * 100vw);
	}
	.row_head02 .logo {
		width: calc(98 / var(--break) * 100vw);
	}
	.row_head02 .txt {
		font-size: calc(26 / var(--break) * 100vw);
	}
	.row_head02 .txt02 {
		letter-spacing: .6em;
		font-size: calc(14 / var(--break) * 100vw);
	}
	.row_head02 .txt03 {
		font-size: calc(20 / var(--break) * 100vw);
	}
	.row_head02 .txt .fz40{
		font-size: calc(28 / var(--break) * 100vw);
	}
	header h1 {
		padding: 1vw 1vw;
		letter-spacing: 0;
		max-width: calc(702 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
		font-size: calc(20 / var(--break) * 100vw)!important;
	}
	.tel_head {
		margin-right: auto!important;
		margin-left: auto!important;
		margin-bottom: calc(30 / var(--break) * 100vw);
		width: calc(600 / var(--break) * 100vw)!important;
	}
	.tel_head a {
		background: url(images/page/deco_counseling04.svg) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(24 / var(--break) * 100vw), url(images/page/deco_counseling05.svg) no-repeat right calc(6 / var(--break) * 100vw) bottom calc(6 / var(--break) * 100vw) / calc(24 / var(--break) * 100vw)!important;
		height: calc(200 / var(--break) * 100vw)!important;
		background-color: #fff!important;
	}
	.tel_head .txt {
		font-size: calc(30 / var(--break) * 100vw);
	}
	.tel_head .num {
		padding-left: 7vw;
		font-size: calc(60 / var(--break) * 100vw);
	}
	.tel_head .num:before {
		width: calc(42 / 750*100vw)!important;
		height: calc(42 / 750*100vw)!important;
	}
	.web_head {
		margin-right: auto!important;
		margin-left: auto!important;
		width: calc(600 / var(--break) * 100vw)!important;
	}
	.web_head a {
		background: url(images/page/deco_web01.svg) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(25 / var(--break) * 100vw)!important;
		background-color: #0e1d78!important;
		height: calc(200 / var(--break) * 100vw)!important;
	}
	.web_head a::after {
		border-width: calc(20 / var(--break) * 100vw)!important;
		bottom: calc(10 / var(--break) * 100vw);
		right: calc(10 / var(--break) * 100vw);
	}
	.web_head .txt {
		margin-bottom: 2vw;
		font-size: calc(30 / var(--break) * 100vw);
	}
	.web_head .txt02 {
		padding-left: 9vw;
		font-size: calc(55 / var(--break) * 100vw);
	}
	.web_head .txt02:before {
		width: calc(48 / 750*100vw)!important;
		height: calc(48 / 750*100vw)!important;
	}
	.map_head {
		position: fixed;
		width: calc(100 / var(--break) * 100vw);
		right: calc(123 / var(--break) * 100vw);
		top: calc(22 / var(--break) * 100vw);
	}
}


/* メインイメージ 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: calc(900 / var(--break) * 100vw);
	height: 100vh;
}
.main_img.tab .slide_main li {
	height: auto;
}
.main01 {
	background: url("images/index/bg_main01.png") no-repeat left center / auto 100%;
}
.img_main01 {
	right: calc(60 / var(--break) * 100vw);
	bottom: calc(20 / var(--break) * 100vw);
	background: url("images/index/img_main01.png") no-repeat left center / cover;
	width: 100%;
	max-width: calc(1480 / var(--break) * 100vw);
	height: calc(750 / var(--break) * 100vw);
}
.img_main01:before {
	position: absolute;
	content: "";
	background: url("images/index/bg_main02.png") no-repeat left center / contain;
	width: 100%;
	height: 100%;
	right: calc(-20 / var(--break) * 100vw);
	bottom: calc(-20 / var(--break) * 100vw);
	margin: auto;
	z-index: -1;
}
.wrap_main01 {
	left: calc(100 / var(--break) * 100vw);
	bottom: calc(150 / var(--break) * 100vw);
}
.wrap_main01 h3 {
	text-shadow: 0 0 24px rgba(14, 62, 119, 0.3);
	width: calc(464 / var(--break) * 100vw);
}
.wrap_main01 h4 {
	text-shadow: 0 0 24px rgba(0, 0, 0, 0.3);
}
.wrap_main01 h4 .txt01 {
	width: calc(380 / var(--break) * 100vw);
}
.wrap_main01 h4 .txt02 {
	width: calc(620 / var(--break) * 100vw);
}
.wrap_main01 h5 {
	background: url("images/index/deco_main02.png") no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw),url("images/index/deco_main03.png") no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
	width: calc(476 / var(--break) * 100vw);
}
.ccl_main {
	text-shadow: 0px 0px 5px #b67715, 0px 0px 5px #b67715, 0px 0px 10px #b67715, 0px 0px 10px #b67715, 0px 0px 15px #b67715, 0px 0px 15px #b67715;
	top: calc(200 / var(--break) * 100vw);
	right: calc(80 / var(--break) * 100vw);
	width: calc(287 / var(--break) * 100vw);
	height: calc(287 / var(--break) * 100vw);
	background: url("images/page/ccl01.png") no-repeat center / cover;
}
.ccl_main .deco {
	right: calc(7 / var(--break) * 100vw);
	bottom: calc(0 / var(--break) * 100vw);
	width: calc(56 / var(--break) * 100vw);
}
.ai_btn button {
	width: 100%;
	cursor: pointer;
    height: calc(50 / var(--break) * 100vw);
}
.ai_btn button:before {
	position: absolute;
	content: "";
	background: #d32f2f;
	width:calc(22 / var(--break) * 100vw);
	height:calc(22 / var(--break) * 100vw);
	right: calc(4 / var(--break) * 100vw);
	top: calc(-4 / var(--break) * 100vw);
	margin: auto;
	z-index: 1;
	border-radius: 100%;
}
.ai_btn {
	cursor: pointer;
	position: fixed;
    right: calc(50 / var(--break) * 100vw);
    bottom: calc(110 / var(--break) * 100vw);
    width: calc(132 / var(--break) * 100vw);
}

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

}
@media(min-width: 768px) and (max-width:1299px) {
	.main_img .slide_main li {
		height: auto;
	}
	.img_main01 {
		height: calc(640 / var(--break) * 100vw);
		max-width: calc(1070 / var(--break) * 100vw);
	}
}
@media only screen and (max-width: 767px) {
	.main_img .slide_main li {
		min-height: auto;
		height: calc(1240 / var(--break) * 100vw);
	}
	.main01 {
		background: url(images/index/bg_main01_sp.png)no-repeat center top / cover;
	}
	.ai_btn {
		right: calc(18 / var(--break) * 100vw);
		bottom: calc(170 / var(--break) * 100vw);
		width: calc(198 / var(--break) * 100vw);
	}
	.ai_btn {
	  opacity: 0;
	  visibility: hidden;
	  transition: .3s ease;
	}

	.ai_btn.is-visible {
	  opacity: 1;
	  visibility: visible;
	}
	.ai_btn .icn {
		width: calc(33 / var(--break) * 100vw);
	}
	.ai_btn button:before {
		top: calc(-6 / var(--break) * 100vw);
		right: calc(6 / var(--break) * 100vw);
		width: calc(30 / 750*100vw);
		height: calc(30 / 750*100vw);
	}
	.ai_btn button {
		border-radius: calc(36 / var(--break) * 100vw);
		height: calc(74 / var(--break) * 100vw);
	}
	.ai_btn .txt {
		font-size: calc(20 / var(--break) * 100vw);
	}
	.ccl_main {
		top: auto;
		right: calc(38 / var(--break) * 100vw);
		bottom: calc(50 / var(--break) * 100vw);
	}
	.ccl_main .txt01 {
		font-size: calc(24 / var(--break) * 100vw);
	}
	.ccl_main .txt02 {
		font-size: calc(26 / var(--break) * 100vw);
	}
	.ccl_main .txt02 .fz54{
		font-size: calc(54 / var(--break) * 100vw);
	}
	.ccl_main .txt02 .fz20{
		font-size: calc(20 / var(--break) * 100vw);
	}
	.ccl_main .txt03 {
		font-size: calc(22 / var(--break) * 100vw);
	}
	.ccl_main .deco {
        right: calc(2 / var(--break) * 100vw);
        bottom: calc(5 / var(--break) * 100vw);
        width: calc(55 / var(--break) * 100vw);
    }
	.wrap_main01 {
		left: calc(100 / var(--break) * 100vw);
		bottom: auto;
		top: 37vw;
	}
	.wrap_main01 h4 .txt01 {
		margin-right: auto;
		margin-left: auto;
		width: calc(347 / var(--break) * 100vw);
	}
	.wrap_main01 h4 .txt01 .fz120 {
		font-size: calc(110 / var(--break) * 100vw);
	}
	.wrap_main01 h4 .txt01 .fz70 {
		line-height: 1.2;
		font-size: calc(70 / var(--break) * 100vw);
	}
	.wrap_main01 h4 .txt02 {
		margin-right: auto;
		margin-left: auto;
		width: calc(566 / var(--break) * 100vw);
		font-size: calc(64/ var(--break) * 100vw);
		margin-bottom: calc(20 / var(--break) * 100vw)
	}
	.wrap_main01 h3 {
		margin-bottom: calc(20 / var(--break) * 100vw);
		margin-right: auto;
		margin-left: auto;
		width: calc(465 / var(--break) * 100vw);
		font-size: calc(32 / var(--break) * 100vw);
	}
	.wrap_main01 h5 {
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(25 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(25 / var(--break) * 100vw);
		margin-right: auto;
		margin-left: auto;
		font-size: calc(24 / var(--break) * 100vw);
		width: calc(540 / var(--break) * 100vw);
	}
	.img_main01 {
		right: calc(33 / var(--break) * 100vw);
		bottom: calc(20 / var(--break) * 100vw);
		background: url(images/index/img_main01_sp.png) no-repeat left center / cover;
		width: 100%;
		max-width: calc(682 / var(--break) * 100vw);
		height: calc(653 / var(--break) * 100vw);
	}
	.img_main01:before {
		position: absolute;
		content: "";
		background: url(images/index/bg_main02_sp.png) no-repeat left center / contain;
		width: 100%;
		height: 100%;
		right: calc(-12 / var(--break) * 100vw);
		bottom: calc(-12 / var(--break) * 100vw);
		margin: auto;
		z-index: -1;
	}
}

/* グローバルナビゲーション gnav
------------------------------------------------------------------*/
.gnav, .fix_nav {
	display: none;
}
.btn_gnav_sp {
    cursor: pointer;
}
.gnav_sp .ps__thumb-y {
	background: transparent !important;
}
.btn_gnav_sp {
	position: fixed;
	top: calc(20 / var(--break) * 100vw);
	right: calc(20 / var(--break) * 100vw);
	height: calc(110 / var(--break) * 100vw);
	width: calc(110 / var(--break) * 100vw);
	background: #584f42;
	z-index: 10000;
	outline: none;
}
.btn_gnav_sp .txt_gnav {
	position: absolute;
	width: calc(47 / var(--break) * 100vw);
	right: 0;
	left: 0;
	bottom: calc(31/ 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(-18 / var(--break) * 100vw);
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
	background: #fff;
	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: #fff;
	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: #fff;
	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(170 / var(--break) * 100vw) 0 0;
	overflow-y: auto;
	overflow-x: hidden;
	background: #ffffff;
	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 {
	display: block;
	max-width: calc(630 / var(--break) * 100vw);
}
.gnav_sp .nav_main > ul > li {
	opacity: 0;
	transform: translateX(50%);
	transition: transform .6s ease, opacity .2s ease;
	border-bottom: 1px solid #584f42;
}
.gnav_sp .nav_main > ul > li.nav_drawer {
	padding-bottom: calc(20 / var(--break) * 100vw);
}
.gnav_sp .nav_main > ul > li > a {
	padding: calc(12 / var(--break) * 100vw) calc(38 / 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(23 / var(--break) * 100vw);
	top: 0;
	bottom: 0;
	width:0;
	height:0;
	border-style:solid;
	border-width: calc(9 / var(--break) * 100vw) calc(9 / var(--break) * 100vw) 0 calc(9 / var(--break) * 100vw);
	border-color: #0E1D78 transparent transparent transparent;
	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 {

}
.gnav_sp .nav_main > ul > li > a .en {
	/*text-transform: uppercase;*/
	font-size: 62.5%;
	letter-spacing: .1em;
	margin-top: 1vw;
}
.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;
}

.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: #584f42;
		z-index: 10000;
		outline: none;
	}
	.btn_gnav_sp .txt_gnav {
		position: absolute;
		width: calc(64 / var(--break) * 100vw);
		right: 0;
		left: 0;
		bottom: calc(20 / var(--break) * 100vw);
		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: #fff;
		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: #fff;
		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: #fff;
		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: 20vw 0 0;
		overflow-y: auto;
		overflow-x: hidden;
		background: #ffffff;
		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 > a {
		padding: 2.2vw 5vw 2.2vw 0;
		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: 0;
		top: 5vw;
		bottom: auto;
		margin: auto;
		border-width: calc(14 / var(--break) * 100vw) calc(14 / var(--break) * 100vw) 0 calc(14 / var(--break) * 100vw);
	}
	.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 {
		width: 100%;
        line-height: 1.6;
        letter-spacing: 0;
        font-size: calc(32 / var(--break) * 100vw);
	}
	.gnav_sp .nav_main > ul > li > a .en {
		/*text-transform: uppercase;*/
		font-size: 62.5%;
		letter-spacing: .1em;
		margin-top: 1vw;
	}
	.gnav_sp .nav_main > ul > li:not(:last-of-type) {
		margin-bottom: calc(16 / var(--break) * 100vw);
	}
	.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;
	}
}

/* アポツール bg_apo01
------------------------------------------------------------------*/
.bg_apo01 {
	background: #021440;
}
.bg_apo01 .copy span {
	background: #021440;
}
.bg_apo01 .copy span:before {
	position: absolute;
	content: "";
	background: #15234d;
	width: 100%;
	height: calc(18 / var(--break) * 100vw);
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.bg_apo01 .copy:before {
	position: absolute;
	content: "";
	background: #fff;
	width: 100%;
	height: 1px;
	left: 0;
	right: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.bg_apo01 .copy {
		font-size: calc(36 / var(--break) * 100vw);
	}
}



/* 新着情報 index_news
------------------------------------------------------------------*/

/* ※パーフェクトスクロールバー用基本css ここからデザインに合わせて適宜変更してください */
.index_news ul {
	overflow: hidden;
	position: relative;
	padding-right: calc(20 / var(--break) * 100vw);
	max-height: 170px;
	height: auto;
	touch-action: auto !important;
	line-height: 1.75;
}
.index_news li:not(:last-of-type) {
}
.index_news li dt {
}
.index_news li dd {
}
.index_news li dd a {
	color: #0e1d78; /* コーダーさんへに記載されている★標準テキスト：リンク色に変更*/
	text-decoration: underline;
}
/* パーフェクトスクロールバー */
.ps__thumb-y {
	background: #021440 !important;
	right: 0px !important;
	width: 4px !important;
}
.ps--active-x > .ps__rail-x,
.ps--active-y > .ps__rail-y {
	background: none !important;
	right: 0px !important;
	width: 4px !important;
	opacity: 1!important;
}
.ps .ps__rail-x.ps--clicking, .ps .ps__rail-x:focus, .ps .ps__rail-x:hover, .ps .ps__rail-y.ps--clicking, .ps .ps__rail-y:focus, .ps .ps__rail-y:hover {
	opacity: 1!important;
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
}
@media(max-width: 767px) {
	.index_news ul {
		padding-right: 5vw;
		max-height: calc(500 / var(--break) * 100vw);
	}
	.index_news li:not(:last-of-type) {
	}
	.index_news li dl {
		display: block;
	}
	.index_news li dt {
		width: 100%;
	}
	.index_news li dd {
		width: 100%;
		line-height: 1.5625;
	}
	.ps__thumb-y, .ps--active-x > .ps__rail-x, .ps--active-y > .ps__rail-y {
		width: 2px!important;
	}
}


/* カウンセリング counseling
------------------------------------------------------------------*/
.counseling {
	margin: calc(120 / var(--break) * 100vw) 0;
	box-shadow: 0 4px 6px -2px rgba(0,0,0,0.3);
}
.bg_counseling01 {
	background: url("images/page/bg_counseling01.jpg") no-repeat center top / cover;
}
.bg_counseling01 h2 {
	margin-right: auto;
	margin-left: auto;
	width: calc(943 / var(--break) * 100vw);
}
.bg_counseling02 {
	background-image: linear-gradient(to bottom, #021440, #4c9ce5);
}
.row_counseling01 {
	max-width: calc(1000 / var(--break) * 100vw);
	gap: calc(20 / var(--break) * 100vw) 2%;
}
.row_counseling01 .col {
	width: 49%;
	height: calc(180 / var(--break) * 100vw);
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.row_counseling01 .col_l .txt01:before,.row_counseling01 .col_l .txt01:after {
	position: absolute;
	content: "";
	background: url("images/page/deco_counseling03.svg") no-repeat left center / contain;
	width: calc(21 / var(--break)* 100vw);
	height: calc(10 / var(--break)* 100vw);
	left: calc(26 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
}
.row_counseling01 .col_l .txt01:after {
	left: auto;
	right: calc(26 / var(--break) * 100vw);
}
.tel_counseling {
	width: calc(480 / var(--break) * 100vw);
}
.tel_counseling a{
	background: url("images/page/deco_counseling04.svg") no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw),url("images/page/deco_counseling05.svg") no-repeat right calc(6 / var(--break) * 100vw) bottom calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
	height: calc(160 / var(--break) * 100vw);
}
.tel_counseling .num:before {
	width: calc(33 / var(--break) * 100vw);
    height: calc(33 / var(--break) * 100vw);
}
.web_counseling {
	width: calc(480 / var(--break) * 100vw);
}
.web_counseling a{
	height: calc(160 / var(--break) * 100vw);
}
.web_counseling .txt02:before {
	width: calc(38 / var(--break) * 100vw);
    height: calc(38 / var(--break) * 100vw);
}
.web_counseling a::after {
    border-width: calc(15 / var(--break) * 100vw);
    bottom: calc(8 / var(--break) * 100vw);
    right: calc(8 / var(--break) * 100vw);
}
.wrap_counseling01 .deco01 {
	width: calc(206 / var(--break) * 100vw);
	left: 0;
	bottom: 0;
}
.wrap_counseling01 .deco02 {
	width: calc(160 / var(--break) * 100vw);
	right: 0;
	top: calc(-55 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.wrap_counseling01 .deco01 {
		width: calc(110 / var(--break) * 100vw);
	}
	.wrap_counseling01 .deco02 {
		width: calc(80 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.counseling {
		margin: calc(100 / var(--break) * 100vw) 0;
		box-shadow: 0 4px 6px -2px rgba(0, 0, 0, 0.3);
	}
	.bg_counseling01 {
		background: url(images/page/bg_counseling01_sp.jpg) no-repeat center top / cover;
		padding: 7vw 0 9vw;
	}
	.bg_counseling01 h2 {
		margin-bottom: 10vw;
		width: calc(700 / var(--break) * 100vw);
	}
	.row_counseling01 .col {
		width: 100%;
		height: calc(258 / var(--break) * 100vw);
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(38 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(38 / var(--break) * 100vw);
	}
	.row_counseling01 .col_l {
		padding: 0 calc(20 / var(--break) * 100vw);
	}
	.row_counseling01 .col_l .txt01 {
		margin-bottom: 3vw;
		padding: 1vw 2vw;
		font-size: calc(34 / var(--break) * 100vw);
	}
	.row_counseling01 .col_l .txt02 {
		font-size: calc(43 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt01 {
		font-size: calc(32 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt01 .fz30 {
		font-size: calc(43 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt01 .fz44{
		font-size: calc(64 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt02 {
		font-size: calc(32 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt02 .fz30 {
		font-size: calc(43 / var(--break) * 100vw);
	}
	.row_counseling01 .col_r .txt02 .fz44{
		font-size: calc(64 / var(--break) * 100vw);
	}
	.wrap_counseling01 .deco01 {
		width: calc(121 / var(--break) * 100vw);
		left: calc(-13 / var(--break) * 100vw);
		bottom: auto;
		top: calc(-22 / var(--break) * 100vw);
	}
	.wrap_counseling01 .deco02 {
		width: calc(74 / var(--break) * 100vw);
		right: calc(-13 / var(--break) * 100vw);
		bottom: calc(-116 / var(--break) * 100vw);
		top:auto;
	}
	.row_counseling01 .col_l .txt01:before, .row_counseling01 .col_l .txt01:after {
		width: calc(30 / 750*100vw);
		height: calc(15 / 750*100vw);
		left: calc(35 / var(--break) * 100vw);
	}
	.row_counseling01 .col_l .txt01:after {
		left: auto;
    	right: calc(35 / var(--break) * 100vw);
	}
	.bg_counseling02 {
		padding: 9vw 0 13vw;
	}
	.bg_counseling02 h3{
		line-height: 1.8;
		font-size: calc(36 / var(--break) * 100vw);
	}
	.bg_counseling02 h3 .fz40{
		line-height: 1.3;
		font-size: calc(50 / var(--break) * 100vw);
	}
	.bg_counseling02 h3 .sp_small {
		font-size: calc(30 / var(--break) * 100vw);
	}
	.bg_counseling02 h3 .sp_mb {
		display: inline-block;
		margin-bottom: 2vw;
	}
}

/* 文京いわぶち歯科・矯正歯科のインプラントが選ばれる理由 REASON
------------------------------------------------------------------*/
.bg_reason01 {
	box-shadow: 0 6px 8px -4px rgba(0,0,0,0.3);
	background: url("images/page/ttl_deco01.png") no-repeat left top / calc(450 / var(--break) * 100vw) auto,url("images/page/ttl_deco02.png") no-repeat right top / calc(450 / var(--break) * 100vw) auto,url("images/page/pattern03.png") repeat center top / calc(320 / var(--break) * 100vw) auto;
}
.bg_reason01 .ttl_reason01 {
	font-size: calc(160 / var(--break) * 100vw);
}
.bg_reason01 .ttl_reason01  span {
	display: inline-block;
	background: linear-gradient(169deg, #584f42 35%, #9c8c75 35%);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
}
.bg_reason01 .copy_reason01 .num {
	top: 55%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.bg_reason01 .deco {
	width: calc(231 / var(--break) * 100vw);
}
.wrap_reason01 .col_img {
	width: 62.5%;
}
.wrap_reason01 .col_img .img {
	min-height: calc(640 / var(--break) * 100vw);
	background: url("images/index/img_reason01.jpg") no-repeat center / cover;
}
.wrap_reason01.num04 .col_img .img {
	min-height: calc(780 / var(--break) * 100vw);
	background: url("images/index/img_reason07.jpg") no-repeat center / cover;
}
.wrap_reason01.num06 .col_img .img {
	background: url("images/index/img_reason10.jpg") no-repeat center / cover;
}
.wrap_reason01.num01 .col_img:before {
	position: absolute;
	content: "";
	background: url("images/page/pattern02.png") repeat left center / calc(860 / var(--break) * 100vw);
	width: 100%;
	height: 100%;
	right: calc(-20 / var(--break) * 100vw);
	bottom: calc(-20 / var(--break) * 100vw);
}
.wrap_reason01.num06 .col_img:before {
	position: absolute;
	content: "";
	background: url("images/page/pattern02.png") repeat left center / calc(860 / var(--break) * 100vw);
	width: 100%;
	height: 100%;
	left: calc(-20 / var(--break) * 100vw);
	bottom: calc(-20 / var(--break) * 100vw);
}
.wrap_reason01 .col_txt {
	width: 52%;
	margin-left: -14.5%;
}
.wrap_reason01.num04 {
	background: url("images/index/deco_reason11.svg") no-repeat left bottom / calc(500 / var(--break) * 100vw);
}
.wrap_reason01.num04 .col_txt {
	margin-left: auto;
	margin-right: -14.5%;
}
.wrap_reason01.num06 .col_txt {
	margin-left: auto;
	margin-right: -14.5%;
}
.wrap_reason01 .col_txt .wrap {
	background: url("images/index/deco_reason01.svg") no-repeat left calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw),url("images/index/deco_reason02.svg") no-repeat right calc(10 / var(--break) * 100vw) bottom calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw);
	max-width: calc(900 / var(--break) * 100vw);
}
.wrap_reason01 .wrap_txt {
	max-width: calc(725 / var(--break) * 100vw);
}
.num_reason {
	margin-bottom: calc(-10 / var(--break) * 100vw);
}
.num_reason span:before,.num_reason span:after {
	position: absolute;
	content: "";
	background: #000000;
	width:calc(10 / var(--break) * 100vw);
	height: calc(2 / var(--break) * 100vw);
	left: calc(-20 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.num_reason span:after {
	left: auto;
	right: calc(-20 / var(--break) * 100vw);
}
.num_reason span {
	display: inline-block;
	background: linear-gradient(169deg, #00adcf 30%, #2b467d 30%);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
}
.en_reason {
	width: calc(50 / var(--break) * 100vw);
	left: 0;
	top: calc(-10 / var(--break) * 100vw);
}
.box_reason02 .en_reason {
	right: calc(250 / var(--break) * 100vw);
	left: auto;
}
.bg_reason03 .en_reason {
	left: calc(290 / var(--break) * 100vw);
	right: auto;
}
.wrap_reason01.num04 .en_reason {
	right: 0;
	left: auto;
}
.wrap_reason01.num06 .en_reason {
	right: 0;
	left: auto;
}
.box_reason03 .en_reason {
	right: 0;
	left: calc(130 / var(--break) * 100vw);
}
.box_reason01 .col_img {
	width: 49%;
	max-width: 560px;
}
.box_reason01 .col_txt {
	width: 49%;
}
.box_reason01 .box {
	background: url("images/index/deco_reason03.svg") no-repeat right bottom / calc(500 / var(--break) * 100vw);
}

.bs{
	box-shadow: 0 0 27px 3px rgba(153, 153, 153, 0.5);
}
.box_reason02 {
	background: url("images/index/bg_reason01.jpg") no-repeat center / cover;
}
.box_reason02 .wrap {
	max-width: calc(1240 / var(--break) * 100vw);
}
.box_reason02 .deco {
	width: calc(202 / var(--break) * 100vw);
	top: calc(70 / var(--break) * 100vw);
	left: calc(110 / var(--break) * 100vw);
}
.row_reason01 .icn {
	width: calc(40 / var(--break) * 100vw);
}
.row_reason01 {
	gap:calc(20 / var(--break) * 100vw) calc(20 / var(--break) * 100vw);
}
.row_reason01 .col {
	width: calc(235 / var(--break) * 100vw);
	height: calc(235 / var(--break) * 100vw);
	background: url("images/page/ccl02.svg") no-repeat center / cover;
}
.row_reason01 .col:nth-child(2n) {
	background: url("images/page/ccl03.svg") no-repeat center / cover;
}
.row_reason02 {
	gap:calc(20 / var(--break) * 100vw) 1.3%;
}
.row_reason02 .col {
	width: 24%;
	max-width: 320px;
}
.bg_reason03:before {
	position: absolute;
	content: "";
	background: url("images/index/bg_reason02.jpg") no-repeat left center / cover;
	width: 100%;
	height: calc(616 / var(--break)* 100vw);
	left: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.box_reason03 {
	background: url("images/index/deco_reason05.svg") no-repeat right top / calc(300 / var(--break) * 100vw);
}
.box_reason03 .wrap {
	max-width: 1240px;
}
.row_reason03 {
	gap:calc(20 / var(--break) * 100vw) 3.2%;
}
.row_reason03 .col {
	width: 48.4%;
	max-width: 600px;
}
.box_reason04 {
	background: url(images/index/deco_reason06.svg) no-repeat left calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw), url(images/index/deco_reason07.svg) no-repeat right calc(10 / var(--break) * 100vw) bottom calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw);
}
.box_reason04 .col_img {
	width: 32.3%;
	max-width: 100%;
}
.box_reason04 .col_txt {
	width:64.6%;
}
.box_reason04 .col_img:before {
	position: absolute;
	content: "";
	background: url("images/page/pattern02.png") repeat left center / calc(860 / var(--break) * 100vw);
	width: 100%;
	height: calc(100% - calc(10 / var(--break) * 100vw));
	left: calc(-10 / var(--break) * 100vw);
	bottom: 0;
	z-index: -1;
}
.box_reason04 .r_reverse .col_img:before {
	left: auto;
	right: calc(-10 / var(--break) * 100vw);
}
.box_reason04 .copy span:before {
	position: absolute;
	content: "";
	background: url("images/index/deco_reason08.svg") no-repeat left center / contain;
	width: calc(10 / var(--break)* 100vw);
	height: calc(10 / var(--break)* 100vw);
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.row_reason04 .col_img {
	width: 52%;
	min-height: calc(530 / var(--break) * 100vw);
	background: url("images/index/img_reason13.jpg") no-repeat center / cover;
}
.num08 .row_reason04 .col_img {
	background: url("images/index/img_reason14.jpg") no-repeat center / cover;
}
.num08 .en_reason{
	right: 0;
	left: auto;
}
.row_reason04 .col_txt {
	width: 42.2%;
}
.box_reason05 {
	box-shadow: 0 0 27px 3px rgba(153, 153, 153, 0.5);
	max-width: calc(100% - calc(100 / var(--break) * 100vw));
	background: url("images/index/deco_reason03.svg") no-repeat right bottom / calc(500 / var(--break) * 100vw) auto,url("images/index/deco_reason10.png") no-repeat left top calc(30 / var(--break) * 100vw) / calc(300 / var(--break) * 100vw) auto;
}
.box_reason05.num08 {
	background: url("images/index/deco_reason09.svg") no-repeat left bottom / calc(500 / var(--break) * 100vw) auto,url("images/index/deco_reason10.png") no-repeat right top calc(30 / var(--break) * 100vw) / calc(300 / var(--break) * 100vw) auto;
}
.bg_reason01 h3 .num {
	width: calc(77 / var(--break) * 100vw);
}
.box_reason01 .ttl {
	text-shadow: 0px 0px 5px rgba(14, 62, 119, 0.3), 0px 0px 5px rgba(14, 62, 119, 0.3), 0px 0px 10px rgba(14, 62, 119, 0.3), 0px 0px 10px rgba(14, 62, 119, 0.3), 0px 0px 15px rgba(14, 62, 119, 0.3), 0px 0px 15px rgba(14, 62, 119, 0.3);
}
@media(min-width: 768px) and (max-width:1599px) {
	.wrap_reason01 .col_txt {
		padding-right: calc(60 / var(--break) * 100vw);
	}
	.wrap_reason01.r_reverse .col_txt {
		padding-right: 0;
		padding-left: calc(60 / var(--break) * 100vw);
	}
	.copy_reason {
		font-size: calc(30 / var(--break) * 100vw);
	}
	.box_reason02 .deco {
		width: calc(160 / var(--break) * 100vw);
	}
	.en_reason {
		width: calc(40 / var(--break) * 100vw);
	}
	.bg_reason01 .copy_reason01 {
		font-size: calc(36 / var(--break) * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.wrap_reason01 .col_txt {
		width: 60%;
		margin-left: -22.5%;
	}
	.wrap_reason01.r_reverse .col_txt {
		margin-right: -22.5%;
		margin-left: auto;
	}
	.box_reason02 .deco {
        width: calc(93 / var(--break) * 100vw);
    }
}
@media(max-width: 767px) {
	.bg_reason01 {
		padding: 17vw 0 10vw;
		background: url(images/page/ttl_deco01.png) no-repeat left top / calc(260 / var(--break) * 100vw) auto, url(images/page/ttl_deco02.png) no-repeat right top / calc(263 / var(--break) * 100vw) auto, url(images/page/pattern03.png) repeat center top / calc(320 / var(--break) * 100vw) auto;
	}
	.bg_reason01 .ttl_reason01 {
		margin-bottom: 9vw;
		font-size: calc(70 / var(--break) * 100vw);
	}
	.bg_reason01 .copy_reason01 {
		margin-bottom: 0;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_reason01 .copy_reason01 .fz60{
		font-size: calc(60 / var(--break) * 100vw);
	}
	.bg_reason01 .copy_reason01 .num{
		top: 26%;
		width: calc(105 / var(--break) * 100vw);
	}
	.bg_reason01 .deco {
		width: calc(320 / var(--break) * 100vw);
	}
	.bg_reason02 {
		padding: calc(94 / var(--break) * 100vw) 0 calc(90 / var(--break) * 100vw);
	}
	.wrap_reason01 .col_img {
		width: 100%;
		max-width: calc(702 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
		margin-bottom: calc(14 / var(--break) * 100vw);
	}
	.wrap_reason01 .col_txt {
		width: 100%;
		margin-top: 0;
		margin-right: auto!important;
		margin-left: auto!important;
		max-width: calc(702 / 750*100vw);
	}
	.wrap_reason01.num01 .col_img:before {
		right: calc(-14 / var(--break) * 100vw);
    	bottom: calc(-14 / var(--break) * 100vw);
	}
	.wrap_reason01 .col_img .img {
		min-height: calc(374 / var(--break) * 100vw);
	}
	.num_reason {
		margin-bottom: 0;
		font-size: calc(120 / var(--break) * 100vw);
	}
	.copy_reason {
		margin-right: -2vw;
		margin-left:-2vw;
		margin-bottom: 3vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.en_reason {
		width: calc(50 / var(--break) * 100vw);
		left: calc(8 / var(--break) * 100vw);
		top: calc(-10 / var(--break) * 100vw);
	}
	.wrap_reason01 .col_txt .wrap {
		padding: 8vw 4vw 8vw;
	}
	.box_reason01 .ttl {
		font-size: calc(40 / var(--break) * 100vw);
	}
	.box_reason01 .box {
        padding: 6vw 4vw 9vw;
		background: url(images/index/deco_reason03.svg) no-repeat right bottom / calc(606 / var(--break) * 100vw);
    }
	.box_reason01 .col_img {
		margin-bottom: 5vw;
	}
	.box_reason01 .col_txt {
		padding-top: 0;
	}
	.box_reason02 {
		background: url(images/index/bg_reason01_sp.jpg) no-repeat center / cover;
		padding: 8vw 3vw 11vw;
	}
	.box_reason02 .deco {
		width: calc(124 / var(--break) * 100vw);
		top: calc(23 / var(--break) * 100vw);
		left: calc(16 / var(--break) * 100vw);
	}
	.box_reason02 .en_reason {
		left: auto;
		right: calc(20 / var(--break) * 100vw);
	}
	.row_reason01 .col {
		width: calc(282 / var(--break) * 100vw);
    	height: calc(282 / var(--break) * 100vw);
	}
	.row_reason01 .txt {
		font-size: calc(26 / var(--break) * 100vw);
	}
	.bg_reason03 {
		padding: 9vw 0 7vw;
	}
	.bg_reason03 .en_reason {
		left: calc(23 / var(--break) * 100vw);
		right: auto;
	}
	.bg_reason03 .wrap {
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_reason02 {
		margin-bottom: 0;
		gap: calc(14 / var(--break) * 100vw) 3%;
	}
	.row_reason02 .col {
		width: 48.5%;
	}
	.row_reason02 h5 {
		min-height: calc(113 / var(--break) * 100vw);
		font-size: calc(24/ var(--break) * 100vw);
	}
	.bg_reason03:before {
		background: url(images/index/bg_reason02_sp.jpg) no-repeat left center / cover;
		height: calc(1598 / var(--break) * 100vw);
	}
	.wrap_reason01.num04 .col_img {
		margin-bottom: 0;
	}
	.wrap_reason01.num04 .col_img .img {
		min-height: calc(458 / var(--break) * 100vw);
	}
	.wrap_reason01.num04 .en_reason {
		left: auto;
		right: calc(28 / var(--break) * 100vw);
	}
	.wrap_reason01.num04 {
		background: none;
		margin-bottom: calc(90 / var(--break) * 100vw);
		padding-bottom: calc(80 / var(--break) * 100vw);
	}
	.box_reason03 .en_reason {
		left: calc(28 / var(--break) * 100vw);
	}
	.box_reason03 {
		background: url(images/index/deco_reason05.svg) no-repeat right top / calc(170 / var(--break) * 100vw);
		padding: 8vw 3vw 7vw;
	}
	.box_reason04 .copy span {
		padding-left: 6vw;
	}
	.box_reason04 .copy span:before {
		width: calc(25 / 750*100vw);
		height: calc(25 / 750*100vw);
	}
	.box_reason04:first-of-type {
		margin-bottom: calc(60 / var(--break) * 100vw);
	}
	.row_reason03 {
		gap: calc(30 / var(--break) * 100vw) 0;
	}
	.row_reason03 .col {
		width: 100%;
	}
	.row_reason03 h5 {
		min-height: calc(87 / var(--break) * 100vw);
		font-size: calc(30 / var(--break) * 100vw);
	}
	.wrap_reason01.num06 {
		margin-bottom: calc(80 / var(--break) * 100vw);
	}
	.wrap_reason01.num06 .col_img:before{
		left: calc(-14 / var(--break) * 100vw);
    	bottom: calc(-14 / var(--break) * 100vw);
	}
	.wrap_reason01.num06 .en_reason {
		right: calc(28 / var(--break) * 100vw);
	}
	.box_reason04 {
		margin-bottom: calc(80 / var(--break) * 100vw);
		padding: 8vw 4vw 5vw;
	}
	.box_reason04 .copy{
		text-align: center;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.box_reason04 .col_img {
		max-width: calc(638 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.box_reason05 {
		margin-bottom: calc(76 / var(--break) * 100vw);
		padding: 8vw 5vw 9vw;
		max-width: calc(100% - calc(24 / var(--break) * 100vw));
	}
	.box_reason05 .col_img {
		width: 100%;
		margin-bottom: 6vw;
	}
	.box_reason05 .col_txt {
		width: 100%;
	}
	.row_reason04 .col_img {
		min-height: calc(400 / var(--break) * 100vw);
	}
	.num08 .en_reason {
		right: calc(9 / var(--break) * 100vw);
	}
	.box_reason05.num08 {
		margin-bottom: 0;
	}
}

/* セカンドオピニオンについて so
------------------------------------------------------------------*/
.bg_common01 {
	z-index: 2;
	position: relative;
	box-shadow: 0 6px 8px -4px rgba(0, 0, 0, 0.3);
	background: url("images/page/bg_ttl01.jpg") no-repeat center / cover;
}
.bg_common01 .deco {
	width: calc(230 / var(--break) * 100vw);
}
.bg_common01 .en {
	font-size: calc(160 / var(--break) * 100vw);
}
.bg_common01 .en span {
    display: inline-block;
    background: linear-gradient(168deg, #584f42 42%, #9c8c75 42%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.bg_so01 {
	background: url("images/index/bg_so01.jpg") no-repeat center / cover;
}
.bg_so01 .en_so {
	margin-right: auto;
	margin-left: auto;
	max-width: calc(911 / var(--break) * 100vw);
}
.bg_so01 .en_so span:before,.bg_so01 .en_so span:after {
	position: absolute;
	content: "";
	background: #584f42;
	width: calc(124 / var(--break) * 100vw);
	height: 1px;
	left: calc(-160 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.bg_so01 .en_so span:after {
	left: auto;
	right:calc(-160 / var(--break) * 100vw);
}
.bg_so01 .ja_so span:before,.bg_so01 .ja_so span:after {
	position: absolute;
	content: "";
	background: url("images/index/deco_so01.svg") no-repeat center / cover;
	width: calc(71 / var(--break) * 100vw);
	height:calc(20 / var(--break) * 100vw);
	left: calc(-100 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.bg_so01 .ja_so span:after {
	left: auto;
	right:calc(-100 / var(--break) * 100vw);
}
.row_so01 {
	gap: calc(20 / var(--break) * 100vw) 1.55%;
}
.row_so01 .col {
	width: 32.3%;
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.row_so01 .icn {
	width: calc(78 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {
	.bg_common01 .en span {
		font-size: calc(140 / var(--break) * 100vw);
	}
}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_common01 .en span {
        font-size: calc(100 / var(--break) * 100vw);
    }
}
@media(max-width: 767px) {
	.bg_common01 .en {
		margin-bottom: 2vw;
		letter-spacing: .1em;
		font-size: calc(70 / var(--break) * 100vw);
	}
	.bg_common01 .ja {
		margin-bottom: 1vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_common01 {
		padding: 15.5vw 0 12vw;
		border-top: none;
		background: url(images/page/bg_ttl01_sp.jpg) no-repeat center top / cover;
	}
	.bg_so01 .en_so {
		margin-right: auto;
		margin-left: auto;
		max-width: calc(515 / var(--break) * 100vw);
	}
	.bg_so01 {
		padding: 8vw 0 14vw;
		background: url(images/index/bg_so01_sp.jpg) no-repeat center / cover;
	}
	.bg_so01 .ja_so {
		line-height: 1.6;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_so01 .en_so span:before {
		left: calc(-96 / var(--break) * 100vw);
	}
	.bg_so01 .en_so span:after {
		left: auto;
		right: calc(-96 / var(--break) * 100vw);
	}
	.bg_so01 .en_so span:before, .bg_so01 .en_so span:after {
		width: calc(70 / var(--break) * 100vw);
	}
	.row_so01 {
		gap: calc(20 / var(--break) * 100vw) 2%;
	}
	.row_so01 .icn {
		margin-bottom: 1vw;
	}
	.row_so01 .col {
		width: 49%;
		padding: 3vw 0 2vw;
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(23 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(23 / var(--break) * 100vw);
	}
	.row_so01 .icn {
		width: calc(67 / var(--break) * 100vw);
	}
	.row_so01 .txt {
		font-size: calc(24 / var(--break) * 100vw);
	}
}

/* より高度な治療に対応しています MEDICAL
------------------------------------------------------------------*/
.bg_medical01 {
	background: url("images/index/img_medical01.png") no-repeat right bottom / calc(618 / var(--break) * 100vw) auto,url("images/index/bg_medical01.jpg") no-repeat left top / cover
}
.row_medical01 {
	gap:calc(20 / var(--break) * 100vw) 1.55%;
}
.row_medical01 .col {
	width: 32.3%;
}
.row_medical01 a{
	height: calc(100 / var(--break) * 100vw);
}
.row_medical01 a:before {
	position: absolute;
	content: "";
	background: url("images/page/arw01.svg") no-repeat left center / contain;
	width: calc(24 / var(--break)* 100vw);
	height: calc(16 / var(--break)* 100vw);
	right: calc(20 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
}
.row_medical01 a:after {
	position: absolute;
	content: "";
	background: #fff;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: calc(6 / var(--break) * 100vw);
	margin: auto;
	z-index: 1;
}
.h3_common {
	text-shadow: 0px 0px 5px rgba(14, 62, 119, 0.3), 0px 0px 5px rgba(14, 62, 119, 0.3), 0px 0px 10px rgba(14, 62, 119, 0.3), 0px 0px 10px rgba(14, 62, 119, 0.3), 0px 0px 15px rgba(14, 62, 119, 0.3), 0px 0px 15px rgba(14, 62, 119, 0.3);
	background: url("images/index/deco_medical01.svg") no-repeat left top / contain,url("images/page/pattern01.png") repeat right top / calc(860 / var(--break) * 100vw);
}
.row_medical01 {
	margin-bottom: 0;
	max-width: calc(1240 / var(--break) * 100vw);
}
.row_medical01 .col_img {
	width: 32.3%;
	max-width: 100%;
}
.row_medical01 .col_txt {
	width:64.6%;
}
.row_medical01 .col_img:before {
	position: absolute;
	content: "";
	background: url("images/page/pattern02.png") repeat left center / calc(860 / var(--break) * 100vw);
	width: 100%;
	height: calc(100% - calc(10 / var(--break) * 100vw));
	left: calc(-10 / var(--break) * 100vw);
	bottom: 0;
	z-index: -1;
}
.row_medical01.r_reverse .col_img:before {
	left: auto;
	right: calc(-10 / var(--break) * 100vw);
}
.row_medical01 .copy span:before {
	position: absolute;
	content: "";
	background: url("images/index/deco_medical02.svg") no-repeat left center / contain;
	width: calc(10 / var(--break)* 100vw);
	height: calc(10 / var(--break)* 100vw);
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.box_medical01.blue {
	background: #e3e9f199;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.box_medical01 {
		padding: calc(50 / var(--break) * 100vw) calc(50 / var(--break) * 100vw)
	}
}
@media(max-width: 767px) {
	.bg_medical01 h3 {
		margin-bottom: 2vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_medical01 {
		padding: 9vw 0 13vw;
		background: url(images/index/bg_medical01_sp.jpg) no-repeat left bottom / cover;
	}
	.bg_medical01 .txt {
		margin-bottom: 9vw;
	}
	.row_medical01 {
		gap: calc(20 / var(--break) * 100vw) 0;
	}
	.row_medical01 .col {
		width: 100%;
		max-width: calc(600 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_medical01 a{
		height: auto;
		font-size: calc(34 / var(--break) * 100vw);
		padding: 5vw 0;
		line-height: 1.3;
	}
	.row_medical01 a:before {
		width: calc(24 / var(--break) * 100vw);
		height: calc(16 / var(--break) * 100vw);
		right: calc(20 / var(--break) * 100vw);
	}
	.bg_medical02 .h3_common{
		background: url(images/index/deco_medical01.svg) no-repeat left top / calc(120 / var(--break) * 100vw), url(images/page/pattern01.png) repeat right top / calc(860 / var(--break) * 100vw);
	}
	.bg_medical02 {
		padding: 10vw 0 22vw;
	}
	.box_medical01 {
		padding: 8vw 4vw 7vw;
	}
	.row_medical01 .col_img {
		max-width: calc(630 / 750*100vw);
		margin-left: 0;
		margin-right: auto;
		margin-bottom: 6.5vw;
	}
	.row_medical01 .col_img:before {
		right: calc(-16 / var(--break) * 100vw);
	}
	.row_medical01.r_reverse .col_img:before {
		right: calc(-16 / var(--break) * 100vw);
		left: auto;
	}
	.box_medical01:not(:last-of-type) {
		margin-bottom: calc(60 / var(--break) * 100vw);
	}
	.box_medical01 h5 {
		padding-bottom: 4vw;
		text-align: center;
		font-size: calc(40 / var(--break) * 100vw);
		margin-right: -2vw;
		margin-left: -2vw;
	}
	.row_medical01 .copy span {
		padding-left: 6vw;
	}
	.row_medical01 .copy span:before {
		width: calc(20 / var(--break) * 100vw);
    	height: calc(20 / var(--break) * 100vw);
	}
}

/* このようなお悩みはありませんか？ TROUBLE
------------------------------------------------------------------*/
.bg_trouble01 {
	background: url("images/index/bg_toruble01.jpg") no-repeat center / cover;
}
.row_trouble01 {
	gap: calc(20 / var(--break) * 100vw) 1.6%;
}
.row_trouble01 .col {
	width: 23.8%;
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.row_trouble01 .en {
	display: inline-block;
    background: linear-gradient(168deg, #584f42 60%, #9c8c75 60%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.row_trouble01 .num {
	margin-top: calc(-10 / var(--break) * 100vw);
}
.bg_trouble02 {
	background: url("images/index/deco_trouble01.svg") no-repeat right bottom / calc(1820 / var(--break) * 100vw),url("images/page/pattern04.png") repeat left top / calc(400 / var(--break) * 100vw) auto;
}
.wrap_trouble01 .img01 {
	top: calc(-196 / var(--break) * 100vw);
	left: calc(-6 / var(--break) * 100vw);
	width: calc(390 / var(--break) * 100vw);
}
.wrap_trouble01 .img02 {
	top: calc(-196 / var(--break) * 100vw);
	right: calc(-6 / var(--break) * 100vw);
	width: calc(390 / var(--break) * 100vw);
}
.wrap_trouble01 h3 .bdr {
	border-bottom: 1px dotted #584f42;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.row_trouble01 .txt {
		font-size: calc(20 / var(--break) * 100vw);
	}
	.wrap_trouble01 .img01 {
		width: calc(250 / var(--break) * 100vw);
	}
	.wrap_trouble01 .img02 {
		width: calc(250 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.trouble .bg_common01 {
		padding: 11vw 0 7vw;
	}
	.trouble .bg_common01 .ja {
		line-height: 1.6;
	}
	.bg_trouble01 {
		padding: 11vw 0 32vw;
		background: url(images/index/bg_toruble01_sp.jpg) no-repeat center / cover;
	}
	.bg_trouble01 .arw {
		max-width: calc(600 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_trouble01 {
		gap: calc(20 / var(--break) * 100vw) 3.2%;
	}
	.row_trouble01 .col {
		width: 48.4%;
		padding: 2vw 0 4vw;
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(30 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(30 / var(--break) * 100vw);
	}
	.row_trouble01 .en {
		font-size: calc(34/ var(--break) * 100vw);
	}
	.row_trouble01 .num {
		font-size: calc(69/ var(--break) * 100vw);
	}
	.row_trouble01 .txt {
		font-size: calc(26/ var(--break) * 100vw);
	}
	.bg_trouble02 {
		padding: 22vw 0 12vw;
		background: url(images/index/deco_trouble01_sp.svg) no-repeat right bottom / 100% auto, url(images/page/pattern04.png) repeat left top / calc(400 / var(--break) * 100vw) auto;
	}
	.bg_trouble02 h3 {
		line-height: 1.85;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.wrap_trouble01 .img01 {
		top: -47vw;
		left: 0;
		width: calc(340 / var(--break) * 100vw);
	}
	.wrap_trouble01 .img02 {
		top: -47vw;
		right: 0;
		width: calc(340 / var(--break) * 100vw);
	}
}

/* インプラント治療とは？ implant
------------------------------------------------------------------*/
.implant .bg_common01 .en span {
	background: linear-gradient(171deg, #584f42 33%, #9c8c75 33%);
	color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.row_implant01 .col_img {
	width: 50%;
	min-height: calc(680 / var(--break) * 100vw);
	background: url("images/index/img_implant02.jpg") no-repeat center / cover;
}
.row_implant01 .col_txt{
	width: 50%;
	background: url("images/index/img_implant01.jpg") no-repeat center / cover;
	text-shadow: 0px 0px 5px #6d5e3d, 0px 0px 5px #6d5e3d, 0px 0px 10px #6d5e3d, 0px 0px 10px #6d5e3d, 0px 0px 15px #6d5e3d, 0px 0px 15px #6d5e3d;
}
.row_implant01 .wrap {
	max-width: calc(700 / var(--break) * 100vw);
}
.row_implant02 {
	gap: calc(60 / var(--break) * 100vw) 2.3%;
}
.row_implant02 .col {
	width: 31.8%;
}
.row_implant02 h5 {
	background: url("images/index/deco_implant01.svg") no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw),url("images/index/deco_implant02.svg") no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.row_implant02 .num {
	top: calc(-20 / var(--break) * 100vw);
	left: 0;
	right: 0;
	margin: auto;
	background: url("images/page/ccl04.svg") no-repeat center / cover;
	width: calc(80 / var(--break) * 100vw);
	height: calc(80 / var(--break) * 100vw);
	padding-left: calc(3 / var(--break) * 100vw);
}
.bg_implnant02:before {
	position: absolute;
	content: "";
	background: url("images/index/bg_implant01.jpg") no-repeat left center / cover;
	width: 100%;
	height: calc(680 / var(--break)* 100vw);
	left: 0;
	top: calc(-10 / var(--break) * 100vw);
	margin: auto;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.row_implant01 .col_txt {
		padding: 0 calc(50 / var(--break) * 100vw);
	}
	.row_implant01 h5 {
		font-size: calc(30 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.bg_implant01 {
		padding: 12vw 0 0;
	}
	.row_implant01 .col_txt {
		width: 100%;
		padding: 9vw 7vw 10vw;
		background: url(images/index/img_implant01_sp.jpg) no-repeat center / cover;
	}
	.row_implant01 .col_img {
		width: 100%;
		min-height: calc(531 / var(--break) * 100vw);
	}
	.row_implant01 .copy {
		line-height: 1.6;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.row_implant02 {
		gap: calc(96 / var(--break) * 100vw) 0;
	}
	.row_implant02 .col {
    	width: 100%;
	}
	.row_implant02 .num {
		width: calc(144 / 750*100vw);
		height: calc(144 / 750*100vw);
		font-size: calc(54 / var(--break) * 100vw);
		top: calc(-36 / var(--break) * 100vw);
	}
	.row_implant02 h5 {
		padding: 4vw 5vw;
		letter-spacing: .1em;
		background: url(images/index/deco_implant01.svg) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(37 / var(--break) * 100vw), url(images/index/deco_implant02.svg) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
		font-size: calc(39 / var(--break) * 100vw);
	}
	.row_implant02 .box {
		padding: 5vw 4vw 6vw;
	}
	.bg_implnant02 {
		padding: calc(82 / var(--break) * 100vw) 0 calc(103 / var(--break) * 100vw);
	}
	.bg_implnant02:before {
		background: url(images/index/bg_implant01_sp.jpg) no-repeat left top calc(-35 / var(--break) * 100vw) / cover;
		width: 100%;
		height: calc(2012 / var(--break) * 100vw);
		left: 0;
		top: 0;
	}
	.bg_implnant02 .h3_common{
		margin-bottom: calc(88 / var(--break) * 100vw);
	}
}

/* コンテンツ名 class
------------------------------------------------------------------*/
.bg_comparison01 {
	background: url("images/index/deco_comparison01.svg") no-repeat right bottom / calc(1820 / var(--break) * 100vw),url("images/page/pattern04.png") repeat left top / calc(400 / var(--break) * 100vw);
}
.tbl_comparison01 table,
.tbl_comparison01 tr:not(:last-child) th,
.tbl_comparison01 tr:not(:last-child) td {
	border-color: #3d2a17!important;
}
.tbl_comparison01 th {
	background-color: #e3e9f1;
	vertical-align: middle;
	text-align: center;
}
.tbl_comparison01 th:first-of-type {
	color: #000000;
	font-family: "fot-matisse-pron", sans-serif;
    font-weight: 500;
    font-style: normal;
}
.tbl_comparison01 td {
	background: #fff;
}
.tbl_comparison01 tr:first-child th:first-child {
	width: 17.8%;
}
.tbl_comparison01 tr:first-child th:not(:first-child) {
	width: 27.4%;
	border-bottom: none;
}
.tbl_comparison01 tr:first-child th:nth-child(n+3) {
	border-left: 1px solid #3d2a17;
}
.tbl_comparison01 tr:first-child th:nth-child(2) {
	background-color: #00adcf;
}
.tbl_comparison01 tr:first-child th:nth-child(3) {
	background-color: #999999;
}
.tbl_comparison01 tr:first-child th:nth-child(4) {
	background-color: #999999;
}
.tbl_comparison01 td {
	text-align: center;
	padding: calc(20 / var(--break) * 100vw);
}
.tbl_comparison01 td:nth-last-child(-n+2) {
	border-left: 1px solid #3d2a17;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_comparison01 h3 {
		font-size: calc(30 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.bg_comparison01 h3 {
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_comparison01 {
		padding: 9vw 0 13vw;
	}
	.tbl_comparison01.js-scrollable table {
		width: calc(1400 / var(--break) * 100vw);
	}
	.tbl_comparison01.js-scrollable {
		overflow-x: auto!important;
	}
	.tbl_comparison01 th {
		font-size: calc(28 / var(--break) * 100vw);
	}
	.tbl_comparison01 td .fz30 {
		font-size: calc(32 / var(--break) * 100vw);
	}
	.tbl_comparison01 td {
		font-size: calc(24 / var(--break) * 100vw);
	}
}

/* インプラント治療の流れ FLOW
------------------------------------------------------------------*/
.flow .bg_common01 .en span {
    display: inline-block;
    background: linear-gradient(168deg, #584f42 35%, #9c8c75 35%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.flow_common01 {
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.flow_common01 .col_txt .wrap_txt {
	margin-bottom: calc(25 / var(--break) * 100vw);
}
.flow_common01 .col_txt .wrap_txt .num {
	width: calc(60 / var(--break) * 100vw);
	height: calc(60 / var(--break) * 100vw);
}
.flow_common01 .col_txt .wrap_txt .ttl {
    width: calc(100% - calc(80 / var(--break) * 100vw));
    font-weight: 300;
}
.flow_common01 .col_txt .wrap_txt .num:before {
	position: absolute;
    content: "";
    clip-path: polygon(100% 0, 0 100%, 100% 100%);
    background: #ffffff33;
    width: 100%;
    height: 100%;
    right: 0;
    bottom: 0;
    z-index: -1;
}
.flow_common01 .col_img:before {
	position: absolute;
    content: "";
    background: url(images/page/pattern02.png) repeat left center / calc(860 / var(--break) * 100vw);
    width: 100%;
    height: calc(100% - calc(10 / var(--break) * 100vw));
    right: calc(-10 / var(--break) * 100vw);
    bottom: 0;
    z-index: -1;
}
.flow_common01 .wrap_txt {
	border-bottom: 1px solid #584f42;
}
.arw_flow:before {
	border: none;
	width: calc(2 / var(--break) * 100vw);
	height: calc(60 / var(--break) * 100vw);
	background: #9c8c75;
	bottom: calc(-60 / var(--break) * 100vw);
}
.box_flow01 {
    background: url(images/index/deco_flow01.svg) no-repeat left calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw), url(images/index/deco_flow02.svg) no-repeat right calc(10 / var(--break) * 100vw) bottom calc(10 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

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

}
@media(max-width: 767px) {
	.bg_flow01 {
		padding: calc(80 / var(--break) * 100vw) 0 calc(100 / var(--break) * 100vw);
	}
	.flow_common01 {
		background: url(images/index/deco_flow03.png) no-repeat left calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(32 / var(--break) * 100vw), url(images/index/deco_flow04.png) no-repeat right calc(10 / var(--break) * 100vw) top calc(10 / var(--break) * 100vw) / calc(32 / var(--break) * 100vw);
		padding: 8vw 4vw;
	}
	.flow_common01 .col_txt .wrap_txt .num {
        width: calc(80 / var(--break) * 100vw);
        height: calc(80 / var(--break) * 100vw);
		font-size: calc(40 / var(--break) * 100vw);
    }
	.flow_common01 .col_txt .wrap_txt .ttl {
		letter-spacing: .1em;
		width: calc(100% - calc(105 / var(--break) * 100vw));
    	padding-top: 0;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.flow_common01 .col_txt .wrap_txt {
		padding-bottom: 5vw;
	}
	.flow_common01 .col_img {
		margin-bottom: 7vw;
	}
	.flow_common01.arw_flow {
        margin-bottom: 8vw;
    }
	.box_flow01 {
		padding: 9vw 4vw 9vw;
	}
	.box_flow01 .copy {
		line-height: 1.6;
		font-size: calc(40 / var(--break) * 100vw);
	}
}

/* ご挨拶 greeting
------------------------------------------------------------------*/
.box_greeting01 {
	background: url("images/index/deco_greeting01.jpg") no-repeat right top / calc(600 / var(--break) * 100vw) auto;
	max-width: calc(100% - calc(100 / var(--break) * 100vw));
	padding-right: calc(110 / var(--break) * 100vw);
	padding-left: calc(110 / var(--break) * 100vw);
}
.row_greeting01 {
	max-width: calc(1510 / var(--break) * 100vw);
}
.row_greeting01 .col_img {
	width: 53%;
	min-height: calc(640 / var(--break) * 100vw);
	background: url("images/index/img_greeting01.jpg") no-repeat center / cover;
}
.row_greeting01 .col_txt {
	width: 38.5%;
}
.row_greeting01 .name {
	background: url(images/page/pattern01.png) repeat right top / calc(268 / var(--break) * 100vw) auto;
	right: 0;
	bottom: calc(-64 / var(--break) * 100vw);
	width: calc(335 / var(--break) * 100vw);
	height: calc(130 / var(--break) * 100vw);
}
.row_greeting01 .col_img .en {
	left: calc(-34 / var(--break) * 100vw);
	top: 0;
	width: calc(84 / var(--break) * 100vw);
}
.row_greeting01 h3 {
	top: 0;
	right: 0;
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3), 0px 0px 5px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 15px rgba(0, 0, 0, 0.3), 0px 0px 15px rgba(0, 0, 0, 0.3);
}
.row_greeting01 h3 .txt01 {
	width: calc(587 / var(--break) * 100vw);
	height: calc(70 / var(--break) * 100vw);
}
.row_greeting01 h3 .txt02 {
	width: calc(289 / var(--break) * 100vw);
	height: calc(70 / var(--break) * 100vw);
}
.row_greeting01 h2 span:before {
	position: absolute;
	content: "";
	background: #584f42;
	width: calc(150 / var(--break) * 100vw);
	height: 1px;
	right: calc(-180 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.row_greeting02 {
	margin-right: auto;
	margin-left: auto;
	max-width: calc(1500 / var(--break) * 100vw);
}
.row_greeting02 .ttl {
	background: url(images/page/pattern01.png) repeat left top / calc(570 / var(--break) * 100vw) auto;
}
.box_greeting02 {
	background: url(images/index/deco_greeting01.svg) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw), url(images/index/deco_greeting02.svg) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(200 / var(--break) * 100vw);
}
.box_greeting03 {
	padding: 0;
}
.box_greeting03 .year {
	font-weight: 300;
}
.box_greeting03 li:before {
	background: #b67715;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.box_greeting01 {
		padding: calc(50 / var(--break) * 100vw);
	}
	.row_greeting01 h3 {
		font-size: calc(24 / var(--break) * 100vw);
	}
	.row_greeting01 h3 .txt01 {
		width: calc(500 / var(--break) * 100vw);
	}
	.row_greeting01 h3 .txt02 {
		width: calc(240 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.box_greeting01 {
		background: url(images/index/deco_greeting01.jpg) no-repeat right top / calc(443 / var(--break) * 100vw) auto;
		max-width: calc(100% - calc(24 / var(--break) * 100vw));
        padding: 12vw 3vw 9vw 4vw;
		margin-bottom: 12vw;
	}
	.box_greeting01 .en {
		left: calc(-41 / var(--break) * 100vw);
		width: calc(83 / var(--break) * 100vw);
	}
	.row_greeting01 .name {
		bottom: calc(-22 / var(--break) * 100vw);
	}
	.row_greeting01 .name .job {
		font-size: calc(26 / var(--break) * 100vw);
	}
	.row_greeting01 .name .ja {
		font-size: calc(50 / var(--break) * 100vw);
	}
	.row_greeting01 .col_img {
		width: 100%;
		max-width: calc(642 / 750*100vw);
		margin-left: auto;
		margin-right: 0;
		margin-bottom: 7vw;
		background: url(images/index/img_greeting01_sp.jpg) no-repeat center / cover;
		min-height: calc(640 / var(--break) * 100vw);
	}
	.row_greeting01 .col_txt {
		width: 100%;
		margin-right: auto;
		margin-left: 0;
		max-width: calc(646 / var(--break) * 100vw);
	}
	.row_greeting01 h2 {
		padding-left: 15vw;
    	margin-bottom: 1vw;
	}
	.row_greeting01 h2 span {
		margin-bottom: 0;
	}
	.row_greeting01 h2 span:before {
		width: calc(202 / var(--break) * 100vw);
		right: calc(-249 / var(--break) * 100vw);
	}
	.row_greeting01 h2 .fz40 {
		font-size: calc(50 / var(--break) * 100vw);
	}
	.row_greeting01 h3 .txt01 {
		width: calc(587 / var(--break) * 100vw);
		font-size: calc(30 / var(--break) * 100vw);
	}
	.row_greeting01 h3 .txt02 {
		width: calc(300 / var(--break) * 100vw);
		font-size: calc(30 / var(--break) * 100vw);
	}
	.box_greeting03 {
		padding: 0!important;
	}
	.box_greeting02 {
        padding: 8vw 5vw 0vw;
    }
	.box_greeting03 .year {
        width: 20%;
    }
	.box_greeting03 .txt {
        width: 79%;
    }
	.box_greeting03:first-of-type {
		margin-bottom: 8vw;
	}
	.box_greeting03 h5 {
		letter-spacing: 0;
	}
	.box_greeting03:first-of-type li:not(:last-of-type) {
        margin-bottom: 3.3vw;
    }
}

/* 医院紹介 CLINIC
------------------------------------------------------------------*/
.clinic .bg_common01 .en span {
    display: inline-block;
    background: linear-gradient(170deg, #584f42 35%, #9c8c75 35%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.address_clinic span:before {
	position: absolute;
	content: "";
	background: url("images/page/icn_map03.svg") no-repeat left center / contain;
	width: calc(25 / var(--break)* 100vw);
	height: calc(25 / var(--break)* 100vw);
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.row_clinic01 .col_img {
	width: 50%;
	min-height: calc(760 / var(--break) * 100vw);
	background: url("images/index/img_clinic01.jpg") no-repeat center right / cover;
}
.row_clinic01 .col_txt {
	width: 50%;
}
.row_clinic01 .tbl_foot {
	margin-right: auto;
	margin-left: auto;
	margin-bottom: calc(90 / var(--break) * 100vw);
}
.insta_clinic {
	width: calc(100 / var(--break) * 100vw);
	filter: drop-shadow(5px 5px 5px #aaa);
}
.tbl_foot span {
	color: #00adcf;
}
.bg_clinic01 {
    background: url("images/index/deco_clinic01.svg") 
		no-repeat right bottom / calc(960 / var(--break) * 100vw) auto,url(images/page/pattern04.png) repeat left top / calc(400 / var(--break) * 100vw) auto;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.row_clinic01 .col_txt {
		width: 60%;
		padding: 0 calc(50 / var(--break) * 100vw)
	}
	.row_clinic01 .col_img {
		width: 40%;
	}
	.insta_clinic  {
		width: calc(80 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.bg_clinic01 {
		background: url("images/index/deco_clinic01_sp.svg") no-repeat right bottom / calc(750 / var(--break) * 100vw) auto,url(images/page/pattern04.png) repeat left top / calc(400 / var(--break) * 100vw) auto;
		padding: 10vw 0 13vw;
	}
	.logo_clinic{
		margin-bottom: 5vw;
		width: calc(600 / var(--break) * 100vw);
	}
	.row_clinic01 .col_img {
		width: 100%;
		min-height: calc(553 / var(--break) * 100vw);
		margin-bottom: calc(78 / var(--break) * 100vw);
	}
	.row_clinic01 .col_txt {
		width: 100%;
		max-width: calc(702 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.address_clinic span:before {
		width: calc(31 / var(--break) * 100vw);
		height: calc(31 / var(--break) * 100vw);
		left: 7vw;
		top: 2vw;
		bottom: auto;
	}
	.address_clinic span{
		padding-left: 0;
	}
	.insta_clinic {
		margin-right: auto;
		margin-left: auto;
		width: calc(142 / var(--break) * 100vw);
		margin-top: calc(30 / var(--break) * 100vw);
	}
}

/* アクセス ACCESS
------------------------------------------------------------------*/
.access .bg_common01 .en span {
    display: inline-block;
    background: linear-gradient(171deg, #584f42 33%, #9c8c75 33%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.row_access01 {
	gap: calc(20 / var(--break) * 100vw) 5%;
}
.row_access01 .col {
	width: 47.5%;
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.row_access01 .icn {
	width: calc(176 / var(--break) * 100vw);
}
.row_access01 h5 span:before,.row_access01 h5 span:after {
	position: absolute;
	content: "";
	background: url("images/index/deco_access01.svg") no-repeat left center / contain;
	width: calc(22 / var(--break)* 100vw);
	height: calc(10 / var(--break)* 100vw);
	left: calc(-40 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
}
.row_access01 h5 span:after {
	left: auto;
	right: calc(-40 / var(--break) * 100vw);
}
.bg_access01:before {
	position: absolute;
	content: "";
	background: url("images/index/deco_access02.svg") no-repeat right bottom / calc(1820 / var(--break) * 100vw),url("images/page/pattern04.png") repeat left center / calc(400 / var(--break) * 100vw);
	width: 100%;
	height: calc(100% - calc(220 / var(--break) * 100vw));
	left: 0;
	bottom: 0;
	margin: auto;
	z-index: -1;
}
@media(min-width: 768px) and (max-width:1599px) {

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

}
@media(max-width: 767px) {
	.bg_access01 {
		padding: calc(80/ var(--break) * 100vw) 0 calc(100 / var(--break) * 100vw);
	}
	.bg_access01 .btn_map {
		margin-bottom: calc(60 / var(--break) * 100vw);
	}
	.row_access01 {
		max-width: calc(600 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
		gap: calc(60 / var(--break) * 100vw) 0;
	}
	.row_access01 .col {
		width: 100%;
		padding: 8vw 4vw 7vw;
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(34 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(34 / var(--break) * 100vw);
	}
	.row_access01 .icn {
		width: calc(224 / var(--break) * 100vw);
	}
	.row_access01 h5 {
		font-size: calc(34 / var(--break) * 100vw);
	}
	.row_access01 .txt {
		max-width: calc(453 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
		line-height: 1.66;
		font-size: calc(30 / var(--break) * 100vw);
	}
	.row_access01 h5 span:before, .row_access01 h5 span:after {
        width: calc(27 / var(--break) * 100vw);
        height: calc(16 / var(--break) * 100vw);
        left: calc(-51 / var(--break) * 100vw);
    }
	.row_access01 h5 span:after {
		left: auto;
		right: calc(-51 / var(--break) * 100vw);
	}
	.bg_access01:before {
		background: url("images/index/deco_clinic01_sp.svg") no-repeat right bottom / calc(750 / var(--break) * 100vw), url(images/page/pattern04.png) repeat left center / calc(400 / var(--break) * 100vw);
		height: calc(100% - calc(375 / var(--break) * 100vw));
	}
}

/* 費用 FEE
------------------------------------------------------------------*/
.fee .bg_common01 .en span {
    display: inline-block;
    background: linear-gradient(168deg, #584f42 35%, #9c8c75 35%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.tbl_common01 table {
	border-collapse: separate;
	border: 1px solid #584f42;
}
.tbl_common01 th {
	background: #584f42;
	color: #fff;
	font-weight: bold;
}
.tbl_common01 td {
	background: #fff;
}
.tbl_common01 tr:not(:last-child) th {
	border-bottom: 1px solid #fff;
}
.tbl_common01 tr:not(:last-child) td {
	border-bottom: 1px solid #584f42;
}
.bg_fee01 {
	background: url("images/index/bg_fee01.jpg") no-repeat center / cover;
}
.box_fee01 {
	outline-offset:calc(-10 / var(--break) * 100vw);
	outline: 1px solid #584f42;
	background: url("images/index/img_fee01.png") no-repeat right bottom / cover;
}
.box_fee01 .ttl {
	background: url(images/page/pattern01.png) repeat left top / calc(248 / var(--break) * 100vw) auto;
	max-width: calc(406 / var(--break) * 100vw);
}
.box_fee01 .month {
	width: calc(80 / var(--break) * 100vw);
	height: calc(80 / var(--break) * 100vw);
}
.box_fee01 .num {
	margin-bottom: calc(-20 / var(--break) * 100vw);
	font-size: calc(122 / var(--break) * 100vw);
}
.h3_common02 span:before,.h3_common02 span:after {
	position: absolute;
    content: "";
    background: url(images/page/deco_counseling03.svg) no-repeat left center / contain;
    width: calc(21 / var(--break) * 100vw);
    height: calc(10 / var(--break) * 100vw);
    left: calc(-36 / var(--break) * 100vw);
    bottom: 0;
    top: 0;
    margin: auto;
}
.h3_common02 span:after {
    left: auto;
    right: calc(-36 / var(--break) * 100vw);
}
.row_pay .col {
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
.btn_common01 {
	width: calc(400 / var(--break) * 100vw);
}
.btn_common01 a{
	height: calc(100 / var(--break) * 100vw);
}
.btn_common01 a:before {
	position: absolute;
	content: "";
	background: #000000;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: calc(6 / var(--break) * 100vw);
	margin: auto;
	z-index: -1;
}
.btn_common01 a:after {
	position: absolute;
	content: "";
	background: url("images/page/arw04.svg") no-repeat left center / contain;
	width: calc(16 / var(--break)* 100vw);
	height: calc(24 / var(--break)* 100vw);
	right: calc(20 / var(--break) * 100vw);
	bottom: 0;
	top: 0;
	margin: auto;
}
.bg_fee02 label {
  display: block;
  margin: calc(10 / var(--break) * 100vw) 0 calc(5 / var(--break) * 100vw);
  color: #555;
}
input[type="number"], input[type="button"] {
  width: 100%;
  padding: 10px;
  margin: calc(5 / var(--break) * 100vw) 0 calc(20 / var(--break) * 100vw);
  border: 1px solid #ddd;
  border-radius: calc(4 / var(--break) * 100vw);
  box-sizing: border-box;
  background: #fff;
}
.result {
  background: #e3e9f1;
  padding: calc(15 / var(--break) * 100vw);
  border: 1px solid #d1e7d1;
  border-radius: calc(4 / var(--break) * 100vw);
  margin-top: calc(20 / var(--break) * 100vw);
  margin-bottom: 0!important;
}
.result h2 {
  margin: 0;
  color: #2c6b2f;
}
.note {
  font-size: 0.9em;
  color: #777;
  margin-top: 10px;
}
.bg_fee02 input[type="button"] {
	margin-right: auto;
	margin-left: auto;
	max-width: calc(400 / var(--break) * 100vw);
}

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

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

}
@media(max-width: 767px) {
	.h3_common {
		background: url(images/index/deco_medical01.svg) no-repeat left top / calc(90 / var(--break) * 100vw), url(images/page/pattern01.png) repeat left top / calc(860 / var(--break) * 100vw);
		line-height: 1.3;
		padding: 4.5vw 2vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_fee01 {
		padding: calc(84 / var(--break) * 100vw) 0 calc(67 / var(--break) * 100vw);
		background: url(images/index/bg_fee01_sp.jpg) no-repeat center top / cover;
	}
	.box_fee01 {
		margin-bottom: calc(80 / var(--break) * 100vw);
		padding: 8vw 4vw 12vw;
		background: url(images/index/img_fee01_sp.png) no-repeat right bottom / cover;
	}
	.box_fee01 .ttl {
		font-size: calc(38 / var(--break) * 100vw);
	}
	.box_fee01 .copy {
		text-align: center;
		letter-spacing: 0;
		font-size: calc(50 / var(--break) * 100vw);
	}
	.box_fee01 .ttl {
		margin-bottom: 4vw;
		max-width: calc(646 / var(--break) * 100vw);
		font-size: calc(38 / var(--break) * 100vw);
	}
	.box_fee01 .month {
		width: calc(100 / 750*100vw);
		height: calc(100 / 750*100vw);
		font-size: calc(36 / var(--break) * 100vw);
	}
	.box_fee01 .fz30 {
		font-size: calc(36 / var(--break) * 100vw);
	}
	.box_fee01 .num {
		font-size: calc(147 / var(--break) * 100vw);
	}
	.box_fee01 .txt {
		line-height: 1.7;
		font-size: calc(24 / var(--break) * 100vw);
	}
	.wrap_price.flex {
		justify-content: center;
	}
	.wrap_price .txt_price {
		font-size: calc(36 / var(--break) * 100vw);
	}
	.h3_common02 {
		margin-bottom: 5vw;
		padding:4vw 2vw;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.h3_common02 span:before, .h3_common02 span:after {
		width: calc(46 / var(--break) * 100vw);
		height: calc(30 / var(--break) * 100vw);
		left: -11vw;
	}
	.h3_common02 span:after {
		left: auto;
    	right: -11vw;
	}
	.txt_fee01 {
		line-height: 2;
		font-size: calc(32 / var(--break) * 100vw);
	}
	.bg_pay {
		padding: calc(80 / var(--break) * 100vw) 0 calc(80 / var(--break) * 100vw);
	}
	.row_pay .col {
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(30 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(30 / var(--break) * 100vw);
	}
	.row_pay .icn {
		margin-bottom: 2vw;
        width: calc(204 / var(--break) * 100vw);
    }
	.row_pay .txt {
		letter-spacing: 0;
		line-height: 1.5;
		font-size: calc(24 / var(--break) * 100vw);
	}
	.btn_common01 {
    	width: calc(600 / var(--break) * 100vw);
	}
	.btn_common01 a {
		font-size: calc(34 / var(--break) * 100vw);
		height: calc(120 / var(--break) * 100vw);
	}
	.btn_common01 a:after {
		width: calc(20 / var(--break) * 100vw);
		height: calc(30 / var(--break) * 100vw);
		right: calc(30 / var(--break) * 100vw);
	}
	.box_flow01 .txt.mb45 {
		margin-bottom: 8vw;
	}
	.bg_fee02 {
		padding: calc(80 / var(--break) * 100vw) 0 calc(100 / var(--break) * 100vw);
	}
}
/* よくあるご質問 QA
------------------------------------------------------------------*/
.faq .bg_common01 .en span {
	display: inline-block;
	background: linear-gradient(168deg, #584f42 35%, #9c8c75 35%);
	color: transparent;
	-webkit-background-clip: text;
	background-clip: text;
	-webkit-text-fill-color: transparent;
	text-fill-color: transparent;
}
.qa_common {
	border: solid 1px #584f42;
}
.qa_common .box_q .txt {
	text-shadow: 0px 0px 5px rgba(0, 0, 0, 0.3), 0px 0px 5px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 10px rgba(0, 0, 0, 0.3), 0px 0px 15px rgba(0, 0, 0, 0.3), 0px 0px 15px rgba(0, 0, 0, 0.3);
	background: url(images/page/pattern02.png) repeat right top / calc(860 / var(--break) * 100vw) auto;
}
.qa_common .box_q .txt .icn:before,.qa_common .box_q .txt .icn:after {
	background: #fff;
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.qa_common .box_q .box span {
		padding-bottom: 0;
	}
	.bg_faq {
		padding: calc(80 / var(--break) * 100vw) 0 calc(105 / var(--break) * 100vw);
	}
	
}
/* 文京区・後楽園・飯田橋について ABOUT
------------------------------------------------------------------*/
.about .bg_common01 .en span {
	display: inline-block;
    background: linear-gradient(168deg, #584f42 35%, #9c8c75 35%);
    color: transparent;
    -webkit-background-clip: text;
    background-clip: text;
    -webkit-text-fill-color: transparent;
    text-fill-color: transparent;
}
.bg_about01:before{
	position: absolute;
	content: "";
	background: url("images/index/bg_about01.jpg") no-repeat left center / cover;
	width: 100%;
	height: calc(603 / var(--break)* 100vw);
	top: 0;
	margin: auto;
	z-index: 1;
}
.row_about01 {
	gap:calc(40 / var(--break) * 100vw) 4%;
}
.row_about01 .col {
	width: 48%;
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
}
@media(min-width: 768px) and (max-width:1599px) {

}
@media(min-width: 768px) and (max-width:1299px) {
	.bg_about01 h4 {
		font-size: calc(30 / var(--break) * 100vw);
	}
}
@media(max-width: 767px) {
	.bg_about01 {
		padding: 9vw 0 13vw;
	}
	.bg_about01 h4 {
		padding-bottom: 4vw;
		line-height: 1.6;
		letter-spacing: 0;
		font-size: calc(40 / var(--break) * 100vw);
	}
	.bg_about01:before {
		position: absolute;
		content: "";
		background: url(images/index/bg_about01_sp.jpg) no-repeat left center / cover;
		width: 100%;
		height: calc(1068 / var(--break) * 100vw);
		top: 0;
		margin: auto;
		z-index: 1;
	}
	.row_about01 {
		margin-bottom: calc(80 / var(--break) * 100vw);
		gap: calc(60 / var(--break) * 100vw) 0;
	}
	.row_about01 .col {
		width: 100%;
		padding: 7vw 6vw 7vw;
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(40 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(40 / var(--break) * 100vw);
	}
	.row_about01 h5 {
		font-size: calc(40 / var(--break) * 100vw);
	}
}

/* フッター footer
------------------------------------------------------------------*/
.row_foot01 > .col_l {
	width: 50%;
}
.row_foot01 > .col_r {
	width: 43%;
	max-width: 530px;
}
.h5_foot {
	max-width: calc(618 / var(--break) * 100vw);
}
.box_foot {
	background: url(images/index/deco_main02.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw), url(images/index/deco_main03.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(20 / var(--break) * 100vw);
	height: calc(180 / var(--break) * 100vw);
	max-width: 100%;
}
.row_foot02 .col {
	width: 50%;
}
.row_foot02 .col_r a {
	border-right: 1px solid #000000;
}
.row_foot02 a{
	border-left: 1px solid #000000;
	height: calc(70 / var(--break) * 100vw);
}
.row_foot02 a:before {
	content: "";
    width: calc(16 / var(--break) * 100vw);
    height: calc(24 / var(--break) * 100vw);
    margin: auto;
    background: url("images/page/arw04.svg") no-repeat center / cover;
    position: absolute;
    top: 0;
    bottom: 0;
    right: calc(55 / var(--break) * 100vw);
}
.row_foot04 {
	gap: calc(50 / var(--break) * 100vw) 3.2%;
}
.row_foot04 .col {
	width: 48.4%;
}
.main_foot02:before {
	position: absolute;
	content: "";
	background: url("images/page/pattern03.png") repeat left center / calc(320 / var(--break) * 100vw);
	width: 100%;
	height: calc(550 / var(--break)* 100vw);
	left: 0;
	top: 0;
	margin: auto;
	z-index: -1;
}
.pagetop {
	position: fixed;
	right: calc(30 / var(--break) * 100vw);
	bottom: calc(20 / 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) {
	.row_foot01 > .col_l {
		width: 52%;
	}
}
@media(max-width: 767px) {
	.row_foot01 {
		display: block;
	}
	.row_foot01 > .col_l {
		width: 100%;
		max-width: 100%;
		text-align: center;
	}
	.row_foot01 > .col_r {
		width: 100%;
		max-width: 100%;
		margin: 0 auto;
	}
	.main_foot {
		padding: 14vw 0 11vw;
		margin-bottom: 2vw;
	}
	.main_foot .address_clinic {
		margin-bottom: 5vw;
	}
	.box_foot {
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
		width: 100%;
		margin-bottom: calc(63 / var(--break) * 100vw);
		height: calc(220 / var(--break) * 100vw);
		background: url(images/index/deco_main02_sp.png) no-repeat left calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(28 / var(--break) * 100vw), url(images/index/deco_main03_sp.png) no-repeat right calc(6 / var(--break) * 100vw) top calc(6 / var(--break) * 100vw) / calc(28 / var(--break) * 100vw);
	}
	.box_foot .txt01 {
		letter-spacing: 0;
		font-size: calc(32 / var(--break) * 100vw);
	}
	.box_foot .txt01 .fz30 {
		letter-spacing: 0;
		font-size: calc(43 / var(--break) * 100vw);
	}
	.box_foot .txt01 .fz44{
		letter-spacing: 0;
		font-size: calc(64 / var(--break) * 100vw);
	}
	.box_foot .txt02 {
		letter-spacing: 0;
		font-size: calc(32 / var(--break) * 100vw);
	}
	.box_foot .txt02 .fz30 {
		letter-spacing: 0;
		font-size: calc(43 / var(--break) * 100vw);
	}
	.box_foot .txt02 .fz44{
		letter-spacing: 0;
		font-size: calc(64 / var(--break) * 100vw);
	}
	.row_foot02 {
		margin-bottom: 8vw;
	}
	.row_foot02 .col {
		width: 100%;
		max-width: calc(646 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.row_foot02 a {
		border-left: 1px solid #000000;
		border-right: 1px solid #000000;
		height: calc(90 / var(--break) * 100vw);
	}
	.row_foot02 .icn {
		width: calc(55 / var(--break) * 100vw);
	}
	.row_foot02 .txt01 {
		font-size: calc(26 / var(--break) * 100vw);
	}
	.row_foot02 .txt02 {
		font-size: calc(36 / var(--break) * 100vw);
	}
	.row_foot02 a:before {
		right: calc(42 / var(--break) * 100vw);
		width: calc(22 / var(--break) * 100vw);
    	height: calc(32 / var(--break) * 100vw);
	}
	.row_foot02 .col_l {
		margin-bottom: calc(50 / var(--break) * 100vw);
	}
	.row_foot03 {
		margin-bottom: calc(80 / var(--break) * 100vw);
	}
	.row_foot04 {
		gap: calc(50 / var(--break) * 100vw) 0;
	}
	.row_foot04 .col {
		width: 100%;
	}
	.main_foot02 {
		padding: calc(66 / var(--break) * 100vw) 0 0;
	}
	.main_foot02:before {
		height: calc(962 / var(--break) * 100vw);
	}
	.logo_foot {
		max-width: calc(620 / 750*100vw);
		margin-left: auto;
		margin-right: auto;
	}
	.h5_foot {
		font-size: calc(16 / var(--break) * 100vw);
	}
	.copyright {
		font-size: 75%;
		letter-spacing: 0;
		padding: 4vw 0 20vw;
		height: auto;
		line-height: 1.5;
	}
	.pagetop {
		display: none!important;
	}
	.fix {
		position: fixed;
		width: 100%;
		left: 0;
		bottom: 0;
		z-index: 9;
	}
	.fix_tel {
		width: calc(340 / var(--break) * 100vw);
	}
	.fix_web {
		width: calc(260 / var(--break) * 100vw);
	}
	.pagetop_sp {
		width: calc(150 / var(--break) * 100vw);
	}
	.fix a {
		display: block;
	}
}

/* サイトマップ
------------------------------------------------------------------*/
.ttl_sitemap:before {
	position: absolute;
	content: "";
	background: #000000;
	width: 100%;
	height: 1px;
	left: 0;
	bottom: 0;
	top: 0;
	margin: auto;
}
.list_sitemap a {
	position: relative;
	padding-left: calc(17 / var(--break) * 100vw);
}
.list_sitemap a:before {
	content: "";
    width: 0;
    height: 0;
    margin: auto;
    border-left: calc(10 / var(--break) * 100vw) solid #000000;
    border-top: calc(6 / var(--break) * 100vw) solid transparent;
    border-bottom: calc(6 / var(--break) * 100vw) solid transparent;
    position: absolute;
    top: calc(9 / var(--break) * 100vw);
    left:0;
}
.list_sitemap li:not(:last-of-type) {
	margin-bottom: calc(4 / var(--break) * 100vw);
}
.row_sitemap ul {
	width: 48%;
}
.list_sitemap.flex li{
	width: 31%;
}

@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
	
}
@media(max-width: 767px) {
	.sitemap {
		padding-top: calc(50 / var(--break) * 100vw);
	}
	.ttl_sitemap {
		margin-bottom: 0;
		letter-spacing: 0;
		font-size: calc(50 / var(--break) * 100vw);
	}
	.row_sitemap ul {
		width: 100%;
	}
	.row_sitemap ul:first-of-type {
		margin-bottom: 1vw;
	}
	.list_sitemap a{
		line-height: 1.5;
		padding-left: calc(27 / var(--break) * 100vw);
		display: inline-block;
	}
	.list_sitemap li{
		max-width: calc(660 / 750*100vw);
		width: 100%!important;
		font-size: calc(26 / var(--break) * 100vw);
	}
	.list_sitemap a:before {
		border-left: calc(16 / var(--break) * 100vw) solid #000000;
		border-top: calc(10 / var(--break) * 100vw) solid transparent;
		border-bottom: calc(10 / var(--break) * 100vw) solid transparent;
		top: calc(12 / var(--break) * 100vw);
	}
	.list_sitemap li:not(:last-of-type) {
		margin-bottom: 1vw;
	}
}

/* グーグルマップ
------------------------------------------------------------------*/
.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(-170 / var(--break) * 100vw);
	height: calc(100% + calc(340 / 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_map01.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: "";
	width: calc(16 / var(--break) * 100vw);
	height: calc(24 / var(--break) * 100vw);
	margin: auto;
	background: url("images/page/arw_map.svg") no-repeat center / cover;
	position: absolute;
	top: 0;
	bottom: 0;
	right: calc(20 / var(--break) * 100vw)
}
@media(min-width: 768px) and (max-width:1599px) {
}
@media(min-width: 768px) and (max-width:1299px) {
	.map iframe {
		margin-top: calc(-280 / var(--break) * 100vw);
		height: calc(100% + calc(560 / var(--break) * 100vw));
	}
}
@media(max-width: 767px) {
	.map iframe {
		margin-top: calc(-200 / var(--break) * 100vw);
		height: calc(100% + calc(400 / 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 3vw center;
		background-size: calc(30 / var(--break) * 100vw) auto;
	}
	.btn_map a::after {
		width: calc(16 / 750*100vw);
		height: calc(24 / 750*100vw);
		right: 3vw;
	}
}