/* COMMON */

@media(min-width:992px){
	.sponly{
		display: none !important;
	}
}

html{font-size: 14px;}
.h1, .h2, .h3, .h4, .h5, .h6, h1, h2, h3, h4, h5, h6{
	font-family: din-condensed, sans-serif;
	font-weight: 400;}

body{
	font-family: 'Noto Sans JP', din-condensed, sans-serif;
	color: #15455e;
}

.overflow-hidden{
	overflow: hidden;
}

#page-wrapper{overflow-x: hidden !important;}
.no-padding{padding: 0;}
section.section{
	padding-top: 40px;
	padding-bottom: 40px;}

section.section.small-gap{
	padding-top: 20px;
	padding-bottom: 20px;}

section.section.big-gap{
	padding-top: 80px;
	padding-bottom: 80px;}

section.section.first{padding-top: 80px;}
section.section.last{padding-bottom: 0;}

main {
	margin-top: 140px;
}

@media (max-width: 991px) {
	main {
		margin-top: 100px;
	}
}

@media (max-width: 767px) {
	main {
		margin-top: 60px;
	}
}

.section-title{
	font-size: 2rem;
	font-weight: 400;
	letter-spacing: .1em;
	margin-bottom: 0;}

.section-title span.subtitle,
.section-sub-title{
	font-size: .8rem;
	letter-spacing: .1em;
	font-weight: 400;
	font-family: a-otf-ryumin-pr6n, serif;
	margin-bottom: 0;}

.section-sub-title{margin-top: .5em;}
sub, sup{font-size: 50%;}
sup{top: -1em;}
.btn{
	border: 1px solid #15455e;
	border-radius: 0;
	padding: .8em 4em;
	color: #0f1e31;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.btn.white{
	border-color: #fff;
	color: #fff;}

.kon_btn{
	background:#0f1e31;
	color: #fff;
    font-size: 1.4em;}

.kon_btn a{
	display:block;
	padding: 10px;}

.tab_content ul.restaurant-link a,
.btn.more{position: relative;}

.tab_content ul.restaurant-link a:after,
.btn.more:after{
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 4px 0 4px 4px;
	border-color: transparent transparent transparent #0f1e31;
	position: absolute;
	content: '';
	top: 50%;
	right: 10%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	}
	.btn.more:hover{
	letter-spacing: .1em;
	padding-left: 5em;
	padding-right: 5em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.tab_content ul.restaurant-link a:hover:after{
	-webkit-animation: btnmore 3s infinite;
	 animation: btnmore 3s infinite;
	 -webkit-transition: ease all .3s;
	transition: ease all .3s;}

.btn.more.back:after{
	right: auto;
	left: 10%;
	border-width: 4px 4px 4px 0px;
	border-color: transparent #0f1e31 transparent transparent;
}

.btn.more.back:hover:after{
	-webkit-animation: btnmoreback 3s infinite;
	 animation: btnmoreback 3s infinite;}

.btn.more:hover:after{
	 -webkit-animation: btnmore 3s infinite;
	 animation: btnmore 3s infinite;
	 -webkit-transition: ease all .3s;
	transition: ease all .3s;}

.btn.focus, .btn:focus, .wpcf7 input.focus[type=submit], .wpcf7 input:focus[type=submit]{
	-webkit-box-shadow:0 0 0 0.2rem rgba(29, 54, 90, 0.25);
	box-shadow:0 0 0 0.2rem rgba(29, 54, 90, 0.25);}

.txt-gold{color: #c9a12c;
	font-weight: bold;
	display: inline-block;
	margin-top: .5em;
	font-size: 1rem;
	font-family: din-condensed, sans-serif;}

.txt-gold:hover{color: #c9a12c;
	opacity: .7;}

.txt-gold2{color: #c9a12c;
	font-weight: bold;
	display: inline-block;
	margin-top: .5em;
	font-size: 1.5rem;
	font-family: din-condensed, sans-serif;}

.txt-gold2:hover{color: #c9a12c;
	opacity: .7;}

.bg-navy{background: rgba(15, 30, 49, 1);}

section{overflow: hidden;}

@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;
  }
}



@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;
  }
}


.tel_btn span{display: block;
	font-size: .8rem;
	letter-spacing: .1em;
	line-height: 1em;
	margin-bottom: .5em;
}
.tel_btn{
	padding: 1.5rem;
	display: block;
	background-color: #111;
	color: #fff;
	text-align: center;
	font-family: a-otf-ryumin-pr6n, serif;
	font-size: 2.5rem;
	letter-spacing: .1em;
	line-height: 1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}
.tel_btn:hover{color: #fff;
	opacity: .7;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.img-link{display: block;
	overflow: hidden;}

.img-link .img-box{
	-webkit-transition: ease .3s all;
	transition: ease .3s all;}

.img-link:hover .img-box{
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;}

.nolink,
.nolink a{pointer-events: none;}

a{color: inherit;}
a:hover{
	color: inherit;
	text-decoration: none;}

.btn.big-btn{
	margin: 2em auto;
	max-width: 100%;
	width: 450px;
	padding: 1em 2em;
	letter-spacing: .1em;
	font-size: 1.5rem;
	position: relative;
	overflow: hidden;}

.btn.big-btn:before{
	position: absolute;
	width: 100%;
	height: 100%;
	content: '';
	top: 0;
	left:-100%;
	background-color: rgba(255,255,255,.2);
	 -webkit-transition: ease all .3s;
	transition: ease all .3s;}

.btn.big-btn:hover:before{
	left: 0;
	top: 0;
	 -webkit-transition: ease all .3s;
	transition: ease all .3s;}


.section-devider{
	border-top: 1px solid #15455e;
	margin: 40px 0;
	}


.colored-title-bar{color: #fff;
	background-color: #0F1E31;
	padding: 2em 1em;}

.black-bg{background-color: #333333;}
.gray-bg{background-color: #eaeae9;}
.navy-bg{background-color: #15455e;
	color: #fff;
}

.animated{opacity: 0;}
.cf{
	width: 100%;
	display: block;
	clear: both;}

.col-0{display: none;}
.pc_only{display: none;}
a.more.btn03{padding: 1em;
	display: block;
}

@media (min-width: 768px){
	section.section{
	padding-top: 60px;
	padding-bottom: 60px;
	overflow: hidden;
	}
	section.section2{
	padding-top: 60px;
	overflow: hidden;
	}
	section.section3{
	padding-bottom: 60px;
	overflow: hidden;
	}
	section.reflexology{
	padding-top: 60px;
	overflow: hidden;
	}

	section.section.small-gap{
	padding-top: 40px;
	padding-bottom: 40px;}

	section.section.big-gap{
	padding-top: 120px;
	padding-bottom: 120px;}

	section.section.first{padding-top: 160px;}

	.section-devider{margin: 80px 0;}

	.col-0{display: block;}
	.col-md-0{display: none;}

	main {
		overflow-x: hidden;
	}

	.section-title{
	font-size: 2.5rem;
	letter-spacing: .15em;}
	.section-title span.subtitle,
	.section-sub-title{font-size: 1rem;}
	.btn.big-btn{padding: 1em 1em;}
	a.more.btn03{display: inline-block;}

	.pc_only{display: block;}
	.mo_only{display: none;}

	.tel_btn{font-size: 3rem;}

}




/* NAVIGATION */

.navigation-bar{
	/* TODO: 後に60pxで上書き */
	height: 100px;
	color: #15455e;
	text-align: center;
	border-bottom: 0px solid #15455e;
}

.navbar-brand{margin: auto;
	height: 60px;
	display: flex;
	width: 250px;
	justify-content: center;
	align-items: center;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}
.navbar-brand a{
	width: 100%;
	display: block;
}

.scrolled .navbar-brand{
	height: 60px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.navbar-brand img{
	height: 30px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.scrolled .navbar-brand img{height: 30px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.navigation-bar .navbar-popup {
	display: none;
	list-style: none;
	position: absolute;
	top: 100%;
	min-width: 200px;
	padding: 15px;
	border: 1px solid #0f1e31;
	margin: 0;
	z-index: 100;
	background: white;
}

.navigation-bar .lang-btn {
	position: absolute;
	top: 50%;
	left: calc(7% + 30px);
	transform: translateY(-50%);
	cursor: pointer;
}

.navigation-bar .lang-menu {
	left: calc(7% - 40px);
}

.navigation-bar .lang-menu li {
	padding: 0;
	margin: 0;
}

.navigation-bar .lang-menu a {
	display: block;
	line-height: 30px;
	width: 100%;
	font-size: 1rem;
}

.navigation-bar .res-btn {
	display: flex;
	justify-content: center;
    align-items: center;
	position: absolute;
	background-color: #4f5b68;
	color: #fff;
	width: 100px;
	height: 100%;
	border-right: 1px solid #0f1e31;
	right: 0;
	top: 0;
	font-size: .85rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	/*font-family: a-otf-ryumin-pr6n, serif;*/
	font-weight: 100;
	cursor: pointer;
}

.navigation-bar .res-btn-inner {
	line-height: 20px;
}

.navigation-bar .res-menu {
	right: 0;
}

.navigation-bar .res-menu li {
	padding: 0;
	margin: 0;
	text-align: left;
}

.navigation-bar .res-menu a {
	display: block;
	line-height: 30px;
	width: 100%;
	padding: 0 5px;
	font-size: 1rem;
}

.navigation-bar .res-menu .fa-arrow-circle-right {
	margin: 0 5px;
}

@media screen and (max-width: 767px) {
	.navigation-bar .res-btn {
		width: 60px;
	}
}

.navigation-bar .lang{
	position: absolute;
	line-height: 100px;
	width: 100px;
	border-left: 1px solid #0f1e31;
	right: 400px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar .carrental{
	padding: 30px 15px 25px 15px;
	position: absolute;
	background-color: #0f1e31;
	color: #fff;
	line-height: 20px;
	height: 100px;
	width: 100px;
	border-left: 1px solid #4F5B68;
	border-bottom: 1px solid #0f1e31;
	right: 100px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar .flight{
	position: absolute;
	background-color: #0f1e31;
	color: #fff;
	line-height: 100px;
	height: 100px;
	width: 100px;
	border-left: 1px solid #0f1e31;
	border-bottom: 1px solid #0f1e31;
	right: 200px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar .member{
	position: absolute;
	background-color: #4f5b68;
	color: #fff;
	line-height: 100px;
	height: 100px;
	width: 100px;
	border-left: 1px solid #0f1e31;
	right: 300px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar .register{
	position: absolute;
	line-height: 100px;
	height: 100px;
	width: 100px;
	border-left: 1px solid #0f1e31;
	right: 300px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar .restaurant{
	position: absolute;
	background-color: #4f5b68;
	color: #fff;
	line-height: 100px;
	height: 100px;
	width: 100px;
	border-left: 1px solid #0f1e31;
	right: 0px;
	top: 0;
	font-size: .8rem;
	letter-spacing: .1em;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	font-family: a-otf-ryumin-pr6n, serif;}

.navigation-bar.scrolled .carrental{
	padding: 17px 15px 0px 15px;
	line-height: 12px;
	height: 60px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	border-color: #ddd;}


.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 {
	line-height: 60px;
	height: 60px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
	border-color: #ddd;
}

.navigation-bar .register,
.navigation-bar .flight,
.navigation-bar .lang,
.navigation-bar .carrental,
.navigation-bar .member,
.navigation-bar .restaurant,
.navigation-bar .lang-btn {
	display: none;
}

@media (min-width: 768px){
	.navigation-bar .carrental,
	.navigation-bar .register,
	.navigation-bar .flight,
	.navigation-bar .lang,
	.navigation-bar .member,
	.navigation-bar .restaurant,
	.navigation-bar .lang-btn {
		display: block;
	}

	.navbar-brand{height: 100px;}
	.navbar-brand img{height: 60px;}
}


/* NAVIGATION */

/*menu*/
.navigation-bar{
	width: 100%;
	/* TODO: モバイルサイズが確定 */
	height: 60px;
	position: fixed;
	z-index: 10;
	top: 0;
	background-color: #fff;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.navigation-bar.opened{
	z-index: 20;}

.navigation-bar.scrolled{
	height: 60px;
	background-color: rgba(255, 255, 255, 1);
	border-bottom: 1px solid #ddd;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;
}



.single-news .navigation-bar{border-bottom: none;}


.scrolled .menu__line{
	background: #0f1e31;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}


.scrolled .menu__line.active{background: #0f1e31;}

.scrolled .menu{
	top: 12px;
	-webkit-transition: ease all .3s;
	transition: ease all .3s;}

.menu{
    height: 20px;
    width: 30px;
    position: absolute;
    left: 6%;
    top: 12px;
    z-index: 99;
    -webkit-transition: ease all .3s;
	transition: ease all .3s;}

.menu__line{
    background: #15455e;
    display: block;
    height: 1px;
    position: absolute;
    transition:transform .3s;
    width: 100%;
}

.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;
	top: auto;
	display: block;
	font-size: .8rem;
	transform: translateX(-50%);
    letter-spacing: .1em;
}

@media (min-width: 768px){
	.navigation-bar {
		/* TODO: PCサイズが確定 */
		height: 100px;
	}

	.menu{
		left: 3%;
		top: 32px;
	}
}



/*gnav*/
.gnav{
	background: rgba(255,255,255,0.95);
	display: none;
	top: 60px;
	bottom: 0;
	position: fixed;
	width: 100%;
	z-index: 98;
	overflow-y: auto;
}

.gnav__wrap {
	position: relative;
	min-height: 100%;
	width: 100%;
	padding-bottom: 80px;
}

.gnav_box{position: absolute;
	top: 40%;
	left: 50%;
	width: 100%;
	-webkt-transform: translate(-50%,-50%);
	transform: translate(-50%,-50%);}

.gnav__menu{
	margin: 2rem auto;
	padding-left: 0;
	text-align: center;}

.gnav__menu__item{
    margin: 10px 0;
    display: inline-block;
    position: relative;}

.gnav__menu__item.current a{color: #666;}

.gnav__menu__item a{
    color: #fff;
     opacity: 0;
     position: relative;
    font-size: 1rem;
    font-weight: 400;
    letter-spacing: .2em;
    padding:1rem 2rem;
    text-decoration: none;
    transition: .5s;}

.gnav__menu__item.nolink a{color: #666;}

.gnav__menu__item a:hover{color: #666;}




.gnav .menu-btn{
	font-family: din-condensed, sans-serif;
	font-weight: 400;
	font-size: 1.5rem;
	display: block;
	padding: .5rem;
	margin-top:  .5rem;
	/*margin-bottom:  .5rem;*/
	letter-spacing: .1em;}
.gnav .menu-btn span{
	font-size: .7rem;
	display: block;}

.gnav .sub-menu-box{
	/*margin-top: 1rem;*/
	margin-bottom: 1rem;}

.gnav .sub-menu-box >div{
	padding-left: .5rem;
	padding-right: .5rem;
}

.sub-menu-box .menu-btn{
	font-size: 1rem;
	border: 1px solid #bbbfc8;}

.sub-menu-box .menu-btn.nolink{
	border-color: #999;
}

.gnav .menu-btn.nolink{
	color: #999;
}

.gnav .sns-link{
	margin-bottom: 0;
	padding-left: 0;}
.gnav .sns-link li{
	display: inline-block;
	padding: .3rem;}

.gnav .sns-link li a{
	display: block;
	background-color: #111;
	color: #fff;
	width: 2.5rem;
	line-height: 2.5rem;
	height: 2.5rem;
	border-radius: 50%;
}

.gnav .gnav-reservation-box{
	position: absolute;
	width: 100%;
	text-align: center;
	left: 0;
	bottom: 0;
}

.gnav .gnav-reservation-box a{
	display: flex;
	align-items: center;
	justify-content: center;
	height: 60px;
	font-family: din-condensed, sans-serif;
	font-weight: 400;
	font-size: 1rem;
	color: #fff;
	z-index:1;
	letter-spacing: .1em;
}

@media (min-width: 768px){
	.gnav {
		top: 100px;
	}
	.scrolled .gnav {
		top: 60px;
	}
	.gnav__wrap {
		padding-bottom: 120px;
	}
	.gnav_box{top: 40%;}
	.gnav .menu-btn{
		font-size: 2.3rem;
		padding: 1rem;}
	.sub-menu-box .menu-btn{font-size: 1rem;}
	.gnav .menu-btn span{font-size: .8rem;}
	.gnav .sub-menu-box{
		margin-top: 3rem;
		margin-bottom: 3rem;
	}
	.gnav .gnav-reservation-box a{height: 100px}
}

#submenu-bar {
  display: flex;
  justify-content: space-between;
  background: white;
  list-style: none;
  padding: 0 10%;
  margin: 0;
  overflow: hidden;
}

#submenu-bar.scrolled {
  display: none;
}

#submenu-bar li {
  margin: 0;
  padding: 0;
	line-height: 37px;
	font-family: a-otf-ryumin-pr6n, serif;
}

#submenu-bar li a {
	padding: 0 70px;
}

#submenu-bar li a span {
	display: inline-block;
	border-bottom: 3px solid transparent;
	transition: all .3s;
}

#submenu-bar li a:hover span {
	border-bottom: 3px solid #58849b;
}

@media (max-width: 991px) {
	#submenu-bar {
		display: none !important;
	}
}



/* PAGE HEAD */
.page-hero-head{
	position: relative;
	color: #fff;}

.page-hero-head:before{
	content: '';
	background-color: rgba(0,0,0,.5);
	height: 100%;
	width: 100%;
	position: absolute;
	z-index: 1;
}

.page-hero-head.video:before{
	background-color: rgba(255, 255, 255, 0);
}

.vegas-time{}
.page-hero-head .video-item{
	position: absolute;
	top: 50%;
	left: 50%;
	min-height: 100vh;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);}

.page-hero-head .main-box{
	position: absolute;
	color: #fff;
	z-index: 2;
	top: 5%;
	left: 5%;}

.page-hero-head .main-box h2{
	font-size: 4.5rem;
	letter-spacing: .1em;}

.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{
	color: #fff;
	position: absolute;
	z-index: 2;
	font-weight: 200;
	font-family: din-2014-narrow, sans-serif;
	letter-spacing: .15em;}

.page-hero-head .sub-box01{
	top: 5%;
	right: 5%;
	font-size: 1.5em;}

.page-hero-head .sub-box01:before{
	width: 3em;
	height: 1px;
	background-color: #fff;
	content: '';
	position: absolute;
	left: -4em;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);}


.page-hero-head .sub-box02{
	left: 50%;
	bottom: 10%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
}

.page-hero-head .sub-box02:before{
	height: 2em;
	width: 1px;
	background-color: #fff;
	content: '';
	position: absolute;
	bottom: -2em;
	left: 50%;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);
	 -webkit-animation: sdb 3s infinite;
	 animation: sdb 3s infinite;}

.page-hero-head .sub-box03{
	right: 5%;
	bottom: 20%;
	font-size: 1.3rem;
	font-weight: 400;}

.vegas-timer{display: none;}


.sp_video video{
	width:100%;
}

/* SCROLL のアニメーション  ここから*/

@-webkit-keyframes sdb {
  0% {
    -webkit-transform: translate(0, 0);
    opacity: 0;
  }
  10% {
    -webkit-transform: translate(0, 0);
  }

  45% {
     opacity: 1;
  }

  90% {
    -webkit-transform: translate(0, 15px);
    opacity: 1;
  }
  100% {
	-webkit-transform: translate(0, 15px);
    opacity: 0;
  }
}


@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;
  }
}

/* SCROLL のアニメーション  ここまで*/


.page-hero-head.video .main-box h2{
		font-size: inherit;
	}
.page-hero-head.video .main-box h2 img{width: 8em;}


@media (min-width: 768px){
	.page-hero-head .main-box h2{
	font-size: 6rem;
	line-height: 1em;}



	.page-hero-head.video .main-box h2 img{width: 13em;}

	.page-hero-head .sub-box02:before{
		height: 2em;
		bottom: -2em;}
	.page-hero-head .sub-box03{bottom: 10%;}
}

/* RESERVATION */

.home #reservation{padding-bottom: 0;}
.widget-inner-box{margin-top: 50px;}

.reservation-box{
	background-color: #fff;
	border-radius: 3px;
	padding-bottom: 1.5em;
	}

.reservation-title-box{
	background-color: #B3ADA0;
	color: #fff;
	padding: 1em;
	text-align: center;
	letter-spacing: .1em;
	margin-top: 60px;
	margin-bottom: 1em;
	position: relative;}
.reservation-title-box:before{
	position: absolute;
	width: 0;
	height: 0;
	border-style: solid;
	border-width: 10px 10px 0 10px;
	border-color: #b3ada0 transparent transparent transparent;
	content: '';
	left: 50%;
	bottom: -6px;
	-webkit-transform: translateX(-50%);
	transform: translateX(-50%);

}

.reservation-title-box h4{margin-bottom: 0;
	font-size: 1rem;
}


.reservation-box .bookingDate,
.reservation-box .bookingNights,
.reservation-box .bookingRooms,
.reservation-box .dynPersons,
.reservation-box .dynSubmit{
	display: block !important;
	width: auto;
	float: left;
	padding: .5em;
	margin: .5em;}
.reservation-box .bookingDate input:first-child,
.reservation-box .bookingNights select,
.reservation-box .bookingRooms select,
.reservation-box .dynPersons input:first-child,
.reservation-box .dynSubmit input:first-child{margin-left: 0;}

.reservation-box .dynSubmit input{
	width: 100%;
	color: #fff;
	background-color:  #B3ADA0;
	border: none;
	border-radius: 3px;
	text-align: center;
	height: 3em;
	margin: 1em auto;
	}
.reservation-box .dynSubmit{
	text-align: center;
	margin: auto;
	float: none;
}

.none{display: none;}

.searchSection ul{padding: 10px 0!important;}

.reservation-box .style_subhead{font-weight: normal;
	font-size: .8em;
	margin-bottom: .5rem;
	margin-top: 1rem;
}
.modTbl01 .style_subhead,.searchSection .style_subhead{font-weight: normal;
	font-size: .8em;
	margin-bottom: .5rem;
	margin-top: 1rem;
}
.style_inputArea{
	position: relative;
	-webkit-appearance: none;
	appearance: none;
	padding: .5em 1em;
	margin: .5em;
	text-align: center;
	display: inline-block;
	background: #fff;
	border-radius: 3px;
	box-shadow: none;
	border: 1px solid #0f1e31;
}

.cmbNights .style_inputArea{width: 90%;}

.style_inputArea:after{
	    width: 0;
    height: 0;
    border-style: solid;
    border-width: 4px 0 4px 4px;
    border-color: transparent transparent transparent #0f1e31;
    position: absolute;
    content: '';
    top: 50%;
    right: 3%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    display: none;
}

.reservation-box .dynSubmit input,
.reservation-box select.style_inputArea{
	-webkit-appearance: none;
	appearance: none;
}
.reservation-box .dynSubmit{}
.dynSubmit,
.bookingNights{clear: both;}


#tc-widget[data-layout='horizontal'] .tc-h1{
	color: #B3ADA0;
	font-size: 16px;
	display: inline-block !important;
	border-bottom: 1px solid #B3ADA0;
	padding: .5em !important;}
#tc-widget[data-layout='horizontal'] .tc-header{
	height: 50px !important;
}
#tc-widget[data-theme='clear'] .tc-book{
	background: #B3ADA0 !important;
	color: #fff !important;
	border: none !important;
}

.tab_content ul.restaurant-link{
	padding: 0;
	margin: 50px 0 0 0;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;}

.tab_content ul.restaurant-link li{list-style: none;
	margin: 0.5em 1em;}
.tab_content ul.restaurant-link li a{width: 18em;}

.home .tel-reserve{margin-top: 15px;
	margin-bottom: 15px;}
.tel-reserve{
	text-align: center;
	font-family: a-otf-ryumin-pr6n, serif;
}
.tel-reserve a{display: block;
	font-size: 2.6em;
    letter-spacing: .1em;

}
.tel-reserve a span{
	font-size: .8em;
    display: inline-block;
    margin-right: .5em;}

@media (min-width: 768px){
	.dynSubmit,
	.bookingNights{clear: none;}
	.reservation-box .dynSubmit{float: right;}
	.reservation-box{padding-bottom: 0;}
	.reservation-box .dynSubmit input{
		padding: 1em 2em;
		height: 4em;
	}

	.home .tel-reserve{margin-top: 50px;
	margin-bottom: 50px;
}
	.tel-reserve{	display: flex;
	justify-content: center;
	align-items: baseline;}
	.tel-reserve a{ margin-left: .5em;}
}

/* INFOMATION */
.info_table,
.info_table th,
.info_table td{
	border:1px solid #ccc;
	padding:1em;
}


/* EVENT */
.single-event .date{margin-bottom: 1em;}
.single-event .event-info-box{margin-top: 5em;}
.single-event .event-info-table{width: 100%;
	margin-top: 1em;}

.single-event .event-info-table tr{display: block;
	margin-bottom: 1em;
}

.single-event .event-info-table td,
.single-event .event-info-table th{
	display: block;
	padding: 1em 2em;
	border: #ccc 1px solid;}

.single-event .event-info-table th{
	background: rgba(15, 30, 49, 0.6);
	color: #fff;
	text-align: center;
	padding: .5em 2em;
	font-size: .8rem;
	letter-spacing: .1em;}
.info-box02 .dsc{line-height: 1.8em;
	letter-spacing: .1em;
}

.single-event .anno{font-size: .8rem;
	line-height: 2em;
	display: inline-block;
	color: #7d031e;
	font-weight: bold;
}

.beer_condition{
	font-size:2em;
	margin:30px auto;
	color:#be0000;
	line-height: 1.2em;
}

ul.goto_flow {
  counter-reset:number; /*数字をリセット*/
  list-style-type: none!important; /*数字を一旦消す*/
  padding: 1.5em;
  border: solid 2px #0f1e31;
}
ul.goto_flow li {
  border-bottom: dashed 1px #0f1e31;
  position: relative;
  padding: 0.8em 0 0.8em 30px;
  line-height: 1.5em;
}
ul.goto_flow li:before{
  /* 以下数字をつける */
  position: absolute;
  counter-increment: number;
  content: counter(number);
  /*数字のデザイン変える*/
  display:inline-block;
  background: #0f1e31;
  color: white;
  font-weight:bold;
  font-size: 15px;
  border-radius: 50%;
  left: 0;
  width: 25px;
  height: 25px;
  line-height: 25px;
  text-align: center;
  /*以下 上下中央寄せのため*/
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
ul.goto_flow li:last-of-type {
  border-bottom: none; /*最後のliの線だけ消す*/
}

@media (min-width: 768px){
	.single-event .event-info-table{table-layout: fixed;}
	.single-event .event-info-table tr{display: table-row;}
	.single-event .event-info-table td,
	.single-event .event-info-table th{display: table-cell;}
	.single-event .event-info-table th{width: 30%;}
	.single-event .event-info-table td{width: 70%;}
}

/* INFO SECTION */
.date{
	font-family: 'Noto Sans JP', din-2014-narrow, sans-serif;
	letter-spacing: .1em;
}
.page-id-398 .info-box,
.home .info-box{
	padding: 40px 0 0;}

.info-box .img-link{width: 95%;
	margin-left: 5%;
	position: relative;}

.info-box .img-box{
	background-color: #fff;
	background-repeat: no-repeat;
	position: relative;
	background-position: center center;
	background-size: cover;}

.info-box .img-box:before{
	display: block;
	width: 100%;
	content: '';
	padding-top: 56.25%;}

.info-box .img-box.contain{border: 1px solid #ccc;}

.info-box .img-link span.status{
	position: absolute;
	top: 0;
	right: 0;
	display: block;
	background: #333;
	color: #fff;
	padding: .5em;
	font-size: .8rem;
	letter-spacing: .1em;
	font-weight: bold;
	line-height: 1em;}

.info-box .img-link span.status.closed{
	background: #ccc;
	color: #111;
}

.info-box .dsc-box{
	position: relative;
	background-color: #fdfdfd;
	top: -20px;
	padding: 1.5em 1em 0 1em;
	width: 95%;
	letter-spacing: .1em;
	line-height: 1.5em;
	font-size: 1rem;
	font-weight: 700;
	box-shadow: 1px 1px 2px 0px rgba(0,0,0,0.1);
}

.info-box .dsc-box-info{
	position: relative;
	top: -20px;
	padding: 1.5em 1em 0 1em;
	width: 100%;
	letter-spacing: .1em;
	line-height: 1.5em;
	font-size: 1rem;
	font-weight: 700;
	border-bottom:1px solid #ccc;
}

.info-box .dsc-sub-box{
	margin-top: .5em;
	padding-bottom: 1em;
	font-size: .8rem;
	font-weight: 400;
	color: #777;}

.single-event .date span,
.info-box .dsc-sub-box .date span{
	display: inline-block;
	padding: .05em .3em .05em .5em;
	margin-right: .5em;
	background-color: #777;
	color: #fff;}

.info-inner{
	padding-top: 1em;
	padding-bottom: 1em;}

@media (min-width: 768px){
	.postid-89 .info-box,
	.page-id-398 .info-box,
	.home .info-box{
	padding: 80px 0 0;}
}



/* CONCEPT */
#concept .about-box{
	background-color: rgba(21, 69, 94, 0.95);
	color: #fff;
	width: 100%;
	max-width: 100%;
	font-family: a-otf-ryumin-pr6n, serif;
	padding: 30px;
}

#concept .about-box h6{
	font-size: 1.3em;
	letter-spacing: .2em;
	display: inline-block;
	padding-bottom: .5em;
	padding-right: 1em;
	margin-bottom: 1em;
	border-bottom: 1px solid #fff;}


#concept .about-box h2{
	font-family: ryo-display-plusn, serif;
	letter-spacing: .1em;
	font-size: 1.8rem;
	line-height: 1.8em;
	margin-bottom:1.3em;}
#concept .about-box p{
	letter-spacing: .1em;
	line-height: 1.8em;
	margin-bottom: 0;
}

#concept .about-wrapper{margin-top: 80px;

	position: relative;}

#concept .about-wrapper .bg_img{
	width: 100%;
	height:300px;
	background-image: url(../img/common/theme01.jpg);
	background-color: #000;
	background-position: center center;
	background-size: cover;
	content: '';
	position: relative;
	z-index: -1;
	top: 0;
	right: 0;}

#contents .concept-four{
	margin-top: 60px;
	margin-bottom: 60px;
	font-family: a-otf-ryumin-pr6n, serif;}

.concept-four-box{
	position: relative;
	padding: 120px 1em;
	background-size: cover;
	overflow: hidden;
	background-position: center center;	}

.concept-four-box .bg-img{
	position: absolute;
	height: 100%;
	width: 100%;
	content: '';
	top: 0;
	left: 0;
	background-size: cover;
	z-index: -1;
	-webkit-transition: ease .3s all;
	transition: ease .3s all;
}
.concept-four-box:hover .bg-img{
	-webkit-transform: scale(1.1);
	transform: scale(1.1);
	-webkit-transition: ease .3s all;
	transition: ease .3s all;}


.concept-four-box.anniversary .bg-img{background-image: url(../img/index/anniversary_bg.jpg);}
.concept-four-box.pastry .bg-img{background-image: url(../img/index/pastry_bg.jpg);}
.concept-four-box.rooms .bg-img{background-image: url(../img/index/room_bg.jpg);}
.concept-four-box.restaurants .bg-img{background-image: url(../img/index/restaurant_bg.jpg);}
.concept-four-box.spa .bg-img{background-image: url(../img/index/spa_bg.jpg);}
.concept-four-box.facilities .bg-img{background-image: url(../img/index/facility_bg.jpg);}
.concept-four-box.pet .bg-img{background-image: url(../img/index/pet_bg.jpg);}
.concept-four-box.salon .bg-img{background-image: url(../img/index/salon.jpg);}
.concept-four-box.terrace .bg-img{background-image: url(../img/index/terrace.jpg);}
.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 .about-box{
		width: 500px;
		padding: 100px 60px;}
	#concept .about-box h2{font-size: 2.3rem;}
	#concept .about-wrapper{
		padding-top: 120px;
	padding-bottom: 200px;}

	#concept .about-wrapper .bg_img{
		width: 100%;
	height: 100%;
	position: absolute;
	z-index: -1;
	}
	.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: ryo-display-plusn, serif;
	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{
	margin-top: 3em;
	margin-bottom: 3em;}

#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 #0f1e31;
	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: #0f1e31;
}

.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;
	/*border-bottom: 1px solid #111;*/
}

.plan-category .btn {
	/*width: calc((100% - (10px * 5)) / 6);*/ /* 6列 */
	width: calc((100% - (10px * 7)) / 7); /* 7列 */
	/*width: calc((100% - (10px * 7)) / 8);*/ /* 8列 */
	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 {
	/*box-shadow: 0 0 0 0.2rem rgba(29, 54, 90, 0.25);*/
	background-color: rgb(21, 69, 94);
    color: #ffffff;
}

@media (max-width: 767px){
	.plan-category {
		padding-top: 30px;
	}

	.plan-category .btn {
		width: calc((100% - (10px * 1)) / 2); /* 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 */

#contact{
	font-family: a-otf-ryumin-pr6n, 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;
}

#contact .tel{
	font-size: 2.0em;
	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;}
}


/* #FOOTER */
.page-top-box{font-size: .8em;
	padding: 2rem 0;
	letter-spacing: .2em;
	font-family: ryo-display-plusn, serif;
}
#colophon{
	font-family: a-otf-ryumin-pr6n, serif;
	letter-spacing: .1em;
	padding: 60px 0 15px;
	background-color: #15455e;
	color: #fff;}

#colophon .brand-box{padding: 0 2em;}
#colophon .brand-logo{
	max-width: 200px;
	margin-bottom: 1.5em;}

#colophon .copy-right{
	font-family: 'Noto Sans JP', din-condensed, sans-serif;
	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', din-condensed, sans-serif;
	line-height: 2.5em;
}

#colophon .sub-menu li::before {
	display: inline-block;
	content: "\25cf";
	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: "\2022";
}

#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: ryo-display-plusn, serif;
	font-weight: bold;
	font-size: 1.2rem;
	line-height:2rem;
	letter-spacing: .1em;}

.page-container{
	margin-top: 2em;
	margin-bottom: 2em;
}

.page-title-row h2{
	font-family: ryo-display-plusn, serif;
	font-weight: bold;
	text-align: center;
	line-height: 1.5em;}

.page-row{margin-top: 1em;
	margin-bottom: 1em;
	font-family: a-otf-ryumin-pr6n, serif;
	line-height: 2em;}

.page-row h4{
	font-family: ryo-display-plusn, serif;
	font-weight: bold;
	font-size: 1.3rem;
	line-height: 2rem;}

.page-row h5{
	font-family: ryo-display-plusn, serif;
	font-size: 1.2rem;
	margin-bottom: 1rem;}

.page-row h6{font-family: ryo-display-plusn, serif;}

.page-row .indent-box{
	padding-left: 2em;}

.page-row .content-box{
	padding: 1.5em;
	background-color: #eaeae9;
	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-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: #a9a49d;
	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{background-color: #0f1e31;} */
.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: a-otf-ryumin-pr6n, 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;}
}







/* ROOM */

.single-room .room_title{
	letter-spacing: .1em;
	font-size: 2rem;
	margin-bottom: 0;}

.single-room .room_sub_title{
	font-family: a-otf-ryumin-pr6n, 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: din-condensed, sans-serif;
	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: a-otf-ryumin-pr6n, 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 #15455e;
}

.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: a-otf-ryumin-pr6n, 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: ryo-display-plusn, serif;
	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: ryo-display-plusn, serif;
	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: #0f1e31;
	border:1px solid #0f1e31;
	margin: .5em;
}


#luxuryfloor .btn.more{padding-top: 2em;
	padding-bottom: 2em;
	max-width: 400px;
	width: 100%;
}
#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: #eaeae9;
	padding: 30px;
	border-radius: 3px;
	margin-bottom: 50px;}

.spa-price-box .spa-price-title{
	display: inline-block;
	color: #fff;
	background: #0f1e31;
	font-size: .8rem;
	font-weight: bold;
	letter-spacing: .1em;
	border: 1px solid #0f1e31;
	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: din-condensed, sans-serif;
	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: a-otf-ryumin-pr6n, serif;
	font-size: 1rem;}

.spa-description{
	font-weight: bold;
	line-height: 2em;
}
.spa-concept-box{
	font-family: a-otf-ryumin-pr6n, 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: a-otf-ryumin-pr6n, serif;
	font-size: 1rem;
	color: #fff;
	line-height: 2rem;
	letter-spacing: .1em;
	padding: 3em 2em;}

.spa-dsc-wrapper .dsc h3{
	font-family: a-otf-ryumin-pr6n, 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: a-otf-ryumin-pr6n, 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: a-otf-ryumin-pr6n, 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 */

.salon-menu-box{
	margin-top: 3em;
	margin-bottom: 3em;
	font-family: a-otf-ryumin-pr6n, 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: a-otf-ryumin-pr6n, 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 */

.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: a-otf-ryumin-pr6n, serif;
}


/*
@media (min-width: 768px){
	.terrace-dsc-wrapper{max-width: 500px;}
	.order-md-2 + .col-md-5 .terrace-dsc-wrapper{
	margin-right: 0;
	margin-left: auto;}

}
*/

/* FAQ */
.faq-box{margin-bottom: 2rem;}
.faq-box .faq-title{
	color: #fff;
	background-color: #a9a49d;
	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: din-condensed, sans-serif;
	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: #f0f0f0;
	font-weight: 400;
	border-radius: 4px;
}

.faq-box .answer a{text-decoration: underline;
	color: #a9a49d;
}

.faq-box .answer span{
	font-family: din-condensed, sans-serif;
	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: #a9a49d;}


.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:#a9a49d;
	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 */
.access-box{margin-bottom: 2rem;}
.access-box .access-title{
	color: #fff;
	background-color: #0f1e31;
	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: ryo-display-plusn, serif;
}

.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: ryo-display-plusn, serif;
	line-height: 2rem;
	font-size: 1rem;
	letter-spacing: 0;
}
.access-box .access-inner h6{
	line-height: 2.5rem;
	margin-bottom: 0;
	font-family: a-otf-ryumin-pr6n, 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: ryo-display-plusn, serif;
}

.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;}
}




/* FACILITIES */

.single-facility .map_index{
	display: flex;
	justify-content: center;
	margin: 0px;
	padding: 0;
	font-family: din-condensed, sans-serif;
	font-size: 1.2rem;}

.single-facility .map_index li{
	display: block;
	list-style: none;
	margin: .2em;
	text-align: center;
	border: 1px solid #c9a12c;}

.single-facility .map_index li a{display: block;
	padding: 1em 1em;
	color: #c9a12c;
}

.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.2rem;
	 font-feature-settings: "palt";
	line-height: 1.2em;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 600;
	}

.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;
}

.fac-fs {
    font-size: 24px;
}

@media (max-width: 768px){
.single-facility .map_index {
    display: block;
}
}


/* RESTAURANTS */
.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: #eaeae9;
	padding: 30px;
	border-radius: 3px;
	margin-bottom: 50px;}

.restaurant-price-box .restaurant-price-title{
	display: inline-block;
	color: #fff;
	background: #0f1e31;
	font-size: .8rem;
	font-weight: bold;
	letter-spacing: .1em;
	border: 1px solid #0f1e31;
	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 2rem 2rem 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%;
}

/* FUNCTION */

.page-function #page-head{
	height: 50vh;
}

.page-function .concept-box{
	text-align: center;
	font-family: a-otf-ryumin-pr6n, 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: ryo-display-plusn, serif;
	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;}

.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: ryo-display-plusn, serif;
	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 dt{
    width:50%;
    float:left;  FIXME: inline-blockにfloatは無効
    display:inline-block;
}
*/

.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;
}
/*
.wpcf7 input.name_input{
	width:40%;
	display:inline-block;
	float:left;  FIXME: inline-blockにfloatは無効
	margin-right:10px;
}
*/
/*.wpcf7 .num_input{
	width:20%;
	display:inline-block;
	float:left;
}*/

    .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;
}

/*
span.wpcf7-list-item{
    width:20%;
}
*/

/* VIDEO RATIO */

@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;}
}

@media (min-width: 768px){
	.single-spa-relaxation #page-head.page .video-item{height: auto;
		width: auto;
	}
}


/* GALLERY */

.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 */
.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);}


/* PAGENATION */
.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:#0f1e31; }
.page-item.active .page-link{
	background-color: #0f1e31;
	border-color: #0f1e31;}

.page-link:focus,.page-link:active{
	box-shadow: none;
}
/*s_tuika*/
a.colorlink{
color:#c9a12c;
}


.attention_frame{
text-align:center;
border:1px solid red;
padding:10px;
}

.attention_frame2{
text-align:center;
border:1px solid;
border-color: #0f1e31;
padding:10px;
}

.caution_frame{
text-align:center;
border:1px solid blue;
padding:10px;
}



#corona_attention{
	background:#15455e;
	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;}

}

/*contact*/

.form-control:focus, .wpcf7 .wpcf7-validation-errors:focus, .wpcf7 input:focus[type=color], .wpcf7 input:focus[type=date], .wpcf7 input:focus[type=datetime-local], .wpcf7 input:focus[type=datetime], .wpcf7 input:focus[type=email], .wpcf7 input:focus[type=file], .wpcf7 input:focus[type=month], .wpcf7 input:focus[type=number], .wpcf7 input:focus[type=range], .wpcf7 input:focus[type=search], .wpcf7 input:focus[type=submit], .wpcf7 input:focus[type=tel], .wpcf7 input:focus[type=text], .wpcf7 input:focus[type=time], .wpcf7 input:focus[type=url], .wpcf7 input:focus[type=week], .wpcf7 select:focus, .wpcf7 textarea:focus{
	border-color:#c9a12c;
	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: a-otf-ryumin-pr6n, 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: a-otf-ryumin-pr6n, 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;
  /*background-color: gray;*/
}

.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;
}

/*暫定変更20240112*/
.tab_item {
    font-size: 13px;
}

/*WOVN用*/
/*右上予約メニュー*/
html[lang=ja] .res-menu:not(.lang_ja) {
    display: none !important;
}
html[lang=en] .res-menu:not(.lang_en) {
    display: none !important;
}
html[lang=ko] .res-menu:not(.lang_ko) {
    display: none !important;
}
html[lang=zh-Hans] .res-menu:not(.lang_zh-Hans) {
    display: none !important;
}
html[lang=zh-Hant] .res-menu:not(.lang_zh-Hant) {
    display: none !important;
}
.wovn-languages {
  border: 1px solid gray;
/*  border-radius: 3px; */
  padding: 4px 8px;
  width: 80px;
  text-align: center;
/*  font-family: "Arial"; */
}
.wovn-languages .wovn-switch {
  line-height: 20px;
  font-size: 14px;
}
.wovn-languages :not(.wovn-switch.selected) {
  height: 0;
  opacity: 0;
  transition: all 0.5s ease-out;
}
.wovn-languages:hover .wovn-switch {
  height: 20px;
  opacity: 1;
  transition: all 0.5s ease-out;
  padding: 15px 0 15px 0;
}
html[lang=en] .hide_if_en {
    display: none;
}
/*フッター*/
html:not([lang=ja]) li:has(a.menu-item-1407){ display: none; }
html:not([lang=ja]) li:has(a.menu-item-1024){ display: none; }
html:not([lang=ja]) li:has(a.menu-item-115){ display: none; }

/* FIXME: セレクタが正しくない */
/*
html:not([lang=ja]) section(.di-form section gray-bg) {
    display: none;
}
*/
html:not([lang=ja]) .di-form {
    display: none;
}

html:not([lang=ja]) .recban {
    display: none;
}
html:not([lang=ja]) .sksds {
    display: none;
}
html[lang=zh-Hans] body {
    font-family: 'Noto Sans SC';
}
html[lang=zh-Hans] .section-title span.subtitle, .section-sub-title {
    font-family: 'Noto Serif SC', serif;
}
html[lang=zh-Hans] .spa-concept-box h3 {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .spa-concept-box {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .restaurant-anno-box {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .spa-dsc-wrapper .dsc {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .spa-box .dsc {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] #contact {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .salon-menu-box {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] .page-function .concept-box {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] #concept .about-box {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] #contents .concept-four {
    font-family: 'Noto Serif SC', serif !important;
}
html[lang=zh-Hans] #colophon .sub-menu li {
    font-family: 'Noto Sans JP','Noto Sans SC', serif !important;
}
html[lang=zh-Hans] #colophon {
    font-family: 'Noto Serif SC', serif !important;
}

html[lang=en] .facility-box h3 .jp {
    font-family: din-condensed;
    font-size: 1em;
    font-weight: normal;
}

.noto-serif sc-extralight {
  font-family: "Noto Serif SC", serif;
  font-weight: 200;
  font-style: normal;
}

.noto-serif sc-regular {
  font-family: "Noto Serif SC", serif;
  font-weight: 400;
  font-style: normal;
}

/*テイクアウト・アワード開催日非表示*/
.postid-19726 .date {
  display: none !important;
}
.postid-19726 h3.info-title {
  display: none !important;
}
.postid-1708 .date {
  display: none !important;
}
.postid-1708 h3.info-title {
  display: none !important;
}

.sans_sc {
  font-family : 'Noto Sans SC';
}

.ubtn {
    padding: 10px;
}

@media (max-width: 768px){
	html[lang=en] .navigation-bar .res-btn {
    font-size: .55rem;
}
}

html:not([lang=ja]) .gnav .sub-menu-box .col-6:nth-child(8) {
    display: none;
}


img.menu-bnr {
    border: 1px solid #bbbfc8;
}

/*202504functionroom用*/

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 {
    background-color: white;
    text-align: center;
    width: 100%;
	padding: 30px;
}
.eplan_right {
    background-color: white;
    text-align: center;
    width: 100%;
	padding: 30px;
}


.eplan_left02 {
    background-color: white;
    padding: 30px;
    text-align: center;
    width: 100%;
}
.eplan_right02 {
    background-color: white;
    padding: 30px;
    text-align: center;
    width: 100%;
}

.eplan_small {
	font-size: small;
}

@media (min-width: 768px){
	table.function_tein {width:960px;height:200px;}
	td.td90 {width: 90px;}
	table.function-price01 {border-collapse:collapse;width:800px;}
	table.function-price02 {border-collapse:collapse;width:800px;}
	.function_yokonarabi {display: flex;justify-content: space-around;}
	.eplan_box02 {display: flex;}
	.eplan_left {margin: 10px;}
	.eplan_right {margin: 10px;}
	.eplan_left02 {margin: 10px;}
	.eplan_right02 {margin: 10px;}
	.eplan_box03 {display: flex;}
}

@media screen and (max-width: 768px) {
/* 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 {margin-top: 10px;}
	.eplan_right {margin-top: 10px;}
	.eplan_left02 {margin-top: 10px;}
	.eplan_right02 {margin-top: 10px;}
}

summary {
  display: block;
  }
 summary::-webkit-details-marker {
  /* Safariで表示されるデフォルトの三角形アイコンを消します */
  display: none;
}

h2.sight-t {
    font-size: 20px;
}