@charset "UTF-8";

/*--------------------------------
reset
--------------------------------*/
html,body,div,p,img,iframe,a,span,blockquote,q,address,cite,
pre,code,em,small,strong,b,i,
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer,time,
h1,h2,h3,h4,h5,h6,
ul,ol,li,dl,dt,dd,
table,tbody,thead,tfoot,th,tr,td,
form,fieldset,legend,label,select,input,textarea,button{
	margin: 0;
	padding: 0;
	border: 0;
	-moz-box-sizing: border-box;
	box-sizing: border-box;
	vertical-align: baseline;
}
header,article,section,nav,figure,figcaption,hgroup,menu,aside,footer{
	display: block;
}
ul li,
ol li{
	list-style-type: none;
}
h1,h2,h3,h4,h5,h6{
	font-weight: 500;
}
body{
	line-height: 1;
}
a{
	text-decoration: none;
}
img{
	vertical-align: middle;
}
table{
	border-collapse: collapse;
	border-spacing: 0;
}
select,option,input,textarea,button{
	font: inherit;
	-webkit-appearance: none;
	-moz-appearance: none;
	appearance: none;
	outline: none;
}
input[type=radio]{
	-webkit-appearance: radio;
	-moz-appearance: radio;
	appearance: radio;
}
input[type=checkbox]{
	-webkit-appearance: checkbox;
	-moz-appearance: checkbox;
	appearance: checkbox;
}
blockquote::before,blockquote::after,q::before,q::after{
	content: '';
	content: none;
}
[type=submit],[type=button],[type=reset],[type=file],button{
	cursor: pointer;
}
:focus{
	outline: none;
}
html{
	font-size: 62.5%;
}
body{
	font-family: "Noto Serif JP", "Noto Serif", serif;
	font-size: 1.4rem;
	font-style: normal;
	font-weight:400;
	line-height: 1;
	color: #2c2c2c;
}
a {
	color: #006d9e;
	-webkit-tap-highlight-color: rgba(238, 223, 227, 0.2);
}
sup,
sub{
	font-size: xx-small;
}

/*--------------------------------
common
--------------------------------*/
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.en-font{
	font-family: "gill-sans-nova", sans-serif;
	font-weight: 500;
	font-style: normal;
}
.tsuku-font{
	font-family: "fot-tsukuaoldmin-pr6n", serif;
	font-weight: 300;
	font-style: normal;
}
.ryumin-font{
	font-family: "a-otf-ryumin-pr6n", serif;
	font-weight: 300;
	font-style: normal;
}
.small-text {
	font-size: 75%;
}
.large-text{
	font-size: 150%;
}
.fit-img {
	width: 100%;
	height: auto;
	vertical-align: middle;
}
.has-max {
	height: auto;
	max-width: 100%;
}
.flex-wrapper {
	display: flex;
	flex-wrap: wrap;
}
.flex-nowrap{
	flex-wrap: nowrap;
}
.align-center{
	align-items: center;
}
.has-gap{
	gap: 16px;
}
.col-2{
	width: 50%;
}
.col-3{
	width: calc(100% / 3);
}
.has-gap .col-2{
	width: calc(50% - 8px);
}
.has-gap .col-3{
	width: calc(100% / 3 - 11px);
}
@media screen and (max-width: 767px){
	.col-2,
	.has-gap .col-2,
	.col-3,
	.has-gap .col-3{
		width: 100%;
	}
}
.img-wrapper{
	position: relative;
}
.img-wrapper .caption{
	position: absolute;
	bottom: 0;
	left: 8px;
	right: 8px;
	z-index: 1;
}
.img-wrapper .caption.has-bg{
	left: 0;
	right: 0;
	bottom: 0;
	margin: 0;
}
.img-wrapper .caption.has-bg span{
	display: inline-block;
	padding: .6em 1em;
	background: rgba(0, 0, 0, 0.7);
	color: #fff;
}
.inline-block{
	display: inline-block;
}
.grid-wrapper{
	display: -ms-grid;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
}
@media screen and (max-width: 940px){
	.grid-wrapper{
		grid-template-columns: repeat(2, 1fr);
	}
}
@media screen and (max-width: 767px){
	.grid-wrapper{
		grid-template-columns: 1fr;
	}
}
.nav-link{
	color: #444;
}
.nav-link.none{
	position: relative;
}

/*--------------------------------
componet
--------------------------------*/

.primary-heading{
	margin-bottom: .8em;
	font-size: 3.4rem;
	line-height: 1.3;
}
.secondary-heading{
	margin-bottom: .8em;
	font-size: 2.8rem;
	line-height: 1.3;
}
.tertiary-heading{
	margin-bottom: .8em;
	font-size: 2.4rem;
	line-height: 1.4;
}
.page-heading{
	margin-bottom: .8em;
	font-size: 3.2rem;
	line-height: 1.3;
}
@media screen and (max-width: 767px){
	.primary-heading{
		font-size: 2rem;
	}
	.secondary-heading{
		font-size: 1.8rem;
	}
	.tertiary-heading{
		font-size: 1.6rem;
	}
	.page-heading{
		font-size: 2rem;
	}
}
.note{
	margin: 1em 0;
	font-size: 1.6rem;
	line-height: 1.6;
}
.lead{
	margin: 1em 0;
	font-size: 1.8rem;
	line-height: 1.6;
}
@media screen and (max-width: 767px){
	.note{
		font-size: 1.4rem;
	}
	.lead{
		font-size: 1.6rem;
	}
}
.caption{
	margin: .4em 0;
	font-size: 1.2rem;
	line-height: 1.4;
}
.btn{
	width: 100%;
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	background: #2c2c2c;
	color: #fff;
	font-size: 1.1rem;
	line-height: 1.3;
	transition: all .3s ease-out;
}
.general-btn{
	margin: 8px;
	padding: 0 16px;
	width: 100%;
	max-width: 300px;
	height: 60px;
	position: relative;
	background: #456254;
	font-size: 2rem;
	line-height: 60px;
	border-radius: 30px;
}
/* .general-btn::after{
	width: 3px;
	height: 6px;
	display: block;
	position: absolute;
	top: 50%;
	right: 32px;
	background: url(../images/common/arrow.svg) no-repeat center center;
	background-size: contain;
	content: "";
	transform: translateY(-50%);
} */
.general-btn:hover{
	background: #17442c;
}
@media screen and (max-width: 767px){
	.caption{
		font-size: 1rem;
	}
	.general-btn{
		width: calc(100% - 16px);
		height: 54px;
		font-size: 1.8rem;
		line-height: 54px;
	}
}
.btn span{
	position: relative;
	z-index: 1;
}
.submit-btn{
	margin: 8px;
	padding: 0 16px;
	width: 100%;
	max-width: 300px;
	height: 60px;
	position: relative;
	background: #456254;
	font-size: 2rem;
	line-height: 60px;
	border-radius: 30px;
}
.cancel-btn{
	margin: 8px;
	padding: 0 16px;
	width: 100%;
	max-width: 200px;
	height: 60px;
	position: relative;
	background: #aaa;
	font-size: 2rem;
	line-height: 60px;
	border-radius: 30px;
}
.read-more{
	padding: 12px 16px;
	width: 200px;
	background: #0c686b;
}
.reserve-btn{
	background: #F8746F;
	background: linear-gradient(130deg,#bea87e 0 ,#6c4903 50%,#6c4903 100%);
	border: solid 2px #a28e65;
}
.request-btn{
	background: #8a1c21;
	background: linear-gradient(130deg,#c39092 0 ,#841c20 50%,#841c20 100%);
	border: solid 2px #a28e65;
}
.tel-btn{
	background: #EB930C;
}
.reserve-btn:hover{
	background: #6c4903;
}
.request-btn:hover{
	background: #691519;
}
.tel-btn:hover{
	background: #c07607;
}
.bg-light{
	background-color: #f7f6f1;
}
.bg-gray{
	background-color: #faf9f2;
}
.bg-gray01{
	background-color: #ebe9e6;
}
.bg-lightgray{
	background-color: #f8f8f8;
}
.bg-gradation{
	background: linear-gradient(90deg,rgba(0, 176, 234, 0.3) , rgba(149, 196, 123, 0.3));
}
.video-wrapper{
	position: relative;
	aspect-ratio: 16/9;
	display: block;
	content: "";
}
.video-wrapper::before{
	display: block;
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
}
@media screen and (max-width: 767px){
	.video-wrapper{
		aspect-ratio: 4 / 5;
	}
}
.video-wrapper iframe,
.video-wrapper video{
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 1;
}
.loading{
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	z-index: 2;
	content: "";
}
.general-table{
	margin: 48px 0;
	width: 100%;
	font-size: 1.6rem;
	line-height: 1.4;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
	border-right: 1px solid #ddd;
}
.general-table th,
.general-table td{
	padding: 16px;
	border-bottom: 1px solid #ddd;
}
.general-table th{
	width: 260px;
	position: relative;
	background: #eee;
	font-weight: 500;
	text-align: right;
}
@media screen and (max-width: 767px){
	.general-table{
		margin: 24px 0;
	}
	.general-table th,
	.general-table td{
		width: 100%;
		display: block;
	}
	.general-table th{
		text-align: left;
	}
}
.is-dummy{
	padding: 8px;
	position: absolute;
	bottom: 32px;
	left: 32px;
	z-index: 1;
	background: #595e64;
	color: #fff;
	font-size: 1.4rem;
}

/*--------------------------------
page transition
--------------------------------*/
.transition-view{
	position: fixed;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	z-index: 20;
	overflow: hidden;
	visibility: hidden;
}
.transition-view::before{
	width: 100%;
	height: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgb(238, 240, 239);
	content: "";
	box-shadow: 0 20px 120px 120px rgb(238, 240, 239);
	transform: translate(0,-120%) skewY(2deg);
	transition: all .6s ease-in;
}
.transition-view.in-trans{
	visibility: visible;
}
.transition-view.in-trans::before{
	transform: translate(0,0) skewY(0);
	transition-timing-function: ease-out;
}

/*--------------------------------
layout
--------------------------------*/
.container{
	overflow: hidden;
	margin: 0 0 0 auto;
	width: calc(100% - 80px);
}
@media screen and (max-width: 900px){
	.container{
		width: 100%;
	}
}
.index2 .container{
	margin-top: 50px;
	margin-left: 160px;
}
.teaser .container{
	margin-top: 0;
	width: 100%;
	min-height: calc(100vh - 90px);
	display: flex;
	align-items: center;
	justify-content: center;
}
@media screen and (max-width: 900px){
	.container{
		margin-top: 60px;
	}
	.index2 .container{
		margin-top: 62px;
		margin-left: 0px;
	}
	.brand .container{
		margin-top: 0;
	}
	.teaser .container{
		min-height: 60vh;
	}
}
.general-section .inner{
	margin: 0 auto;
	padding: 80px 0;
	width: calc(100% - 32px);
	max-width: 1000px;
}
.general-section .inner.inner-wide{
	max-width: 1200px;
}
@media screen and (max-width: 767px){
	.general-section .inner{
		padding: 32px 0;
	}
}
.general-section .inner-fit{
	width: 100%;
	max-width: none;
}
.general-section .inner-full{
	max-width: none;
}
.general-section .inner + .inner{
	padding-top: 0;
}
.general-section.caption-section .inner {
	padding: 32px 0;
}
.general-parts{
	margin-bottom: 32px;
}
.btn-space{
	margin: 32px 0;
	text-align: center;
}
.btn-space:last-child{
	margin-bottom: 0;
}

/*--------------------------------
header
--------------------------------*/
.new-header{
	position: fixed;
	top: 0;
	left: 0;
	z-index: 6;
	background: #000;
}
.new-header .inner{
	padding: 40px 8px 80px;
	height: 100%;
	display: flex;
	align-items: center;
	justify-content: space-between;
	flex-direction: column;
}
@media screen and (max-width: 900px){
	.new-header .inner{
		padding: 0;
	}
}
.new-header .logo{
	width: 60px;
	height: 127px;
	background: url(../images/common/logo.png) no-repeat left center;
	background-size: contain;
}
.logo a{
	height: 100%;
	display: block;
	white-space: nowrap;
	text-indent: 100%;
	overflow: hidden;
}
.icon-tel{
	margin-right: 2px;
	width: 22px;
	vertical-align: middle;
}
.tel-num{
	display: block;
	font-weight: 600;
}
.hamburger{
	width: 50px;
	height: 48px;
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	position: fixed;
	top: 50%;
	transform: translateY(-50%);
	left: 0;
	z-index: 6;
	text-align: center;
	transition: all .3s ease-out;
	cursor: pointer;
	color: #fff;
}
@media screen and (max-width: 900px){
	.hamburger{
		background: inherit;
		top: 0;
		transform: unset;
		right: 12px;
		left: auto;
		width: 40px;
		height: 60px;
	}
}
.hamburger i{
	margin: 5px 0;
	height: 4px;
	width: 50px;
	display: block;
	content: "";
	background: #fff;
	transition: all .3s ease-out;
}
.hamburger span{
	margin-top: .4em;
	font-size: 1.5rem;
}
@media screen and (max-width: 900px){
	.hamburger i{
		margin: 3px 0;
		height: 3px;
		width: 40px;
	}
	.hamburger span{
		font-size: 1.2rem;
	}
}
.is-menu-open .hamburger{
	color: #fff;
}
.is-menu-open .hamburger i{
	background: #fff;
}
.is-menu-open .hamburger i:nth-child(1){
	transform: translateY(14px) rotate(45deg);
}
.is-menu-open .hamburger i:nth-child(2){
	opacity: 0;
}
.is-menu-open .hamburger i:nth-child(3){
	transform: translateY(-14px) rotate(-45deg);
}
@media screen and (max-width: 900px){
	.is-menu-open .hamburger i:nth-child(1){
		transform: translateY(9px) rotate(45deg);
	}
	.is-menu-open .hamburger i:nth-child(3){
		transform: translateY(-9px) rotate(-45deg);
	}
}
.pc-drawer-menu{
	display: none;
}
@keyframes fUp{ 
	0% {
		opacity: 0;
		transform: translate(0, 20px);
	} 
	100% {
		opacity: 1;
		transform: translate(0, 0);
	} 
}

/* @media screen and (max-width: 900px){
	.new-header .gnav .nav-list{
		opacity: 0;
	}
} */
/* .drawer-gnav .gnav .nav-list{
	opacity: 0;
}
.is-menu-open .gnav .nav-list:first-child{
	animation: fUp .2s .4s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(2){
	animation: fUp .2s .45s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(3){
	animation: fUp .2s .5s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(4){
	animation: fUp .2s .55s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(5){
	animation: fUp .2s .6s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(6){
	animation: fUp .2s .65s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(7){
	animation: fUp .2s .7s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(8){
	animation: fUp .2s .75s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:nth-of-type(9){
	animation: fUp .2s .8s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav .nav-list:last-child{
	animation: fUp .2s .85s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav.under-nav .nav-list:first-child{
	animation: fUp .2s .9s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav.under-nav .nav-list:last-child{
	animation: fUp .2s .95s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .drawer-gnav-box{
	animation: fUp .2s 1s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .upper-nav .nav-list{
	opacity: 0;
} */
/* .is-menu-open .upper-nav .nav-list:first-child{
	animation: fUp .2s 1s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .upper-nav .nav-list:nth-of-type(2){
	animation: fUp .2s 1.05s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.drawer-nav .request-btn ,.drawer-nav .reserve-btn {
	opacity: 0;
}
.is-menu-open .drawer-nav .request-btn{
	animation: fUp .2s .5s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .drawer-nav .reserve-btn{
	animation: fUp .2s .55s 1 ease-in-out;
	animation-fill-mode: forwards;
} */
.pc-drawer-menu .gnav .nav-link:not(.none){
}
.home.pos-top .new-header{
	transform: translate(0, -100%);
	animation: pullDown .8s ease-out 10s forwards;
}
@keyframes pullDown {
	0%{
		transform: translate(0, -100%);
	}
	100%{
		transform: translate(0, 0);
	}
}
@media screen and (min-width: 901px){
	
	.new-header{
		height: 100%;
		width: 80px;
	}
	.new-header .logo{
		height: 127px;
	}
	.gnav{
		margin-top: 10px;
		justify-content: flex-end;
		transition: opacity .4s ease-out, transform .4s ease-out;
	}
	.new-header .gnav{
		opacity: 0;
		transform: translateY(-20px);
		pointer-events: none;
	}
	.tel-btn-list{
		display: none;
	}
	.gnav .nav-list{

	}

	.is-menu-open .gnav.under-nav .nav-list:first-child{
		animation: fUp .2s .9s 1 ease-in-out;
		animation-fill-mode: forwards;
	}
	.is-menu-open .gnav.under-nav .nav-list:last-child{
		animation: fUp .2s .95s 1 ease-in-out;
		animation-fill-mode: forwards;
	}
	
	.gnav .nav-list:last-child{
		border-right: none;
	}
	.gnav .nav-link{
		padding: 12px;
		display: block;
		position: relative;
		white-space: nowrap;
		text-align: center;
		text-overflow: ellipsis;
		/* overflow: hidden; */
	}
	.new-header .gnav .nav-link{
		padding: 0 32px;
		height: 38px;
		display: flex;
		align-items: center;
		justify-content: center;
		font-size: 1.4rem;
	}
	.new-header .gnav .nav-link.new::before{
		position: absolute;
		top: 0;
		left: 4px;
		content: "NEW";
		font-size: 1.1rem;
		color: #028a8e;
	}
	.gnav .nav-link:hover{
    color: #F8746F;
	}
	.gnav .nav-link:hover::after{
		width: 80%;
	}
	.new-header .gnav .nav-link.is-current::after{
		width: 70%;
	}
	.nav-container{
		width: 100%;
	}
	.upper-nav{
		align-items: center;
	}
	.upper-nav .btn-list{
		width: 100%;
	}
	.upper-nav .nav-list{
		margin-right: 32px;
	}
	.upper-nav .nav-link:hover{
		color: #F8746F;
	}
	.upper-nav .nav-link:hover::before{
		background: #c00;
	}
	.cta-btn{
		width: 100%;
		height: 64px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
	}
	.hamburger,
	.sp-tel-btn{
		display: none;
	}
	.hamburger{
		width: 80px;
		height: auto;
		display: flex;
	}
	.pc-drawer-menu{
		display: block;
		height: 100vh;
		width: calc(100% - 80px);
		position: fixed;
		top: 0;
		left: auto;
		right: 0;
		z-index: 5;
		/* background: #000; */
		background: url(../images/common/nav-menu-bg.jpg) no-repeat top center;
    background-size: cover;
		overflow-y: auto;
		/* transform: translate( -100%, 0); */
		transform: translate(0);
		display: none;
		transition: transform .4s ease-in-out;
	}
	.is-menu-open .pc-drawer-menu{
		transform: translate(0, 0);
	}
	.pc-drawer-menu{
		padding: 100px 10vw;
	}
	.pc-drawer-menu .logo{
		margin: 0 auto 80px;
		max-width: 600px;
		height: 40px;
		background: url(../images/common/logo.png) no-repeat center center;
		background-size: contain;
	}
	.drawer-nav .btn-space{
		margin: 0 40px 0 0;
		width: 30%;
	}
	.drawer-gnav{
		margin: 0 auto;
		max-width: 1200px ;
		width: 100%;
	}
	.drawer-gnav-box{
		padding: 32px;
		border: 1px solid #fff;
		color: #fff;
		text-align: center;
		font-feature-settings: "palt";
		opacity: 0;
	}
	.drawer-gnav-box .tel a{
		color: #fff;
	}
	.pc-drawer-menu .gnav{
		margin-top: 0;
		margin-bottom: 60px;
		gap: 40px;
		justify-content: flex-start;
	}
	.pc-drawer-menu .gnav .nav-list{
		width: calc(33% - 24px);
		flex: none;
		border-bottom: 3px solid rgba(255, 255, 255, 0.3);
		float: left;
		display: flex;
		align-items: flex-end;
	}
	.pc-drawer-menu .gnav .nav-list.none{
		opacity: .9;
	}
	.pc-drawer-menu .gnav .nav-list br{
		display: none;
	}
	.drawer-gnav-inner{
		margin: 0 auto;
		width: 100%;
		max-width: 600px;
	}
	.pc-drawer-menu .gnav .nav-list:first-child,
	.pc-drawer-menu .gnav .nav-list:nth-child(2){

	}
	.pc-drawer-menu .gnav.under-nav .nav-list:first-child,
	.pc-drawer-menu .gnav.under-nav .nav-list:nth-child(2){
		border-top: none;
	}
	.pc-drawer-menu .gnav .nav-link{
		padding: 18px 16px;
		display: block;
		position: relative;
		font-size: 1.8rem;
		text-align: left;
		color: #fff;
		transition: .4s;
	}
	.pc-drawer-menu .gnav .nav-link:hover:after{
		width: 100%;
	}
	.pc-drawer-menu .gnav .nav-link:hover::after{
		width: 100%;
	}
	.pc-drawer-menu .gnav .nav-link.is-current::after{
		content: '';
		display: block;
		width: 100%;
		height: 3px;
		background: #fff;
		position: absolute;
		bottom: -3px;
		left: 0;
		right: 0;
	}
	.pc-drawer-menu .gnav .nav-link::after{
		content: '';
		display: block;
		width: 0;
		height: 3px;
		background: #fff;
		position: absolute;
		bottom: -3px;
		left: 0;
		right: 0;
		transition: width .4s;
	}
	.pc-drawer-menu .salon-name{
		
	}
	.pc-drawer-menu .tel{
		justify-content: flex-start;
	}
	.pc-drawer-menu .tel img{
		width: 48px;
	}
	.pc-drawer-menu .salon-status{
		width: 100%;
	}
	.pc-drawer-menu .general-btn{
		margin: 0;
		height: 150px;
		line-height: 150px;
		border-radius: 0;
		box-shadow: 1px 1px 8px rgb(0,0,0,.2);
	}
	.pc-drawer-menu .general-btn + .general-btn{
		margin-top: 24px;
	}
	.gnav .nav-list{
		opacity: 1;
	}
	.pc-drawer-menu .gnav .nav-link.new::before {
    position: absolute;
    top: 0;
    left: 4px;
    content: "NEW";
    font-size: 1.1rem;
    color: #aa9669;
	}
}
@media screen and (min-width: 901px){
	.tab-max{
		display: none;
	}	
}
@media screen and (max-width: 900px){
	.tab-min{
		display: none;
	}
}
@media screen and (min-width: 901px) and (max-width: 1218px){
	.new-header .gnav .nav-link{
		padding: 12px 9px;
	}
}
@media screen and (min-width: 1500px) {
	.new-header .gnav .nav-link{
		font-size: 1.4rem;
	}
}
@media screen and (max-width: 900px){
	.new-header{
		height: 60px;
		transition: all .3s ease-out;
		right: 0;
	}
	.new-header .inner{
		padding: 0;
		align-items: flex-start;
    justify-content: center;
    flex-direction: column;
	}
	.new-header .logo{
		position: fixed;
		top: 10.5px;
		margin: 0 16px;
		width: 180px;
		height: 39px;
		transition: opacity .4s ease-out;
		background: url(../images/common/logo-sp.png) no-repeat left center;
    background-size: contain;
	}
	.is-scroll .new-header{
		/* background: transparent; */
	}
	/* .is-scroll .new-header .logo{
		opacity: 0;
	} */
	.nav-container{
		display: none;
		height: 100vh;
		overflow-y: auto;
	}
	.new-header.has-bg{
		background: #fff;
	}
	.is-menu-open .new-header{
		height: 100vh;
	}
	.is-menu-open .nav-container{
		display: block;
		padding: 76px 16px 76px;
		width: 100%;
	}
	.new-header .gnav{
		/* display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr; */
		/* display: block; */
		margin-bottom: 16px;
        display: flex;
        align-items: flex-end;
	}
	.new-header .gnav::after { 
		content: ""; 
		display: table; 
		clear: both;
	}
	.new-header .gnav .nav-list{
		position: relative;
		border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    width: calc(50% - 16px);
    float: left;
		margin-bottom: 8px;
	}
	.app-bnr{
		margin-top: 32px;
		display: block;
	}
	.new-header .gnav .nav-list:nth-child(odd){
		margin-right: 32px;
	}
	.new-header .gnav .nav-list .none{
		opacity: .7;
	}
	.new-header .nav-link{
		/* padding: 0 16px; */
		padding: 0 6px;
		height: 48px;
		display: grid;
		align-items: center;
		justify-content: flex-start;
		font-size: 1.4rem;
		line-height: 1.3;
		text-align: left;
		color: #fff;
		position: relative;
	}
	.new-header .nav-link.is-current::after{
		content: '';
		display: block;
		width: 100%;
		height: 1px;
		background: #fff;
		position: absolute;
		bottom: 0;
		left: 0;
		right: 0;
	}
	.upper-nav{
		padding: 0 ;
		/* display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr; */
		width: 100%;
		gap: 4px;
	}
	.upper-nav .nav-list{
		float: none;
		width: 50%;
		flex:1;
	}
	.upper-nav .nav-list a{
		border-left: 1px solid #ddd;
		background: #fff;
		color: #444;
	}
	.upper-nav .nav-list:nth-of-type(2){
		float: none;
	}
	.new-header .btn-list {
		display: none;
	}
	.new-header .btn-list{
		margin-top: 16px;
		width: 50%;
	}
	.new-header .cta-btn{
		padding: 0;
		height: 50px;
		display: block;
		text-align: center;
		line-height: 50px;
	}
	.tel-btn-list{
		display: none;
	}
	.icon-tel-btn{
		width: 17px;
		margin: 0 0 -2px;
	}
	.sp-tel-btn{
		width: 45px;
		height: 49px;
		display: flex;
		flex-direction: column;
		align-items: center;
		justify-content: center;
		gap: 4px;
		position: absolute;
		top: 0;
		right: 56px;
		color: #2c2c2c;
		text-align: center;
		transition: all .3s ease-out;
	}
	.new-header .request-btn,
	.new-header .reserve-btn{
		display: none;
	}
	.new-header .gnav .nav-link.new::before {
    position: absolute;
    top: 0;
    left: 4px;
    content: "NEW";
    font-size: 1.1rem;
    color: #aa9669;
	}
}
@media screen and (min-width: 901px) and (max-width: 1100px){
	.new-header .gnav .nav-link{
		font-size: 1.1rem;
	}
}
.btn-label{
	font-size: 10px;
	font-feature-settings: 'palt';
	margin-top: 3px;
}
.drawer-gnav-btns{
	margin-top: 40px;
	display: flex;
	flex-direction: column;
	gap: 16px;
}
.drawer-gnav-btn{
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
	gap: 8px;
	height: 80px;
	/* border: 3px solid #73151a; */
	border: solid 3px #a28e65;
	color: #fff;
	background: url(../images/common/btn-bg.jpg) no-repeat center center;
	background-size: cover;
}
.res-drawer-gnav-btn{
	background: url(../images/common/res-btn-bg.jpg) no-repeat center center;
	background-size: cover;
}
.drawer-gnav-btn.none{
	opacity: 1;
	color: #808080;
}
.drawer-gnav-btn .jp{
	display: block;
	font-size: 2.4rem;
	letter-spacing: .15em;
}
.drawer-gnav-btn .en{
	display: block;
	font-size: 1.6rem;
}
.pc-drawer-menu .gnav .limited .nav-link,
.nav-container .gnav .limited .nav-link{
    width: 100%;
	display: flex;
	flex-direction: row;
	flex-wrap: nowrap;
    align-items: center;
    justify-content: space-between;
}
.pc-drawer-menu .gnav .limited .nav-link{
	padding: 8px 0 1.2rem 16px;
}
.nav-container .gnav .limited .nav-link{
	padding: 0 0 2px 6px;
}
.pc-drawer-menu .gnav .limited-text,
.nav-container .gnav .limited-text{
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 6px;
}
.pc-drawer-menu .gnav .limited-text .label,
.nav-container .gnav .limited-text .label{
	padding: 8px;
	width: fit-content;
	background-color: #802826;
	border: 1px solid #a28e65;
	text-align: center;
}
.pc-drawer-menu .gnav .limited-text .label{
	font-size: 1vw;
}
.is-gold{
	color: #ebdf88;
}
.gnav .limited-text .label .footer-on{
	color: #fff;
}
.nav-container .gnav .limited-text .label{
	padding: 4px;
	display: flex;
	flex-direction: column;
	align-items: center;
	font-size: 1rem;
}
.pc-drawer-menu .gnav .limited-text .limited-lead{
	display: flex;
	flex-direction: column;
    align-items: center;
	gap: 3px;
	font-size: 1vw;
}
.nav-container .gnav .limited-text .limited-lead{
	display: none;
}
.pc-drawer-menu .gnav .limited-text .label .footer-on,
.nav-container .gnav .limited-text .label .footer-on{
	display: none;
}
@media screen and (max-width: 1097px) {
	.pc-drawer-menu .gnav .limited-text .label{
		padding: 6px;
		display: flex;
		flex-direction: column;
        align-items: center;
        gap: 4px;
	}
	.pc-drawer-menu .gnav .limited-text .limited-lead{
		display: none;
	}
}
@media screen and (max-width: 375px) {
	.nav-container .gnav .limited-text .label{
        padding: 3px;
        font-size: 0.6rem;
	}
}
/*--------------------------------
footer
--------------------------------*/
.index2 .footer-container{
	margin-left: 160px;
}
.footer-container{
	padding-top: 80px;
	background: url(../images/common/footer-bg.webp) no-repeat bottom center;
	background-size: cover;
}
.footer-bnr{
	margin: 0 auto 90px;
	max-width: 800px;
}
.footer-container .inner{
	margin: 0 auto;
	padding: 32px 0;
	width: calc(100% - 32px);
}
@media screen and (max-width: 767px){
	.footer-container{
		padding-top: 30px;
	}
	.index2 .footer-container{
		margin-left: 0;
	}
	.footer-container .inner{
		padding: 16px 0;
	}
	.footer-container .gnav{
		/* display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr; */
		/* border-top: 1px solid rgba(0,0,0,.2); */
		display: flex;
	}
	.footer-container .gnav .nav-list{
		border-bottom: 1px solid rgba(0,0,0,.2);
		float: left;
		width: 50%;
	}
	.footer-container .gnav .nav-list:nth-child(odd){
		border-right: 1px solid rgba(0,0,0,.2);
	}
	.footer-container .gnav .nav-list:last-child{
		border-right: 1px solid #fff;
	}
	.footer-container .gnav.sp-footer-item .nav-list:nth-child(2){
		border-right: 1px solid rgba(0,0,0,.2);
	}
	.footer-container .gnav .nav-link{
		padding: 0 16px;
		height: 40px;
		display: -ms-grid;
		display: grid;
		position: relative;
		align-items: center;
		text-align: center;
		color: #fff;
	}
	.footer-container .gnav .nav-link.none{
		opacity: .5;
	}
	
	.footer-gnav{
		width: 100%;
		border-top: 1px solid rgba(0,0,0,.2);
		/* border-bottom: 1px solid rgba(0,0,0,.2); */
	}
	.sp-fixed-btn{
		display: block;
		position: fixed;
		left: 0;
		right: 0;
		bottom: 0;
		z-index: 5;
		background: #000;
		transition: transform .4s ease-out;
	}
	/* .is-scroll .sp-fixed-btn{
		transform: translateY(100px);
	} */
	.sp-fixed-btn .btn-list{
		width: 100%;
		flex: 1;
		height: 50px;
		text-align: center;
	}
	.sp-fixed-btn .btn-list:not(:first-child){
		border-left: 1px solid #fff;
	}
	.sp-fixed-btn .btn-list a{
		display: block;
		width: 100%;
		height: 100%;
	}
	.sp-fixed-btn .btn-list img{
		height: 100%;
		width: auto;
	}
	.sp-fixed-btn .cta-btn{
		padding: 0;
		height: 60px;
		text-align: center;
		display: flex;
		justify-content: center;
		align-items: center;
		line-height: 50px;
	}
}
.footer-container-inner{
	margin: 0 auto;
	max-width: 1080px;
	width: calc(100% - 48px);
}
@media screen and (max-width: 767px){
	.footer-container-inner{
		width: calc(100% - 32px);
	}
}

.footer-container .gnav .nav-link::after{
	content: none;
}
.footer-container .gnav .nav-link:hover::after{
	width: 100%;
}

.sp-fixed-btn .cta-btn.request-btn{
	background: linear-gradient(90deg,#3F78CC ,#49BDCC);
}
.sp-fixed-btn .cta-btn.reserve-btn{
	background: linear-gradient(90deg,#F8746F, #FBCF6C);
}
.sp-fixed-btn li{
	position: relative;
}
.sp-fixed-btn .close-btn{
	display: block;
	position: absolute;
	top: -32px;
	right: 0;
	width: 24px;
	height: 24px;
	background: url(../images/common/close.svg) no-repeat center center;
	background-size: 60%;
	z-index: 5;
	cursor: pointer;
}
.footer-container .gnav .nav-list{
	flex: 1;
	border: none;
	border-left: 1px solid #fff;
    display: flex;
    align-items: center;
    justify-content: center;
}
.footer-container .gnav .limited .label{
	margin: 0 auto;
    padding: 3px 5px;
	width: fit-content;
	display: block;
    background-color: #802826;
	position: absolute;
	bottom: -12px;
	left: 50%;
	transform: translateX(-50%);
    font-size: .9rem;
	transition: all .4s ease-out;
}
.footer-container .gnav .limited .label .footer-none{
	display: none;
}
.footer-container .gnav .limited .nav-link:hover .label{
    background-color: #fff;
	color: #802826;
}
.footer-container .gnav .limited .label .footer-on{
	color: #fff;
	transition: all .7s ease-out;
}
.footer-container .gnav .limited .nav-link:hover .label .footer-on{
	color: #802826;
}
.footer-container .gnav .limited .limited-lead{
	display: none;
}
.footer-container .gnav .nav-link .tab-none{
	display: none;
}
@media screen and (max-width: 1000px){
	.footer-container .gnav{
		gap: 16px 0;
	}
	.footer-container .gnav .nav-list{
		flex: none;
		width: calc(100% / 5);
	}
	.footer-container .gnav .nav-list:nth-of-type(5){
		border-right: 1px solid #fff;
	}
	.footer-container .gnav .nav-link .tab-none{
		display: block;
	}
}
@media screen and (max-width: 767px){
	.footer-container .gnav .nav-list{
		flex: none;
		width: calc(100% / 2);
	}
	.footer-container .gnav .nav-list:nth-child(even) {
		border-right: 1px solid #fff;
	}
	.footer-container .gnav .nav-list:nth-of-type(5) {
		border-right:none;
	}
	.footer-container .gnav .limited .label{
        padding: 4px;
        width: 70px;
        bottom: -3px;
		font-size: 1rem;
	}
}

@media screen and (min-width: 768px){
	.footer-nav{
		padding: 40px 0 0;
		margin: 0 auto;
		width: calc(100% - 32px);
		max-width: 1100px;
		justify-content: center;
	}
	.sp-fixed-btn{
		display: none;
    position: fixed;
		bottom: 40px;
		right: 40px;
		z-index: 4;
	}
	.sp-fixed-btn > .flex-wrapper{
		flex-direction: column;
	}
	.footer-gnav{
		width: calc(70% - 40px);
	}
	.sp-fixed-btn .btn-list + .btn-list{
		margin-top: 16px;
	}
	.sp-fixed-btn .cta-btn{
		position: relative;
		width: 250px;
		height: 60px;
		display: flex;
		align-items: center;
		justify-content: center;
		align-items: center;
		font-size: 2rem;
		box-shadow: 1px 1px 8px rgba(0,0,0,.2);
		z-index: 4;
	}
	.sp-fixed-btn .cta-btn:hover{
		box-shadow: 0 0 2px rgba(0,0,0,.6);
	}
	.footer-container .gnav{
		margin-top: 0;
		display: flex;
		justify-content: center;
	}
	.footer-container .gnav .nav-list:last-child{
		border-right: 1px solid #fff;
	}
	.footer-container .gnav .nav-link{
		color: #fff;
		padding: 8px 10px;
		display: block;
		position: relative;
		white-space: nowrap;
		text-align: left;
		text-overflow: ellipsis;
		/* overflow: hidden; */
		text-align: center;
		transition: color .4s;
	}
	.footer-container .gnav .nav-link:hover{
		color: #af2229;
	}
	.footer-container .gnav .nav-link br{
		display: none;
	}
	.footer-container .gnav .nav-link.none{
		opacity: .5;
	}
}
@media screen and (min-width: 768px) and (max-width:1100px){
	.footer-container .gnav .nav-link.none::before {
    position: absolute;
    top: 17%;
	}
}
.bottom-nav{
	justify-content: space-between;
	align-items: center;
}
.bottom-nav .nav-list{
	margin: 8px 0;
	text-align: right;
}
.bottom-nav .nav-link::before{
	margin-top: -2px;
	margin-right: 4px;
	width: 0;
	height: 0;
	display: inline-block;
	content: "";
	border-style: solid;
	border-width: 4.5px 0 4.5px 7px;
	border-color: transparent transparent transparent #9B8C1B;
	vertical-align: middle;
}
.bottom-nav .nav-link:hover{
	color: #c00;
}
.holiday-wrap{
	text-align: center;
	padding-bottom: 30px;
    line-height: 1.5;
	color: #ffffff;
}
.holiday-wrap .holiday-text .holiday-ttl{
	font-size: 16px;
	display: inline-block;
	padding-bottom: 4px;
}
.holiday-wrap .holiday-text{
	font-size: 13px;
}
.contact-wrap{
	margin-top: 60px;
	margin-bottom: 60px;
}
.salon-name{
	margin: 0 auto;
	max-width: 510px;
	margin-bottom: 8px;
	font-size: 1.4rem;
	line-height: 1.4;
}
.tel{
	display: flex;
	gap: 16px;
	align-items: center;
	justify-content: center;
}
.tel img{
	width: 60px;
}
.tel a{
	font-family: 'Times New Roman', serif;
	font-size: 5rem;
	white-space: nowrap;
}
.salon-status{
	font-size: 1.2rem;
	line-height: 1.4;
}
@media screen and (max-width: 767px){
	.contact-wrap{
		margin-top: 48px;
		margin-bottom: 16px;
	}
	.salon-name{
		width: 100%;
		text-align: center;
	}
	.tel{
		gap: 8px;
		text-align: center;
		flex-wrap: wrap;
	}
	.tel a{
		font-size: 4rem;
	}
	.tel img {
    width: 48px;
	}
	.free-dial{
		width: 40px;
	}
	.salon-status{
		width: 100%;
	}
	.bottom-nav .nav-list{
		text-align: left;
	}
	.bottom-nav .flex-item:first-child{
		order: 2;
	}
	.bottom-nav .flex-item:last-child{
		padding: 0 16px 16px;
		margin: 0 -16px 16px;
		width: calc(100% + 32px);
		border-bottom: 1px solid rgba(0,0,0,.2);
	}
}
.address-wrap{
	padding: 32px 16px;
	justify-content: center;
	align-items: flex-end;
	gap: 32px;
}
.foot-logo{
	justify-content: center;
	align-items: flex-end;
	gap: 32px;
	font-size: 1rem;
	line-height: 1.5;
}
.foot-logo .flex-wrapper{
	align-items: flex-end;
	gap: 16px;
}
.foot-logo .flex-wrapper:nth-of-type(2){
	gap: 32px;
}
.foot-logo .flex-wrapper:nth-of-type(3) img{
	margin: 9px auto -9px;
}
.foot-logo .flex-wrapper:last-child{
	gap: 32px;
}
.foot-logo p{
	margin-bottom: .8em;
}
.foot-logo .logo-img{
	margin: 0 20px;
	display: inline-block;
}
@media screen and (max-width: 1250px){
	.foot-logo{
		max-width: 400px;
	}
	.foot-logo .flex-wrapper{
		margin: 0 40px;
		flex-flow: column;
	}
	.foot-logo .flex-wrapper:first-child{
		flex-flow: nowrap;
	}
	.foot-logo .flex-wrapper:nth-of-type(3) img{
		margin: 0;
	}
	.foot-logo .logo-img{
		margin: 20px auto;
	}
}
@media screen and (max-width: 767px){
	.foot-logo{
		max-width: 400px;
		justify-content: center;
		gap: 20px 16px;
	}
	.foot-logo .flex-wrapper:nth-of-type(2){
		gap: 24px;
	}
	.foot-logo .flex-wrapper:last-child{
		gap: 16px;
	}
}
.foot-logo img{
	vertical-align: baseline;
}
.footer-links{
	margin: 60px 0;
	display: flex;
	justify-content: center;
	flex-wrap: wrap;
}
.footer-link{
	flex: 1;
	border-left: 1px solid #fff;
}
.footer-link:last-child{
	border-right: 1px solid #fff;
}
.footer-link a{
	padding: 8px 0;
	display: block;
	text-align: center;
	color: #fff;
}
.copyright{
	padding-bottom: 100px;
	width: 100%;
	font-style: normal;
	font-size: 1rem;
	text-align: center;
	font-family: 'Noto Serif JP', serif;
	font-weight: 300;
	font-style: normal;
}
@media screen and (max-width: 767px){
	.footer-links{
		margin-top: 16px;
		gap: 16px 0;
	}
	.footer-link{
		flex: none;
		width:50%;
		border-left: none;
	}
	.footer-link:last-child{
		border-right: none;
	}
	.footer-link a{
		font-size: 1.2rem;
	}
	.copyright{
		padding-bottom: 76px;
	}
}

/*--------------------------------
home
--------------------------------*/
.mv-section{
	position: relative;
}
.mv-section-linkWrap{
	position: absolute;
	width: 92%;
	top: 57%;
	left: 50%;
	translate: -50% -50%;
}
.mv-txt-area{
	position: absolute;
	top: 45%;
	left: 65%;
	transform: translate(-50%, -50%);
	-webkit-transform: translate(-50%, -50%);
	-ms-transform: translate(-50%, -50%);
	width: 58vw;
}
.mv-btn{
	width: 30vw;
	display: block;
	margin: 0 auto;
	transition: .3s;
}
.mv-btn:hover{
	opacity: .7;
	background: #fff;
}
.kanbai-caption{
	padding: 0 0 90px;
	margin: 0 auto;
}
@media screen and (max-width: 767px) {
	.mv-txt-area{
		top: 16%;
		left: 50%;
		width: 100vw;
	}
	.mv-btn{
		width: 100%;
		margin: 0 auto 20px;
	}
	.kanbai-caption{
		padding: 0 0 40px;
	}
}
@media screen and (max-width: 767px) {
 .mv-section-linkWrap{
	position: absolute;
	width: 92%;
	top: 66%;
	left: 50%;
	translate: -50% -50%;
 }
 .black-bg{
	position: absolute;
    top: 99%;
    width: 100%;
    background: #000;
    height: 30px;
    z-index: 2;

 }
}
.preload {
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  gap: 12px;
  position: fixed;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  z-index: 101;
  background: #1a0b08;
  font-size: 1.4rem;
  letter-spacing: .2em;
  text-indent: 0.2em;
}
.preload-logo{
  width: 100px;
}
.preload-fixed{
	position: fixed;
	width: 100%;
	height: 100%;
	left: 0;
}

@media screen and (max-width: 767px) {
  .preload-logo{
    width: 60px;
  }
}
.usp-section{
	padding: 36px 0 20px;
	background: #000;
}
.usp-inner{
	margin: 0 auto;
	max-width: 1200px;
	width: calc(100% - 64px);
}
.kodo-text{
	border-top: 1px solid #fff;
	border-bottom: 1px solid #fff;
	font-size: 6.8rem;
	padding: .4em 0 .4em;
	line-height: 1.2;
	letter-spacing: .1rem;
}
.kodo-text span{
	font-size: 1.8rem;
	line-height: 1.6;
	display: inline-block;
}
.kodo-text .middle-text{
	font-size: 4rem;
}
.kodo-text .large-text{
	margin-top: 0;
	font-size: 7.4rem;
}
@media screen and (max-width: 767px){
	.kodo-text{
		font-size: 3rem;
		padding: .6em 0 .6em;
	}
	.kodo-text .large-text{
		margin-top: -10px;
		font-size: 3.4rem;
	}
	.usp-inner{
		width: calc(100% - 32px);
	}
	.kodo-text span{
		font-size: 1rem;
		margin-top: 10px;
	}
	.kodo-text .middle-text{
		font-size: 1.7rem;
	}
}
.general-section.kodo .inner{
	max-width: 800px;
}
.loan-section{
    border-bottom: 1px solid #fff;
    padding: 40px 0;
}
.loan-section .loan-inner{
	margin: 0 auto;
	max-width: 700px;
}
@media screen and (max-width: 767px){
	.loan-section{
		padding: 30px 0;
	}
	.loan-section .loan-inner{
		max-width: 74%;
	}
}
.link-btn{
	margin: 0 auto 0;
	max-width: 800px;
	height: 100px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	justify-content: center;
	gap: 12px;
	border: solid 3px #a28e65 ;
	background: url(../images/common/btn-bg.jpg) no-repeat center center;
	background-size: cover;
	transition: opacity .7s ;
}
.res-link-btn{
	background: url(../images/common/res-btn-bg.jpg) no-repeat center center;
	background-size: cover;
}

.link-btn:hover{
	opacity: .5;
}
.kodo .link-btn{
	margin-top: 48px;
}
.link-btn .main{
	font-size: 3.4rem;
}
.link-btn .sub{
	font-size: 1.6rem;
	line-height: 1.5;
}
@media screen and (max-width: 767px){
	.link-btn{
		height: 180px;
		background: url(../images/common/btn-bg-sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.res-link-btn{
		background: url(../images/common/res-btn-bg-sp.jpg) no-repeat center center;
		background-size: cover;
	}
	.kodo .link-btn{
		margin-top: 32px;
	}
	.link-btn .main{
		font-size: 3.2rem;
	}
	.link-btn .sub{
		font-size: 1.4rem;
	}
}
.res-link-btn-mv{
	background: url(../images/home/mv-btn-pc.png) no-repeat center center;
	background-size: cover;
}
@media screen and (max-width: 767px){
	.res-link-btn-mv{
		background: url(../images/home/mv-btn-sp.png) no-repeat center center;
		background-size: cover;
	}
}
.link-btn-mv{
	margin: 0 auto 0;
	max-width: 800px;
	height: 100px;
	display: flex;
	flex-direction: column;
	align-items: center;
	text-align: center;
	justify-content: center;
	gap: 12px;
	background-size: contain;
	transition: opacity .7s ;
}
.link-btn-mv:hover{
	opacity: .5;
}
.top-head{
	position: relative;
	padding-bottom: 120px;
}
.top-head .inner{
	position: relative;
	z-index: 1;
	padding-bottom: 160px;
}
.top-head-logo{
	max-width: 200px;
	width: 100%;
	margin: 0 auto 40px;
}
@media screen and (max-width: 767px){
	.top-head{
		padding-bottom: 40px;
	}
	.top-head-logo{
		max-width: 80px;
	}
}
.top-head-heading{
	margin-bottom: .8em;
	font-size: 4.2rem;
	line-height: 1.3;
}
.top-head-en{
	margin-bottom: 1.6em;
	font-size: 2rem;
}
.top-head-copy{
	font-size: 3.6rem;
	line-height: 1.5;
}
.top-perse{
	position: absolute;
	width: 70%;
	height: 100%;
	background: url(../images/home/top-perse.webp) no-repeat top right;
	background-size: cover;
}
.forth .top-grid-body .top-plan-img img{
	width: 100%;
	height: auto;
}
@media screen and (min-width: 768px){
	.home .bg-section.second{
		border-top: 3px solid #333;
	}
	.home .bg-section.third{
		border-top: 3px solid #333;
	}
	.home .bg-section.forth{
		border-top: 3px solid #333;
	}
	.top-grid.reverse.top-loc-block{
		padding-top: 60px;
		margin: 0 auto;
		gap: 32px;
		max-width: 1200px;
		padding-bottom: 60px;
	}
	.top-loc-block .top-grid-head {
		width: calc(55% - 16px);
		padding: 0;
	}
	.top-loc-block .top-grid-body {
		width: calc(45% - 16px);
	}
}

.top-loc-label{
	width: 100%;
	margin: 0 auto 16px;
	padding: .6em;
	font-size: 2.4rem;
	background: #003e6a;
	color: #fff;
	width: 100%;
	text-align: center;
	line-height: 1.3;
}
.top-rarity-label{
	width: 100%;
	margin: 0 auto 16px;
	padding: .6em;
	font-size: 2.4rem;
	background: #003e6a;
	color: #fff;
	width: 100%;
	text-align: center;
}
@media screen and (max-width: 767px){
	.top-loc-label{
		font-size: 1.6rem;
	}
	.top-rarity-label{
		margin: 0 auto 8px;
		font-size: 1.8rem;
	}
	.top-head .inner{
		padding-bottom: 40px;
	}
	.top-head-heading{
		font-size: 3.2rem;
	}
	.top-head-en{
		margin-bottom: 1.6em;
		font-size: 1.6rem;
	}
	.top-head-copy{
		font-size: 2.4rem;
		line-height: 1.5;
	}
	.top-perse{
		position: absolute;
		width: 90%;
		height: 55%;
		background: url(../images/home/top-perse.webp) no-repeat top right;
		background-size: cover;
		top: 5%;
	}
}
.top-grid{
	display: flex;
	position: relative;
	z-index: 1;
}
.top-grid.reverse{
	flex-direction: row-reverse;
}
.top-grid-head{
	width: 40%;
	padding: 40px 24px;
	display: flex;
	justify-content: center;
	align-items: center;
	flex-direction: column;
}
.top-grid-body{
	width: 60%;
}
.top-grid-head .top-copy + .sp-none{
	max-width: 450px;
	width: 100%;
}
.top-loc-grid + .sp-none{
	max-width: 450px;
	width: 100%;
}
.top-loc-grid{
	margin: 0 auto 16px;
	width: 100%;
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 8px;
}
@media screen and (max-width: 767px){
	.top-grid{
		flex-direction: column-reverse;
	}
	.top-grid.reverse{
		flex-direction: column-reverse;
	}
	.top-grid-head{
		width: 100%;
		padding: 48px 16px 0;
		display: flex;
		justify-content: center;
		align-items: center;
		flex-direction: column;
	}
	.top-grid-body{
		width: 100%;
		padding: 0 16px;
	}
}
.top-heading{
	margin-bottom: 1em;
	padding-bottom: .4em;
	display: inline-block;
	border-bottom: 3px solid #c9b279;
	font-size: 2rem;
}
.top-copy{
	margin-bottom: 1em;
	font-size: 3.2rem;
	line-height: 1.5;
}
.top-btn{
	max-width: 450px;
	width: 100%;
	border: 2px solid #333333;
	display: flex;
	justify-content: center;
	align-items: center;
	height: 56px;
	font-size: 2rem;
	background: url(../images/common/btn-bg-brn.webp)no-repeat center center;
	background-size: cover;
	transition: opacity .4s;
}
.top-btn.cs{
	pointer-events: none;
}
.top-btn:hover{
	opacity: .7;
}
@media screen and (max-width: 767px){
	.top-heading{
		font-size: 1.8rem;
	}
	.top-copy{
		margin-bottom: 1em;
		font-size: 2.4rem;
		line-height: 1.5;
	}
	.top-btn{
		margin-top: 16px;
		height: 48px;
		font-size: 1.6rem;
		margin-left: auto;
		margin-right: auto;
	}
}
.top-location{
	background: #000;
	padding: 80px 0;
}
.top-location-wrap{
	margin: 0 auto;
	max-width: 1200px;
	display: grid;
	grid-template-columns: 1fr 32%;
	gap: 4px;
}
.top-location-wrap + .top-btn{
	margin: 48px auto 0;
}
.top-location-item:last-child{
	display: flex;
	flex-direction: column;
	justify-content: space-between;
}
.top-location-thumb{
	height: calc(50% - 2px);
}
.top-location-thumb.first{
	background: url(../images/home/image-04.webp)no-repeat center center;
	background-size: cover;
}
.top-location-thumb.second{
	background: url(../images/home/image-05.webp)no-repeat center center;
	background-size: cover;
}
@media screen and (max-width: 767px){
	.top-location{
		padding: 32px 16px 0;
		background: transparent;
	}
	.top-location-wrap{
		margin-bottom: 32px;
		grid-template-columns: 1fr;
	}
	.top-location-wrap .img-wrapper .caption{
		position: static;
	}
	.top-location-item:last-child{
		display: flex;
		flex-direction: unset;
	}
	.top-location-thumb{
		width: calc(50% - 2px);
		height: 40vw;
	}
	.top-location-thumb .caption{
		margin-top: 41vw;
	}
}
.top-rarity{
	background: #000;
	padding: 60px 0 56px;
}
.top-rarity-wrap{
	max-width: 1200px;
	margin: 0 auto;
}
@media screen and (max-width: 767px){
	.top-rarity{
		background: transparent;
		padding: 8px 16px 4px;
	}
	.top-rarity-wrap{
		max-width: 1000px;
		margin: 0 auto;
	}
}
.top-plan-img{
	padding: 60px 0;
	width: 80%;
	margin: 0 auto;
}
.top-plan-thumb{
	margin: 48px auto 0;
	max-width: 500px;
}
.entry-flow{
	margin-top: 48px;
}
.top-contents{
	display: grid;
	grid-template-columns: 1fr 1fr 1fr;
	gap: 16px;
}
@media screen and (max-width: 767px){
	.top-plan-img{
		padding: 16px 0 0;
		width: 80%;
		margin: 0 auto;
	}
	.top-plan-thumb{
		margin: 0 auto 0;
		max-width: 500px;
	}
	.entry-flow{
		margin-top: 48px;
	}
	.top-contents{
		display: grid;
		grid-template-columns: 1fr 1fr;
		gap: 8px;
	}
	.top-copy.top-plan-copy{
		margin-bottom: 0;
	}
	.entry-head .lead{
		font-size: 1.4rem;
	}
}

/*--------------------------------
map
--------------------------------*/
.map-btn{
	margin: 60px auto 0;
}
.general-section .inner.salon-wrap{
	width: calc(100% - 32px);
    max-width: 700px;
	margin: 0 auto;
}
@media screen and (max-width: 767px){
	.map-btn{
		margin-top: 32px;
	}
}

/*--------------------------------
outline
--------------------------------*/

#modal-second-header {
	border-top-left-radius: 0rem;
	border-top-right-radius: 0rem;
}
	
.slds-scope .slds-input[readonly] {
	border-color: rgb(221, 219, 218);
}
	
.slds-scope img {
	max-width: 150px;
}
	
.section-label {
	font-size: 0.7rem;
}

.outline-sec .inner{
	max-width: 900px;
}
.outline-box-title{
	margin-bottom: .4em;
	font-size: 1.8rem;
}
.outline-sec .outline-boxwrap th {
	width: 35%;
}
.outline-sec .outline-boxwrap {
	font-size: 1.4rem;
	line-height: 1.5;
}
.outline-sec .outline-boxwrap th, .outline-sec .outline-boxwrap td {
	border-bottom: solid 1px #dadbdc;
	text-align: left;
	padding: 1em;
	padding-left: 0;
	font-weight: normal;
}
.outline-sec .outline-boxwrap table {
	width: 100%;
	position: relative;
	letter-spacing: 0.05em;
}
.outline-sec .outline-boxwrap+.outline-boxwrap {
	margin-top: 48px;
}
@media screen and (max-width: 767px){
	.outline-box-title{
		font-size: 1.6rem;
	}
	.outline-sec .outline-boxwrap {
		font-size: 1.2rem;
	}
	.outline-sec .outline-boxwrap th {
		width: 40%;
	}
}

.footer-bnt-list{
	display: grid;
	grid-template-columns: repeat(2,1fr);
	width: min(100%,780px);
	gap: 10px 20px;
	margin: 40px auto 0;
	align-items: self-end;
}
@media screen and (max-width: 767px){
	.footer-bnt-list{
		grid-template-columns: 1fr;
		margin: 30px auto 0;
	}
}
/*--------------------------------
state
--------------------------------*/
.bg-section.first{
	background: url(../images/common/bg-01.webp) no-repeat top center;
	background-size: cover;
}
.bg-section.second{
	background: url(../images/common/bg-02.webp) no-repeat top center;
	background-size: cover;
}
.bg-section.third{
	background: url(../images/common/bg-03.webp) no-repeat top center;
	background-size: cover;
}
.bg-section.forth{
	background: url(../images/common/bg-04.webp) no-repeat top center;
	background-size: cover;
}

.disabled {
	opacity: 0.1;
	cursor: default;
	pointer-events: none;
}
.none{
	opacity: 0.5;
	cursor: default;
	pointer-events: none;
}
.is-none{
	display: none;
}
.is-fv {
	opacity: 0;
	animation-fill-mode: both;
}
.is-light{
	color: #fff;
}
.is-dark{
	color: #2c2c2c;
}
.is-gld{
	color: #c4b57c;
}
.is-shadow{
	text-shadow: 0 0 1px rgba(0,0,0,.8), 0 0 4px rgba(0,0,0,.4);
}
.is-karning{
	font-feature-settings: "palt";
}
.is-bold{
	font-weight: 600;
}
.has-border {
	box-shadow: 0 0 2px 0 rgb(0 0 0 / 40%);
}
.line-wide{
	line-height: 2.4;
}
.is-key{
	color: #00307B;
}
.is-emphasis{
	color: #E84709;
}
.is-alert{
	color: #c90000;
}
.unscrollable{
	overflow-y: hidden;
}
.mb-64{
	margin-bottom: 64px;
}
@media screen and (max-width: 767px){
	.sp-none{
		display: none;
	}
	.slick-slide img.sp-none{
		display: none;
	}
}
@media screen and (min-width: 768px){
	.pc-none{
		display: none;
	}
	.slick-slide img.pc-none{
		display: none;
	}
}