@charset "UTF-8";
@media only screen and (min-width:960px){
.footer-nav .container > ul li ul { margin-left: 20px; }
a[href^="tel:"] { pointer-events: none; }
}
@media only screen and (min-width:1220px) and (max-width:1370px){
/*----------------------------------------------------------------------

Hot-Spring-Info Style

----------------------------------------------------------------------*/
.hot-spring-info-txt h2 { font-size: 60px; margin-bottom: 15px; }
.hot-spring-info-txt p { line-height: 1.8; margin-bottom: 30px; }
}

@media only screen and (min-width:1100px) and (max-width:1219px){
/*----------------------------------------------------------------------

Hot-Spring-Info Style

----------------------------------------------------------------------*/
.hot-spring-info-txt { padding-top: 50px; }
.hot-spring-info-txt h2 { font-size: 52px; }
}

@media only screen and (min-width:960px) and (max-width:1099px){
/*----------------------------------------------------------------------

Hot-Spring-Info Style

----------------------------------------------------------------------*/
.hot-spring-info-txt { padding-top: 50px; }
.hot-spring-info-txt h2 { font-size: 45px; }
}

@media only screen and (max-width:959px){
.w-m15 { margin-left: 15px; margin-right: 15px; box-sizing: border-box; }
.sp-only { display: block !important; }
.pc-only { display: none !important; }



/*----------------------------------------------------------------------

Header Style

----------------------------------------------------------------------*/
#header { height: 70px; }
#header .container { width: 100%; }
#header-logo {
	width: 30%;
	left: 15px;
	position: relative;
}
.header-nav { display: none; }

/*----------------------------------------------------------------------

Main-Visual Style

----------------------------------------------------------------------*/
.main-visual-txt { width: 15%; }

/*----------------------------------------------------------------------

Top-About Style

----------------------------------------------------------------------*/
#top-about { padding: 50px 10px 30px; }
#top-about h2 {
	font-size: 19px;
	margin-bottom: 30px;
	letter-spacing: 0;
}
#top-about p { font-size: 15px; margin-bottom: 30px; }
#top-about h3 {
	font-size: 18px;
	margin-bottom: 30px;
	letter-spacing: 0;
}

/*----------------------------------------------------------------------

Hot-Spring-Info Style

----------------------------------------------------------------------*/
#hot-spring-info { padding: 0; }
#hot-spring-info .container { display: inherit; display: -webkit-inherit; }
#hot-spring-info h2 { top: 15%; font-size: 20px; }
#hot-spring-info-txt p {
	position: absolute;
	bottom: 10%;
	left: 0!important;
    padding: 0 10px;
	text-align: left!important;
	font-size: 12px!important;
	line-height: 1.7!important;
}

/*----------------------------------------------------------------------

Main-Nav Style

----------------------------------------------------------------------*/
#main-nav li { padding-top: 20%; }

/*----------------------------------------------------------------------

Top-Concept Style

----------------------------------------------------------------------*/
#top-concept .container { width: 100%; padding: 0; }
#top-concept h2 { font-size: 20px; margin-bottom: 20px; }
#top-concept p { font-size: 15px; }
#top-concept .container {
	display: inherit;
	display: -webkit-inherit;
}
.top-concept-img {
	width: 100%;
}
#top-concept h2 {
	top: 20%;
}
#top-concept p {
	font-size: 18px;
	line-height: 1.5;
	color: #fff;
	text-align: center;
}
.top-concept-img-container {
	position: relative;
}
.top-concept-img-container p {
	position: absolute;
	bottom: 10%;
	left: 0!important;
    padding: 0 10px;
	text-align: left!important;
	font-size: 12px!important;
	line-height: 1.7!important;
}

/*----------------------------------------------------------------------

Access Style

----------------------------------------------------------------------*/
#access { padding: 50px 10px; }
#access h2 { font-size: 22px; margin-bottom: 20px; }
.access-container {
	width: 100%;
	display: inherit;
	display: -webkit-inherit;
	margin: 0 auto 30px;
}
.access-img {
	width: 100%;
	margin: 0 auto;
	text-align: center;
}
.access-img img { width: 80%; }
.access-txt {
	width: 80%;
	margin: 0 auto;
	padding-top: 30px;
}
.access-txt h3 { font-size: 24px; margin-bottom: 15px; }
.access-txt li { font-size: 15px; }
.map-link { width: 60%; font-size: 18px; }

/*----------------------------------------------------------------------

Footer Style

----------------------------------------------------------------------*/
footer { padding: 50px 0 0; }
#footer-logo {
	margin: 0 auto 30px;
	width: 25%;
	max-width: 94px;
}
.copyright { font-size: 13px; }

/*----------------------------------------------------------------------

Sub Style

----------------------------------------------------------------------*/
.sub #header {
	display: inherit;
	display: -webkit-inherit;
	height: 70px;
}
.sub #header-logo {
	width: 35%;
	top: 15px;
	left: 15px;
}
.sub-title { margin: 20px auto; }
.sub-title h1 { font-size: 35px; }
.sub-title h1 span { font-size: 16px; margin-right: 15px; }

/*----------------------------------------------------------------------

Price-Info Style

----------------------------------------------------------------------*/
#price-info { padding: 40px 10px; }
.price-info-container { width: 100%; margin: 0 auto; }
#price-info table { width: 100%; border-collapse: collapse !important;  border-top: inherit; border-bottom: 1px solid #000; margin: 0 auto 20px;  }
#price-info table th {  padding: 15px 10px; font-size: 15px; border-left: inherit; border-right: inherit; }
#price-info table td { border:1px solid #000;  text-align: center; vertical-align: middle; padding: 15px 10px; font-size: 15px; }
#price-info table td:first-child { width: 30%; border-left: inherit; }
#price-info table td:last-child { padding: 15px 10px; width: 70%; }
#price-info table td span {font-size: 13px;   }
.price-note { text-align: left; margin-bottom: 35px; }

dl.price-info-main {
	display: inherit;
	display: -webkit-inherit;
	width: 100%;
	margin: 0 auto 35px;
}
dl.price-info-main dt {
	font-size: 30px;
	width: 100%;
	border-right: inherit;
	border-bottom: 1px solid #000;
	padding-bottom: 15px;
	margin-bottom: 15px;
}
dl.price-info-main dd { padding-left: 0; width: 100%; }
dl.price-info-main dd p { font-size: 16px; }
.price-info-container h3 {
	font-size: 25px;
	width: 100%;
	padding: 10px 0;
	margin-bottom: 25px;
}
dl.price-info-facility {
	display: inherit;
	display: -webkit-inherit;
	width: 100%;
	padding-bottom: 10px;
	margin: 0 auto 15px;
}
dl.price-info-facility dt { font-size: 16px; }
dl.price-info-facility dd { width: 100%; font-size: 16px; }
.payment { width: 100%; padding: 20px 0 0; }
.payment h3 { font-size: 20px; margin-bottom: 10px; }
.payment img { width: 100%; margin-bottom: 15px; }
.payment p { font-size: 16px; }

/*----------------------------------------------------------------------

Sub-Main-content Style

----------------------------------------------------------------------*/
.sub-main-content-container ul {
	display: flex;
	display: -webkit-flex;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	justify-content: space-between;
}
.sub-main-content-container ul li { width: 25%; }
.sub-main-content-container ul li a:hover { opacity: inherit; }
.room .sub-main-content-container ul li h2 { font-size: 20px; font-weight: bold; }

/*----------------------------------------------------------------------

Popup Style

----------------------------------------------------------------------*/
.mfp-inline-holder .mfp-content, .mfp-ajax-holder .mfp-content { width: 90% !important; cursor: auto; }
#inline-wrap p , #inline-wrap2 p , #inline-wrap3 p , #inline-wrap4 p , #inline-wrap5 p , #inline-wrap6 p , #inline-wrap7 p , #inline-wrap8 p {
	font-size: 18px!important;
	bottom: 10px;
	left: 20px;
}
#inline-wrap p span:first-child , #inline-wrap2 p span:first-child , #inline-wrap3 p span:first-child , #inline-wrap4 p span:first-child , #inline-wrap5 p span:first-child , #inline-wrap6 p span:first-child , #inline-wrap7 p span:first-child , #inline-wrap8 p span:first-child { font-size: 20px; margin-left: 10px; }
#inline-wrap p span:last-child , #inline-wrap2 p span:last-child , #inline-wrap3 p span:last-child , #inline-wrap4 p span:last-child , #inline-wrap5 p span:last-child , #inline-wrap6 p span:last-child , #inline-wrap7 p span:last-child , #inline-wrap8 p span:last-child { font-size: 18px; }
.mfp-close-btn-in .mfp-close:after {
	left: 0;
	top: 30px;
	font-size: 12px!important;
    left: 5px!important;
}
.mfp-close { font-size: 55px!important; }

/*----------------------------------------------------------------------

Sp-Menu Style

----------------------------------------------------------------------*/
nav {
	position: fixed;
	top: 0;
	right: 0;
	width: 300px;
	height: 100%;
	background-color: #fff;
	opacity: 0.9;
	transition: all 0.2s;
	transform: translate(300px);
	z-index: 10;
}
nav.open { transform: translate(0); }
nav ul {
	margin: 0;
	padding: 1em;
	list-style-type: none;
}
nav ul li { padding: 1em 0; border-bottom: 1px solid #000; }
nav ul li a {
	display: block;
	text-align: left;
	text-decoration: none;
	color: #000;
}
.btn_menu {
	display: block;
	width: 40px;
	height: 22px;
	position: absolute;
	top: 15px;
	right: 10px;
	z-index: 11;
	padding: 10px;
	-webkit-tap-highlight-color: rgba(0,0,0,0);
}
.home .btn_menu { top: 0; }
.btn_menu .relative {
	display: block;
	width: 40px;
	height: 30px;
	z-index: 9999;
}
.btn_menu .relative .bar {
	display: block;
	width: 40px;
	height: 4px;
	background: #fff;
	position: absolute;
	-webkit-transition: all 0.4s ease-out;
	-moz-transition: all 0.4s ease-out;
	-ms-transition: all 0.4s ease-out;
	-o-transition: all 0.4s ease-out;
	transition: all 0.4s ease-out;
	border: 1px solid #000; 
}
.sub .btn_menu .relative .bar { background: #000; border: inherit; }
.btn_menu .relative .bar:first-of-type { top: 0px; left: 0px; }
.btn_menu .relative .bar:nth-of-type(2) { top: 10px; left: 0px; }
.btn_menu .relative .bar:nth-of-type(3) { top: 20px; left: 0px; }
.menuOpen #spHider { height: 0; overflow: hidden; }
button { background-color: inherit; border:none; }

/*----------------------------------------------------------------------

Scroll Style

----------------------------------------------------------------------*/
.btns { height: 25px; font-size: 12px; }
#main-visual .btns { bottom: 0px; }

}