@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: "Shippori Mincho", serif;
	font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
	font-size: 1.4rem;
	line-height: 1;
	color: #2c2c2c;
}
/* @media screen and (max-width: 767px){
	body{
		padding-bottom: 48px;
	}
} */
a {
	color: #006d9e;
	-webkit-tap-highlight-color: rgba(238, 223, 227, 0.2);
}
sup,
sub{
	font-size: xx-small;
}

:root {
  --primary: #6a1f07;
  --secondary: #99dcf1;
  --tertiary: #8ca6ae;
  --dark: #333;
  --light: #fff;
}
/*--------------------------------
common
--------------------------------*/
.text-center {
	text-align: center;
}
.text-right {
	text-align: right;
}
.text-left {
	text-align: left;
}
.en-font{
	font-family: "Libre Caslon Text", serif;
	font-optical-sizing: auto;
  font-weight: 400;
  font-style: normal;
}
.cinzel{
	font-family: "Cinzel", serif;
	font-weight: 400;
  font-style: normal;
}
.small-text {
	font-size: 75%;
}
.small-text02 {
	font-size: 85%;
}
.small-text03 {
	font-size: 80%;
}
.middle-text{
	font-size: 125%;
}
.large-text{
	font-size: 150%;
}
.vertical-text {
	writing-mode: vertical-rl;
	-webkit-text-orientation: upright;
	text-orientation: upright;
	-webkit-font-feature-settings: normal;
	font-feature-settings: normal;
}
.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);
}
.col-4{
	width: calc(100% / 3);
}
.has-gap .col-2{
	width: calc(50% - 8px);
}
.has-gap .col-3{
	width: calc(100% / 3 - 11px);
}
.has-gap .col-4{
	width: calc(100% / 4 - 12px);
}
@media screen and (max-width: 767px){
	.col-2,
	.has-gap .col-2,
	.col-3,
	.has-gap .col-3{
		width: 100%;
	}
	.has-gap .col-4{
		width: calc(50% - 8px);
	}
	.has-gap .sp-col-3{
		width: 100%;
	}
}
.img-wrapper{
	position: relative;
}
.img-wrapper .caption{
	position: absolute;
	bottom: 0;
	left: 8px;
	right: 8px;
	z-index: 1;
	
}
.img-wrapper .lead-caption{
	text-align: right;
	bottom: 5px;
	/* right: -12vw; */
	@media screen and (max-width: 767px){
		bottom: 0px;
	}
}
.img-wrapper .caption.has-bg {
    left: auto;
    right: 0;
    background: rgba(0, 0, 0, 0.7);
    padding: .4em .6em;
    margin: 0;
}
.caption.cap-top{
    height: fit-content;
	top: 62%;
	bottom: auto;
	opacity: .7;
}
.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;
	}
	.caption.cap-top{
		top: 70%;
	}
	.sp-text-right{
		text-align: right;
	}
}
.nav-link{
	color: #444;
	font-family: "游明朝", "Yu Mincho", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝', serif;
}
.nav-link.none{
	position: relative;
}

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

.primary-heading{
	margin-bottom: .8em;
	font-size: 4.4rem;
	font-size: clamp(2.6rem, 3.95vw, 4.4rem);
	font-weight: 400;
	line-height: 1.3;
}
.primary-heading .jp{
	font-size: clamp(1.2rem, 1.95vw, 1.6rem);
	display: block;
}
.secondary-heading{
	margin-bottom: .8em;
	font-size: clamp(2rem, 2.95vw, 3rem);
	font-weight: 400;
	line-height: 1.7;
}
.tertiary-heading{
	margin-bottom: .8em;
	font-size: clamp(1.8rem, 2.45vw, 2.4rem);
	font-weight: 400;
	line-height: 1.4;
}
.page-heading{
	margin-bottom: .8em;
font-size: 3.6rem;
	font-weight: 300;
	line-height: 1.3;
	letter-spacing: .2em;
	text-indent: .1em;
}
.page-heading .note{
	margin-top: .2em;
	margin-bottom: 0;
	font-size: 1.8rem;
	letter-spacing: .1em;
}
@media screen and (max-width: 767px){
	.primary-heading{
		font-size: 2.6rem;
	}
	.secondary-heading{
		font-size: 2rem;
	}
	.tertiary-heading{
		font-size: 1.8rem;
	}
	.page-heading{
		font-size: 2.6rem;
	}
	.page-heading .note{
		font-size: 1.4rem;
	}
}
.note{
	margin: 1em 0;
	font-size: clamp(1.2rem, 1.95vw, 1.6rem);
	line-height: 1.6;
}
.lead{
	margin: 1em 0;
	font-size: clamp(1.4rem, 2.15vw, 2rem);
	line-height: 1.6;
}
.caption{
	margin: .4em 0;
	font-size: 1.2rem;
	line-height: 1.4;
}
.cta-btns{
	display: flex;
	justify-content: center;
}
.cta-arrow{
	width: 40px;
	margin-left: 12px;
}
.cta-arrow .cls-1 {
	fill: #fff;
	stroke-width: 0px;
}
.cta-arrow .cls-2 {
	fill: none;
	stroke: #fff;
	stroke-miterlimit: 10;
	stroke-width: .25px;
}
.btn{
	padding: 8px 16px;
	display: inline-block;
	position: relative;
	background: #2c2c2c;
	color: #fff;
	font-size: 1.6rem;
	transition: all .3s ease-out;
}
.general-btn{
	border-radius: 30px;
	margin: 8px;
	padding: 4px;
	width: 100%;
	max-width: 360px;
	height: 60px;
	display: inline-flex;
	gap: 8px;
	justify-content: center;
	align-items: center;
	position: relative;
	background: #223c3d;
	font-size: 2rem;
	color: #fff;
}
.general-btn .btn-inner{
	display: flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	height: 100%;
}
/* .general-btn:hover{
	filter: brightness(.8);
} */
@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;
	}
}
.under-mv{
	position: relative;
}
.under-ttl {
	padding: 95px 0 43px;
	width: min(100% - 32px, 1200px);
	margin: 0 auto;
	font-size: 12.4rem;
}
.under-ttl span {
	display: block;
	font-size: 2rem;
}
@media screen and (max-width: 767px){
	.under-ttl {
    padding-top: 50px;
    font-size: 5rem;
	}
	.under-ttl span {
    font-size: 1rem;
	}
}
.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;
}
.reserve-btn{
	background: linear-gradient(90deg, #DB617E, #183688);
}
.request-btn{
	background: #A74E6E;
}
.limited-btn{
	background: linear-gradient(90deg, #7962a9, #19499e);
}
.request-btn .request-btn{
	background: linear-gradient(0deg, #00a7bc, #183688);
}

/* .new-header .reserve-btn,
.pc-drawer-menu .reserve-btn,
.sp-fixed-btn .reserve-btn{
	background: #C2857D;
	color: #fff;
} */

.icon-mail{
	width: 2rem;
}
.tel-btn{
	background: #EB930C;
}
/* .reserve-btn:hover{
	filter: brightness(.8);
}
.request-btn:hover{
	filter: brightness(.8);
} */
.request-btn .cta-arrow,
.reserve-btn .cta-arrow{
	transition: transform .4s;
}
.request-btn:hover .cta-arrow,
.reserve-btn:hover .cta-arrow{
	transform: translateX(12px);
}
.limited-btn .cta-arrow{
	transition: transform .4s;
}
.limited-btn:hover .cta-arrow{
	transform: translateX(8px);
}
.tel-btn:hover{
	background: #333;
}
.more-btn::after{
	width: 10px;
	height: 10px;
	display: block;
	content: "";
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	transform: rotate(45deg);
}
.more-btn.coming-soon{
	opacity: .8;
}
.more-btn.coming-soon::after{
	display: none;
}
.has-frame{
	position: relative;
}
.has-frame::before{
	position: absolute;
	top: 5px;
	right: 5px;
	bottom: 5px;
	left: 5px;
	border: 1px solid #fff;
	content: "";
}
.main-bg{
	background: url(../images/home/top-bg-02.webp) no-repeat bottom center;
	background-size: cover;
	position: relative;
}
.main-bg2{
	background: url(../images/home/top-bg-05.webp) no-repeat bottom center;
	background-size: cover;
	position: relative;
}
.primary-bg{
	background: var(--primary);
}
.secondary-bg{
	background: var(--secondary);
}
.tertiary-bg{
	background: var(--tertiary);
}
.bg-light{
	background-color: #fffef7;
}
.bg-light2{
	background-color: #F2F2F2;
}
.bg-gray{
	background-color: #faf9f2;
}
.bg-lightgray{
	background-color: #f8f8f8;
}
.bg-key{
	background-color: #223c3d;
	color: #fff;
}
.video-wrapper{
	position: relative;
	padding-top: 56.25%;
	height: 0;
	display: block;
	content: "";
}
.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;
}
.banner-area{
	margin: 32px auto;
	width: calc(100% - 48px);
	max-width: 1000px;
	display: flex;
	justify-content: center;
	gap: 32px;
}
.banner-item{
	max-width: 600px;
}

/*--------------------------------
layout
--------------------------------*/
/* .container{
	overflow: hidden;
} */
.has-navigation .container{
	margin-top: 80px;
}
@media screen and (max-width: 900px){
	.has-navigation .container{
		margin-top: 48px;
	}
}
.general-section .inner{
	margin: 0 auto;
	padding: 80px 0;
	width: calc(100% - 48px);
	max-width: 1000px;
}
.general-section .inner.pd-min{
	padding-bottom: 40px;
}
@media screen and (max-width: 767px){
	.general-section .inner{
		padding: 32px 0;
		width: calc(100% - 48px);
	}
	.general-section .inner.pd-min{
		padding-bottom: 24px;
	}
}
.general-section .inner-min{
	padding: 40px 0;
}
@media screen and (max-width: 767px){
	.general-section .inner-min{
		padding: 24px 0;
	}
}
.general-section .inner-fit{
	width: 100%;
	max-width: none;
}
.general-section .inner-lwide{
	max-width: 1300px;
}
.general-section .inner-wide{
	max-width: 1200px;
}
.general-section .inner-mid{
	max-width: 1100px;
}
.general-section .inner-small{
	max-width: 800px;
}
.general-section .inner-full{
	max-width: none;
}
.general-section .inner + .inner{
	padding-top: 0;
}
.general-parts{
	margin-bottom: 32px;
}
.btn-space{
	margin: 16px 0;
	text-align: center;
}
.btn-space:last-child{
	margin-bottom: 0;
}

/*--------------------------------
header
--------------------------------*/
.new-header{
	height: 80px;
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	z-index: 5;
	/* background: #1a2f58; */
	/* -webkit-backdrop-filter: blur(10px);
	backdrop-filter: blur(10px); */
	transition: .4s ease-out;
}
.new-header .inner{
	padding: 14px 32px 14px 32px;
	height: 80px;
	display: flex;
align-items: center;
}
.new-header .logo{
	width: calc(100% - 618px);
	max-width:381px;
	/* height: 20px; */
	height: 24px;
	background: url(../images/common/logo.svg) no-repeat left center;
	background-size: contain;
	transition: height .4s ease-out;
}
body .new-header {
	/* transform: translateY(-48px); */
		background: rgba(255, 255, 255, 0.4);
	backdrop-filter: blur(10px);
-webkit-backdrop-filter: blur(10px);
}
body.is-down .new-header{
	transform: translateY(0);
	
}
body.is-scroll .new-header {
		opacity: 0;
	}
body.is-scroll .hamburger {
		opacity: 0;
	}
body.has-nav .new-header{
    transform: translateY(0);
}
body.has-nav .container {
	margin-top: 80px;
}
@media screen and (max-width: 900px){
	body.has-nav .container {
		margin-top: 48px;
	}
}

.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: 16px;
	right: 0;
	z-index: 6;
	text-align: center;
	transition: all .3s ease-out;
	cursor: pointer;
	transition:opacity .4s ease-out;
	width: 70px;
}
.hamburger.new::before{
	content: '';
	display: block;
	position: absolute;
	top: 7px;
	right: 14px;
	width: 8px;
	height: 8px;
	border-radius: 50%;
	background: #00a0e9;
}
.is-menu-open .hamburger.new::before{
	opacity: 0;
}
@media screen and (max-width: 900px){
	body .new-header {
		transform: translateY(0);
		/* opacity: 0; */
	}
	/* .hamburger{
		transform: translateY(-124px);
	} */
	body.has-nav .hamburger {
    transform: translateY(0);
	}
	body .hamburger {
		top: 0;
	}
	.is-down .hamburger{
		transform: translateY(0);
	}
}
.hamburger i{
	margin: 2.5px 0;
	height: 1.5px;
	width: 34px;
	display: block;
	content: "";
	background: #333;
	transition: all .3s ease-out;
}
.is-menu-open .hamburger,
.is-menu-open.is-conpact .hamburger{
	color: #333;
}
.is-menu-open .hamburger i{
	background: #333;
}
.is-menu-open .hamburger i:nth-of-type(1){
	transform: translateY(7px) rotate(210deg);
}
.is-menu-open .hamburger i:nth-of-type(2){
	opacity: 0;
}
.is-menu-open .hamburger i:nth-of-type(3){
	transform: translateY(-7px) rotate(-210deg);
}
.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: 1;
	}
	.nav-container{
		display: none;
	}
}
/* .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 .6s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .gnav.under-nav .nav-list:last-child{
	animation: fUp .2s .65s 1 ease-in-out;
	animation-fill-mode: forwards;
} */
.is-menu-open .salon-name, .is-menu-open .tel{
	opacity: 1;
}
/* .is-menu-open .salon-name{
	animation: fUp .2s .75s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.is-menu-open .tel{
	animation: fUp .2s .8s 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 .6s 1 ease-in-out;
	animation-fill-mode: forwards; */
	opacity: 1;
}
.is-menu-open .upper-nav .nav-list:nth-of-type(2){
	/* animation: fUp .2s .65s 1 ease-in-out;
	animation-fill-mode: forwards; */
	opacity: 1;
}
.is-menu-open .upper-nav .nav-list:nth-of-type(3){
	animation: fUp .2s 1.1s 1 ease-in-out;
	animation-fill-mode: forwards;
}
.drawer-nav .request-btn ,.drawer-nav .reserve-btn, .drawer-nav .limited-btn{
	opacity: 0;
}
/* .is-menu-open .drawer-nav .request-btn{
	animation: fUp .2s .7s 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;
}
.is-menu-open .drawer-nav .limited-btn{
	animation: fUp .2s .6s 1 ease-in-out;
	animation-fill-mode: forwards;
} */
/* .pc-drawer-menu .gnav .nav-link:not(.none){
	background: url(../images/common/nav-arrow.svg) no-repeat 98% 50%;
	background-size: 5px;
} */
@media screen and (min-width: 901px){
	.nav-container .gnav{
		display: none;
	}
    .is-conpact .nav-container {
        height: 0;
    }
	.new-header::after{
		width: 100%;
		height: 180px;
		display: block;
		position: absolute;
		left: 0;
		top: 0;
		z-index: -1;
		/* content: ""; */
		background: linear-gradient(0deg, rgba(255,255,255,0), rgba(255,255,255,.05) 19%, rgba(255,255,255,.1) 28%, rgba(255,255,255,.2) 41%, rgba(255,255,255,.8));
		pointer-events: none;
		transition: transform .4s ease-out;
	}
	.is-conpact .new-header{
		height: 80px;
	}
	/* .is-conpact .new-header .logo{
		height: 15px;
	} */
	.is-conpact .new-header::after{
		transform: translate(0, -40px);
	}
	.gnav{
		margin: 32px 0 0;
		justify-content: center;
		transition: opacity .4s ease-out, transform .4s ease-out;
	}
	.is-conpact .new-header .gnav{
		margin: 0;
		opacity: 0;
 		pointer-events: none;
	}
	.is-conpact .tel-btn-list{
		display: none;
	}
	.is-conpact .upper-nav{
		padding-right: 70px;
	}
	.gnav .nav-list{
		flex: 1;
		border-right: 1px solid rgba(0,0,0,.1);
	}

	.is-menu-open .gnav.under-nav .nav-list:first-child{
		animation: fUp .2s .6s 1 ease-in-out;
		animation-fill-mode: forwards;
	}
	.is-menu-open .gnav.under-nav .nav-list:last-child{
		animation: fUp .2s .65s 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{
		font-size: 1.4rem;
	}
	.new-header .gnav .nav-link.new::before{
		position: absolute;
		top: 2px;
		left: 4px;
		content: "NEW";
		font-size: 1.1rem;
		color: #C63021;
	}
	/* .gnav .nav-link::after{
		width: 0;
		max-width: 80px;
		height: 1px;
		display: block;
		position: absolute;
		bottom: 0;
		left: 50%;
		z-index: 1;
		content: "";
		background: #446769;
		transform: translateX(-50%);
		transition: width .3s ease-out;
	} */
	.gnav .nav-link:hover{
		color: #446769;
	}
	.gnav .nav-link:hover::after{
		width: 80%;
	}
	.upper-nav{
		position: absolute;
		right: 0;
		top: 0;
		align-items: center;
		padding-right: 70px;
		height: 80px;
	}
	.upper-nav .nav-list{
		margin-right: 32px;
	}
	.upper-nav .btn-list + .btn-list{
		margin-left: 12px;
	}
	.upper-nav .cta-btn{
		padding: 2px;
		height: 40px;
		width: 190px;
		display: flex;
    justify-content: center;
    align-items: center;
		border-radius: 20px;
		font-size: 1.4rem;
		position: relative;
		border: 1px solid #A74E6E;
	}
	.upper-nav .cta-btn::after{
		/* margin-top: -3px; */
		width: 8px;
    height: 8px;
    background: #fff;
    border-radius: 50%;
    flex-shrink: 0;
		display: inline-block;;
		content: "";
		vertical-align: middle;
		transition: all .3s ease-out;
		position: absolute;
		right: 12px;
	}
	.upper-nav .cta-btn:hover::after{
		transform: translateX(2px) rotate(45deg);
	}
	.upper-nav .cta-btn:hover{
		background: #fff;
		color: #9e4d6a;
		&::after{
			background: #9e4d6a;
		}
	}
	.upper-nav .cta-btn .btn-inner{
		display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
	}
	.upper-nav .nav-list .nav-link{
		color: #333;
	}
	.upper-nav .nav-link::after{
		
		margin-top: -3px;
		margin-left: 4px;
		width: 8px;
		height: 8px;
		transform: rotate(45deg);
		display: inline-block;
		border-top: 1px solid #333;
		border-right: 1px solid #333;
		content: none;
		vertical-align: middle;
		transition: all .3s ease-out;
	}
	.upper-nav .nav-link:hover::after{
		transform: translateX(2px) rotate(45deg);
	}
	/* .upper-nav .nav-link:hover::after{
		background: #bd9f6e;
		transform: scale(1.2);
	} */
	.cta-btn{
		padding: 0 24px;
		height: 48px;
		display: flex;
		align-items: center;
	}
	/* .hamburger{
		display: none;
	} */
	.sp-tel-btn{
		display: none;
	}
	.is-conpact .hamburger{
		width: 70px;
		height: 48px;
		display: flex;
		/* background: #293055; */
	}
	
}
.pc-drawer-menu{
		display: block;
		opacity: 0;
		pointer-events: none;
		height: calc(100vh - 80px);
		position: fixed;
		top: 80px;
		/* left: 0; */
		right: 0;
		z-index: 4;
		width: 506px;
		/* background: rgba(255,255,255,.8);
		-webkit-backdrop-filter: blur(20px) saturate(0.7);
		backdrop-filter: blur(20px) saturate(0.7); */
		/* background: url(../images/common/menu-bg.webp) no-repeat top center;
		background-size: cover; */
		overflow-y: auto;
		background: rgba(255, 255, 255, 0.4);
		backdrop-filter: blur(10px);
		-webkit-backdrop-filter: blur(10px); /* Safari対応 */
		/* transform: translate(0, -100%); */
		transition: opacity .6s ease-out;
		.nav-title{
			font-size: 1.8rem;
			padding-bottom: .6em;
			margin-bottom: 1.8em;
			border-bottom: 1px solid ;
		}
	}
	.is-menu-open .pc-drawer-menu{
		/* transform: translate(0, 0); */
		opacity: 1;
		pointer-events: auto;
	}
	.pc-drawer-menu{
        padding: 140px 60px 1% 60px;
	}
	.pc-drawer-menu .logo{
		/* margin: 0 auto 80px;
		max-width: 265px;
		height: 20px;
		background: url(../images/common/logo.svg) no-repeat center center;
		background-size: contain; */
		background: rgba(255, 255, 255, 0.8);
		height: 80px;
		width: calc(100% + 20vw);
		margin: 0 -10vw 100px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.pc-drawer-menu .logo a{
		max-width: 337px;
		height: 24px;
		background: url(../images/common/logo.svg) no-repeat center center;
		background-size: contain;
	}
	.drawer-nav .btn-space{
		margin: 0 40px 0 0;
		width: 30%;
	}
	.drawer-nav{
		justify-content: center;
	}
	/* .drawer-gnav{
		width: calc(70% - 40px);
		max-width: 750px;
	} */
	.pc-drawer-menu .gnav{
		margin-top: 0;
		gap: 0 16px;
		display: flex;
		flex-direction: column;
		gap: 32px;
	}
	.pc-drawer-menu .gnav.under-nav{
		/* flex-direction: row; */
		margin-top: 40px;
		display: none;
	}
	.pc-drawer-menu .gnav.under-nav .nav-list{
		width: 100%;
		border: 1px solid #1a2f58;
	}
	.pc-drawer-menu .gnav.under-nav .nav-list .nav-link{
		height: 48px;
		display: flex;
		justify-content: center;
		align-items: center;
		background: rgba(255, 255, 255, 0.5);
		gap: 12px;
	}
	.pc-drawer-menu .gnav.under-nav .nav-list .nav-link:hover{
		color: #1a2f58;
	}
	.pc-drawer-menu .gnav.under-nav .nav-list .nav-link:hover::after{
		transform: translateX(6px) rotate(45deg);
	}
	.pc-drawer-menu .gnav.under-nav .nav-list .nav-link::after{
		content: '';
		display: block;
		width: 8px;
		height: 8px;
		border-top: 1px solid #1a2f58;
		border-right: 1px solid #1a2f58;
		transform: rotate(45deg);
		transition: transform .4s ;
	}
	.pc-drawer-menu .gnav .nav-list{
		width:100%;
		flex: none;
		/* border-bottom: 1px solid rgba(0,0,0,.1); */
		border-right: none;
		float: left;
	}
	.drawer-gnav-inner{
		float: left;
		width: 100%;
	}
	/* .pc-drawer-menu .gnav .nav-list:first-child,
	.pc-drawer-menu .gnav .nav-list:nth-child(2){
		border-top: 1px solid rgba(0,0,0,.1);
		border-left: none;
	} */
	/* .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: 0;
		display: flex;
		flex-wrap: nowrap;
		gap: 16px;
		align-items: center;
		position: relative;
		font-size: 1.6rem;
		text-align: left;
		color: #333;
		transition: .4s;
	}
	.pc-drawer-menu .gnav .nav-link:hover{
		color: #A74E6E;
	}
	/* .pc-drawer-menu .gnav .nav-list.new{
		position: relative;
		&::before{
			content: 'NEW';
			padding-top: 2px;
            width: 80px;
            height: 26px;
			position: absolute;
			top: 50%;
			left: calc(180 / 1440 * 100% * -1);
			transform: translateY(-50%);
			color: #fff;
			background-color: #b83d77;
			border-radius: 50px;
			display: grid;
            place-items: center;
		}
	} */
	/* .pc-drawer-menu .gnav .nav-list.update{
		&::before{
			content: '更新';
			background-color: #a89549;
		}
	} */
	.pc-drawer-menu .gnav .nav-link .en-font{
		font-size: 2.6rem;
	}
	.pc-drawer-menu .gnav .nav-link .line{
		height: 1px;
		width: 100%;
		background: #000;
	}
	.pc-drawer-menu .gnav .nav-link.none{
		opacity: .9;
	}
	.pc-drawer-menu .gnav .nav-link.none::before{
		position: absolute;
		top: 50%;
		right: 16px;
		content: "COMING SOON";
		font-size: 1.1rem;
		color: #C63021;
		transform: translateY(-50%);
	}
	.pc-drawer-menu .gnav .nav-link::after{
		max-width: 100%;
		left: 0;
		transform: translateX(0);
	}
	.pc-drawer-menu .gnav .nav-link:hover::after{
		width: 100%;
	}
	.pc-drawer-menu .salon-name{
		margin-top: 40px;
	}
	.pc-drawer-menu .tel{
		/* justify-content:center; */
		justify-content: flex-start;
	}
	.pc-drawer-menu .salon-status{
		width: 100%;
	}
	.pc-drawer-menu .general-btn{
		margin: 0;
		font-size: 1.6rem;
		width: 100%;
		max-width: 100%;
		border-radius: 0;
		box-shadow: 1px 1px 8px rgb(0,0,0,.2);
		border-radius: 25px;
	}
	.pc-drawer-menu .cta-btns{
		margin-top: 40px;
		flex-wrap: wrap;
		align-items: center;
		/* display:flex; */
		display: none;
	}
	.pc-drawer-menu .general-btn.limited-btn{
		box-shadow: none;
	}
	.pc-drawer-menu .request-btn{
		color: #fff;
	}
	.pc-drawer-menu .general-btn + .general-btn{
		margin-top: 24px;
	}
	.gnav .nav-list{
		opacity: 1;
	}
@media screen and (min-width: 901px) and (max-width: 1218px){
	.gnav{
		margin-top: 36px;
	}
	.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: 1100px) {
	.pc-drawer-menu .gnav .nav-list.new{
		&::before{
            width: 64px;
			left: calc(180 / 1440 * 100% * -1);
		}
	}
}
@media screen and (min-width: 901px){
	.pc-drawer-menu {
		.wide-none{
			display: none;
		}
	}
}
@media screen and (max-width: 900px){
	.new-header{
		height: 48px;
		transition: all .3s ease-out;
	}
	.new-header .inner{
		padding: 0;
		height: 48px;
	}
	.new-header .logo{
    margin: 8px 16px 7px;
    /* width: 240px; */
    width: 250px;
    height: 33px;
    transition: opacity .4s ease-out;
	}
	body.is-down .new-header {
    transform: translateY(0);
	}
	/* .is-scroll .new-header{
		background: transparent;
	} */
	/* .is-scroll .new-header .logo{
		opacity: 0;
	} */
	.nav-container{
		display: none;
		width: 100vw;
		position: fixed;
		top: 48px;
		padding: 16px 16px 0;
		margin-top: 0;
		height: calc(100vh - 48px);
		overflow-y: auto;
		background: rgba(255, 255, 255, 0.4);
    backdrop-filter: blur(10px);
    -webkit-backdrop-filter: blur(10px);
		z-index: 99;
		transition: opacity .6s;
		opacity: 0;
		pointer-events: none;
	}
	.nav-container .tel{
		justify-content: center;
		align-items: baseline;
	}
	.new-header.has-bg{
		background: #fff;
	}
	.is-menu-open .new-header{
		/* background: #1a2f58; */
		transform: translateY(0);
		opacity: 1;
		/* background: rgba(255,255,255,.9);
		-webkit-backdrop-filter: blur(20px) saturate(0.7);
		backdrop-filter: blur(20px) saturate(0.7); */
	}
	.is-menu-open .nav-container{
		/* display: block; */
		display: none;
		opacity: 1;
		pointer-events: all;
	}
	.new-header .gnav{
		/* display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr; */
		display: block;
		/* border-top: 1px solid rgba(0,0,0,.1); */
	}
	.new-header .gnav .nav-list{
		position: relative;
		/* border-bottom: 1px solid rgba(0,0,0,.1); */
		/* float: left; */
		width: 100%;
	}
	.new-header .gnav .nav-list.new{
		&::before{
            content: 'NEW';
            padding: 2px;
            width: 36px;
            height: 16px;
            position: absolute;
            top: 50%;
            left: calc(7 / 390 * 100dvw * -1);
            transform: translateY(-50%);
            color: #fff;
            background-color: #b83d77;
            border-radius: 50px;
            display: grid;
            place-items: center;
            font-size: 11px;
		}
	}
	.new-header .gnav .nav-list.update{
		&::before{
			content: '更新';
			background-color: #a89549;
		}
	}
	/* .new-header .gnav .nav-list:nth-of-type(odd),
	.is-menu-open .upper-nav .nav-list:first-child{
		border-right: 1px solid rgba(0,0,0,.1);
	}
	.new-header .gnav .nav-list:last-child{
		border-right: 1px solid rgba(0,0,0,.1);
	} */
	.new-header .gnav .nav-list .none{
		opacity: .9;
	}
	.new-header .gnav .nav-link.none::before{
		position: absolute;
    bottom: 8px;
    left: 16px;
    content: "COMING SOON";
    font-size: 1rem;
    color: #C63021;
    white-space: nowrap;
    /* transform: translateX(-50%); */
	}
	.new-header .nav-link{
    	padding: 16px 35px;
		height: 52px;
		display: flex;
		justify-content: flex-start;
		align-items: center;
		font-size: 1rem;
		letter-spacing: .1em;
		font-feature-settings: 'palt';
		text-align: center;
		line-height: 1.2;
		gap: 12px;
	}
	.new-header .nav-link .en-font{
    flex-shrink: 0;
	}
	.new-header .nav-link .jp{
    flex-shrink: 0;
	}
	/* .new-header .nav-link:not(.none){
		background: url(../images/common/nav-arrow.svg) no-repeat 95% 50%;
		background-size: 5px;
	} */
	.nav-link .en-font{
		font-size: 1.5rem;
	}
	.nav-link .line{
		height: 1px;
		width: 100%;
		background: #000;
	}
	.upper-nav{
		padding: 0 ;
		/* display: -ms-grid;
		display: grid;
		-ms-grid-columns: 1fr 1fr;
		grid-template-columns: 1fr 1fr; */
		display: flex;
		gap: 16px;
		width: calc(100% - 16px);
		margin: 20px auto 32px;
	}
	.upper-nav .nav-list{
		width: calc(50% - 8px);
	}
	.upper-nav .nav-list .nav-link{
		height: 48px;
		padding: 12px;
		background: #fff;
		border: 1px solid #1a2f58;
		display: flex;
		justify-content: center;
		align-items: center;
		font-size: 1.4rem;
	}
	.upper-nav .nav-list .nav-link::after{
		content: '';
		padding: 4px;
		display: block;
		/* width: 8px;
		height: 8px; */
		border-top: 1px solid #1a2f58;
		border-right: 1px solid #1a2f58;
		transform: rotate(45deg);
	}
	.upper-nav .nav-list:nth-of-type(2){
	}
	.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;
	}
	.pc-drawer-menu {
    height: calc(100vh - 48px);
    top: 48px;
    /* left: 0; */
    width: 100%;
		padding: 40px 24px 1% 24px;
	}
	.pc-drawer-menu {
		.drawer-gnav-inner{
			text-align: center;
		}
		.tel{
			justify-content: center;
		}
		.cta-btns{
			margin-top: 16px;
			display: flex;
			.general-btn{
				opacity: 1;
				position: relative;
				border-radius: 48px;
				height: 52px;
				&::after{
					content: '';
						width: 8px;
						height: 8px;
						background: #fff;
						border: none;
						border-radius: 50%;
						position: absolute;
						right: 12px;
						left: auto;
						transform: none;
					}
			}
		}
		.gnav.under-nav{
			display: flex;
			gap: 12px;
			flex-direction: row;
			.nav-list{
				width: calc(50% - 6px);
				border: none;
				.nav-link{
					border: 1px solid ;
					border-radius: 24px;
					position: relative;
					&::after{
						width: 6px;
						height: 6px;
						background: #333;
						border: none;
						border-radius: 50%;
						position: absolute;
						right: 8px;
						left: auto;
						transform: none;
					}
				}
			}
		}
	}
}
.btn-label{
	font-size: 10px;
	font-feature-settings: 'palt';
	margin-top: 3px;
	color: #333;
}
@media screen and (max-width: 370px) {
	.upper-nav .nav-list .nav-link{
		font-size: 1.2rem;
	}
}
/*--------------------------------
footer
--------------------------------*/
.footer-cta-section{
	background: #c9daf0;
}
.footer-cta-text{
	margin-bottom: .8em;
	font-size: clamp(2.4rem, 1.8vw, 3.6rem);
	letter-spacing: .15em;
}
.footer-cta-text + .note{
	margin-top: 0;
	margin-bottom: 2em;
	letter-spacing: .15em;
}
.footer-cta-item{
	display: flex;
	flex-direction: column;
	align-items: center;
	width: 100%;
}
.footer-container{
	background: #E0DFDA;
	padding-top: 80px;
}
.index2 .footer-container{
	margin-left: 160px;
}
.footer-container .inner{
	margin: 0 auto;
	padding: 32px 0;
	width: calc(100% - 32px);
}
.footer-cta-flex{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 16px;
	width: 100%;
}
@media screen and (max-width: 767px){
	.footer-cta-flex{
		gap: 12px;
	}
	.footer-cta-text{
		margin-bottom: .8em;
	}
	.footer-cta-text + .note{
		margin-bottom: .8em;
	}
	.footer-container{
		padding-top: 40px;
	}
	.index2 .footer-container{
		margin-left: 0;
	}
	.footer-nav{
		margin-bottom: 20px;
	}
	.footer-container .inner{
		padding: 16px 0;
		width: calc(100% - 78px);
	}
	.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,.1); */
		display: block;
	}
	.footer-container .gnav .nav-list{
		border-bottom: 1px solid rgba(0,0,0,.1);
		float: left;
		width: 50%;
	}
	.footer-container .gnav .nav-list:nth-child(odd){
		border-right: 1px solid rgba(0,0,0,.1);
	}
	.footer-container .gnav.sp-footer-item .nav-list:nth-child(2){
		border-right: 1px solid rgba(0,0,0,.1);
	}
	.footer-container .gnav .nav-link{
		padding: 0 16px;
		height: 60px;
		display: -ms-grid;
		display: grid;
		position: relative;
		align-items: center;
		justify-content: flex-start;
		letter-spacing: .1em;
		font-feature-settings: 'palt';
		text-align: center;
	}
	.footer-container .gnav .nav-link.none{
		position: relative;
		opacity: .9;
	}
	
	.footer-container .gnav .nav-link.none::before{
		position: absolute;
		bottom: 6px;
		left: 16px;
		content: "COMING SOON";
		font-size: 1rem;
		color: #C63021;
		white-space: nowrap;
	}
	
	.footer-gnav{
		width: 100%;
		border-top: 1px solid rgba(0,0,0,.1);
		/* border-bottom: 1px solid rgba(0,0,0,.1); */
	}
	.sp-fixed-btn {
    position: fixed;
    right: 0;
    width: 100%;
		bottom: 0;
    z-index: 5;
    transition: transform .3s ease-out;
	}
	.home .sp-fixed-btn {
		transform: translateY(48px);
	}
	.is-down .sp-fixed-btn {
		transform: translateY(0);
	}
	body.has-nav .sp-fixed-btn {
    transform: translateY(0);
	}
	.sp-fixed-btn .flex-wrapper{
		justify-content: flex-end;
	}
	.is-scroll .sp-fixed-btn{
		/* transform: translateY(50px); */
	}
	.sp-fixed-btn .btn-list{
		flex: 1;
	}
	.sp-fixed-btn .btn-list .cta-btn.limited-btn{
		line-height: 1.3;
		font-size: 1rem;
		display: flex;
		align-items: flex-end;
		justify-content: center;
	}
	.sp-fixed-btn .cta-btn{
		padding: 4px;
		height: 48px;
		display: block;
		text-align: center;
		font-size: 1.4rem;
		display: flex;
		align-items: center;
		justify-content: center;
	}
	.sp-fixed-btn .cta-btn .btn-inner{
		display: flex;
		justify-content: center;
		align-items: center;
		width: 100%;
		height: 100%;
	}
	.sp-fixed-btn .btn-list .limited-btn span::before{
		margin: 0 auto;
		left: 0;
		right: 0;
		top: -19px;
		margin-top: 0;
		width: 13px;
		height: 20px;
	}
}
.footer-container .gnav .nav-link:not(.none){
	background: url(../images/common/nav-arrow.svg) no-repeat 95% 50%;
	background-size: 5px;
}
.footer-container .gnav .nav-link::after{
	left: 0;
	transform: translate(0,0);
	max-width:100%;
	transition: width .2s ease-out;
}
.footer-container .gnav .nav-link:hover::after{
	width: 100%;
}
@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;
		display: none;
	}
	.sp-fixed-btn{
		margin-right: 40px;
		width: 30%;
	}
	.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{
		height: 124px;
		display: flex;
		align-items: center;
		justify-content: center;
		text-align: center;
		font-size: 2rem;
		box-shadow: 1px 1px 8px rgba(0,0,0,.2);
	}
	.sp-fixed-btn .cta-btn.limited-btn{
		box-shadow: none;
	}
	.sp-fixed-btn .cta-btn:hover{
		box-shadow: 0 0 2px rgba(0,0,0,.6);
	}
	.footer-container .gnav{
		margin: 0 -16px;
		display: block;
	}
	.footer-container .gnav .nav-list{
		margin: 0 16px;
		width: calc(50% - 32px);
		float: left;
		border: none;
		border-bottom: 1px solid #ccc;
	}
	.footer-container .gnav .nav-link{
		padding: 19px 12px;
		display: block;
		position: relative;
		white-space: nowrap;
		text-align: left;
		text-overflow: ellipsis;
		overflow: hidden;
	}
	.footer-container .gnav .nav-link.none{
		opacity: .9;
	}
	.footer-container .gnav .nav-link.none::before{
		position: absolute;
		top: 50%;
		right: 12px;
		content: "COMING SOON";
		font-size: 1.1rem;
		color: #C63021;
		transform: translateY(-50%);
	}
}
@media screen and (min-width: 768px) and (max-width: 1000px){
	.sp-fixed-btn .cta-btn {
		font-size: 1.4rem;
	}
}
.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;
}
.salon-name{
	margin-bottom: .4em;
	font-size: 1.2rem;
	line-height: 1.4;
}
.salon-number{
	margin: 0 0 .6em;
	font-size: 1.2rem;
	line-height: 1.6;
}
.tel{
	display: flex;
	gap: 16px 8px;
	align-items: baseline;
	flex-wrap: wrap;
	justify-content: flex-start;
}
.tel + .salon-status{
	margin-top: 12px;
}
.tel a{
	font-size: 5rem;
	color: #000;
	white-space: nowrap;
}
.tel .free-dial{
	width: 56px;
}
.salon-status{
	font-size: 1.2rem;
	line-height: 1.4;
	width: 100%;
}
@media screen and (max-width: 767px){
	.salon-name{
		width: 100%;
		font-size: 1.4rem;
		font-feature-settings: "palt";
	}
	.tel{
		gap: 8px;
		justify-content: center;
	}
	.tel a{
		font-size: 3.8rem;
	}
	.free-dial{
		width: 40px;
	}
	.tel .free-dial{
		width: 48px;
	}
	.tel + .salon-status{
		font-size: 1.4rem;
	}
	.salon-number{
	font-size: 1.4rem;
	}
	.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{
	max-width: 1100px;
	width: calc(100% - 48px);
	margin: 0 auto;
	padding: 80px 0 60px;
	justify-content: space-between;
	align-items: flex-end;
	gap: 16px;
}
.foot-logo{
	justify-content: flex-start;
	flex-direction: column;
	gap: 32px;
	font-size: 1rem;
	line-height: 1.5;
}
.foot-logo li{
	display: flex;
	gap: 0 16px;
}

.foot-logo li span{
	width: 5em;
	padding-top: 1.4em;
	font-size: 1.2rem;
}
.foot-logo li a{
	margin-top: 8px;
	display: block;
}
.copyright{
	padding: 2em 0;
	font-style: normal;
	font-size: 1rem;
	background: #fff;
}

.summary-wrap{
	padding: 40px 16px;
	background: #fffbf5;
}
.summary-wrap .lead{
	margin-top: 0;
	color: #a28858;
}
.summary-wrap .caption{
	line-height: 1.7;
}
.summary-wrap + .footer-container{
	padding-top: 0;
}
@media screen and (max-width: 767px){
	.summary-wrap{
		padding: 32px 16px;
		border-bottom: none;
	}
	.foot-logo {
    	justify-content: center;
		flex-direction: column;
		align-items: center;
		gap: 24px;
	}
	.foot-logo li{
		flex-direction: column;
		align-items: center;
	}
	.foot-logo li span{
		padding-top: 0;
		text-align: center;
	}
	.address-wrap{
		text-align: center;
		justify-content: center;
		padding-top: 40px;
		padding-bottom: 48px;
		gap: 32px;
	}
}

.gd-bnr{
	display: block;
	max-width: 300px;
	margin: 0 auto;
}
.gd-bnr .fit-img{
	box-shadow: 0 0 8px rgba(153, 153, 153, 0.8);
}
@media screen and (max-width: 767px) {
	.gd-bnr{
		max-width: 250px;
	}
}

/*--------------------------------
teaser
--------------------------------*/
.teaser-lead{
	margin-bottom: .6em;
	font-size: 6rem;
	white-space: nowrap;
}
.teaser-title{
	margin-bottom: .6em;
	font-size: 7rem;
	font-weight: 700;
	white-space: nowrap;
	letter-spacing: .05em;
}
.teaser-note{
	font-size: 4rem;
	font-weight: 500;
	color: #a00;
	white-space: nowrap;
	letter-spacing: .05em;
}
.teaser .general-section .inner{
	width: calc(100vw - 32px);
}
@media screen and (max-width: 930px){
	.teaser-lead{
		font-size: 7vw;
	}
	.teaser-title{
		font-size: 7vw;
	}
	.teaser-note{
		font-size: 6vw;
	}
}

/*--------------------------------
home
--------------------------------*/


/*--------------------------------
project
--------------------------------*/

/*--------------------------------
access location
--------------------------------*/


/*--------------------------------
security
--------------------------------*/

/*--------------------------------plan
--------------------------------*/


/*--------------------------------
map
--------------------------------*/
.map .viewport{
	z-index: 2;
}
.map .in-main{
	overflow: hidden;
}
.map .in-main--copy{
	padding-top: 40px;
	overflow: hidden;
}
.map-wrapper{
	margin: 0 auto 60px;
	max-width: 1000px;
}
.map-inner{
	position: relative;
	z-index: 2;
}
.general-section .inner.map-inner-min{
	max-width: 760px;
	.map-wrapper{
		height: fit-content;
		border: none;
		img{
			width: 100%;
			height: auto;
		}
	}
}
.map-section.general-section .inner{
	padding-top: 0;
}
.map-bg{
	background: url(../images/map/map-bg.webp) no-repeat top center;
	background-size: cover;
	position: relative;
	overflow: hidden;
}
.map-mv-top{
	position: absolute;
    bottom: -25.9vw;
    left: 0;
    width: 100%;
    z-index: 1;
    mix-blend-mode: screen;
    pointer-events: none;
}
.map-line-top{
	position: absolute;
    top: -16vw;
    left: 0;
    width: 100%;
    z-index: 1;
    mix-blend-mode: multiply;
    pointer-events: none;
}
.map-line-bottom {
    position: absolute;
    bottom: 0;
    left: 0;
    width: 100%;
    z-index: 1;
    mix-blend-mode: hard-light;
    pointer-events: none;
}
.map-btn {
	margin: 32px auto 0;
	width: 300px;
	height: 40px;
	font-size: 1.6rem;
	display: flex;
	align-items: center;
	justify-content: center;
	background: #747D8C;
	position: relative;
	gap: 12px;
}
.gm-btn svg{
	width: 24px;
}
.gm-btn svg .cls-1 {
	fill: #fff;
}

.gm-btn svg .cls-1, .gm-btn svg .cls-2 {
	stroke-width: 0px;
}

.gm-btn svg .cls-2 {
	fill: #6e2135;
}

.gm-btn{
	color: #fff;
	border: 1px solid #6e2135;
	background: #6e2135;
	max-width: 300px;
	gap: 16px;
}
.map-icon {
	display: inline-block;
	width: 20px;
}
.map-btn::after {
	content: '';
	display: block;
	width: 8px;
	height: 9.5px;
	position: absolute;
	right: 12px;
	top: 50%;
	margin-top: -5px;
}
@media screen and (max-width: 767px){
	.general-section .inner.map-inner{
		padding-top: 48px;
	}
	.map-wrapper {
		margin-bottom: 32px;
	}
	.gm-btn{
	max-width: 260px;
	}
}



.limited-mv{
	padding-top: 48px;
	background: linear-gradient( 135deg, rgba(121, 98, 169, 0.8), rgba(25, 74, 158, 0.8));
	overflow: hidden;
}
.limited-mv .primary-heading{
	margin-bottom: 0;
}
.plan-tab-wrap{
	border-bottom: 1px solid #1a2f58;
	margin-bottom: 60px;
	margin-top: 32px;
}
.plan-tab-wrap .tab-btn-wrap{
	margin: 0 auto;
	max-width: 830px;
	width: calc(100% - 48px);
	display: grid;
	grid-template-columns: 1fr 1fr;
	gap: 32px;
}
.plan-tab-wrap .tab-btn-wrap .js-tab a{
	height: 80px;
	display: flex;
	justify-content: center;
	align-items: center;
	border-top: 1px solid #1a2f58;
	border-left: 1px solid #1a2f58;
	border-right: 1px solid #1a2f58;
	border-top-left-radius: 8px;
	border-top-right-radius: 8px;
	font-size: 1.8rem;
	padding: 0 32px;
	background: #fff;
	color: #1a2f58;
}
.plan-tab-wrap .tab-btn-wrap .js-tab a.is-active{
	background: #1a2f58;
	color: #fff;
}
.plan-tab-wrap .tab-btn-wrap .js-tab a.is-active .line{
	background: #fff;
}
.plan-tab-wrap .tab-btn-wrap .js-tab a .en{
	font-size: 150%;
	display: flex;
	align-items: baseline;
}
.plan-tab-wrap .tab-btn-wrap .js-tab .line{
		flex-grow: 1;
		margin: 0 8px;
			width: 50px;
    height: 1px;
		background: #1a2f58;
}

@media screen and (max-width: 767px){
	.plan-tab-wrap .tab-btn-wrap{
	gap: 16px;
	}
	.general-section.limited-mv .inner{
		padding: 48px 0;
	}
	.plan-tab-wrap .tab-btn-wrap .js-tab a{
	font-size: 1.2rem;
	padding: 0 16px;
	flex-direction: column;
	}
	.plan-tab-wrap .tab-btn-wrap .js-tab .line{
		flex-grow: unset;
		margin: 12px auto 8px;
	}
	.plan-tab-wrap .tab-btn-wrap .js-tab a .en {
    font-size: 130%;
	}
	.plan-tab-wrap {
		margin-top: 32px;
    margin-bottom: 40px;
	}
}
/*--------------------------------
state
--------------------------------*/

.disabled {
	opacity: 0.1;
	cursor: default;
	pointer-events: none;
}
.none{
	opacity: 0.3;
	cursor: default;
	pointer-events: none;
}
.is-none{
	display: none;
}
.coming-soon{
	box-shadow: none;
	pointer-events: none;
}
.is-fv {
	opacity: 0;
	animation-fill-mode: both;
	visibility: hidden;
}
.is-light{
	color: #fff;
}
.is-primary-key{
	color: var(--primary);
}
.is-secondary-key{
	color: var(--secondary);
}
.is-tertiary-key{
	color: var(--tertiary);
}
.is-accent{
	color: #A74E6E;
}
.is-shadow{
	text-shadow: 0 0 1px rgba(0,0,0,.8), 0 0 4px rgba(0,0,0,.4);
}
.is-shadow-blue{
	text-shadow: 0 0 1px rgba(19, 53, 112, 0.8), 0 0 4px rgba(19, 53, 112, 0.8);
}
.is-cloud{
	text-shadow:
		1px 1px 3px #fff,
		-1px 1px 3px #fff,
		1px -1px 3px #fff,
		-1px -1px 3px #fff;
}
.on-shadow{
	filter: drop-shadow(0px 0px 4px rgba(0,0,0,.2));
}
.has-border {
	box-shadow: 0 0 2px 0 rgb(0 0 0 / 40%);
}
.line-wide{
	line-height: 2.4;
}
.is-alert{
	color: #c90000;
}
.unscrollable{
	overflow-y: hidden;
}
.mt-80{
	margin-top: 80px;
}
@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;
	}
}

