@charset "utf-8";

/*============================
MV
============================*/
#mv {
	background-image: url(../img/spa/mv.jpg);
}

/*============================
spa
============================*/
#spa {
	padding-bottom: 1.50rem;
}

@media screen and (max-width: 640px) {
	#spa {
		padding-bottom: 0;
	}
}

/* リード */
#spa .lead_wrap {
	max-width: 10.80rem;
	margin: 0.50rem auto 0.90rem;
}
@media screen and (max-width: 640px) {
	#spa .lead_wrap {
		padding: 0 0.20rem;
		box-sizing: border-box;
		margin: 0.50rem auto 0.15rem;
	}
}


#spa .lead_wrap .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0.45rem;
}

#spa .lead_wrap .list .item {
	width: 32.5%;
	position: relative;
}

#spa .lead_wrap .list .item:nth-child(2) {
	top: -0.50rem;
}

#spa .lead_wrap .list .item:nth-child(3) {
	top: -0.30rem;
}

#spa .lead_wrap .text_wrap .lead {
	font-size: 0.30rem;
	font-weight: 600;
	line-height: 2;
	letter-spacing: 0.05em;
	color: #B4272D;
	text-align: center;
	margin-bottom: 0.25rem;
}
@media screen and (max-width: 640px) {
	#spa .lead_wrap .text_wrap .lead {
		font-size: 0.20rem;
		letter-spacing: 0;
		line-height: 1.875;
	}
}


#spa .lead_wrap .text_wrap .text {
	font-size: 0.16rem;
	line-height: 2;
	letter-spacing: 0.05em;
	text-align: center;
}
@media screen and (max-width: 640px) {
	#spa .lead_wrap .text_wrap .text {
		font-size: 0.15rem;
		text-align: left;
	}
}

#spa .cont_wrap {
	max-width: 10.80rem;
	margin: auto;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap {
		width: 100%;
	}
}


#spa .spa_cont {
	position: relative;
}

#spa .spa_cont::after {
	content: '';
	width: calc(100% - (100% - 8.00rem) / 2);
	height: 7.50rem;
	background: rgba(232, 224, 210, 0.6);
	position: absolute;
	bottom: 0.70rem;
	right: 0;
	z-index: -1;
}
@media screen and (max-width: 640px) {
	#spa .spa_cont::after {
		
	}
}


#spa .cont_wrap .cont_box {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
	margin-bottom: 0.80rem;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box {
		box-sizing: border-box;
		padding: 0 0.20rem;
		margin-bottom: 0;
	}
}


#spa .cont_wrap .cont_box:last-child {
	flex-flow: row-reverse;
	margin-bottom: 0;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box:last-child {
		flex-flow: column;
	}
}


#spa .cont_wrap .cont_box .text_wrap {
	width: calc(100% - 6.60rem);
	box-sizing: border-box;
	padding-top: 0.30rem;
	padding-left: 0.40rem;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box .text_wrap {
		width: 100%;
		padding-left: 0;
	}
}


#spa .cont_wrap .cont_box  .text {
	margin-top: 0.20rem;
	font-size: 0.16rem;
	line-height: 2;
	letter-spacing: 0.05em;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box .text {
		font-size: 0.15rem;
		margin-bottom: 0.20rem;
		margin-top: -0.5rem;
	}
}


#spa .cont_wrap .cont_box .ph_wrap {
	width: 6.60rem;
	height: 4.60rem;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box .ph_wrap {
		width: 100%;
		height: auto;
	}
}


#spa .cont_wrap .cont_box .text_wrap {
	width: calc(100% - 6.60rem);
	box-sizing: border-box;
	padding-right: 0.60rem;
}
@media screen and (max-width: 640px) {
	#spa .cont_wrap .cont_box .text_wrap {
		width: 100%;
		padding-right: 0;
		margin-bottom: 0.10rem;
	}
}


/* スライド */
.spa_gallery {
	position: relative;
}

@media screen and (max-width: 640px) {
	.spa_gallery {
		padding-bottom: 0.30rem;
	}
}

.spa_gallery .slides {
	position: relative;
	z-index: 1;
}

.spa_gallery .slide {
	width: 100%;
	max-width: 6.60rem;
	height: 4.60rem;
	overflow: hidden;
	margin: 0 0.20rem;
}

@media screen and (max-width: 640px) {
	.spa_gallery .slide {
		max-width: 100%;
		height: 56vw;
		margin: 0 0.05rem;
	}
}

.spa_gallery .slide img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* スライドボタン */
.spa_gallery .slides .slick-arrow {
	width: 0.50rem;
	height: 0.50rem;
	background-position: center;
	background-repeat: no-repeat;
	background-size: contain;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	z-index: 2;
	cursor: pointer;
}

@media screen and (max-width: 640px) {
	.spa_gallery .slides .slick-arrow {
		width: 0.40rem;
		height: 0.40rem;
	}
}

.spa_gallery .slides .slick-arrow.prev_btn {
	background-image: url(../img/common/spa_gallery_btn_prev.svg);
	left: calc(50% - 4.50rem);
}

@media screen and (max-width: 640px) {
	.spa_gallery .slides .slick-arrow.prev_btn {
		left: 0.17rem;
	}
}

.spa_gallery .slides .slick-arrow.next_btn {
	background-image: url(../img/common/spa_gallery_btn_next.svg);
	right: calc(50% - 4.50rem);
}

@media screen and (max-width: 640px) {
	.spa_gallery .slides .slick-arrow.next_btn {
		right: 0.17rem;
	}
}

/* スライドドット */
.spa_gallery .slides .slick-dots {
	bottom: 0.20rem;
}

@media screen and (max-width: 640px) {
	.spa_gallery .slides .slick-dots {
		bottom: 0.10rem;
	}
	.spa_gallery .slides .slick-dots li {
		margin: 0 0.02rem;
	}
}

.spa_gallery .slides .slick-dots li button::before {
	font-size: 0.08rem;
}


.spa_gallery .slick-dots li {
	width: 0.25rem;
	height: 0.03rem;
}

.spa_gallery .slick-dots li button:before {
	width: 0.25rem;
	height: 0.03rem;
	background: #fff;
	content: '';
}


/* ボトムコンテンツ */
#spa .bottom_cont {
	margin-top: 0.70rem;
}
@media screen and (max-width: 640px) {
	#spa .bottom_cont {
		box-sizing: border-box;
		padding: 0 0.20rem;
	}
}


#spa .bottom_cont .list {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

#spa .bottom_cont .list .item {
	display: flex;
	flex-wrap: wrap;
	width: 48%;
}
@media screen and (max-width: 640px) {
	#spa .bottom_cont .list .item {
		width: 100%;
		margin-bottom: 0.50rem;
	}
}

#spa .bottom_cont .list .item .ph_wrap {
	width: 2.45rem;
}
@media screen and (max-width: 640px) {
	#spa .bottom_cont .list .item .ph_wrap {
		width: 100%;
	}
}


#spa .bottom_cont .list .item .text_wrap {
	width: calc(100% - 2.45rem);
	box-sizing: border-box;
	padding-left: 0.15rem;
	box-sizing: border-box;
}
@media screen and (max-width: 640px) {
	#spa .bottom_cont .list .item .text_wrap {
		width: 100%;
		padding-left: 0;
		margin-top: 0.15rem;
	}
}


#spa .bottom_cont .list .item .text_wrap .title {
	font-size: 0.20rem;
	font-weight: 600;
	margin-bottom: 0.15rem;
}

#spa .bottom_cont .list .item .text_wrap .text {
	font-size: 0.13rem;
	line-height: 1.8;
}
/*============================
奥の湯 ゆ瞑み
============================*/
#okunoyu {
	padding-bottom: 1.00rem;
	background: #000;
	color: #fff;
}

@media screen and (max-width: 640px) {
	#okunoyu {
		padding-bottom: 0.40rem;
	}
}

#okunoyu .lead_wrap {
	margin-bottom: 0.50rem;
}

#okunoyu .lead {
	font-size: 0.22rem;
	font-weight: 600;
	line-height: 1.8;
	letter-spacing: 0.05em;
	margin-bottom: 0.20rem;
	text-align: center;
}

@media screen and (max-width: 640px) {
	#okunoyu .lead {
		font-size: 0.18rem;
	}
}

#okunoyu .lead_wrap .text {
	font-size: 0.17rem;
	line-height: 1.7;
	letter-spacing: 0.05em;
	margin-bottom: 0.20rem;
	text-align: center;
}

@media screen and (max-width: 640px) {
	#okunoyu .lead_wrap .text {
		font-size: 0.14rem;
		letter-spacing: 0;
		line-height: 1.875;
		text-align: justify
	}
}

#okunoyu .lead_wrap .note {
	font-size: 0.15rem;
	line-height: 1.7;
	letter-spacing: 0.05em;
	text-align: center;
}

@media screen and (max-width: 640px) {
	#okunoyu .gallery {
		padding-bottom: 0;
	}
}

/* ボトムコンテンツ */
#okunoyu .bottom_cont .list {
	width: 100%;
	max-width: 5.70rem;
	margin: auto;
	margin-bottom: 0.20rem;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .list {
		margin-bottom: 0.10rem;
	}
}

#okunoyu .bottom_cont .list .item {
	font-size: 0.18rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .list .item {
		font-size: 0.15rem;
		font-weight: 600;
		line-height: 1.56;
		text-indent: -0.36rem;
		margin-left: 0.36rem;
		padding-bottom: 0.10rem;
	}
}

#okunoyu .bottom_cont .text {
	font-size: 0.17rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2;
	text-align: center;
	margin-bottom: 0.40rem;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .text {
		font-size: 0.14rem;
		line-height: 1.875;
		text-align: justify;
	}
}

/* ボタン */
#okunoyu .bottom_cont .btn_wrap {
	display: flex;
	justify-content: center;
	margin-bottom: 0.45rem;
	flex-wrap: wrap;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .btn_wrap {
		margin-bottom: 0.20rem;
	}
}

#okunoyu .bottom_cont .btn_wrap .btn_common {
	max-width: 3.50rem;
	width: 100%;
	margin: 0 0.20rem;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .btn_wrap .btn_common {
		padding-bottom: 0.20rem;
	}
}

#okunoyu .bottom_cont .btn_wrap .btn_common a {
	background: #fff;
	color: #000;
}

#okunoyu .bottom_cont .btn_wrap .btn_common a:hover {
	color: #FFF;
}

#okunoyu .bottom_cont .btn_wrap .btn_common a::after {
	background-image: url(../common/img/icon_newwin_black.svg);
}

#okunoyu .bottom_cont .btn_wrap .btn_common a:hover::after {
	background-image: url(../common/img/icon_newwin_white.svg);
}

/* 注意書き */
#okunoyu .bottom_cont .note_list .item {
	font-size: 0.13rem;
	line-height: 1.6;
	letter-spacing: 0.05em;
	text-align: center;
	margin-bottom: 0.10rem;
}

@media screen and (max-width: 640px) {
	#okunoyu .bottom_cont .note_list .item {
		text-indent: -0.14rem;
		text-align: left;
		margin-bottom: 0.10rem;
		margin-left: 0.14rem;
	}
}

/*============================
貸切風呂
============================*/
#kashikiri {
	padding-top: 1.50rem;
	padding-bottom: 0.80rem;
}

@media screen and (max-width: 640px) {
	#kashikiri {
		padding-top: 0.70rem;
		padding-bottom: 0.50rem;
	}
}

#kashikiri .cont_wrap {
	display: flex;
	flex-wrap: wrap;
	max-width: 10.80rem;
	margin: auto;
	box-sizing: border-box;
	padding-right: 0.40rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap {
		padding: 0 0.20rem;
	}
}

#kashikiri .cont_wrap .ph_wrap {
	width: 100%;
	max-width: 5.70rem;
}

#kashikiri .cont_wrap .text_wrap {
	width: calc(100% - 5.70rem);
	box-sizing: border-box;
	padding-left: 0.40rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap {
		width: 100%;
		padding: 0.20rem 0;
	}
}

#kashikiri .cont_wrap .text_wrap .lead {
	font-size: 0.20rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	margin-bottom: 0.20rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .lead {
		font-size: 0.15rem;
		margin-bottom: 0.10rem;
		text-align: center;
	}
}

#kashikiri .cont_wrap .text_wrap .title {
	font-size: 0.30rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	margin-bottom: 0.25rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .title {
		font-size: 0.20rem;
		margin-bottom: 0.15rem;
		text-align: center;
	}
}

#kashikiri .cont_wrap .text_wrap .text {
	font-size: 0.15rem;
	letter-spacing: 0.05em;
	line-height: 1.8;
	margin-bottom: 0.25rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .text {
		font-size: 0.14rem;
	}
}

#kashikiri .cont_wrap .text_wrap .price_wrap {
	border-top: 1px solid #000;
	border-bottom: 1px solid #000;
	padding: 0.1rem 0 0.15rem;
	box-sizing: border-box;
}

#kashikiri .cont_wrap .text_wrap .price_wrap .price {
	font-size: 0.20rem;
	font-weight: 600;
	letter-spacing: 0.05em;
	line-height: 2;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .price_wrap .price {
		font-size: 0.16rem;
	}
}

#kashikiri .cont_wrap .text_wrap .price_wrap .time {
	font-size: 0.16rem;
	letter-spacing: 0.05em;
	line-height: 2;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .price_wrap .time {
		font-size: 0.13rem;
		letter-spacing: 0;
	}
}

#kashikiri .cont_wrap .text_wrap .note {
	font-size: 0.13rem;
	letter-spacing: 0.05em;
	line-height: 1.5;
	padding-left: 0.13rem;
	text-indent: -0.13rem;
	margin-top: 0.15rem;
}

@media screen and (max-width: 640px) {
	#kashikiri .cont_wrap .text_wrap .note {
		font-size: 0.12rem;
		padding-left: 0.12rem;
		text-indent: -0.12rem;
	}
}

/* 日帰り入浴 */
#higaeri .cont_wrap {
	width: 100%;
	max-width: 10.80rem;
	margin: auto;
	box-sizing: border-box;
	padding-right: 0.40rem;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap {
		padding: 0 0.20rem;
	}
}

#higaeri .cont_wrap .title_wrap {
	padding-bottom: 0.10rem;
}

#higaeri .cont_wrap .lead {
	font-size: 0.16rem;
	text-align: center;
	line-height: 2;
	padding-bottom: 0.40rem;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .lead {
		font-size: 0.14rem;
		text-align: justify;
	}
}

#higaeri .cont_wrap .dayspa_cont table {
	width: 100%;
	border-collapse: collapse;
	line-height: 1.875;
	border-top: 1px solid #000;
}

#higaeri .cont_wrap .dayspa_cont table .dayspa_title {
	font-size: 0.18rem;
	padding: 0.15rem 0;
	border-bottom: 1px solid #000;
	width: 2.40rem;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .dayspa_title {
		font-size: 0.16rem;
		width: 100%;
		box-sizing: border-box;
		display: block;
	}
}

#higaeri .cont_wrap .dayspa_cont table .dayspa_title span {
	display: block;
	font-size: 0.14rem;
	font-weight: 500;
}

#higaeri .cont_wrap .dayspa_cont table .textbox {
	font-size: 0.18rem;
	padding: 0.15rem 0;
	border-bottom: 1px solid #000;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .textbox {
		font-size: 0.14rem;
		width: 100%;
		box-sizing: border-box;
		display: block;
	}
}

#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box {
	padding-bottom: 0.15rem;
	padding-left: 0.30rem;
	position: relative;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box {
		padding-left: 0;
	}
}

#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box::before {
	content: "";
	width: 1px;
	height: 100%;
	background-color: rgba(0,0,0,0.3);
	position: absolute;
	left: 0;
	top: 0;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box::before {
		content: none;
	}
}

#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box:last-child {
	padding-bottom: 0;
}

#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box .dayspa_sub_title {
	font-size: 0.18rem;
	font-weight: 700;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box .dayspa_sub_title {
		font-size: 0.15rem;
	}
}

#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box .text {
	font-size: 0.15rem;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_cont table .textbox .dayspa_box .text {
		font-size: 0.14rem;
	}
}

#higaeri .cont_wrap .dayspa_caption {
	padding-top: 0.30rem;
	padding-bottom: 1.00rem;
	font-size: 0.14rem;
	line-height: 1.65;
}

@media screen and (max-width: 640px) {
	#higaeri .cont_wrap .dayspa_caption {
		padding-top: 0.20rem;
		padding-bottom: 1.00rem;
		font-size: 0.12rem;
	}
}

/* ゆ瞑み */
.yumemi_wrap {
	width: 100%;
	max-width: 8.00rem;
	height: 80vh;
	background-color: #FFF;
	border-radius: 0.10rem;
	padding: 0.50rem 0.30rem;
	box-sizing: border-box;
	box-shadow: 0 2px 0.08rem rgba(0,0,0,0.8);
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%,-50%);
	z-index: 21;
	display: none;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap {
		border-radius: 0.06rem;
		padding: 0.20rem 0 0.20rem 0.20rem;
		width: calc(100% - 0.20rem);
	}
}

.yumemi_wrap .sp_wrap {
	overflow-y: scroll;
	height: 100%;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .sp_wrap {
		padding-right: 0.10rem;
		margin-right: 0.10rem;
	}
}

.yumemi_wrap .sp_wrap::-webkit-scrollbar {
	width: 0.10rem;
}
.yumemi_wrap .sp_wrap::-webkit-scrollbar-track {
	background-color: #f2f2f2;
}
.yumemi_wrap .sp_wrap::-webkit-scrollbar-thumb {
	background-color: #CCC;
	border-radius: 0.10rem;
}

.yumemi_wrap .yumemi_header {
	text-align: center;
	padding-bottom: 0.30rem;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .yumemi_header {
		padding-bottom: 0.20rem;
	}
}

.yumemi_wrap .yumemi_header .title {
	font-size: 0.30rem;
	font-weight: 600;
	padding: 0.15rem 0;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .yumemi_header .title {
		font-size: 0.22rem;
		padding: 0.10rem 0;
	}
}

.yumemi_wrap .yumemi_header .text {
	font-size: 0.14rem;
	line-height: 1.65;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .yumemi_header .text {
		font-size: 0.12rem;
	}
}

.yumemi_wrap .yumemi_cont {
	padding-bottom: 0.30rem;
}

.yumemi_wrap .yumemi_cont .title {
	font-size: 0.18rem;
	font-weight: 600;
	padding-bottom: 0.10rem;
	border-bottom: 1px solid #000;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .yumemi_cont .title {
		font-size: 0.15rem;
		letter-spacing: 0;
	}
}

.yumemi_wrap .yumemi_cont .text {
	font-size: 0.15rem;
	line-height: 1.875;
	padding-top: 0.15rem;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .yumemi_cont .text {
		font-size: 0.13rem;
		line-height: 1.875;
		padding-top: 0.15rem;
	}
}

.yumemi_wrap .btn_common {
	padding-top: 0.30rem;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .btn_common {
		padding-top: 0.20rem;
	}
}

.yumemi_wrap .btn_common a {
	padding: 0.20rem 0 0.22rem;
	margin: auto;
	cursor: pointer;
}

@media screen and (max-width: 640px) {
	.yumemi_wrap .btn_common a {
		padding: 0.13rem 0 0.15rem;
		font-size: 0.14rem;
		max-width: 2.00rem;
	}
}