@charset "UTF-8";
/* ==========================================================================
   関数
   ========================================================================== */
:root {
	/* guidelineColors */
	--c-main: #15455e;
	--c-LIBERgray1: #0F1E31;
	--c-LIBERgray2: #304166;
	--c-LIBERgray3: #91A9CC;
	--c-LIBERgray4: #D9E2F0;
	--c-LIBERgray5: #ECEEF3;
	--c-gold: #c9a12c;
	--c-black: #111111;
	--c-inkblack: #333333;
	--c-darkgray: #828282;
	--c-lightgray: #E0E0E0;
	--c-white: #ffffff;
	--c-accent: #DD0000;
	--c-yellow: #ffff00;
	--c-pink: #ffc0cb;
	--c-lightgreen: #90ee90;
	/* otherColors */
	/*--c-gray-bg: #eaeae9;*//* 整理要 */
	/*--c-black-bg: #333333;*//* 整理要 */
	/*--color-primary: #0f1e31;*/ /* 整理要 */
	/*--color-secondary: #15455e;*/ /* 整理要 */
	/*--color-accent: #c9a12c;*/ /* 整理要 */
	/*--color-gray: #a9a49d;*/ /* 整理要 */
	/*--color-bg-light: #eaeae9;*/ /* 整理要 */
	/* Glassmorphism */
	--glass-bg: rgba(255, 255, 255, 0.2);
	--glass-border: rgba(255, 255, 255, 0.3);
	--glass-scroll: rgba(255, 255, 255, 0.6);
	/* Fonts */
	--font-base: "Noto Sans JP", sans-serif;
	--font-en: "Crimson Text","BIZ UDPMincho", serif;
	--font-serif: "BIZ UDPMincho", serif;
	--font-en-narrow: "Crimson Text","BIZ UDPMincho", serif;
	--font-ryo: "Crimson Text","BIZ UDPMincho", serif;
	--font-display: ryo-display-plusn, serif;/* 使ってるとこ不明 */
	--font-condensed: din-condensed, sans-serif;/* 使ってるとこ不明 */
	/* Font Sizes */
	--fz-base: 14px;
	--fz-middle: 18px;
	--fz-hero: clamp(4.5rem, 8vw, 6rem);
	--fz-h-sec: clamp(2rem, 4vw, 2.5rem);
	--fz-sub: clamp(0.8rem, 2vw, 1rem);
	/* Layout & Spacing */
	--sec-pad-y: clamp(40px, 8vh, 60px);
	--sec-pad-y-big: clamp(80px, 12vh, 120px);
	--sec-pad-y-small: clamp(20px, 4vh, 40px);
	/* Transitions */
	--tr-fast: all 0.3s ease;
}
/* ==========================================================================
   common
   ========================================================================== */
html {
	font-size: var(--fz-base);
}
body {
	font-family: var(--font-base);
	color: var(--c-main);
	line-height: 1.6;
	letter-spacing: .1em;
}
#page-wrapper {
	overflow-x: hidden !important;
}
main {
	overflow-x: hidden;
}
body:not(.home) main {/* bodyに.homeクラスがない場合のみ実行 */
	margin-top: 80px;
}

@media (max-width: 991px) {
	body:not(.home) main {
		margin-top: 80px;
	}
}

@media (max-width: 767px) {
	body:not(.home) main {
		margin-top: 60px;
	}
	body {
		margin-bottom: calc(64px + env(safe-area-inset-bottom));
	}
}
h1, h2, .h1, .h2 {
	font-family: var(--font-en);
	letter-spacing: .15em;
	font-weight: 400;
}
h3, h4, h5, h6, .h3 .h4, .h5, .h6 {
	font-family: var(--font-base);
	letter-spacing: .15em;
	font-weight: 400;
}
a {
	color: inherit;
	text-decoration: none;
	transition: var(--tr-fast);
}
a:hover {
	color: inherit;
	text-decoration: none;
}
@media (hover: hover) and (pointer: fine) {
	a:hover {
		color: inherit;
		text-decoration: none;
		cursor:pointer;
		opacity: 0.7;
	}
}
@media (hover: none) and (pointer: coarse) {
	a:hover {
		opacity: unset;
		cursor: unset;
	}
}
sub, sup {
	font-size: 50%;
}
sup {
	top: -1em;
}
.overflow-hidden {
	overflow: hidden;
}
.no-padding {
	padding: 0;
}
.none, .col-0 {
	display: none;
}
.animated {
	opacity: 0;
}
.cf {
	width: 100%;
	display: block;
	clear: both;
}
.nolink, .nolink a {
	pointer-events: none;
}
.black-bg {
	background-color: var(--c-inkblack);
}
.gray-bg {
	background-color: var(--c-LIBERgray5);
}
.navy-bg {
	background-color: var(--c-main);
	color: var(--c-white);
}
/*.bg-navy {*//* 整理要--c-mainに統合 */
	/*//background: rgba(15, 30, 49, 1);
//}*/

/* 表示非表示コントロール */
.pconly {
	display: none !important;
}
.sponly {
	display: block !important;
}
@media (min-width: 768px) {
	.pconly, .col-0 {
		display: block !important;
	}
	.sponly {
		display: none !important;
	}
}
section {
	overflow: hidden;
}
section.section {
	padding-block: var(--sec-pad-y);
}
section.section2 {
	padding-top: var(--sec-pad-y);
}
section.section3 {
	padding-bottom: var(--sec-pad-y);
}
section.reflexology {
	padding-top: var(--sec-pad-y);
}
section.section.small-gap {
	padding-block: var(--sec-pad-y-small);
}
section.section.big-gap {
	padding-block: var(--sec-pad-y-big);
}
section.section.first {
	padding-top: var(--sec-pad-y);
}
section.section.last {
	padding-bottom: 0;
}
.section-devider {
	margin: clamp(40px, 8vw, 80px) 0;
}
.colored-title-bar {
	color: var(--c-white);
	background-color: var(--c-LIBERgray1);
	padding: 2em 1em;
}

.section-title-wrap {
    position: relative;
}
.section-title {
	font-size: var(--fz-h-sec);
	letter-spacing: .15em;
	margin-bottom: 0;
    position: relative;
    z-index: 2;
}
.section-sub-title, .section-title span.subtitle {
	font-size: var(--fz-sub);
	font-family: var(--font-base);
	letter-spacing: .15em;
	margin-bottom: 0;
}
.section-sub-title {
	margin-top: .5em;
}
body.home .section-title::before {
    content: "";
    position: absolute;
    top: -25px;
    left: -20px;
    width: 70px;
    height: 70px;
    background-color: var(--c-LIBERgray5);
    z-index: -1;
}
/*スマホ調整*/
@media (max-width: 767px) {
	body.home .section-title{
		padding-left: 15px;
		line-height: 1;
		
	}
	body.home .section-title::before {
    	left: 0px;
		top: -30px;
	}
}
.txt-gold, .txt-gold2 {
	color: var(--c-gold);
	font-weight: bold;
	font-family: var(--font-en);
	display: inline-block;
	margin-top: .5em;
	transition: var(--tr-fast);
}
.txt-gold {
	font-size: 1rem;
}
.txt-gold2 {
	font-size: 1.5rem;
}
/*.txt-gold:hover, .txt-gold2:hover {
	opacity: .7;
}*/
.gap{
	gap: 1rem;
}

/* ==========================================================================
   ボタン
   ========================================================================== */
.btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	border: 1px solid var(--c-main);
	border-radius: 4px;
	padding: .8em 4em;
	color: var(--c-main);
	transition: var(--tr-fast);
}
.btn.white {
	border-color: var(--c-white);
	color: var(--c-white);
}
.btn.focus, .btn:focus {
	box-shadow: 0 0 0 0.2rem rgba(29, 54, 90, 0.25);
}
/* Animation Arrow Button */
.btn.more, .tab_content ul.restaurant-link a {
	position: relative;
}
.btn.more::after, .tab_content ul.restaurant-link a::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 10%;
	transform: translateY(-50%);
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 4px;
	border-color: transparent transparent transparent var(--c-LIBERgray1);
	transition: var(--tr-fast);
}
.btn.more:hover::after, .tab_content ul.restaurant-link a:hover::after {
	animation: btnmore 3s infinite;
}
@keyframes btnmore {
	0% {
		transform: translate(-10px, -50%);
		opacity: 0;
	}
	10% {
		transform: translate(-10px, -50%);
	}
	45% {
		opacity: 1;
	}
	90% {
		transform: translate(0, -50%);
		opacity: 1;
	}
	100% {
		transform: translate(0, -50%);
		opacity: 0;
	}
}
/*.btn.more:hover {
	letter-spacing: .1em;
	padding-inline: 5em;
}*/
.btn.more.back::after {
	right: auto;
	left: 10%;
	border-width: 4px 4px 4px 0px;
	border-color: transparent var(--c-LIBERgray1) transparent transparent;
}
.btn.more.back:hover::after {
	animation: btnmoreback 3s infinite;
}
@keyframes btnmoreback {
	0% {
		transform: translate(0px, -50%);
		opacity: 0;
	}
	10% {
		transform: translate(0px, -50%);
	}
	45% {
		opacity: 1;
	}
	90% {
		transform: translate(-10px, -50%);
		opacity: 1;
	}
	100% {
		transform: translate(-10px, -50%);
		opacity: 0;
	}
}
/* Kon Button */
.kon_btn {
	background: var(--c-LIBERgray1);
	color: var(--c-white);
	border-radius: 4px;
	border: none;
}
.kon_btn:hover {
	color: var(--c-white);
}
.kon_btn a {
	display: block;
	padding: 10px;
}
.btn.more.kon_btn::after {
	border-color: transparent transparent transparent var(--c-white);
}
/* Big Button */
.btn.big-btn {
	margin: 2em auto;
	width: 100%;
	max-width: 450px;
	padding: clamp(1em, 2vw, 2em) 2em;
	letter-spacing: .1em;
	font-size: 1.5rem;
	position: relative;
	overflow: hidden;
}
.btn.big-btn::before {
	content: '';
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	background-color: var(--glass-bg);
	transition: var(--tr-fast);
}
.btn.big-btn:hover::before {
	left: 0;
}
/* Tel & Form Button */
.tel_btn, .page-function .tel_btn, .page-function .form_btn {
	display: block;
	padding: 1.5rem;
	text-align: center;
	font-family: var(--font-serif);
	letter-spacing: .1em;
	line-height: 1em;
	transition: var(--tr-fast);
}
.tel_btn {
	background-color: var(--c-black);
	color: var(--c-white);
	font-size: clamp(2.5rem, 5vw, 3rem);
}
.tel_btn span, .page-function .tel_btn span, .page-function .form_btn span {
	display: block;
	font-size: .8rem;
	margin-bottom: .5em;
}
.page-function .tel_btn {
	background-color: var(--c-LIBERgray5);
	color: var(--c-main);
}
.page-function .form_btn {
	background-color: var(--c-black);
	color: var(--c-white);
	font-size: clamp(1.6rem, 3vw, 2rem);
	margin-bottom: 1em;
	position: relative;
}
.page-function .form_btn::after {
	content: '';
	position: absolute;
	top: 50%;
	right: 3%;
	transform: translateY(-50%);
	border-style: solid;
	border-width: 8px 0 8px 8px;
	border-color: transparent transparent transparent var(--c-white);
}
.tel_btn:hover, .page-function .form_btn:hover {
	color: var(--c-white);
	opacity: .7;
}
.page-function .tel_btn:hover {
	color: var(--c-main);
	opacity: .7;
}

/*WPボタン上書き*/
.wp-block-button.is-style-outline > .wp-block-button__link:hover, .wp-block-button.is-style-outline > .wp-block-button__link:active, .wp-block-button.is-style-outline > .wp-block-button__link:focus {
    box-shadow: 0 0 5px 3px rgba(78,78,78,0.20);
}

/* ==========================================================================
   ヘッダー
   ========================================================================== */
/*.navigation-bar {
	background-color: var(--glass-bg);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	position: fixed;
	top: 0;
	width: 100%;
	height: 60px;
	z-index: 1000;
	transition: var(--tr-fast);
}
.navigation-bar.opened {
	z-index: 9999;
}
.navigation-bar.scrolled {
	height: 60px;
	background-color: var(--glass-scroll);
}
.navigation-bar .navigation-bar-inner {
	width: 100%;
    height: inherit;
	display: flex;
	justify-content: space-between;
	align-items: center;
	position: relative;
	z-index: 20000;
	border-bottom: 1px solid var(--glass-border);
}
.navigation-bar.scrolled .navigation-bar-inner {
	border-bottom: 1px solid #ddd;
}
.navigation-bar.opened .navigation-bar-inner {
	border-bottom: 1px solid #d7d7d7;
	background: var(--c-white);
}
.single-news .navigation-bar {
	border-bottom: none;
}
.navbar-brand {
	display: flex;
	align-items: center;
	width: 250px;
	height: 100%;
	margin-left: clamp(15px, 5vw, 3rem);
	transition: var(--tr-fast);
}
.navbar-brand img {
	height: clamp(30px, 4vw, 40px);
	transition: var(--tr-fast);
}
.scrolled .navbar-brand img {
	height: 30px;
}*/
/* ハンバーガーメニュー */
/*.menu {
	position: relative;
	right: 5%;
	top: 12px;
	width: 30px;
	height: 20px;
	cursor: pointer;
	transition: var(--tr-fast);
}
.scrolled .menu {
	top: 12px;
}
.menu__line {
	display: block;
	position: absolute;
	width: 100%;
	height: 2px;
	background: var(--c-main);
	transition: transform .3s;
}
.menu__line--center {
	top: 9px;
}
.menu__line--bottom {
	bottom: 0;
}
.menu__line--top.active {
	top: 8px;
	transform: rotate(45deg);
}
.menu__line--center.active {
	transform: scaleX(0);
}
.menu__line--bottom.active {
	bottom: 10px;
	transform: rotate(135deg);
}
.menu .letter {
	position: absolute;
	left: 50%;
	bottom: -22px;
	transform: translateX(-50%);
	font-size: .8rem;
	letter-spacing: .1em;
}
@media (min-width: 768px) {
	.menu {
		top: 20px;
	}
}*/
/* Nav Icons / Action Buttons */
/*.navigation-bar .res-btn {
	display: flex;
	justify-content: center;
	align-items: center;
	position: relative;
	right: 0;
	top: 0;
	background-color: var(--c-main);
	color: var(--c-white);
	width: 60px;
	height: 60px;
	cursor: pointer;
	transition: var(--tr-fast);
}
.navigation-bar .res-btn-inner {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
    width: 100%;
    height: 100%;
}
.navigation-bar .res-btn-inner::before {
	content: "";
	width: 20px;
	height: 20px;
	margin-bottom: 4px;
	background: url('../img/common/icon/icon_reserve.svg') center/contain no-repeat;
}
.navigation-bar .lang-btn {
	position: absolute;
	top: 50%;
	left: calc(7% + 30px);
	transform: translateY(-50%);
	cursor: pointer;
}*/
/* PC specific Nav tools */
/*.navigation-bar .carrental, .navigation-bar .flight, .navigation-bar .member, .navigation-bar .register, .navigation-bar .restaurant, .navigation-bar .lang {
	display: none;
	position: absolute;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	font-family: var(--font-serif);
	transition: var(--tr-fast);
	border-left: 1px solid var(--c-LIBERgray1);
}
@media (min-width: 768px) {
	.navigation-bar {
		height: 80px;
	}
	.navigation-bar .res-btn {
		width: 80px;
		height: 80px;
	}
	.navigation-bar .lang-btn, .navigation-bar .carrental, .navigation-bar .flight, .navigation-bar .member, .navigation-bar .register, .navigation-bar .restaurant, .navigation-bar .lang {
		display: block;
		line-height: 100px;
		height: 100px;
		width: 100px;
	}
	.navigation-bar .restaurant {
		background-color: #4f5b68;
		color: var(--c-white);
		right: 0;
	}
	.navigation-bar .carrental {
		padding: 30px 15px 25px;
		line-height: 20px;
		background-color: var(--c-LIBERgray1);
		color: var(--c-white);
		right: 100px;
		border-bottom: 1px solid var(--c-LIBERgray1);
		border-left: 1px solid #4F5B68;
	}
	.navigation-bar .flight {
		background-color: var(--c-LIBERgray1);
		color: var(--c-white);
		right: 200px;
		border-bottom: 1px solid var(--c-LIBERgray1);
	}
	.navigation-bar .member, .navigation-bar .register {
		right: 300px;
	}
	.navigation-bar .member {
		background-color: #4f5b68;
		color: var(--c-white);
	}
	.navigation-bar .lang {
		right: 400px;
	}
	.navigation-bar.scrolled .res-btn, .navigation-bar.scrolled .register, .navigation-bar.scrolled .flight, .navigation-bar.scrolled .lang, .navigation-bar.scrolled .member, .navigation-bar.scrolled .restaurant {
		height: 60px;
		border-color: #ddd;
	}
	.navigation-bar.scrolled .carrental {
		height: 60px;
		padding-top: 17px;
		line-height: 12px;
		border-color: #ddd;
	}
}*/
/* Fullscreen Menu (.gnav) */
/*.gnav {
	display: none;
	position: fixed;
	top: 0;
	bottom: 0;
	width: 100%;
	min-height: 100vh;
	background: rgba(255, 255, 255, 0.9);
	backdrop-filter: blur(10px);
	-webkit-backdrop-filter: blur(10px);
	z-index: 98;
	overflow-y: auto;
}
@media (min-width: 768px) {
	.gnav {
		top: 0;
	}
	.scrolled .gnav {
		top: 0;
	}
}
.gnav__wrap {
	position: relative;
	min-height: 100%;
	width: 100%;
	padding-top: clamp(80px, 10vw, 120px);
	padding-bottom: clamp(80px, 10vw, 120px);
}
.gnav_box {
	position: absolute;
	top: 40%;
	left: 50%;
	width: 100%;
	transform: translate(-50%, -50%);
}
.gnav__menu {
	margin: 2rem auto;
	text-align: center;
	padding: 0;
}
.gnav__menu__item {
	display: inline-block;
	margin: 10px 0;
	position: relative;
}
.gnav__menu__item a {
	color: var(--c-white);
	font-size: 1rem;
	letter-spacing: .2em;
	padding: 1rem 2rem;
	transition: .5s;
	opacity: 0;
}
.gnav__menu__item.current a, .gnav__menu__item.nolink a, .gnav__menu__item a:hover {
	color: #666;
}
.gnav .menu-btn {
	display: block;
	font-family: var(--font-en);
	font-size: clamp(1.5rem, 3vw, 2.3rem);
	padding: clamp(.5rem, 1vw, 1rem);
	margin-top: .5rem;
	letter-spacing: .1em;
}
.gnav .menu-btn span {
	display: block;
	font-size: clamp(.7rem, 1vw, .8rem);
}
.gnav .sub-menu-box {
	margin-block: clamp(1rem, 3vw, 3rem);
}
.sub-menu-box .menu-btn {
	font-size: 1rem;
	border: 1px solid #bbbfc8;
}
.sub-menu-box .menu-btn.nolink {
	border-color: #999;
}
.gnav .sns-link li {
	display: inline-block;
	padding: .3rem;
}
.gnav .sns-link a {
	display: flex;
	align-items: center;
	justify-content: center;
	background: var(--c-main);
	color: var(--c-white);
	width: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
}*/

/* Submenu Bar */
/*#submenu-bar {
	display: none;
}
@media (min-width: 992px) {
	#submenu-bar {
		display: flex;
		justify-content: space-between;
		background: var(--c-white);
		padding: 0 10%;
		margin: 0;
		list-style: none;
		overflow: hidden;
	}
	#submenu-bar.scrolled {
		display: none;
	}
	#submenu-bar li {
		line-height: 37px;
		font-family: var(--font-serif);
	}
	#submenu-bar li a {
		padding: 0 70px;
	}
	#submenu-bar li a span {
		display: inline-block;
		border-bottom: 3px solid transparent;
		transition: var(--tr-fast);
	}
	#submenu-bar li a:hover span {
		border-bottom: 3px solid #58849b;
	}
}*/
/* ==========================================================================
   6. HERO & VIDEO BACKGROUND
   ========================================================================== */
.page-hero-head {
	position: relative;
	color: var(--c-white);
}
.page-hero-head::before {
	content: '';
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	background-color: rgba(0, 0, 0, .5);
}
.page-hero-head.video::before {
	background-color: transparent;
}
.page-hero-head .video-item {
	position: absolute;
	top: 50%;
	left: 50%;
	min-height: 100vh;
	transform: translate(-50%, -50%);
}
.page-hero-head .main-box {
	position: absolute;
	z-index: 2;
	top: 5%;
	left: 5%;
}
.page-hero-head .main-box h2 {
	font-size: var(--fz-hero);
	letter-spacing: .1em;
	line-height: 1em;
}
.page-hero-head.video .main-box h2 {
	font-size: inherit;
}
.page-hero-head.video .main-box h2 img {
	width: clamp(8em, 15vw, 13em);
}
.page-hero-head .main-box h3 {
	font-size: 1rem;
	letter-spacing: .15em;
	line-height: 1.8em;
	font-weight: 200;
}
.page-hero-head .sub-box01, .page-hero-head .sub-box02, .page-hero-head .sub-box03 {
	position: absolute;
	z-index: 2;
	font-weight: 200;
	font-family: var(--font-en-narrow);
	letter-spacing: .15em;
}
.page-hero-head .sub-box01 {
	top: 5%;
	right: 5%;
	font-size: 1.5em;
}
.page-hero-head .sub-box01::before {
	content: '';
	position: absolute;
	left: -4em;
	top: 50%;
	transform: translateY(-50%);
	width: 3em;
	height: 1px;
	background-color: var(--c-white);
}
.page-hero-head .sub-box02 {
	left: 50%;
	bottom: 10%;
	transform: translateX(-50%);
}
.page-hero-head .sub-box02::before {
	content: '';
	position: absolute;
	bottom: clamp(-2em, -4vw, -2em);
	left: 50%;
	transform: translateX(-50%);
	width: 1px;
	height: 2em;
	background-color: var(--c-white);
	animation: sdb 3s infinite;
}
@keyframes sdb {
	0% {
		transform: translate(0, 0);
		opacity: 0;
	}
	10% {
		transform: translate(0, 0);
	}
	45% {
		opacity: 1;
	}
	90% {
		transform: translate(0, 15px);
		opacity: 1;
	}
	100% {
		transform: translate(0, 15px);
		opacity: 0;
	}
}
.page-hero-head .sub-box03 {
	right: 5%;
	bottom: clamp(20%, 15vw, 10%);
	font-size: 1.3rem;
}
.sp_video video {
	width: 100%;
}
.vegas-timer {
	display: none;
}

/* ==========================================================================
   8. COMPONENTS (Infos, Events, Concept)
   ========================================================================== */

/*.info-box {
	padding-top: clamp(40px, 8vw, 80px);
}
.info-box .img-link {
	width: 95%;
	margin-left: 5%;
	position: relative;
}
.info-box .img-box {
	background: var(--c-white) center/cover no-repeat;
	position: relative;
}
.info-box .img-box::before {
	content: '';
	display: block;
	width: 100%;
	padding-top: 56.25%;
}
.info-box .img-box.contain {
	border: 1px solid var(--c-lightgray);
}
.info-box .img-link span.status {
	position: absolute;
	top: 0;
	right: 0;
	background: var(--c-inkblack);
	color: var(--c-white);
	padding: .5em;
	font-size: .8rem;
	font-weight: bold;
	letter-spacing: .1em;
}
.info-box .img-link span.status.closed {
	background: var(--c-darkgray);
	color: var(--c-black);
}
.info-box .dsc-box, .info-box .dsc-box-info {
	position: relative;
	top: -20px;
	width: 95%;
	padding: 1.5em 1em 0;
	font-size: 1rem;
	font-weight: 700;
	letter-spacing: .1em;
	line-height: 1.5em;
}
.info-box .dsc-box {
	background-color: #fdfdfd;
	box-shadow: 1px 1px 2px 0px rgba(0, 0, 0, 0.1);
}
.info-box .dsc-box-info {
	width: 100%;
	border-bottom: 1px solid var(--c-lightgray);
}
.info-box .dsc-sub-box {
	margin-top: .5em;
	padding-bottom: 1em;
	font-size: .8rem;
	font-weight: 400;
	color: var(--c-darkgray);
}
.single-event .date span, .info-box .dsc-sub-box .date span {
    display: inline-flex;
	padding: .05em 1em;
	margin-right: .5em;
	background-color: var(--c-LIBERgray4);
	color: var(--c-main);
    font-weight: bold;
}
.date {
	letter-spacing: .1em;
}
.info_table, .info_table th, .info_table td {
	border: 1px solid #ccc;
	padding: 1em;
}
.single-event .event-info-table {
	width: 100%;
	margin-top: 1em;
	border-collapse: collapse;
}
.single-event .event-info-table th, .single-event .event-info-table td {
	display: block;
	padding: 1em 2em;
	border: 1px solid #ccc;
}
.single-event .event-info-table th {
	background: rgba(15, 30, 49, 0.6);
	color: var(--c-white);
	text-align: center;
	font-size: .8rem;
	letter-spacing: .1em;
}
@media (min-width: 768px) {
	.single-event .event-info-table th, .single-event .event-info-table td {
		display: table-cell;
	}
	.single-event .event-info-table th {
		width: 30%;
	}
	.single-event .event-info-table td {
		width: 70%;
	}
}*/
ul.goto_flow {
	counter-reset: number;
	list-style: none !important;
	padding: 1.5em;
	border: solid 2px var(--c-LIBERgray1);
}
ul.goto_flow li {
	border-bottom: dashed 1px var(--c-LIBERgray1);
	position: relative;
	padding: 0.8em 0 0.8em 30px;
	line-height: 1.5em;
}
ul.goto_flow li::before {
	content: counter(number);
	counter-increment: number;
	position: absolute;
	left: 0;
	top: 50%;
	transform: translateY(-50%);
	display: inline-flex;
	align-items: center;
	justify-content: center;
	background: var(--c-LIBERgray1);
	color: var(--c-white);
	font-weight: bold;
	font-size: 15px;
	border-radius: 50%;
	width: 25px;
	height: 25px;
}
ul.goto_flow li:last-of-type {
	border-bottom: none;
}

/* ==========================================================================
   CONCEPT / STAY PLAN
========================================================================== */
/*.concept-four-box.ss .bg-img {
	background-image: url(../img/index/ss_bg.jpg);
}
.concept-four-box:before {
	position: absolute;
	content: '';
	background-color: rgba(0, 0, 0, .2);
	background-blend-mode: multiply;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.concept-four-box:after {
	position: absolute;
	content: '';
	width: 90%;
	height: 90%;
	top: 50%;
	left: 50%;
	opacity: 0;
	transform: translate(-60%, -50%);
	border: 1px solid #fff;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.concept-four-box:hover:before {
	background-color: rgba(0, 0, 0, .6);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.concept-four-box:hover:after {
	transform: translate(-50%, -50%);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
	opacity: 1;
}
.concept-four a {
	display: block;
}
.concept-four-box .inner {
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	z-index: 2;
	width: 100%;
	color: #fff;
}*/
/*.concept-four-box .section-title {
	font-size: 1.2em;
	font-weight: 400;
	display: inline-block;
	position: relative;
	padding-bottom: 0.5em;
	letter-spacing: .2em;
	margin-bottom: 1.5em;
}
.concept-four-box .section-title:before {
	content: '';
	position: absolute;
	width: 2rem;
	height: 2px;
	left: 50%;
	bottom: 0;
	background-color: #fff;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.concept-four-box:hover .section-title:before {
	width: 3rem;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}*/
/*.concept-four-box p.dsc {
	font-size: 1em;
	letter-spacing: .1em;
	line-height: 2em;
	padding-left: 1.5em;
	padding-right: 1.5em;
}
@media (min-width: 768px) {
	.concept-four-box {
		padding: 200px 1em;
	}
	.concept-four-box p.dsc {
		font-size: 1.2em;
	}
	.concept-four-box .section-title {
		font-size: 1.5em;
	}
}*/
/* SPECIAL OFFERS, STAY PLAN */
#special {
	padding-top: 0;
	margin-top: 80px;
	background-color: #EFEFEF;
}
.sp_main_img_box {
	padding-top: 100px;
	padding-bottom: 100px;
}
#special .special-img {
	height: 175px;
	background-size: cover;
	background-position: center center;
}
.plan-box {
	margin-top: 30px;
}
.plan-slider-inner {
	margin: auto .5rem;
}
.plan-archive-inner .thum-wrap, .plan-slider-inner .thum-wrap {
	display: block;
	overflow: hidden;
}
.plan-archive-inner .thum-box, .plan-slider-inner .thum-box {
	background-position: center center;
	background-size: cover;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.plan-archive-inner .thum-box:before, .plan-slider-inner .thum-box:before {
	display: block;
	content: '';
	width: 100%;
	padding-top: 57.75%;
}
.plan-archive-inner .thum-box:hover, .plan-slider-inner .thum-box:hover {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.plan-archive-inner .plan-title, .plan-slider-inner .plan-title {
	margin-top: 1rem;
	font-size: .8rem;
	font-family: var(--font-base);
	letter-spacing: .1em;
	line-height: 1.5rem;
}
.plan-archive-inner .plan-dsc, .plan-slider-inner .plan-dsc {
	font-size: .8rem;
	letter-spacing: .1em;
	line-height: 1.3rem;
}
.plan-dsc {
	display: none;
}
.plan-wrapper {
	margin-top: 1.5em;
	margin-bottom: 1.5em;
}
.info-box .btn.more, .plan-wrapper .btn.more, #luxuryfloor .btn.more, #mujiroom .btn.more {
	margin-top: 3em;
	margin-bottom: 3em;
}
.top-gallery-box, .gallery-box {
	margin-top: 60px;
	margin-bottom: 60px;
}
.instashow-gallery .instashow-gallery-control-arrow::after, .instashow-gallery .instashow-gallery-control-arrow::before {
	background-color: #fff !important;
}
.instashow-gallery .instashow-gallery-control-arrow, .top-gallery-box .instashow-gallery .instashow-gallery-media-cover {
	background-color: rgba(79, 91, 104, 0.85) !important;
}
.plan-archive-inner {
	margin-top: 1em;
	margin-bottom: 1em;
}
.plan-wrapper .slick-prev, .plan-wrapper .slick-next {
	border: 1px solid var(--c-LIBERgray1);
	border-radius: 100%;
	width: 30px;
	height: 30px;
}
.plan-wrapper .slick-prev:before, .plan-wrapper .slick-next:before {
	font-family: "Font Awesome 5 Free";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-weight: 900;
	font-size: 12px;
	color: var(--c-LIBERgray1);
}
.plan-wrapper .slick-prev {
	left: -35px;
	z-index: 1;
}
.plan-wrapper .slick-prev:before {
	content: '\f053';
}
.plan-wrapper .slick-next {
	right: -35px;
	z-index: 1;
}
.plan-wrapper .slick-next:before {
	content: '\f054';
}
.plan-category {
	display: flex;
	flex-wrap: wrap;
	padding-top: 60px;
}
.plan-category .btn {
	width: calc((100% - (10px * 7)) / 7); /* 7列 */
	padding-left: 0;
	padding-right: 0;
	margin-right: 10px;
	margin-bottom: 10px;
	font-size: 12px;
}
.plan-category .btn:nth-child(8n) {
	margin-right: 0;
}
.plan-category .btn.active {
	background-color: var(--c-main);
	color: #ffffff;
}
@media (max-width: 767px) {
	.plan-category {
		padding-top: 30px;
	}
	.plan-category .btn {
		width: calc((100% - (10px * 1)) / 2);
	}
	.plan-category .btn:nth-child(n) {
		margin-right: 10px;
	}
	.plan-category .btn:nth-child(2n) {
		margin-right: 0;
	}
}
@media (min-width: 768px) {
	.plan-box {
		margin-top: 60px;
	}
	.plan-wrapper .slick-prev, .plan-wrapper .slick-next {
		width: 40px;
		height: 40px;
	}
	.plan-wrapper .slick-prev {
		left: -50px;
	}
	.plan-wrapper .slick-next {
		right: -50px;
	}
	.plan-wrapper {
		margin-top: 3em;
		margin-bottom: 3em;
	}
}
/* ==========================================================================
   CONTACT / FOOTER (COLOPHON)
========================================================================== */
/*#contact {
	font-family: var(--font-serif);
	background-image: url(../img/common/footer_bg.jpg);
	background-size: cover;
	background-position: center center;
	position: relative;
	color: #fff;
	letter-spacing: .1em;
	padding: 80px 0;
	overflow: hidden;
}
#contact:before {
	content: '';
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	-webkit-mix-blend-mode: multiply;
	mix-blend-mode: multiply;
	background-color: rgba(15, 30, 49, .6);
}
#contact .tel {
	font-size: 2.6em;
	letter-spacing: .1em;
}
#contact .tel-tit {
	line-height: 2.5em;
}
#contact .tel span {
	font-size: .8em;
	display: inline-block;
	margin-right: .5em;
}
#contact hr {
	margin: 2em auto;
}
@media (min-width: 768px) {
	#contact {
		padding: 80px 0;
	}
}
.page-top-box {
	font-size: .8em;
	padding: 2rem 0;
	letter-spacing: .2em;
	font-family: var(--font-en);
}
#colophon {
	font-family: var(--font-serif);
	letter-spacing: .1em;
	padding: 60px 0 15px;
	background-color: var(--c-main);
	color: #fff;
}
#colophon .brand-box {
	padding: 0 2em;
}
#colophon .brand-logo {
	max-width: 280px;
	margin-bottom: 1.5em;
}
#colophon .copy-right {
	font-family: 'Noto Sans JP', var(--font-base);
	line-height: 1.5em;
	margin-top: 30px;
	font-size: .8em;
	letter-spacing: .15em;
}
#colophon .address {
	letter-spacing: .2em;
	line-height: 2em;
	font-size: .8em;
}
#colophon .sns-btn {
	padding-left: 0;
	margin-top: 30px;
	line-height: 2em;
}
#colophon .sns-btn li {
	list-style: none;
	display: inline-block;
}
#colophon .sns-btn li a {
	display: block;
	text-align: center;
	color: #333;
	background-color: #fff;
	margin-right: .5em;
	width: 35px;
	height: 35px;
	font-size: 18px;
	line-height: 35px;
	border-radius: 50%;
}
#colophon .site-map {
	padding-bottom: 3rem;
}
.footer-link-title {
	pointer-events: none;
	margin-top: .8em;
	margin-bottom: .8em;
	display: block;
	font-size: 1rem;
}
#colophon .sub-menu {
	padding-left: 1.5em;
}
#colophon .sub-menu li {
	list-style: none;
	position: relative;
	font-size: .8em;
	font-family: 'Noto Sans JP', var(--font-base);
	line-height: 2.5em;
}
#colophon .sub-menu li::before {
	display: inline-block;
	content: "―";
	position: absolute;
	width: 1rem;
	left: -1.2rem;
	text-align: center;
}
#colophon .sub-menu li:has(a[href*="pastry-l"])::before, #colophon .sub-menu li:has(a[href*="anvop"])::before {
	content: "―";
}
#colophon .usj-logo img {
	margin: 1em auto;
}
#colophon .usj-logo img.hotel {
	max-width: 560px;
}
#colophon .universal-logo {
	display: flex;
	align-items: center;
}
@media (min-width: 768px) {
	.col-md-20 {
		-webkit-box-flex: 0;
		-ms-flex: 0 0 20%;
		flex: 0 0 20%;
		max-width: 20%;
	}
	#colophon .universal-logo a {
		width: 50%;
	}
	.footer-link-title {
		margin-top: 0;
	}
}*/
/* ==========================================================================
   PAGE COMMON
========================================================================== */
#page-head.page {
	min-height: 300px;
	height: 30vh;
	color: #fff;
	position: relative;
	background-size: cover;
	background-position: center center;
}
#page-head.page.video {
	height: 25vh;
	min-height: 300px;
	overflow: hidden;
}
#page-head.page.video.spa {
	height: 50vh;
}
#page-head.page .video-item {
	height: 100%;
	position: absolute;
	top: 50%;
	left: 50%;
	z-index: -1;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
#page-head.page:before {
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	background-color: rgba(0, 0, 0, .5);
}
#page-head.page.video:before {
	background-color: rgba(0, 0, 0, .1);
}
#page-head.page .main-box {
	width: 100%;
	text-align: center;
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
}
#page-head.page .main-box .page-title {
	font-size: 2rem;
	letter-spacing: .1em;
}
#page-head.page .main-box .page-sub-title {
	font-size: .8rem;
}
.page-lead {
	text-align: center;
	font-family: var(--font-serif);
    font-size: 1.2rem;
    line-height: 2;
	letter-spacing: .1em;
}
.page-container {
	margin-top: 2em;
	margin-bottom: 2em;
}
.page-title-row h2 {
	font-family: var(--font-serif);
	font-weight: bold;
	text-align: center;
	line-height: 1.5em;
}
.page-row {
	margin-top: 1em;
	margin-bottom: 1em;
	font-family: var(--font-serif);
	line-height: 2em;
}
.page-row h4 {
	font-family: var(--font-serif);
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 2rem;
}
.page-row h5 {
	font-family: var(--font-serif);
	font-size: 1.2rem;
	margin-bottom: 1rem;
}
.page-row h6 {
	font-family: var(--font-serif);
}
.page-row .indent-box {
	padding-left: 2em;
}
.page-row .content-box {
	padding: 1.5em;
	background-color: var(--c-lightgray);
	margin-top: 1em;
	margin-bottom: 1em;
}
.page-row .content-box p:last-child {
	margin-bottom: 0;
}
@media (min-width: 768px) {
	#page-head.page .video-item {
		height: auto;
		width: 100%;
	}
	#page-head.page.video.spa {
		height: 70vh;
	}
	#page-head.page.video {
		height: 40vh;
		min-height: 500px;
	}
	.page-lead {
		font-size: 1.8rem;
		line-height: 3rem;
	}
	#page-head.page .main-box .page-title {
		font-size: 3rem;
	}
	#page-head.page .main-box .page-sub-title {
		font-size: 1rem;
	}
}
/* ==========================================================================
   ROOM ARCHIVE & ROOM DETAIL
========================================================================== */
.room-rank-bar {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
	text-align: center;
}
.room-rank-bar h3 {
	font-size: 1.6rem;
	margin-bottom: 0;
	letter-spacing: .2em;
	padding-bottom: .3em;
	display: inline-block;
	position: relative;
}
.room-rank-bar h3:before {
	height: 2px;
	width: 2em;
	background-color: #fff;
	content: '';
	position: absolute;
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.room-rank-bar .star {
	width: .8rem;
	height: .8rem;
	margin: .3em;
	display: inline-block;
	color: var(--color-gray);
	background-size: cover;
	background-position: center center;
}
.room-rank-bar .star-group {
	align-items: center;
}
.room-rank-bar .hyphen {
	display: inline-block;
	margin: .3em;
	line-height: 1rem;
	position: relative;
	top: -.4em;
}
.room-rank-bar .star-f {
	background-image: url(../img/common/star-f.svg);
}
.room-rank-bar .star-e {
	background-image: url(../img/common/star-e.svg);
}
.room-rank-bar .star-h {
	background-image: url(../img/common/star-h.svg);
}
.room-archive-dsc-inner {
	width: 80%;
	margin: auto;
	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.room-archive-dsc-box {
	text-align: center;
	position: relative;
	height: 100%;
	width: 100%;
	background-repeat: no-repeat;
}
.room-archive-dsc-box:before {
	content: '';
	position: absolute;
	height: 100%;
	width: 100%;
	top: 0;
	left: 0;
	background-color: rgba(255, 255, 255, .85);
}
.room-archive-dsc-box, .room-archive-img {
	min-height: 250px;
	background-position: center center;
	background-size: cover;
}
.room-archive-dsc-box.collabo03 {
	min-height: 350px;
}
.room-archive-dsc-box.collabo04 {
	min-height: 400px;
}
.room-archive-img {
	min-height: 280px;
	overflow: hidden;
	position: relative;
}
.room-archive-img .img-bg {
	height: 100%;
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	background-color: #111;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	content: '';
	-webkit-transition: all ease .3s;
	transition: all ease .3s;
}
.room-archive-img .img-bg.blur {
	opacity: .2;
	filter: blur(3px);
}
.room-archive-img:hover .img-bg {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: all ease .3s;
	transition: all ease .3s;
}
.room-archive-dsc-box .room-title {
	font-size: 2rem;
	letter-spacing: .1em;
}
.room-archive-dsc-box .room-subtitle {
	margin-bottom: 1.5rem;
	font-family: var(--font-serif);
}
.room-archive-dsc-box .dsc {
	font-size: 1rem;
	line-height: 2rem;
}
.room-archive-dsc-box .other {
	margin-top: 1rem;
	letter-spacing: .1em;
	font-size: .8rem;
}
#standard .standard-box {
	color: #fff;
	margin-bottom: 40px;
}
#standard .room-archive-dsc-box:before {
	background-color: rgba(0, 0, 0, .7);
}
.room-navigation span {
	display: inline-block;
	padding-left: .5rem;
	padding-right: .5rem;
	letter-spacing: .1em;
	font-size: .8rem;
}
#luxuryfloor .room-archive-img {
	min-height: 120px;
}
#mujiroom .room-archive-img {
	min-height: 120px;
}
#standard01 .dsc.standard {
	margin-top: 2em;
	margin-bottom: 2em;
	font-size: 1.2rem;
	line-height: 2.5rem;
	letter-spacing: .1em;
}
#standard01 .room-subtitle {
	margin-bottom: 0;
}
#standard .room-archive-dsc-box {
	min-height: 450px;
}
.sesami-logo {
	margin-top: 20px;
}
.sesami-logo.single {
	margin: 20px;
}
@media (min-width: 768px) {
	.room-archive-dsc-box, .room-archive-img {
		min-height: 350px;
	}
	#standard01 .room-archive-dsc-box, #standard01 .room-archive-img {
		min-height: 300px;
	}
	.room-rank-bar h3 {
		font-size: 3rem;
	}
	.room-archive-dsc-box .room-title {
		font-size: 3rem;
	}
	.room-rank-bar .star {
		width: 1rem;
		height: 1rem;
	}
	#luxuryfloor .room-archive-img {
		min-height: 300px;
	}
	#mujiroom .room-archive-img {
		min-height: 300px;
	}
	.room-archive-dsc-box, .room-archive-img {
		min-height: 550px;
	}
	.room-archive-dsc-box .dsc {
		font-size: 1.2rem;
		line-height: 2.5rem;
		letter-spacing: .1em;
	}
	.room-archive-dsc-box .room-subtitle {
		margin-bottom: 3rem;
	}
	#standard .standard-box {
		margin-top: 80px;
		margin-bottom: 80px;
	}
	.room-rank-bar {
		text-align: center;
		padding-top: 2.5rem;
		padding-bottom: 2.5rem;
	}
	.room-rank-bar h3 {
		font-size: 2rem;
	}
	.room-archive-dsc-box .other {
		margin-top: 2rem;
		font-size: 1rem;
	}
	.room-navigation span {
		font-size: 1rem;
	}
}
.single-room .room_title {
	letter-spacing: .1em;
	font-size: 2rem;
	margin-bottom: 0;
}
.single-room .room_sub_title {
	font-family: var(--font-serif);
	font-size: .8rem;
}
#room-slider, #spa-slider {
	margin-bottom: 0;
}
.room-navigation a {
	display: block;
	line-height: 2.5em;
	position: relative;
}
.room-navigation a.active:before {
	width: 2em;
	height: 1.5px;
	background-color: #fff;
	position: absolute;
	content: '';
	left: 50%;
	bottom: 0;
	transform: translateX(-50%);
}
.room-slider-box {
	position: relative;
}
.room-slider-box .theme {
	font-family: var(--font-base);
	position: absolute;
	color: #fff;
	z-index: 1;
	top: 10%;
	right: 5%;
	font-size: 1rem;
	letter-spacing: .2rem;
	font-weight: 200;
}
.room-slider-box .theme:before {
	position: absolute;
	content: '';
	width: 4rem;
	height: 1px;
	background: #fff;
	top: 50%;
	left: -6rem;
}
.room-slider-item {
	height: 71vh;
	max-height: 800px;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.room-slider-box .slick-prev, .room-slider-box .slick-next {
	border: 1px solid #fff;
	border-radius: 100%;
	width: 40px;
	height: 40px;
}
.room-slider-box .slick-prev:before, .room-slider-box .slick-next:before {
	font-family: "Font Awesome 5 Free";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-weight: 900;
	font-size: 12px;
}
.room-slider-box .slick-prev {
	left: 3%;
	z-index: 1;
}
.room-slider-box .slick-prev:before {
	content: '\f053';
}
.room-slider-box .slick-next {
	right: 3%;
	z-index: 1;
}
.room-slider-box .slick-next:before {
	content: '\f054';
}
.room-slider-box .slick-dots {
	bottom: 25px;
}
.single-room .concept-box {
	text-align: center;
	font-family: var(--font-serif);
	line-height: 3rem;
	font-size: 1rem;
	letter-spacing: .1em;
}
.room-slider-box .slick-dots li button:before {
	font-size: 12px;
}
.room-slider-box .slick-dots li.slick-active button:before {
	color: #fff;
}
.room-slider-logo {
	display: flex;
	position: absolute;
	top: 50%;
	left: 50%;
	width: 700px;
	max-width: 100%;
	padding: 0 50px;
	transform: translate(-50%, -50%);
}
.room-slider-logo img {
	width: 100%;
}
.single-room .detail-box {
	padding: 2em;
	line-height: 1.8rem;
	letter-spacing: .1em;
	font-weight: 300;
	margin-top: 80px;
	border: 1px solid var(--c-main);
}
.single-room .detail-box span {
	font-weight: 400;
}
.single-room .detail-box .row {
	margin-top: 1.5rem;
	margin-bottom: 1.5rem;
}
.single-room .feature-box {
	margin-top: 80px;
	font-family: var(--font-serif);
}
.feature-box .img-wrapper {
	margin-bottom: 1em;
}
.feature-box .img-wrapper .img-bg-box {
	position: relative;
	background-size: cover;
	background-position: center center;
}
.feature-box .img-wrapper .img-bg-box:before {
	display: block;
	content: '';
	width: 100%;
	padding-top: 66.64%;
}
.collaboration .feature-box .img-wrapper .img-bg-box {
	background-size: contain;
}
.collaboration .feature-box .img-wrapper .img-bg-box:before {
	padding-top: 100%;
}
.postid-206.single-room .feature-box {
	margin-top: 0;
}
.single-room .feature-title {
	text-align: center;
	font-family: var(--font-en);
	font-weight: bold;
	letter-spacing: .05em;
	margin-bottom: 2em;
}
.single-room .feature-item {
	margin: 8px;
	margin-bottom: 1.5em;
	padding: 1em;
	border: 1px solid #ddd;
}
.single-room .feature-item img {
	margin-bottom: 1.5rem;
}
.single-room .feature-item .feature-subtitle {
	font-family: var(--font-en);
	font-weight: bold;
	line-height: 2em;
	text-align: center;
	margin: auto auto 1.5em auto;
	display: inline-block;
}
.single-room .feature-item .dsc {
	text-align: left;
	line-height: 1.8em;
	font-size: .8rem;
}
.detail-box > div > div:last-child {
	font-size: .8rem;
}
#room-inpage-link {
	text-align: center;
	padding-left: 0;
	margin-bottom: 0;
}
#room-inpage-link li {
	display: inline-block;
}
#room-inpage-link li a {
	display: block;
	font-size: .8rem;
	letter-spacing: .1em;
	padding: 1em 2em;
	color: var(--c-LIBERgray1);
	border: 1px solid var(--c-LIBERgray1);
	margin: .5em;
}
#luxuryfloor .btn.more, #mujiroom .btn.more {
	padding-top: 2em;
	padding-bottom: 2em;
	max-width: 400px;
	width: 100%;
}
@media (min-width: 768px) {
	.single-room .room_title {
		font-size: 2.5rem;
	}
	.single-room .room_sub_title {
		font-size: 1rem;
	}
	.room-slider-box .theme {
		font-size: 1.5rem;
	}
	.detail-box > div > div:last-child {
		font-size: 1rem;
	}
	.single-room .feature-item {
		padding: 2em;
	}
	.single-room .feature-item .dsc {
		font-size: 1rem;
	}
}
/* ==========================================================================
   SPA RELAXATION
========================================================================== */
.spa-price-box {
	text-align: left;
	background: var(--c-lightgray);
	padding: 30px;
	border-radius: 3px;
	margin-bottom: 50px;
}
.spa-price-box .spa-price-title {
	display: inline-block;
	color: #fff;
	background: var(--c-LIBERgray1);
	font-size: .8rem;
	font-weight: bold;
	letter-spacing: .1em;
	border: 1px solid var(--c-LIBERgray1);
	padding: .5em 2em;
	line-height: 1em;
}
.spa-price-box ul {
	padding-left: 0;
	margin-bottom: 10px;
	padding-bottom: .5em;
	border-bottom: 1px solid #ddd;
}
.spa-price-box ul li {
	display: block;
	padding-right: 2em;
	list-style: none;
}
.spa_sub_title {
	font-family: var(--font-base);
	font-weight: 300;
	font-size: 1rem;
	letter-spacing: .1em;
}
.spa_title {
	font-size: 2rem;
	letter-spacing: .1em;
	margin-bottom: 0;
}
.spa-sub-title {
	font-family: var(--font-serif);
	font-size: 1rem;
}
.spa-description {
	font-weight: bold;
	line-height: 2em;
}
.spa-concept-box {
	font-family: var(--font-serif);
	text-align: center;
	line-height: 3em;
	letter-spacing: .1em;
}
.spa-concept-box h3 {
	line-height: 2rem;
	font-family: serif;
	margin-bottom: 2em;
	font-size: 1.2rem;
}
.spa-concept-box h4 {
	line-height: 2rem;
	font-family: serif;
	margin-bottom: 2em;
	font-size: 1.0rem;
}
.single-spa-relaxation .animated.animated02 {
	animation-duration: 2s;
}
.spa-img-wrapper {
	height: 100%;
}
.spa-img-wrapper .img-bg {
	padding-top: 62%;
	height: 100%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.spa-dsc-wrapper .dsc {
	margin: auto;
	font-family: var(--font-serif);
	font-size: 1rem;
	color: #fff;
	line-height: 2rem;
	letter-spacing: .1em;
	padding: 3em 2em;
}
.spa-dsc-wrapper .dsc h3 {
	font-family: var(--font-serif);
	text-align: center;
	margin-bottom: 1.5em;
}
.spa-dsc-wrapper {
	position: relative;
	height: 100%;
}
.spa-box {
	margin-bottom: 4em;
}
.spa-box h3 {
	font-size: 1.5rem;
	font-feature-settings: "palt";
	letter-spacing: .15em;
	font-family: var(--font-serif);
	text-align: center;
	margin-bottom: .8em;
}
.spa-box .img-bg-box-wrapper {
	display: block;
	overflow: hidden;
	margin-bottom: 1em;
}
.spa-box .img-bg-box {
	position: relative;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.spa-box .img-bg-box:before {
	padding-top: 75%;
	width: 100%;
	display: block;
	content: '';
}
.spa-box a .img-bg-box:hover {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.spa-box .dsc {
	font-family: var(--font-serif);
	text-align: center;
	line-height: 1.8em;
}
#spa-info {
	display: block;
	margin-left: auto;
	margin-right: auto;
	width: 620px;
	max-width: 100%;
	border: medium none;
}
@media (min-width: 768px) {
	.spa-dsc-wrapper {
		min-height: 570px;
	}
	.spa-dsc-wrapper.wrapper02 {
		min-height: 350px;
	}
	.spa-dsc-wrapper .dsc {
		position: absolute;
		top: 50%;
		left: 50%;
		width: 100%;
		-webkit-transform: translate(-50%, -50%);
		transform: translate(-50%, -50%);
	}
	.spa_title {
		font-size: 3rem;
		letter-spacing: .2em;
	}
	.spa_sub_title {
		font-size: 1.5rem;
	}
	.spa-concept-box h3 {
		font-size: 1.75rem;
		line-height: 2em;
	}
	.spa-img-wrapper .img-bg {
		padding-top: 80%;
	}
	.spa-img-wrapper.wrapper02 .img-bg {
		padding-top: 62%;
	}
	.spa-dsc-wrapper .dsc {
		max-width: 500;
		line-height: 3rem;
	}
}
/* ==========================================================================
   SALON & TERRACE
========================================================================== */
.salon-menu-box {
	margin-top: 3em;
	margin-bottom: 3em;
	font-family: var(--font-serif);
}
.salon-menu-box ul {
	display: flex;
	flex-wrap: wrap;
	padding: 0;
	margin: 1em 0;
}
.salon-menu-box ul li {
	flex: 0 0 100%;
	list-style: none;
	letter-spacing: 0.1em;
	font-weight: 700;
	text-align: center;
	padding: .2em 1em;
}
.salon-reserve-box {
	font-size: .8rem;
	display: block;
	font-family: var(--font-serif);
	letter-spacing: .1em;
	color: #fff;
	background-color: #B3ADA0;
	padding: 1.5em;
	border-radius: 3px;
}
.salon-reserve-box:hover {
	color: #fff;
	opacity: .7;
}
.salon-reserve-box span {
	display: inline-block;
	font-size: 1rem;
	font-weight: bold;
	letter-spacing: .15em;
	margin-bottom: .3em;
}
@media (min-width: 768px) {
	.salon-menu-box ul {
		flex-wrap: nowrap;
	}
	.salon-menu-box ul li {
		flex: 0 0 50%;
		text-align: left;
	}
	.salon-reserve-box {
		font-size: 1rem;
	}
	.salon-reserve-box span {
		font-size: 1.45rem;
	}
}
.terrace-img-wrapper .img-bg {
	padding-top: 62%;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.terrace-dsc-wrapper .dsc {
	font-size: 1rem;
	line-height: 2.5rem;
	letter-spacing: .1em;
}
.terrace-dsc-wrapper {
	padding: 2em 3em;
	color: #fff;
	font-family: var(--font-serif);
}
/* ==========================================================================
   FAQ & ACCESS & FACILITIES
========================================================================== */
.faq-box {
	margin-bottom: 2rem;
}
.faq-box .faq-title {
	color: #fff;
	background-color: var(--color-gray);
	padding: 1em;
	margin-bottom: 1.5rem;
}
.faq-box .faq-title h4 {
	margin-bottom: 0;
	font-size: 1rem;
}
.faq-box .faq-inner {
	padding-top: 1rem;
	padding-bottom: 1rem;
	font-weight: 600;
	letter-spacing: .1em;
	line-height: 1.6rem;
	font-size: .8rem;
}
.faq-box .question, .faq-box .answer {
	position: relative;
	padding-left: 2rem;
	padding-right: 4rem;
	margin-bottom: 1rem;
}
.faq-box .answer {
	display: none;
}
.faq-box .answer:before, .faq-box .question:before {
	font-family: var(--font-base);
	font-size: 2rem;
	font-weight: 300;
	position: absolute;
	top: 50%;
	left: 0;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.faq-box .question .arrow:before, .faq-box .question .arrow:after {
	content: '';
	width: 15px;
	height: 1px;
	position: absolute;
	top: 50%;
	right: 15px;
	background-color: #111;
	transition: ease-in .1s all;
}
.faq-box .question .arrow:after {
	transform: rotate(-90deg);
}
.faq-box .question.active .arrow:after {
	transform: rotate(0);
	transition: ease-in .3s all;
}
.faq-box .answer {
	padding: 2rem 2rem 2rem 4rem;
	margin-top: 1rem;
	margin-bottom: 2rem;
	background-color: var(--c-lightgray);
	font-weight: 400;
	border-radius: 4px;
}
.faq-box .answer a {
	text-decoration: underline;
	color: var(--color-gray);
}
.faq-box .answer span {
	font-family: var(--font-base);
	font-weight: 300;
	font-size: 1.8rem;
	position: absolute;
	top: 50%;
	left: 2rem;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.faq-box .question:before {
	content: 'Q.';
	color: var(--color-gray);
}
.faq-index {
	padding-left: 0;
	text-align: center;
	margin-bottom: 60px;
}
.faq-index li {
	list-style: none;
	display: inline-block;
	font-size: .8rem;
	letter-spacing: .1em;
	margin-top: .5em;
	margin-bottom: .5em;
}
.faq-index li.active {
	background-color: var(--color-gray);
	color: #fff;
}
.faq-index li a {
	display: block;
	padding: .8em;
}
@media (min-width: 768px) {
	.sticky {
		position: sticky;
	}
	.faq-index {
		text-align: left;
		margin-bottom: 0;
		top: 0;
	}
	.faq-index li {
		display: block;
		margin-top: 0;
		margin-bottom: .8em;
		font-size: 1rem;
	}
	.faq-box .question {
		margin-bottom: 0;
	}
	.faq-box .faq-inner {
		font-size: 1rem;
		line-height: 2rem;
	}
	.faq-box .faq-title h4 {
		font-size: 1.5rem;
	}
	.faq-box .faq-title {
		margin-bottom: 3rem;
	}
}
.access-box {
	margin-bottom: 2rem;
}
.access-box .access-title {
	color: #fff;
	background-color: var(--c-LIBERgray1);
	padding: 1em;
	margin-top: 1rem;
	margin-bottom: 1.5rem;
}
.access-box .access-inner h3, .access-box .access-inner p, .access-box .access-title h4 {
	margin-bottom: 0;
	font-family: var(--font-en);
}
.access-box .access-inner h3 {
	line-height: 2rem;
	font-size: 1.2rem;
}
.access-box .access-title h4 {
	font-size: 1rem;
}
.access-box .access-inner h5 {
	margin-bottom: 0;
	font-family: var(--font-en);
	line-height: 2rem;
	font-size: 1rem;
	letter-spacing: 0;
}
.access-box .access-inner h6 {
	line-height: 2.5rem;
	margin-bottom: 0;
	font-family: var(--font-serif);
}
.access-box .access-inner {
	padding-top: 1rem;
	padding-bottom: 1rem;
	font-weight: 600;
	letter-spacing: .1em;
	line-height: 2em;
}
.dynPersons br {
	display: none;
}
.dynPersons #text {
	margin-right: 2rem;
	display: inline-block;
}
.bus_price {
	border: 1px solid #ccc;
	table-layout: fixed;
	width: 100%;
	text-align: center;
	line-height: 1.5em;
	margin-bottom: 1em;
	font-family: var(--font-en);
}
.bus_price td, .bus_price th {
	border: 1px solid #ccc;
	padding: 1em;
}
.bus_price th {
	color: #fff;
	width: 2em;
	background-color: rgba(15, 30, 49, 0.6);
}
.bus_price caption {
	caption-side: top;
	color: rgba(15, 30, 49, 1);
}
@media (min-width: 768px) {
	.access-box .access-inner h3 {
		font-size: 1.75rem;
		line-height: 3rem;
	}
	.access-box .access-title h4 {
		font-size: 1.5rem;
	}
	.access-box .access-inner h5 {
		font-size: 1.25rem;
		line-height: 2.3rem;
		letter-spacing: 0.1em;
	}
	.access-box .access-title {
		margin-top: 2rem;
		margin-bottom: 3rem;
	}
}
.single-facility .map_index {
	display: flex;
	justify-content: center;
	margin: 0px;
	padding: 0;
	font-family: var(--font-base);
	font-size: 1.5rem;
}
.single-facility .map_index li {
	display: block;
	list-style: none;
	margin: .5em;
	text-align: center;
	border: 1px solid var(--c-gold);
}
.single-facility .map_index li a {
	display: block;
	padding: .5em 3em;
	color: var(--c-gold);
}
.single-facility .floor-map {
	margin-bottom: 60px;
	padding-top: 60px;
	padding-bottom: 60px;
}
.single-facility .floor-map img {
	mix-blend-mode: multiply;
}
.single-facility .facility-item .title, .single-facility .facility-item .sub_title {
	text-align: center;
	margin-bottom: 0;
}
.single-facility .facility-item img {
	margin-bottom: 1em;
}
.single-facility .facility-item p {
	margin-bottom: 0;
}
.single-facility .facility-item .time {
	margin-top: 1em;
	margin-bottom: 1em;
}
.facility-box {
	text-align: center;
	margin-bottom: 4em;
}
.facility-box h3 {
	font-size: 1.5rem;
	font-feature-settings: "palt";
	line-height: 1.2em;
	font-family: var(--font-base);
}
.facility-box h3 .jp {
	font-size: .8em;
	font-weight: bold;
}
.facility-box h3 small {
	font-size: 1rem;
	line-height: 1.5em;
}
.facility-box .img-bg-box-wrapper {
	display: block;
	overflow: hidden;
	margin-bottom: 1em;
}
.facility-box .img-bg-box {
	position: relative;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.facility-box .img-bg-box:before {
	padding-top: 66.64%;
	width: 100%;
	display: block;
	content: '';
}
.facility-box a .img-bg-box:hover {
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.facility-box .dsc {
	text-align: left;
	line-height: 1.8em;
}
/* ==========================================================================
   RESTAURANTS & FUNCTION & ANNIVERSARY
========================================================================== */
.post-type-archive-restaurant .concept-four-box {
	margin: 8px;
	padding: 160px;
}
.post-type-archive-restaurant .concept-four-box .sub-box p {
	margin-bottom: .5em;
	line-height: 1.5em;
}
@media (min-width: 768px) {
	.post-type-archive-restaurant .concept-four-box {
		padding: 200px 1em;
	}
}
.restaurant-price-box {
	text-align: left;
	background: var(--c-lightgray);
	padding: 30px;
	border-radius: 3px;
	margin-bottom: 50px;
}
.restaurant-price-box .restaurant-price-title {
	display: inline-block;
	color: #fff;
	background: var(--c-LIBERgray1);
	font-size: .8rem;
	font-weight: bold;
	letter-spacing: .1em;
	border: 1px solid var(--c-LIBERgray1);
	padding: .5em 2em;
	line-height: 1em;
}
.restaurant-price-box ul {
	padding-left: 0;
	margin-bottom: 0;
	padding-bottom: .5em;
	border-bottom: 1px solid #ddd;
}
.restaurant-price-box ul li {
	display: block;
	padding-right: 2em;
}
.restaurant-price-inner-box:last-child {
	margin-top: 30px;
}
.restaurant-price-inner-box:first-child {
	margin-top: 0px;
}
.restaurant-anno-box {
	padding: 2rem;
	margin-top: 1rem;
	margin-bottom: 2rem;
	background-color: #f0f0f0;
	font-weight: 400;
	border-radius: 4px;
	font-size: .8rem;
	line-height: 2em;
}
.restaurant-anno-box h6 {
	font-weight: bold;
}
.restaurant_info dt {
	float: left;
	width: 20%;
}
.page-function #page-head {
	height: 50vh;
}
.page-function .concept-box {
	text-align: center;
	font-family: var(--font-serif);
	line-height: 3rem;
	font-size: 1rem;
	letter-spacing: .1em;
}
.function-tab-group {
	display: flex;
	padding-left: 0;
	margin-bottom: 0;
}
.function-tab-group li {
	font-feature-settings: "palt"1;
	font-family: var(--font-en);
	font-weight: bold;
	list-style: none;
	width: 50%;
	text-align: center;
	padding: 1em;
	border: 1px solid #ddd;
}
.function-tab-group li.active {
	border-bottom: none;
	background-color: #f0f4f5;
}
.function-panel-group {
	padding: 15px;
	background-color: #f0f4f5;
	border: 1px solid #ddd;
	border-top: none;
	overflow: hidden;
}
.function-panel-group .panel {
	display: none;
}
.function-panel-group .panel.is-show {
	display: block;
}
.function-slider-item {
	width: 100%;
}
.function-slider-img {
	position: relative;
	background-position: center center;
	background-size: cover;
}
.function-slider-img:before {
	content: '';
	width: 100%;
	display: block;
	padding-top: 56.25%;
}
.function-slider-wrapper, .function-nav-slider-wrapper {
	display: none;
	position: relative;
}
.function-slider-wrapper.initialized, .function-nav-slider-wrapper.initialized {
	display: block;
}
.function-slider div.caption {
	text-align: center;
	background: #fff;
	padding: .8em;
	font-size: .8rem;
	letter-spacing: .1em;
}
.function-nav-slider div.caption {
	display: none;
}
.page-function .slick-prev, .page-function .slick-next {
	border: 1px solid var(--c-LIBERgray1);
	border-radius: 100%;
	width: 30px;
	height: 30px;
}
.page-function .slick-prev:before, .page-function .slick-next:before {
	font-family: "Font Awesome 5 Free";
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	font-weight: 900;
	font-size: 12px;
	color: var(--c-LIBERgray1);
}
.page-function .slick-prev {
	left: -35px;
	z-index: 1;
}
.page-function .slick-prev:before {
	content: '\f053';
}
.page-function .slick-next {
	right: -35px;
	z-index: 1;
}
.page-function .slick-next:before {
	content: '\f054';
}
@media (max-width: 768px) {
	.page-function .slick-prev, .page-function .slick-next {
		width: 24px;
		height: 24px;
	}
	.page-function .slick-next {
		right: -10px;
	}
	.page-function .slick-prev {
		left: -10px;
	}
}
.function-panel-group .dsc-box {
	padding-top: 1em;
	padding-bottom: 1em;
	letter-spacing: .1em;
	line-height: 1.8em;
}
.function-panel-group .summary-box h4 {
	letter-spacing: .1em;
	font-family: var(--font-en);
	font-weight: bold;
}
.function-panel-group .dsc-box img {
	display: block;
	margin-top: 1em;
	margin-bottom: 1em;
}
.function_item {
	border: 1px solid #ccc;
	padding: 60px;
}
@media (min-width: 768px) {
	.function-panel-group {
		padding: 60px;
	}
}
@media (max-width: 768px) {
	.function_item {
		padding: 60px 0;
	}
}
/* ANNIVERSARY PLAN */
.wpcf7 {
	max-width: 100%;
}
dt.a_plan_title {
	margin-bottom: 1rem;
}
dt.price {
	width: 50%;
	float: left;
	display: inline-block;
}
dd.num {
	width: 50%;
	display: inline-block;
	margin-bottom: 1rem;
}
.ani_info dt {
	width: 100%;
	display: inline-block;
	margin-top: 1rem;
}
@media screen and (min-width: 768px) {
	.ani_info dd {
		width: 50%;
		display: inline-block;
		margin-bottom: 1rem;
	}
}
.ani_wrap {
	border: 1px solid #ccc;
	padding: 50px;
}
.wpcf7 input[type=number] {
	width: 60px;
}
table.guest_info_day, table.guest_info_day tr {
	width: 100%;
}
table.guest_info_day td {
	width: auto;
	display: inline-block;
	padding: 5px 10px;
}
table.guest_info_day td .num_input {
	width: auto;
	display: inline-block;
}
.ani_title {
	font-size: 0.7em;
}
.btn-outline-primary, .wpcf7 input[type=submit] {
	margin-top: 60px;
	color: #09203c;
	border-color: #09203c;
}
.btn-outline-primary:hover, .wpcf7 input:hover[type=submit] {
	background-color: #09203c;
	border-color: #09203c;
}
/* ==========================================================================
   VIDEO RATIO & GALLERY
========================================================================== */
@media (min-aspect-ratio: 16/9) {
	.page-hero-head .video-item, #page-head.page .video-item {
		width: 100%;
		height: auto;
	}
}
@media (max-aspect-ratio: 16/9) {
	.page-hero-head .video-item, #page-head.page .video-item {
		width: auto;
		height: 100%;
	}
}
@media (min-width: 768px) {
	.post-type-archive-restaurant #page-head.page .video-item, .page-id-307 #page-head.page .video-item {
		width: 100%;
		height: auto;
	}
	.single-spa-relaxation #page-head.page .video-item {
		height: auto;
		width: auto;
	}
}
.gallery-box {
	display: flex !important;
	flex-flow: wrap;
}
.gallery-box .gallery-item {
	box-sizing: border-box;
	flex-basis: 25%;
	max-width: 25%;
	position: relative;
	overflow: hidden;
	cursor: pointer;
	border: 2px solid #fff;
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.gallery-box .gallery-item:before {
	padding-top: 100%;
	display: block;
	width: 100%;
	content: '';
}
.gallery-box .gallery-item .gallery-dsc-box {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	display: block;
	content: '';
	color: #fff;
	background: rgba(15, 30, 49, .9);
	-webkit-transform: translateY(100%);
	transform: translateY(100%);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.gallery-box .gallery-item:hover .gallery-dsc-box {
	-webkit-transform: translateY(0%);
	transform: translateY(0%);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.gallery-box .gallery-item .gallery-dsc-box .gallery-dsc {
	content: '';
	position: absolute;
	top: 50%;
	left: 50%;
	width: 100%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
	padding: 0em;
	font-size: .8rem;
}
.gallery-slider .slick-prev, .gallery-slider .slick-next {
	width: 80px;
	height: 80px;
	overflow: hidden;
	z-index: 5;
}
.gallery-slider .slick-prev:before, .gallery-slider .slick-next:before {
	position: absolute;
	font-weight: 900;
	font-family: "Font Awesome 5 Free";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
}
.gallery-slider .slick-next:before {
	content: '\f054';
	top: 50%;
	left: 80%;
	transform: translate(-50%, -50%);
}
.gallery-slider .slick-prev:before {
	content: '\f053';
	top: 50%;
	right: 80%;
	transform: translate(50%, -50%);
}
.gallery-slider .slick-prev:after, .gallery-slider .slick-next:after {
	background: rgba(79, 91, 104, 0.85);
	border-radius: 100%;
	width: 100%;
	height: 100%;
	display: block;
	content: '';
	z-index: -1;
	position: absolute;
	top: 0;
	left: 0;
}
.gallery-slider .slick-prev:after {
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}
.gallery-slider .slick-next:after {
	-webkit-transform: translateX(50%);
	transform: translateX(50%);
}
.gallery-slider .slick-prev {
	left: 0px;
	z-index: 1;
}
.gallery-slider .slick-next {
	right: 0px;
}
@media (min-width: 768px) {
	.gallery-box .gallery-item .gallery-dsc-box .gallery-dsc {
		padding: 2em;
		font-size: 1rem;
	}
}
/* MODAL / PAGENATION / NOTICES */
.iziModal {
	box-shadow: none;
}
.modal .img-bg-box {
	background-position: center center;
	background-size: cover;
	background-repeat: no-repeat;
}
.modal .img-bg-box:before {
	padding-top: 62%;
	width: 100%;
	display: block;
	content: '';
}
.modal-dsc {
	color: #fff;
	padding: 1em;
	font-size: .8rem;
	letter-spacing: .1em;
}
.iziModal-navigate > button {
	width: 12%;
}
.iziModal-navigate-next, .iziModal-navigate-prev {
	background: none;
}
.iziModal-navigate-prev:before, .iziModal-navigate-next:before {
	position: absolute;
	font-weight: 900;
	font-size: 18px;
	color: #fff;
	font-family: "Font Awesome 5 Free";
	-moz-osx-font-smoothing: grayscale;
	-webkit-font-smoothing: antialiased;
	display: inline-block;
	font-style: normal;
	font-variant: normal;
	text-rendering: auto;
	line-height: 1;
}
.iziModal-navigate-next:before {
	content: '\f054';
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
.iziModal-navigate-prev:before {
	content: '\f053';
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
}
#swipebox-top-bar, #swipebox-bottom-bar, #swipebox-overlay {
	background-color: rgba(0, 0, 0, .8) !important;
}
#swipebox-top-bar {
	top: auto;
	bottom: 50px;
	background-color: rgba(0, 0, 0, .4) !important;
	line-height: 1.5em;
	font-size: .8rem;
	z-index: 10;
	display: flex;
	align-items: center;
}
#swipebox-top-bar br {
	display: none;
}
#swipebox-bottom-bar {
	bottom: 0;
	z-index: 1;
}
#swipebox-slider .slide .swipebox-inline-container, #swipebox-slider .slide .swipebox-video-container, #swipebox-slider .slide img {
	max-height: 70%;
}
#swipebox-top-bar.visible-bars, #swipebox-bottom-bar.visible-bars {
	-webkit-transform: translate3d(0, 0, 0);
	transform: translate3d(0, 0, 0);
}
.pagination {
	justify-content: center;
	margin-top: 3rem;
	border-radius: 0;
}
.page-item:first-child .page-link, .page-item:last-child .page-link {
	border-radius: 0;
}
.page-link {
	color: var(--c-LIBERgray1);
}
.page-item.active .page-link {
	background-color: var(--c-LIBERgray1);
	border-color: var(--c-LIBERgray1);
}
.page-link:focus, .page-link:active {
	box-shadow: none;
}
a.colorlink {
	color: var(--c-gold);
}
.attention_frame {
	text-align: center;
	border: 1px solid red;
	padding: 10px;
}
.attention_frame2 {
	text-align: center;
	border: 1px solid var(--c-LIBERgray1);
	padding: 10px;
}
.caution_frame {
	text-align: center;
	border: 1px solid blue;
	padding: 10px;
}
#corona_attention {
	background: var(--c-main);
	color: #fff;
	text-align: center;
	margin: 0 auto;
	font-size: 16px;
	width: 100%;
}
#corona_attention:hover {
	opacity: 0.8;
}
#corona_attention a {
	display: block;
	padding: 20px;
}
.kansai_walker_bn {
	width: 100%;
}
.kansai_walker_bn a {
	width: 100%;
	margin-top: 10px;
}
span.yoyaku_yusen {
	background: #f93246;
	color: #fff;
	font-size: 0.6em;
	padding: 0.3em;
	display: block;
	width: fit-content;
}
br.sp_br {
	display: none;
}
@media (max-width: 768px) {
	br.sp_br {
		display: inline;
	}
}
.form-control:focus, .wpcf7 .wpcf7-validation-errors:focus, .wpcf7 input:focus {
	border-color: var(--c-gold);
	box-shadow: 0 0 0 0.2rem rgba(255, 245, 122, 0.41);
}
.contact_form h3, .contact_form h4, .contact_form p {
	text-align: center;
	font-family: var(--font-serif);
}
.contact_form h3, .contact_form h4 {
	font-weight: bold;
}
.contact_form hr {
	margin: 30px auto;
	height: 1px;
}
.contact_call {
	font-size: 2em;
	font-family: var(--font-serif);
}
.contact_call span {
	font-size: 0.5em;
	display: block;
}
.btn-outline-primary, .wpcf7 input[type=submit] {
	height: 60px;
	font-size: 1.5em;
}
dl.contact_form_wrap > dt {
	margin-top: 40px;
}
dl.contact_form_wrap > dd {
	margin: 20px 0;
}
span.req {
	background: #ff4343;
	padding: 0.5rem;
	color: #fff;
	border-radius: 0.1em;
	margin-left: 1em;
	font-size: 0.8em;
}
.hr1 {
	margin-top: 0rem;
	margin-bottom: 0rem;
	border-top: 5px solid #FFFFFF;
}
span {
	display: inline-block;
}
.move1 {
	position: relative;
	top: -300px;
	left: 0px;
	width: 1000px;
	height: 100px;
}
.move2 {
	position: absolute;
	top: 0px;
	right: 0px;
	width: 63px;
	height: 88.25px;
}
.move3 {
	position: absolute;
	top: -15px;
	left: 0px;
	width: 63px;
	height: 88.25px;
}
#short_notice {
	background: #bb0000;
	color: #fff;
	text-align: center;
	margin: 0 auto;
	font-size: 16px;
	width: 100%;
}
#short_notice a {
	display: block;
	padding: 20px;
}
.tab_item {
	font-size: 13px;
}

/* ==========================================================================
   2025 FUNCTION ROOM 
========================================================================== */
table.function_tein {
	font-size: small;
	text-align: center;
}
.fanction-price {
	background-color: white;
	padding: 40px;
	margin-top: 40px;
}
table.function-price01 {
	margin: 40px 0 20px 0;
	text-align: center;
}
table.function-price02 {
	margin: 20px 0 20px 0;
	text-align: center;
}
.eplan_box {
	background-color: #1D1F3F;
	color: white;
	text-align: center;
	padding: 30px;
}
span.eplan_title {
	font-size: xx-large;
}
span.eplan_price {
	font-size: large;
}
.eplan_left, .eplan_right, .eplan_left02, .eplan_right02 {
	background-color: white;
	text-align: center;
	width: 100%;
	padding: 30px;
}
.eplan_small {
	font-size: small;
}
@media (min-width: 768px) {
	table.function_tein {
		width: 960px;
		height: 200px;
	}
	td.td90 {
		width: 90px;
	}
	table.function-price01, table.function-price02 {
		border-collapse: collapse;
		width: 800px;
	}
	.function_yokonarabi {
		display: flex;
		justify-content: space-around;
	}
	.eplan_box02, .eplan_box03 {
		display: flex;
	}
	.eplan_left, .eplan_right, .eplan_left02, .eplan_right02 {
		margin: 10px;
	}
}
@media screen and (max-width: 768px) {
	table.function_tein {
		width: 600px;
		font-size: x-small;
	}
	table.function-price01 {
		width: 250px;
		font-size: x-small;
	}
	table.function-price02 {
		width: 400px;
		font-size: x-small;
	}
	span.eplan_title {
		font-size: x-large;
	}
	.eplan_left, .eplan_right, .eplan_left02, .eplan_right02 {
		margin-top: 10px;
	}
}
summary {
	display: block;
}
summary::-webkit-details-marker {
	display: none;
}
.take-lh {
	line-height: 3em;
}



.reservation-title-box {
	background-color: #B3ADA0;
	color: var(--c-white);
	text-align: center;
	padding: 1em;
	margin-top: 60px;
	margin-bottom: 1em;
	letter-spacing: .1em;
	position: relative;
}
.reservation-title-box::before {
	content: '';
	position: absolute;
	bottom: -6px;
	left: 50%;
	transform: translateX(-50%);
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #b3ada0 transparent transparent transparent;
}
.reservation-title-box h4 {
	margin-bottom: 0;
	font-size: 1rem;
}