@charset "utf-8";
/* CSS Document */
/*====================================
Reset
====================================*/
html{
	width: 100%;
	font-size:2.41546vw; /* 1rem=10px */
	font-weight:400;
}
body{
	min-width: 320px;
	line-height: 1;
	color: #666;
	background-color: #FFF;
	position: relative;
	overflow-x: hidden;
	font-family:'Noto Serif JP',游明朝,"Yu Mincho",YuMincho,"Hiragino Mincho ProN",HGS明朝E,メイリオ,Meiryo,serif;
	font-weight: 400;
}
@media screen and (min-width: 600px) {
	html{
		font-size: 10px;
	}
}

img{
	width: 100%;
	height: auto;
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}
a{
	text-decoration: none;
	color:inherit;
}
a, input, textarea, button,
.slider_prev, .slider_next, .swiper-pagination-bullet,
.tab_btn_wrap .tab_btn,
.js--ac_btn, .js--ac_btn_target,
.js--btn-popup, .js--popup-close{
	-webkit-tap-highlight-color:rgba(0,0,0,0);
	 outline: 0;
}

/*====================================
Common
====================================*/
.fw500{
	font-weight: 500;
}
.font--cursive{
	font-family: 'Great Vibes', cursive;
}
.cmn_width,
.cmn_width2{
	margin: 0 auto;
}
.cmn_width{
	width: 37.4rem;
}
.cmn_width2{
	width: 39.4rem;
}
.anchor{
	display: block;
	width: 0;
	height: 0;
	padding-top: 5rem;
	margin-top: -5rem;
}

@media screen and (min-width: 600px) {
	.cmn_width,
	.cmn_width2{
		width: 600px;
	}
}
@media screen and (min-width: 960px) {
	.cmn_width,
	.cmn_width2{
		width: 900px;
	}
}
@media screen and (min-width: 1150px) {
	.cmn_width,
	.cmn_width2{
		width: 1150px;
	}
	.anchor{
		padding-top: 110px;
		margin-top: -110px;
	}
}

/* 画像
--------------------------------------*/
.fit_thumbnail img{
	width: 100%;
	height: 100%;
	object-fit: cover;
}
/* IE */
.browser--ie .fit_thumbnail{
	position: relative;
	overflow: hidden;
}
.browser--ie .fit_thumbnail img{
	width: auto;
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
}

.posted_img{
	display: block;
	width: 100%;
	position: relative;
	height: 0;
	overflow: hidden;
	padding-bottom: 66.66%;
}
.posted_img img{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.posted_img.dummy_img{
	background-color: #fff;
	border: solid 1px #E2E2E2;
}
.posted_img.dummy_img img{
	width: 69%;
	height: auto;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}

/* 共通テキスト
--------------------------------------*/
.txt--cmn1{
	font-size: 1.3rem;
	line-height: 1.92;
}
.txt--cmn1 img{
	max-width: 100%;
	height: auto;
}
.txt--u{
	text-decoration: underline;
}

@media screen and (min-width: 960px) {
	.txt--cmn1{
		font-size: 15px;
		line-height: 2;
	}
	.txt--u:hover{
		text-decoration: none;
	}
}

/* 共通タイトル
--------------------------------------*/
.ttl--cmn3:before,
.ttl--cmn4:before,
.ttl--cmn5:before{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
}
.ttl--cmn1,
.edit_content h2:not([class]){
	text-align: center;
	font-weight: 500;
	color: #72684B;
	font-size: 2.4rem;
	line-height: 1.3;
	letter-spacing: 0.05em;
	margin-bottom: 2.7rem;
}
.ttl--cmn2{
	color: #72684B;
	font-size: 2.2rem;
	letter-spacing: 0.05em;
	font-weight: 500;
	line-height: 1.3;
	padding-bottom: 1.7rem;
	border-bottom: solid 1px #887B5B;
	margin-bottom: 2rem;
}
.ttl--cmn3,
.ttl--cmn3-simple{
	color: #72684B;
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 500;
	margin-bottom: 1.8rem;
}
.ttl--cmn3{
	padding-left: 3rem;
	position: relative;
}
.ttl--cmn3:before{
	background-color: #72684B;
	width: 2rem;
	height: 2px;
	left: 0;
	top: 1rem;
}
.ttl--cmn4,
.ttl--cmn4-simple{
	color: #444;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.3;
	margin-bottom: 1.2rem;
}
.ttl--cmn4{
	position: relative;
	padding-left: 2rem;
}
.ttl--cmn4:before{
	width: 1rem;
	height: 1rem;
	border-radius: 2px;
	background: #8F8365;
	top: 0.4rem;
	left: 0;
}
.ttl--cmn5,
.ttl--cmn5-simple{
	font-size: 1.8rem;
	line-height: 1.3;
	font-weight: 500;
	color: #444;
	margin-bottom: 2rem;
}
.ttl--cmn5{
	padding-left: 1.5rem;
	position: relative;
}
.ttl--cmn5:before{
	top: 0.4rem;
	left: 0;
	height: 1.5rem;
	width: 0.5rem;
	background: linear-gradient(to right, #72684B 0%, #72684B 0.3rem, transparent 0.3rem, transparent 0.4rem, #72684B 0.4rem, #72684B 100%);
}

@media screen and (min-width: 960px) {
	.ttl--cmn1,
	.edit_content h2:not([class]){
		font-size: 36px;
		margin-bottom: 40px;
	}
	.ttl--cmn2{
		font-size: 32px;
		padding-bottom: 18px;
		margin-bottom: 30px;
	}
	.ttl--cmn3,
	.ttl--cmn3-simple{
		font-size: 26px;
		margin-bottom: 20px;
	}
	.ttl--cmn3{
		padding-left: 50px;
	}
	.ttl--cmn3:before{
		width: 30px;
		top: 15px;
	}
	.ttl--cmn4,
	.ttl--cmn4-simple{
		font-size: 22px;
		margin-bottom: 18px;
	}
	.ttl--cmn4{
		padding-left: 25px;
	}
	.ttl--cmn4:before{
		width: 15px;
		height: 15px;
		top: 7px;
	}
	.ttl--cmn5,
	.ttl--cmn5-simple{
		font-size: 26px;
		margin-bottom: 20px;
	}
	.ttl--cmn5{
		padding-left: 16px;
	}
	.ttl--cmn5:before{
		top: 5px;
		height: 25px;
		width: 5px;
		background: linear-gradient(to right, #72684B 0%, #72684B 3px, transparent 3px, transparent 4px, #72684B 4px, #72684B 100%);
	}
}

/* 共通背景
--------------------------------------*/
.box--white,
.box--lightgray,
.box--pink,
.box--olive{
	box-sizing: border-box;
}
.box--white{
	background-color: #FFF;
	padding: 3rem 2rem;
	border-radius: 3px;
	box-shadow: 0 3px 3px 0 rgba(0, 0, 0, .1);
}
.box--lightgray{
	border-radius: 2px;
	padding: 2rem;
	background-color: #F5F5F5;
}
.box--pink{
	background-color: #F6F1F6;
	border-radius: 2px;
	padding: 2rem;
}
.box--olive{
	background: rgba(143, 131, 101, .5);
	border-radius: 2px;
	padding: 1rem;
	color: #fff;
}

@media screen and (min-width: 960px) {
	.box--white{
		padding: 40px;
	}
	.box--lightgray{
		padding: 30px 40px;
	}
	.box--pink{
		padding: 20px 30px;
	}
}

/* 共通ボタン
--------------------------------------*/
.btn--cmn1,
.btn--cmn2,
.btn--cmn3{
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	height: 5rem;
	border-radius: 2px;
	font-size: 1.5rem;
	font-weight: 500;
}
.btn--cmn1{
	background-color: #FFF;
	color: #72684B;
}
.btn--cmn2{
	background-color: #F5F5F5;
	color: #72684B;
}
.btn--cmn3{
	background-color: #CFB3D4;
	color: #fff;
}

@media screen and (min-width: 960px) {
	.btn--cmn1,
	.btn--cmn2,
	.btn--cmn3{
		height: 60px;
		font-size: 18px;
	}
	.btn--cmn1,
	.btn--cmn2{
		transition: background .3s ease, color .3s ease, border .3s ease;
	}
	.btn--cmn2:hover{
		background-color: #C4BEAE;
		color: #fff;
	}
	.btn--cmn3{
		transition: opacity .3s ease;
	}
	.btn--cmn3:hover{
		opacity: .7;
	}
}

.arrow--cmn1{
	width: 10px;
	height: 4px;
	overflow: hidden;
	position: relative;
}
.arrow--cmn1:before,
.arrow--cmn1:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	background-color: #72684B;
}
.arrow--cmn1:before{
	width: 100%;
	height: 1px;
	top: calc(100% - 1px);
}
.arrow--cmn1.leftward:before{
	right: 0;
}
.arrow--cmn1.rightward:before{
	left: 0;
}
.arrow--cmn1:after{
	width: 1px;
	height: calc(100% - 1px);
	top: 0px;
}
.arrow--cmn1.leftward:after{
	transform:skewX(-40deg);
	left: 2px;
}
.arrow--cmn1.rightward:after{
	transform:skewX(40deg);
	right: 2px;
}

@media screen and (min-width: 960px) {
	a.arrow--cmn1.leftward:hover:before,
	a:hover .arrow--cmn1.leftward:before,
	.slider_prev:hover .arrow--cmn1.leftward:before{
		animation: leftwardArrowBefore 0.4s linear;
	}
	a.arrow--cmn1.rightward:hover:before,
	a:hover .arrow--cmn1.rightward:before,
	.slider_next:hover .arrow--cmn1.rightward:before{
		animation: rightwardArrowBefore 0.4s linear;
	}
	a.arrow--cmn1.leftward:hover:after,
	a:hover .arrow--cmn1.leftward:after,
	a.arrow--cmn1.rightward:hover:after,
	a:hover .arrow--cmn1.rightward:after,
	.slider_prev:hover .arrow--cmn1:after,
	.slider_next:hover .arrow--cmn1:after{
		animation: arrowAfter 0.4s linear;
	}
}

@keyframes leftwardArrowBefore{
	0%{
		transform:translateX(0);
	}
	50%{
		transform:translateX(-105%);
		width: 100%;
	}
	51%{
		transform:translateX(0);
		width: 0;
	}
	100%{
		transform:translateX(0);
		width:100%;
	}
}
@keyframes rightwardArrowBefore{
	0%{
		transform:translateX(0);
	}
	50%{
		transform:translateX(105%);
		width: 100%;
	}
	51%{
		transform:translateX(0);
		width: 0;
	}
	100%{
		transform:translateX(0);
		width:100%;
	}
}
@keyframes arrowAfter{
	0%{
		height: calc(100% - 1px);
	}
	15%{
		height: 0;
	}
	90%{
		height: 0;
	}
	100%{
		height: calc(100% - 1px);
	}
}

/* cmn_tab_btn_wrap
--------------------------------------*/
.cmn_tab_btn_wrap{
	display: flex;
	justify-content: center;
}
.cmn_tab_btn_wrap .tab_btn{
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	overflow: hidden;
	cursor: pointer;
	position: relative;
	width: calc((100% - 0.4rem) / 2);
	height: 5rem;
	padding: 0 1rem;
	border-radius: 2px;
	background-color: #F5F5F5;
	transition: color .3s ease, background .3s ease;
}
.cmn_tab_btn_wrap .tab_btn:not(:last-child){
	margin-right: 0.4rem;
}
.cmn_tab_btn_wrap .tab_btn:before{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	opacity: 0;
	background: linear-gradient(to bottom, #D2B4D9 0%, #B994B9 100%);
	transition: opacity .3s ease;
}
.cmn_tab_btn_wrap .tab_btn.is--active:before{
	opacity: 1;
}
.cmn_tab_btn_wrap .tab_btn_icon,
.cmn_tab_btn_wrap .tab_btn_txt{
	position: relative;
	z-index: 2;
}
.cmn_tab_btn_wrap .tab_btn_icon{
	position: relative;
	background-color: #fff;
	mask-image: url(../img/common/tabbtn-icon-trouble.svg);
	-webkit-mask-image: url(../img/common/tabbtn-icon-trouble.svg);
	width: 2.8rem;
	height: 2.8rem;
	transition: background 0s;
}
.cmn_tab_btn_wrap .tab_btn[data-tab=menu2] .tab_btn_icon{
	mask-image: url(../img/common/tabbtn-icon-treatment.svg);
	-webkit-mask-image: url(../img/common/tabbtn-icon-treatment.svg);
}
.cmn_tab_btn_wrap .tab_btn_txt{
	margin-left: 3px;
	font-size: 1.8rem;
	color: #A8A8A8;
}
.cmn_tab_btn_wrap .tab_btn.is--active .tab_btn_txt{
	color: #fff;
}

@media screen and (min-width: 960px) {
	.cmn_tab_btn_wrap .tab_btn{
		width: 300px;
		height: 60px;
	}
	.cmn_tab_btn_wrap .tab_btn:not(:last-child){
		margin-right: 20px;
	}
	.cmn_tab_btn_wrap .tab_btn_txt{
		margin-right: 5px;
		font-size: 20px;
	}
}

/* other parts
--------------------------------------*/
.google_map_wrap{
	position: relative;
	width: 100%;
	overflow: hidden;
	padding-top: 13rem;
}
.google_map_wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 13rem;
}
.cmn_movie_wrap{
	position: relative;
	padding-bottom: 56.25%;
	height: 0;
	overflow: hidden;
}
.cmn_movie_wrap iframe{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.cmn_movie_wrap video{
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
}
.js--cmn_movie_start_btn{
	cursor: pointer;
}

/* select
--------------------------------------*/
.cmn_select_wrap,
.cmn_select_wrap select{
	width: 100%;
	height: 5rem;
}
.cmn_select_wrap{
	position: relative;
	background-color: #fff;
	border-radius: 2px;
}
.cmn_select_wrap:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	box-sizing: border-box;
	border-right: solid 1px #707070;
	border-bottom: solid 1px #707070;
	width: 1rem;
	height: 1rem;
	top: 50%;
	right: 2.2rem;
	transform: translateY(-70%) rotate(45deg);
}
.cmn_select_wrap select{
	cursor: pointer;
	border: none;
	outline: none;
	background: transparent;
	background-image: none;
	box-shadow: none;
	-webkit-appearance: none;
	appearance: none;
	padding:0 5rem 0 2rem;
	box-sizing: border-box;
	color: #444;
	font-size: 1.4rem;
}
.cmn_select_wrap select::-ms-expand{
	display: none;
}

@media screen and (min-width: 960px) {
	.cmn_select_wrap,
	.cmn_select_wrap select{
		height: 50px;
	}
	.cmn_select_wrap:after{
		right: 20px;
	}
	.cmn_select_wrap select{
		font-size: 15px;
	}
}

/* tbl
--------------------------------------*/
.cmn_price_tbl,
.tbl--row-head,
.tbl--column-head,
.tbl--basic{
	width: 100%;
	table-layout: fixed;
}
.tbl--basic{
	border: solid 1px #E3E3E3;
}
.cmn_price_tbl th,
.cmn_price_tbl td,
.tbl--row-head th,
.tbl--row-head td,
.tbl--column-head th,
.tbl--column-head td,
.tbl--basic th,
.tbl--basic td{
	padding: 1.2rem 0.4rem;
	font-size: 1.2rem;
	line-height: 1.2;
	text-align: center;
	vertical-align: middle;
	border-bottom: solid 1px #E3E3E3;
	border-right: solid 1px #E3E3E3;
}
.cmn_price_tbl th,
.cmn_price_tbl td,
.tbl--row-head th,
.tbl--row-head td,
.tbl--column-head th,
.tbl--column-head td{
	background-color: #F5F5F5;
}
.tbl--basic th,
.tbl--basic td{
	background-color: #fff;
}
.cmn_price_tbl th,
.tbl--row-head th,
.tbl--column-head th:first-child{
	background-color: #8F8365;
	color: #fff;
	border-color: #fff;
}
.cmn_price_tbl tr:not(:first-child) th,
.tbl--row-head tr:not(:first-child) th{
	color: inherit;
	background-color: #e3e0d8;
}
.cmn_price_tbl tr:first-child th,
.cmn_price_tbl tr:last-child th,
.cmn_price_tbl tr:last-child td,
.tbl--row-head tr:first-child th,
.tbl--row-head tr:last-child th,
.tbl--row-head tr:last-child td,
.tbl--column-head tr:last-child th,
.tbl--column-head tr:last-child td,
.tbl--basic tr:last-child th,
.tbl--basic tr:last-child td{
	border-bottom: none;
}
.cmn_price_tbl th:last-child,
.cmn_price_tbl td:last-child,
.tbl--row-head th:last-child,
.tbl--row-head td:last-child,
.tbl--column-head th:last-child,
.tbl--column-head td:last-child,
.tbl--basic th:last-child,
.tbl--basic td:last-child{
	border-right: none;
}

@media screen and (min-width: 960px) {
	.cmn_price_tbl th,
	.cmn_price_tbl td,
	.tbl--row-head th,
	.tbl--row-head td,
	.tbl--column-head th,
	.tbl--column-head td,
	.tbl--basic th,
	.tbl--basic td{
		font-size: 15px;
	}
	.cmn_price_tbl th,
	.tbl--row-head tr:first-child th,
	.tbl--column-head th:first-child{
		font-size: 16px;
	}
}

/* effect
--------------------------------------*/
.effect--fadein,
.effect--fadein_to_up{
	opacity: 0;
}
.effect--fadein_to_up{
	transform: translateY(2.5rem);
}
.effect--fadein.is--scrolled,
.effect--fadein_to_up.is--scrolled{
	opacity: 1;
}
.effect--fadein.is--scrolled{
	transition: opacity 1s ease-out;
	transition-delay: .2s;
}
.effect--fadein_to_up.is--scrolled{
	transform: translate(0);
	transition: opacity 1s ease-out, transform 1s ease-out;
	transition-delay: .2s;
}

/* アイコン
--------------------------------------*/
.icon--svg{
	display: block;
	mask-repeat: no-repeat;
	-webkit-mask-repeat: no-repeat;
	mask-position: center;
	-webkit-mask-position: center;
	mask-size: contain;
	-webkit-mask-size: contain;
	background: #000;
	transition: background .3s ease;
	width: 100%;
	height: 100%;
}
.icon--other-tab{
	mask-image: url(../img/common/icon-other-tab.svg);
	-webkit-mask-image: url(../img/common/icon-other-tab.svg);
	width: 1.1rem;
	height: 1rem;
}

/*====================================
header
====================================*/
/* ハンバーガーボタン
--------------------------------------*/
.hamburger_btn{
	position: fixed;
	top: 0.5rem;
	right: 1rem;
	width: 4rem;
	height: 4rem;
	z-index: 2001;
}
.hamburger_btn .hamburger_inner{
	display: block;
	position: absolute;
	width: 2rem;
	height: 0.9rem;
	top: 1.6rem;
	left: 1rem;
	transition: transform 0.4s ease-in-out;
}
.hamburger_btn span{
	position: absolute;
	top: 0;
	right: 0;
	width: 20px;
	height:1px;
	background-color: #72684B;
	transition: transform 0.4s ease-in-out, opacity 0.4s ease-in-out;
}
.hamburger_btn.is--open span:first-child{
	transform:translate(0px, 3px) rotate(-405deg);
}
.hamburger_btn span:nth-child(2){
	top: 6px;
}
.hamburger_btn.is--open span:nth-child(2){
	transform:translate(0px, -3px) rotate(405deg);
}

@media screen and (min-width: 1150px) {
	.hamburger_btn{
		display: none;
	}
}

/* header
--------------------------------------*/
header{
	box-sizing: border-box;
	position: fixed;
	background-color: #fff;
	z-index: 2000;
	top: 0;
	left: 0;
	width: 100%;
	height: 5rem;
}
.header_logo{
	padding-top: 1rem;
}
.gnav{
	display: flex;
	justify-content: flex-end;
	margin-left: 13px;
}
.gnav_list{
	display: flex;
	align-items: flex-end;
}
.gnav_link{
	padding-top: 41px;
	margin-right: 26px;
	display: flex;
	align-items: center;
}
.gnav_link_item{
	display: block;
}
.gnav_link_item.has--dd{
	padding-bottom: 10px;
	margin-bottom: -10px;
}
.gnav_link_txt{
	position: relative;
	z-index: 2;
	cursor: pointer;
	font-size: 15px;
	color: #444;
	padding: 0 10px;
	padding-bottom: 45px;
}
.gnav_link_item.has--dd .gnav_link_txt:before,
.gnav_link_item .gnav_link_txt:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	left: 50%;
	transform: translateX(-50%);
}
.gnav_link_item.has--dd .gnav_link_txt:before{
	background-color: #E3D0AF;
	width: 4px;
	height: 4px;
	border-radius: 100%;
	bottom: 26px;
}
.gnav_link_txt:after{
	background-color: #B389B5;
	height: 2px;
	width: 0;
	bottom: 0;
}
.gnav_link_item:hover .gnav_link_txt:after{
	width: 100%;
	transition: width .3s ease;
}
.gnav .dropdown_layer,
.gnav .dropdown_blc{
	position: absolute;
	left: 0;
	width: 100%;
	opacity: 0;
	pointer-events: none;
}
.gnav_link_item:hover .dropdown_layer,
.gnav_link_item:hover .dropdown_blc{
	opacity: 1;
	transition: opacity .3s ease;
}
.gnav_link_item:hover .dropdown_blc{
	pointer-events: auto;
}
.gnav .dropdown_layer{
	background-color: rgba(181, 172, 152, 0.4);
	top: 110px;
	height: calc(100vh - 110px);
}
.gnav .dropdown_blc{
	background-color: #fff;
	top: 113px;
	max-height: calc(100vh - 110px - 3px);
	overflow: auto;
	scrollbar-width: thin;
  scrollbar-color: #C4BEAE #F5F5F5;
}
.gnav .dropdown_blc::-webkit-scrollbar{
	width: 10px;
}
.gnav .dropdown_blc::-webkit-scrollbar-thumb{
	background: #C4BEAE;
	border-left: 3px solid transparent;
	border-right: 3px solid transparent;
}
.gnav .dropdown_blc::-webkit-scrollbar-track{
	background: #F5F5F5;
}
.gnav_link_item .dropdown_blc_inner{
	padding: 20px 0 10px 0;
}
.gnav .gnav_sublink_list{
	display: flex;
	flex-wrap: wrap;
	width: calc(100% + 40px);
}
.gnav .gnav_sublink_item{
	box-sizing: border-box;
	display: flex;
	align-items: center;
	position: relative;
	color: #444;
	font-size: 15px;
	line-height: 1.2;
	width: 198px;
	margin-right: 40px;
	padding: 10px 25px 10px 0;
	margin-bottom: 20px;
	border-bottom: solid 3px #F5F5F5;
}
.gnav .gnav_sublink_item .arrow_mark{
	box-sizing: border-box;
	position: absolute;
	top: 50%;
	right: 0;
	transform: translateY(-50%);
	width: 20px;
	height: 20px;
	background-color: #F5F5F5;
	border-radius: 100%;
	display: flex;
	align-items: center;
	justify-content: center;
}
.gnav_btn{
	width: 100px;
	height: 100%;
}

@media screen and (max-width: 1149px) {
	.gnav{
		display: none;
	}
}

@media screen and (min-width: 1150px) {
	header,
	.header_inner{
		height: 110px;
	}
	.header_inner{
		display: flex;
		justify-content: flex-end;
		width: 100%;
		margin-left: auto;
		margin-right: 0;
	}
}
@media screen and (min-width: 1150px) and (max-width: 1299px) {
	.gnav_link_txt{
		font-size: 13px;
		padding-left: 7px;
		padding-right: 7px;
	}
}
@media screen and (min-width: 1400px) {
	.header_inner{
		justify-content: space-between;
		width: calc((100vw - 1150px) / 2 + 1150px);
	}
}

/*===============================
hamburger menu
===============================*/
#hamburger_menu{
	z-index:1001;
	position: fixed;
	box-sizing: border-box;
	width: 100%;
	height: 100vh;
	top: 0;
	right: 0;
	box-sizing: border-box;
	display: none;
	padding-top: 5rem;
}
#hamburger_menu .scroll_area{
	overflow-y: scroll;
	max-height: 100%;
	box-sizing: border-box;
	padding-bottom: 4rem;
}
#hamburger_menu .menu_inner{
	padding-top: 0.8rem;
	background: linear-gradient(to bottom, #FFFFFF 0%, #DFD6BD 100%);
}
#hamburger_menu .menu_item_row{
	padding: 1rem 0;
	display: flex;
}
#hamburger_menu .menu_item_row:not(:last-child){
	border-bottom: solid 1px #F5F5F5;
}
#hamburger_menu .menu_item{
	padding: 1.5rem 0;
	font-size: 1.5rem;
	line-height: 1.2;
	box-sizing: border-box;
	width: 50%;
}
#hamburger_menu .menu_item:first-child{
	padding-right: 2rem;
}
#hamburger_menu .menu_item:last-child{
	padding-left: 2rem;
	border-left: solid 1px #F5F5F5;
}

/* hamburger_blc_menu
--------------------------------------*/
#hamburger_menu .hamburger_blc_menu .tab_btn{
	justify-content: flex-start;
}
#hamburger_menu .hamburger_blc_menu .tab_btn_txt{
	margin-left: 0;
	font-size: 1.6rem;
}
#hamburger_menu .hamburger_blc_menu .tab_btn_mark{
	z-index: 2;
	position: absolute;
	background-color: #fff;
	border-radius: 2px;
	right: 1rem;
	top: 50%;
	transform: translateY(-50%);
	width: 1.5rem;
	height: 1.5rem;
}
#hamburger_menu .hamburger_blc_menu .tab_btn_mark:before,
#hamburger_menu .hamburger_blc_menu .tab_btn_mark:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	background-color: #C2C2C2;
	width: 0.8rem;
	height: 0.1rem;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#hamburger_menu .hamburger_blc_menu .tab_btn_mark:before{
	transition: background .3s ease;
}
#hamburger_menu .hamburger_blc_menu .tab_btn_mark:after{
	transform: translate(-50%, -50%) rotate(90deg);
	transition: opacity .3s ease, transform .3s ease;
}
#hamburger_menu .hamburger_blc_menu .tab_btn.is--active .tab_btn_mark:before{
	background-color: #BE9ABF;
}
#hamburger_menu .hamburger_blc_menu .tab_btn.is--active .tab_btn_mark:after{
	opacity: 0;
	transform: translate(-50%, -50%) rotate(0deg);
}
#hamburger_menu .hamburger_blc_menu .tab_box{
	background-color: #fff;
	padding: 0 2rem 1rem 2rem;
}
#hamburger_menu .hamburger_blc_menu .menu_item{
	display: flex;
	align-items: center;
}
#hamburger_menu .hamburger_blc_menu .menu_item_inner{
	padding-left: 0.5em;
	text-indent: -0.5em;
}
#hamburger_menu .hamburger_blc_menu .menu_item:last-child{
	padding-left: calc(2rem + 0.5em);
}

/* hamburger_blc_link
--------------------------------------*/
#hamburger_menu .hamburger_blc_link .menu_item{
	padding-right: 4rem;
	position: relative;
}
#hamburger_menu .hamburger_blc_link .arrow_mark{
	width: 2rem;
	height: 2rem;
	background-color: #fff;
	border-radius: 100%;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	right: 1.5rem;
	display: flex;
	align-items: center;
	justify-content: center;
}
#hamburger_menu .hamburger_blc_link .menu_item:last-child{
	padding-right: 2.5rem;
}
#hamburger_menu .menu_item_row.has--1item .menu_item{
	width: 100%;
	text-align: center;
	border-left: none;
}
#hamburger_menu .hamburger_blc_link .menu_item:last-child .arrow_mark{
	right: 0;
}

/* hamburger_blc_close
--------------------------------------*/
#hamburger_menu .hamburger_blc_close{
	background-color: #fff;
	text-align: center;
	padding-top: 1.4rem;
	padding-bottom: 1.4rem;
}
#hamburger_menu .hamburger_blc_close span{
	color: #72684B;
	font-size: 1.2rem;
	display: inline-block;
	padding: 0 1.5rem;
	position: relative;
}
#hamburger_menu .hamburger_blc_close span:before,
#hamburger_menu .hamburger_blc_close span:after{
	content:'';
	display: block;
	position: absolute;
	pointer-events: none;
	right: 0.1rem;
	top: 50%;
	width: 1.3rem;
	height: 0.1rem;
	background-color: #72684B;
}
#hamburger_menu .hamburger_blc_close span:before{
	transform:rotate(-45deg);
}
#hamburger_menu .hamburger_blc_close span:after{
	transform:rotate(45deg);
}


/* 背景
--------------------------------------*/
.hamburger_layer{
	background-color: rgba(36, 36, 36, 0.8);
	position: fixed;
	width: 100vw;
	height: 100vh;
	top: 0;
	left: 0;
	height: 100%;
	width: 100%;
	z-index:1000;
	display: none;
}

@media screen and (min-width: 1150px) {
	#hamburger_menu,
	.hamburger_layer{
		display: none;
	}
}

/*===============================
float_bnr
===============================*/
.float_bnr{
	box-sizing: border-box;
	position: fixed;
	z-index: 100;
}

@media screen and (max-width: 959px) {
	.float_bnr .sns_list.disp--pc{
		display: none;
	}
}

@media screen and (min-width: 960px) {
	.float_bnr .sns_list{
		margin-top: 40px;
	}
	.float_bnr .sns_item{
		display: block;
		width: 28px;
		transition: opacity .3s ease;
	}
	.float_bnr .sns_item:not(:last-child){
		margin-bottom: 20px;
	}
	.float_bnr .sns_item:hover{
		opacity: .7;
	}
	.float_bnr .sns_item.tiktok{
		width: 24px;
	}
}

/* to_top
--------------------------------------*/
.js--to_top{
	width: 5rem;
	height: 5rem;
	position: fixed;
	right: calc((100vw - 37.4rem) / 2);
	bottom: 9.6rem;
	z-index: 500;
	opacity: 0;
	pointer-events: none;
	transition: opacity .3s ease;
}
.js--to_top.is--fix,
.js--to_top.is--footerfix{
	opacity: 1;
	pointer-events: auto;
}
.js--to_top a{
	display: block;
	box-sizing: border-box;
	position: relative;
	width: 100%;
	height: 100%;
	background-color: #fff;
	border-radius: 100%;
	display: block;
}

@media screen and (min-width: 600px) {
	.js--to_top{
		right: calc((100vw - 600px) / 2);
	}
}
@media screen and (min-width: 960px) {
	.js--to_top{
		right: calc((100vw - 900px) / 2 - 15px);
		bottom: 45px;
	}
}
@media screen and (min-width: 1150px) {
	.js--to_top{
		right: calc((100vw - 1150px) / 2 - 73px);
	}
	.js--to_top.is--footerfix{
		top: -25px;
		bottom: auto;
		position: absolute;
	}
}

/*===============================
footer
===============================*/
/* footer_sns_block */
.footer_sns{
	padding-bottom: 3rem;
}
.footer_sns .catch{
	color: #444;
	font-size: 1.8rem;
	line-height: 1.44;
	letter-spacing: 0.1em;
	text-align: center;
	margin-bottom: 2rem;
}
.footer_sns .sns_list{
	display: flex;
	align-items: center;
	justify-content: center;
}
.footer_sns .sns_item{
	width: 8rem;
	height: 8rem;
	background-color: #F5F5F5;
	border-radius: 100%;
	display: flex;
	justify-content: center;
	align-items: center;
}
.footer_sns .sns_item:not(:last-child){
	margin-right: 1rem;
}
.footer_sns .sns_item img{
	width: 4.4rem;
}
.footer_sns .sns_item.instagram img{
	width: 4.1rem;
}
.footer_sns .sns_item.twitter img{
	width: 3.7rem;
}
.footer_sns .sns_item.tiktok img{
	width: 3.3rem;
}

@media screen and (min-width: 960px) {
	.footer_sns.disp--sp{
		display: none;
	}
}

/*====================================
side
====================================*/
.l--sidemenu-side .side_blc{
	background-color: #fff;
	border-radius: 0.2rem;
	padding: 3rem 2rem;
}
.l--sidemenu-side .side_blc:not(:last-child){
	margin-bottom: 2.5rem;
}
.l--sidemenu-side .side_ttl{
	color: #72684B;
	font-size: 2rem;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 2rem;
}

@media screen and (max-width: 1149px) {
	.l--sidemenu-side{
		margin-top: 5rem;
	}
}

@media screen and (min-width: 960px) {
	.l--sidemenu-side .side_blc:not(:last-child){
		margin-bottom: 40px;
	}
	.l--sidemenu-side .side_ttl{
		font-size: 26px;
		margin-bottom: 20px;
	}

}
@media screen and (min-width: 1150px) {
	.l--sidemenu-wrap{
		display: flex;
		justify-content: space-between;
	}
	.l--sidemenu-main{
		width: 800px;
	}
	.l--sidemenu-side{
		width: 300px;
	}
}


/*===============================
Slider
===============================*/
/* ページネーション */
.slider_pagination{
	display: flex;
	justify-content: center;
}
.slider_pagination .swiper-pagination-bullet{
	box-sizing: border-box;
	width: 2.5rem;
	height: 0.2rem;
	background: #fff;
	border-radius: 0;
	opacity: 1;
	transition: background .4s ease;
}
.slider_pagination .swiper-pagination-bullet:not(:last-child){
	margin-right: 1rem;
}

@media screen and (min-width: 1150px) {
	.slider_pagination .swiper-pagination-bullet{
		width: 45px;
		height: 5px;
	}
	.slider_pagination .swiper-pagination-bullet-active{
		pointer-events: none;
	}
}

/* ナビゲーション */
.slider_arrows{
	position: absolute;
	top: 50%;
	pointer-events: none;
	width: 100%;
	z-index: 2;
}
.slider_prev,
.slider_next{
	box-sizing: border-box;
	position: absolute;
	pointer-events: auto;
	cursor: pointer;
	top: -1.5rem;
	width: 3rem;
	height: 3rem;
	background-color: #fff;
	border-radius: 2px;
	box-shadow: 0 0 3px 0 rgba(150, 150, 150, .16);
	display: flex;
	align-items: center;
	justify-content: center;
}
.slider_prev{
	left: 0;
}
.slider_next{
	right: 0;
}
.slider_prev .arrow,
.slider_next .arrow{
	width: 13px;
	height: 4px;
}
.slider_prev.swiper-button-disabled,
.slider_next.swiper-button-disabled{
	opacity: 0;
	pointer-events: none;
}

@media screen and (min-width: 1150px) {
	.slider_prev,
	.slider_next{
		width: 50px;
		height: 50px;
		top: -25px;
		transition: background 0.3s ease;
	}
	.slider_prev .arrow,
	.slider_next .arrow{
		width: 21px;
		height: 7px;
	}
	.slider_prev:hover,
	.slider_next:hover{
		background-color: #F5F5F5;
	}
}

/*===============================
popup
===============================*/
.js--btn-popup{
	cursor: pointer;
}
.popup--cmn{
	display: none;
	z-index: 2005;
	position: relative;
}
.popup--cmn .popup-overlay{
	background-color: rgba(0, 0, 0, .6);
	position: fixed;
	top: 0;
	left: 0;
	width: 100vw;
	height: 100vh;
	display: flex;
	align-items: center;
	justify-content: center;
}
.popup--cmn .popup-container{
	position: relative;
	pointer-events: auto;
	bottom: calc(7rem / 2 * -1);
}
.popup--cmn .popup-inner{
	box-sizing: border-box;
	width: 33.6rem;
	max-height: calc(100vh - 7rem);
	overflow-y: auto;
	padding-bottom: 5rem;
}
.popup--cmn .js--popup-close{
	position: absolute;
	display: block;
	cursor: pointer;
	box-sizing: border-box;
	z-index: 2;
	width: 1.8rem;
	height: 1.8rem;
	top: -3.8rem;
	right: 0;
}
.popup--cmn .js--popup-close:before,
.popup--cmn .js--popup-close:after{
	content: '';
	display: block;
	position: absolute;
	pointer-events: none;
	background-color: #fff;
	width: 2.5rem;
	height: 1px;
	top: calc((100% - 1px) / 2);
	left: calc((100% - 2.5rem) / 2);
}
.popup--cmn .js--popup-close:before{
	transform: rotate(45deg);
}
.popup--cmn .js--popup-close:after{
	transform: rotate(135deg);
}

@media print,screen and (min-width: 960px) {
	.popup--cmn .popup-inner{
		width: 90rem;
	}
}

/*===============================
unique clinic
===============================*/
/* mitaka */
.color--mitaka,
.btn--mitaka{
	color: #38AFCB;
}
@media screen and (min-width: 960px) {
	.btn--mitaka:hover{
		background-color: #38AFCB !important;
	}
}

/* niiza */
.color--niiza,
.btn--niiza{
	color: #E1759D;
}
@media screen and (min-width: 960px) {
	.btn--niiza:hover{
		background-color: #E1759D !important;
	}
}

/* kokubunji */
.color--kokubunji,
.btn--kokubunji{
	color: #92C269;
}
@media screen and (min-width: 960px) {
	.btn--kokubunji:hover{
		background-color: #92C269 !important;
	}
}

/* kugayama */
.color--kugayama,
.btn--kugayama{
	color: #6AC1A7;
}
@media screen and (min-width: 960px) {
	.btn--kugayama:hover{
		background-color: #6AC1A7 !important;
	}
}

/* shiki */
.color--shiki,
.btn--shiki{
	color: #E6734D;
}
@media screen and (min-width: 960px) {
	.btn--shiki:hover{
		background-color: #E6734D !important;
	}
}

/* omiya */
.color--omiya,
.btn--omiya{
	color: #3B4472;
}
@media screen and (min-width: 960px) {
	.btn--omiya:hover{
		background-color: #3B4472 !important;
	}
}

/* asakadai */
.color--asakadai,
.btn--asakadai{
	color: #4169E1;
}
@media screen and (min-width: 960px) {
	.btn--asakadai:hover{
		background-color: #4169E1 !important;
	}
}

/* ikebukuro */
.color--ikebukuro,
.btn--ikebukuro{
	color: #723B5E;
}
@media screen and (min-width: 960px) {
	.btn--ikebukuro:hover{
		background-color: #723B5E !important;
	}
}

/* shinjuku */
.color--shinjuku,
.btn--shinjuku{
	color: #1A88A9;
}
@media screen and (min-width: 960px) {
	.btn--shinjuku:hover{
		background-color: #1A88A9 !important;
	}
}

/* kyoto */
.color--kyoto,
.btn--kyoto{
	color: #C4A3BF;
}
@media screen and (min-width: 960px) {
	.btn--kyoto:hover{
		background-color: #C4A3BF !important;
	}
}

/* namba */
.color--namba,
.btn--namba{
	color: #F1BA38;
}
@media screen and (min-width: 960px) {
	.btn--namba:hover{
		background-color: #F1BA38 !important;
	}
}

/* shibuya */
.color--shibuya,
.btn--shibuya{
	color: #9FA09E;
}
@media screen and (min-width: 960px) {
	.btn--shibuya:hover{
		background-color: #9FA09E !important;
	}
}

/* nagoya */
.color--nagoya,
.btn--nagoya{
	color: #C82C55;
}
@media screen and (min-width: 960px) {
	.btn--nagoya:hover{
		background-color: #C82C55 !important;
	}
}

/* fukuoka */
.color--fukuoka,
.btn--fukuoka{
	color: #be6d1c;
}

@media screen and (min-width: 960px) {
	.btn--fukuoka:hover{
		background-color: #be6d1c !important;
	}
}

/* shizuoka */
.color--shizuoka,
.btn--shizuoka{
	color: #9E7777;
}

@media screen and (min-width: 960px) {
	.btn--shizuoka:hover{
		background-color: #9E7777 !important;
	}
}

/* akihabara */
.color--akihabara,
.btn--akihabara{
	color: #B5A1CC;
}
@media screen and (min-width: 960px) {
	.btn--akihabara:hover{
		background-color: #B5A1CC !important;
	}
}

/* sapporo */
.color--sapporo,
.btn--sapporo{
	color: #393F4C;
}
@media screen and (min-width: 960px) {
	.btn--sapporo:hover{
		background-color: #393F4C !important;
	}
}

/*===============================

===============================*/
/*
--------------------------------------*/
@media screen and (max-width: 1149px) {
}
@media screen and (max-width: 959px) {
}
@media screen and (max-width: 599px) {
}

@media screen and (min-width: 600px) {
}
@media screen and (min-width: 960px) {
}
@media screen and (min-width: 1150px) {
}
