@charset "utf-8";

.facilities01_map .tab_index > div{
	text-align: center;
	line-height: 32px;
	width: 136px;
	background-color: #e5c5cd;
	border-radius: 16px;
	transition: all 0.5s ease;
	cursor: pointer;
}
.facilities01_map .tab_index > div:hover{
	opacity: 0.8;
}
.facilities01_map .tab_index > div.active{
	background-color: #be6d83;
}
.facilities01_map .tab .fig-map {
	width: 1080px;
}
.facilities01_map .tab > * > a{
	display: block;
	width: 128px;
	height: 25px;
	opacity: 0;
	z-index: 9;
	position: absolute;
	background: #FFF;
	text-indent: -9999px;
}
.facilities01_map .tab a:hover{
	opacity: 0.5;
}
.facilities01_map .tab a.f1_onsen{
	top: 183px;
	left: 310px;
}
.facilities01_map .tab a.f1_room{
	top: 657px;
	left: 380px;
}
.facilities01_map .tab a.f3_room01{
	top: 204px;
	left: 475px;
}
.facilities01_map .tab a.f3_room02{
	top: 592px;
	left: 475px;
}
.facilities01_map .tab a.f3_room03{
	top: 868px;
	left: 475px;
}
.facilities07_table{
	width: 100%;
	border-collapse: collapse;
	border-top: 1px solid #be6d83;
	border-left: 1px solid #be6d83;
}
.facilities07_table th,
.facilities07_table td{
	vertical-align: middle;
	text-align: center;
	line-height: 1.4;
	padding: 16px 0;
	border-right: 1px solid #be6d83;
	border-bottom: 1px solid #be6d83;
}
.facilities07_table thead th{
	color: #be6d83;
	background-color: #e5c5cd;
}
.facilities07_table tbody th,
.facilities07_table tbody td{
	background-color: rgba(255,255,255,0.5);
}

@media screen and (max-width: 540px){
	#page_header .caution{
		line-height: 1.8;
		padding: 8px 0;
	}
	.facilities01_map .tab{
		margin-top: 24px;
	}
	.facilities01_map .tab_index{
		gap: 16px;
	}
	.facilities01_map .tab_index > div{
		width: calc((100% - 32px) / 3);
	}
	.facilities_section .list03 li{
		width: 100%;
	}
	.facilities_section .list03 li .image{
		aspect-ratio: 2 / 1;
		overflow: hidden;
	}
	.facilities01_map .tab .fig-map {
		width: 100%;
	}
}


.tablist {
	position: absolute;
	right: 0;
	top: 190px;
	color: #ffffff;
	width: 242px;
}
.tablist li + li {
	margin-top: 16px;
}
.tablist li.tab-hanare {
	margin-top: 30px;
}
.tablist a {
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	background-color: #BE6D83;
	border-top-right-radius: 12px;
	border-top-left-radius: 12px;
	border-bottom-right-radius: 12px;
	overflow: hidden;
}
.tablist a div {
	width: 42px;
	border-bottom-right-radius: 12px;
	overflow: hidden;
}
.tablist a p {
	font-size: 14px;
	padding-left: .5em;
	display: -webkit-box;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-align: center;
	-ms-flex-align: center;
	align-items: center;
	line-height: 1.1;
}

@media screen and (max-width: 540px){
	.tablist {
		position: relative;
		top: auto;
		right: auto;
		width: 100%;
		display: -webkit-box;
		display: -ms-flexbox;
		display: flex;
		-ms-flex-wrap: wrap;
		flex-wrap: wrap;
		margin-top: 28px;
		margin-bottom: 28px;
		gap: 12px 11px;
	}
	.tablist li {
		width: calc((100% - 11px) / 2);
	}
	.tablist li + li {
		margin-top: 0;
	}
	.tablist li.tab-hanare {
		margin-top: 0;
	}
	.tablist a div {
		width: 51px;
	}
	.tablist a div img {
		width: 100%;
		height: 100%;
		object-fit: cover;
	}
	.tablist a p {
		width: calc(100% - 51px);
		letter-spacing: 0;
	}
	.pc_inline {
		display: none;
	}

	.facilities01_map .tab > * > a {
		width: 74px;
		height: 18px;
	}
	.facilities01_map .tab a.f1_onsen {
		top: 112px;
		left: 100px;
	}
	.facilities01_map .tab a.f1_room {
		top: 274px;
		left: 92px;
	}
}

.tab-hov {
	position: absolute;
	left: 0;
	top: 50px;
	width: calc(100% - 242px);
	height: 100%;
}
.tab-hov > div {
	position: absolute;
	top: 0;
	left: 0;
	opacity: 0;
	width: 100%;
	height: 100%;
}
.tab-hov > div.active {
	opacity: 1;
}

@media screen and (max-width: 540px){
	.tab-hov {
		display: none;
	}
}



/* 間取り図ボタン位置変更 */
.madorizu {
	position: absolute;
	right: 0;
	bottom: 0;
	border-bottom: 1px solid #d8a7b5;
	white-space: nowrap;
	padding-right: 30px;
	padding-bottom: 5px;
}
.madorizu::after {
	content: "";
	position: absolute;
	right: 0;
	top: 45%;
	transform: translateY(-50%);
	width: 16px;
	height: 20px;
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/common/icn-pdf-pink.png);
}


/* エステの詳細を見る追加（20250819） */
.esthe-detail {
	position: relative
}
@media screen and (max-width: 540px){
	.esthe-detail {
		margin-top: 24px;
	}
}
.esthe-detail:hover {
	opacity: .5;
	cursor: pointer;
	transition: opacity 0.5s ease;
}
.esthe-detail::after {
	position: absolute;
	content: "";
	right: 24px;
	top: 50%;
	transform: translateY(-50%);
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/facilities/esthe-plus.png);
	width: 16px;
	height: 16px;
	transition: opacity 0.5s ease;
}
.esthe-detail.active::after {
	background-image: url(../images/facilities/esthe-minus.png);
}
.esthe-detbd {
	display: none;
}
.esthe-detbd-menu {
	border-bottom: 1px solid #be6d83;
}
.esthe-detbd-menu dd {
	border-top: 1px solid #be6d83;
	padding-left: 1em;
	padding-right: 1em;
}
@media screen and (max-width: 540px){
	.esthe-detbd-menu dd .price {
		margin: 0 0 0 auto;
	}
}
.esthe-detbd .table02 {
	border-top-color: #be6d83;
}
.esthe-detbd .table02 th {
	width: 178px;
}
.esthe-detbd .table02 th, .esthe-detbd .table02 td {
	border-bottom-color: #be6d83;
}
.esthe-close a {
	display: inline-block;
	position: relative;
	padding-right: 40px;
}
.esthe-close a::after {
	position: absolute;
	content: "";
	right: 0;
	top: 50%;
	transform: translateY(-50%) rotate(45deg);
	background-size: contain;
	background-repeat: no-repeat;
	background-image: url(../images/facilities/esthe-plus.png);
	width: 16px;
	height: 16px;
}






