@charset "utf-8";

html:has(body#top) {
/*common.css　の上書き修正 */
body#top .site_h1 {
	bottom:35px;
}
@media only screen and (max-width:430px) {
	.gateFv {
		margin-top:46px;
	}
}
.gate .copyright {
	padding-bottom:5px;
}




.gateContents {
	/*background:#e7f5ff;*/
	width:100%;
	max-width:430px;
	padding-bottom:3em;
	margin-left:auto;
	margin-right:auto;
	color:#000;
	letter-spacing:0.06em;
}
@media only screen and (max-width: 430px) {
	.gateContents {
		font-size:4vw;
		padding-top:0;
	}
}

/********************************************************************
 *　// FV部分
********************************************************************/

.gateFv {
	aspect-ratio:4/5;
	position:relative;
	/*background:url(../img/top_fv_bg_sp.webp) center center no-repeat;
	background-size:cover;*/
	width:100%;
	max-width:430px;
	overflow:hidden;
	z-index:1;

	clip-path: inset(0);
}

/*==========背景動画（コンセプト） ==========*/
.gateFv_bg {

}
.gateFv_bg .video {
	aspect-ratio:1920/1080;
	position: absolute;
	top:50%;
	left:50%;
	transform:translate(-50%,-50%);

	width:auto;
	height:100%;
	z-index: -1;

	object-fit: cover;
	object-position: 50% 50%;
}




.gateFv_contents {
	position:relative;
	width:100%;
	height:100%;
	margin:auto;
	color:#fff;
}
@media only screen and (max-width: 430px) {
	.gateFv {
		object-position: 50% 50%;
		/*aspect-ratio:750/900;*/

	}
}


/* キャッチ */
.gateFv_catch {
	position:absolute;
	top:4%;
	left:4.166%;
	width:30%;
}
.gateFv_catch span {
	font-size:6em;
	color:#fff;
}



/*女性*/
.gateFv_lady {
	position:absolute;
	top:4%;
	right:5%;
	width:30%;
}



/* 男性 */
.gateFv_contents .gateFv_man {
	position:absolute;
	top:51%;
	left:0;
	right:0;
	transform:translateY(-51%);
	width:70%;
	margin:auto;
	z-index:2;
}


/* ボディスパ×ヘッドスパ融合*/
.gateFv_object1 {
	position:absolute;
	left:3%;
	bottom:3%;
	width:45.6%;
}


/* 99.3％がリピートしたい*/
.gateFv_object2 {
	position:absolute;
	right:4%;
	bottom:3%;
	width:40%;
}



/* 協会ロゴと特許アイコン */
.gateFv_association {
	position:absolute;
	left:4%;
	bottom:3%;
	width:26.53%;
}
.gateFv_patent {
	position:absolute;
	right:4%;
	bottom:3%;
	width:15.2%;
}



/* 浮遊ワード */
.gateFv_contents .word {
	font-size:0.6em;
	position:absolute;
}
@media only screen and (max-width: 750px) {
	.gateFv_contents .word {
		font-size:1.9vw;
	}
}
.gateFv_contents .word span {
	line-height:1.6;
	writing-mode:vertical-rl;
	letter-spacing:0.24em;
}

.gateFv_word1 {/*脳を癒す*/
	top:-21%;
	left:-10%;
}
.gateFv_word2 {/*脳内浄化*/
	top:16%;
	left:-17%;
}
.gateFv_word3 {/*心深層*/
	top:-25%;
	left:45%;
}
.gateFv_word4 {/*熟睡*/
	top:-16%;
	left:58%;
}
.gateFv_word5 {/*体内浄化*/
	top:-14%;
	left:70%;
}
.gateFv_word6 {/*自律神経*/
	top:-26%;
	left:95%;
}
.gateFv_word7 {/*ストレス解放*/
	top:-12%;
	left:104%;
}
.gateFv_word8 {/*絶頂睡眠*/
	top:80%;
	left:2%;
}
.gateFv_word9 {/*快楽の向こう側*/
	top:90%;
	left:14%;
}
.gateFv_word10 {/*贅沢な眠りに落ちていく*/
	top:102%;
	left:46%;
}
.gateFv_word11 {/*いまここにある最高*/
	top:76%;
	left:100%;
}
.gateFv_word12 {/*非日常空間*/
	top:120%;
	left:66%;
}






/* 浮遊アニメーション */
.gateFv_contents .gateFv_man img {
	animation: 5.5s float .5s infinite;
}
.gateFv_word1,
.gateFv_word4,
.gateFv_word7,
.gateFv_word10 {
	animation: 5.1s float .1s infinite;
}
.gateFv_word2,
.gateFv_word5,
.gateFv_word8,
.gateFv_word11 {
	animation: 5.7s float .7s infinite;
}
.gateFv_word3,
.gateFv_word6,
.gateFv_word9,
.gateFv_word12 {
	animation: 5.4s float .4s infinite;
}

@keyframes float {
	0%, 100% {
		transform: translateY(0);
	}
	50% {
		transform: translateY(-10%);
	}
}



/********************************************************************
 *　//年齢認証部分
********************************************************************/

.ageCheckSection {
	background:#fff;
}
.gateContents .ageCheckSection .ageCheck_logo {
	width:30%;
	margin:1.5em auto;
}
.ageCheck_branch_name {/* 店舗名（各店年齢認証のみ）*/
	font-size:0.8em;
	margin-top:-1em;
	margin-bottom: 2em;
	text-align:center;
}

.gateContents .ageCheckSection .ageCheck_btn {
	display:flex;
	justify-content:center;
	width:100%;
	margin:0 auto 1em;
}
.gateContents .ageCheckSection .ageCheck_btn > div {
	height:3em;
	margin:0 0.2em;
}
@media only screen and (max-width:560px) {
	.gateContents .ageCheckSection .ageCheck_btn > div {
		/*font-size:2.7vw;*/
	}
}
.gateContents .ageCheckSection .ageCheck_btn .area_women {
	margin-right:1.5em;
}
.gateContents .ageCheckSection .ageCheck_btn > div img {
	width:auto;
	height:100%;
}

.gateContents .ageCheckSection .ageCheck_text {
	width:80%;
	margin:0 auto 0.5em;
}





/********************************************************************
 *　// Enterボタンの下の日本地図
********************************************************************/
.gussuri_map_section {
	position:relative;
	aspect-ratio:800/710;
    background:url(../../img/gussuri/gate_map.webp) center top no-repeat;
	background-size:105% auto;
	margin-top:2em;
	margin-bottom:1.8em;
}
@media only screen and (max-width: 430px) {
	.gussuri_map_section {
		font-size:4.2vw;
	}
}

.gussuri_map_shop_wrap {
}
.gussuri_map_shop {
	position:absolute;
	box-sizing:border-box;
	width:25%;
	padding:0.5em 0.3em 0.25em;
	background: linear-gradient(126deg, #f3f5f7 0%,#ffffff 31%);
	border:solid 1px #e5e5e5;
	border-radius:0.3em;
	box-shadow:inset 0.12em 0.12em 0 #fff, inset -0.12em -0.12em 0 rgba(212,209,203,0.27);
	text-align:center;
}
.gussuri_map_shop_link {/* 店名テキスト */
	font-size:0.56em;
	padding-bottom:0.6em;
	letter-spacing:0.2em;
}
.gussuri_map_shop_btn {/* 求人と予約ボタン */
	display:flex;
	justify-content:space-between;
}
.gussuri_map_shop_btn a {/* 求人と予約ボタン */
	width:48%;
}

.gussuri_map_shop.nagoya {/*名古屋位置*/
	top:27%;
	left:28%;
}
.gussuri_map_shop.ikebukuro {/*池袋位置*/
	top:40%;
	right:0;
}
.gussuri_map_shop.ueno {/*上野位置*/
	top:60.5%;
	right:0;
}
.gussuri_map_shop.gotanda {/*五反田位置*/
	top:81%;
	right:0;
}
.gussuri_map_shop.yokohama {/*横浜位置*/
	top:81%;
	left:49%;
}
.gussuri_map_shop.osaka {/*大阪位置*/
	top:81%;
	left:23%;
}
.gussuri_map_shop.fukuoka {/*福岡位置*/
	top:43%;
	left:-1%;
}



/*==========Enterボタン押したときのモーダル ==========*/
.remodal_gate_shopList {
	max-width:430px;
}
.remodal_gate_shopList_logo {
	width:30%;
	margin:0 auto;
}
.remodal_gate_shopList.recruit .remodal_gate_shopList_logo {
	width:40%;
}
.remodal_gate_shopList .gate_map_btn_wrap {
	display:flex;
	flex-wrap:wrap;
	justify-content:space-between;
	padding:1em 4% 0;
}
.remodal_gate_shopList .gate_map_btn {
	line-height:1.3;
	position:relative;
	width:48%;
	height:4.6em;
	height:3.8em;
	margin-bottom:1em;
	letter-spacing:0.2em;
}
.remodal_gate_shopList.recruit .gate_map_btn {
	color:#e80078;
}
.remodal_gate_shopList.recruit .gate_map_btn span::after {/* 三角矢印【求人】 */
	border-left-color: #e80078;
}



/* =============CM動画・YouTube更新枠とSNSバナー============= */
.gussuri_cm {
	padding-top:3em;
}

.gateSns_title {
	border-bottom:solid 1px #000;
	padding-top:3em;
	padding-bottom:1em;
	margin-left:6%;
	margin-right:6%;
	text-align:center;
}
.gateSns_title span {
	font-size:0.6em;
	letter-spacing:0.6em;
	font-family:"kozuka-gothic-pr6n", sans-serif;
}

.snsYoutube {
	box-sizing: border-box;
	padding: 0 6%;
}
.snsYoutube_title {
	width:20%;
	padding:1.5em 0;
	margin-left:auto;
	margin-right:auto;
}
.snsYoutubeList_wrap {
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
	margin-bottom:0.5em;
}
.snsYoutubeList {
	padding-bottom:0.8em;
	white-space:nowrap;
}
.snsYoutubeList li {
	display:inline-block;
	box-sizing:border-box;
	width: 350px;
	padding:0 5px 0 0;
	vertical-align:top;
	white-space:normal;
}
@media only screen and (max-width:430px) {
	.snsYoutubeList li {
		width:80vw;
	}
}
.snsYoutubeList li iframe {
	aspect-ratio:560/315;
	width:100%;
	height:auto;
}

.snsCard {
	display:flex;
	justify-content:space-evenly;
	justify-content:center;
	/*border-bottom:solid 1px #000;*/
	padding-bottom:1.5em;
	margin: 0 6%;
}
.snsCard li {
	width:30%;
	margin: 0 3%;
}



/* =============コラム更新枠============= */
.blogUpdateContents {
	box-sizing: border-box;
	padding: 0 6%;
	margin-top: 3em;
}
.blogUpdateContents .blogTitle {
	display: flex;
	justify-content: space-between;
	align-items: center;
	border-bottom: 1px solid #444444;
	padding-bottom: 1em;
	margin-bottom: 1em;
	font-family:"kozuka-gothic-pr6n", sans-serif;
}
.blogUpdateContents .blogTitle h2 {
	font-size:0.6em;
	letter-spacing:0.6em;
	font-family:"kozuka-gothic-pr6n", sans-serif;
}
.blogUpdateContents .blogTitle p {
	font-size:0.7em;
	border-radius:0.2em;
	overflow: hidden;
}
.blogUpdateContents .blogTitle p a {
	display: block;
	background-color:#282d89;
	font-size: 0.6em;
	line-height: 2;
	padding: 0 1em;
	text-align: center;
	color: #ffffff;
}

.blogUpdateContents .updateList {
	overflow-x:auto;
	-webkit-overflow-scrolling: touch;
}
.blogUpdateContents .updateList ul {
	padding-bottom:1em;
	white-space:nowrap;
}
.blogUpdateContents .updateList ul li {
	display:inline-block;
	box-sizing:border-box;
	width: 170px;
	padding:0 5px 0 0;
	margin-bottom: 0.5em;
	vertical-align:top;
	white-space:normal;
}
@media only screen and (max-width:430px) {
	.blogUpdateContents .updateList ul li {
		width:40vw;
	}
}
.blogUpdateContents .updateList ul li a {
	position: relative;
	display: block;
	color:#fff;
}
.blogUpdateContents .updateList ul li dl {
	position:relative;
	font-size: 0.6em;
	white-space:normal;
}
.blogUpdateContents .updateList ul li dl dt {
	/*margin-bottom:1em;*/
}
.blogUpdateContents .updateList ul li dl dt span {
	position: relative;
	display:inline-block;
	aspect-ratio:1/1;
	width: 100%;
	height: auto;
	overflow:hidden;
}
.blogUpdateContents .updateList ul li dl dt img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: auto;
}
.blogUpdateContents ul li dl dd {
	position:absolute;
	left:0;
	right:0;
	bottom:0.5em;
	box-sizing:border-box;
	line-height:1.6 !important;
	background: linear-gradient(to right,  #222a85 0%,#8f59cb 100%) !important;
	border-radius:1em;
	width:96%;
	padding:0.8em 0.4em 0.5em;
	margin:auto;
}
.blogUpdateContents ul li dl dd h3 { /* 記事タイトル */
	line-height: 1.2;
	margin-bottom: 0.3em;
}
@media only screen and (max-width:430px) {
	.blogUpdateContents ul li dl dd h3 {
		font-size:2.3vw;
	}
}
.blogUpdateContents ul li dl dd p.info { /* 記事日付 */
	display: flex;
	justify-content: flex-end;
	align-items: center;
	font-size: 0.7em;
}



/* =============ぐっすり山田紹介テキスト============= */
.gussuriIntroduction {
	padding: 0 6%;
	padding-top: 3em;

}
.gussuriIntroduction_title {
	margin-bottom:1.5em;
}
.gussuriIntroduction_title {
	border-bottom:solid 1px #000;
	padding-top:3em;
	padding-bottom:1em;
	text-align:center;
}
.gussuriIntroduction_title span {
	font-size:0.6em;
	letter-spacing:0.6em;
	font-family:"kozuka-gothic-pr6n", sans-serif;
}
.gussuriIntroduction_text {
	font-size:0.6em;
	line-height:1.6;
	font-family: "Noto Sans JP", sans-serif;
	color:#333;
	letter-spacing:0.1em;
}
}












