@charset utf-8;

@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@200;400;900&display=swap');


* {
	box-sizing: border-box;
	font-family: serif;
	word-break : break-all;
}


.ryugasaki-alert {
	position: absolute;
	bottom: 10px;
	left: calc(50% - 100px);
	width: 200px;
	text-align: center;
	z-index: 100;
	font-size: 11px;
	color: #fff;
	text-shadow: 1px 1px 1px #000;
}
.ryugasaki-alert-box {
	position: relative;
	display: block;
}
.tennen,
.ganban,
.relax,
.restaurant {
	position: relative;
}

.sns_icons a {
	width: 25%;
	float: left;
	padding: 5px 15px;
	display: block;
}

a.btn:hover {
	color: #fff !important;
	opacity: .8;
}
a:hover {
	opacity: .8;
}
a.btn.white {
	color: #fff;
	border: solid 1px #fff;
}
a.btn.white:hover {
	background: #fff;
	color: #000 !important;
}
h4 {
	font-size: 1.4rem;
	margin-bottom: 20px;
}
h3 {
	margin-bottom: 25px;
}
ul.menu li {
	margin: 0px;
	display: inline-block;
	padding: 28px 0;
}
ul.menu li.menu-contact {
	background: #e2dfba;
	border-radius: 10px;
}
ul.menu li.menu-contact a:hover {
	color: black !important;
}
input[type=checkbox] {
	display: inline-block;
	width: 20px;
	height: 21px;
	vertical-align: -10%;
}
textarea {
	resize: none;
}
img {
	width: 100%;
}
p {
	color: #333;
}
#drop {
	display: none !important;
}
.navbar-brand {
	width: 300px;
	height: auto;
}
.navbar-brand img {
	width: 100%;
	height: auto !important;
}
#logo {
	width: 300px;
	float: left;
}
#logo h1:after,
nav.wthree-w3ls {
	content: "";
	clear: both;
	display: block;
}
.menu li.active a {
	color: #e2dfba;
}
.menu li a:hover {
	color: #e2dfba !important;
}
footer {
	background: url(../img/footer_bg.jpg) no-repeat;
	background-size: cover;
}
footer a {
	color: #fff !important;
}
footer a:hover {
	color: inherit;
	opacity: .8;
}
.footer-grids p {
	color: #ddd;
	font-size: .9rem;
}
.footer-link {
    display: block;
    margin: 20px auto;
    font-size: larger;
    text-align: center;
}
.banner-doitsumura {
	display: block;
	margin-top: 20px;
}
#home {
	position: relative;
}
.logo-msg,
.logo-msg-footer {
	font-size: 15px;
	text-align: center;
	color: #e2dfba;
	display: block;
	margin: 0 auto;
}
.header_menu {
    width: 1200px;
    position: absolute;
    left: calc(50% - 600px);
    bottom: 20px;
    z-index: 200;
}
.inner-page .header_menu {
    bottom: 33px;
}
.inner-page .fixed_header h1 {
	width: 160px;
}
#main_header_menu:after {
	content: "";
	clear: both;
	display: block;
}
.hamburger {
    display: none;
}
.header_menu {
	transition: .4s;
}
.header_menu ul {
    width: 1200px;
    max-width: 100%;
    margin: 0 auto;
    background: rgba(0,0,0,.4);
}
.header_menu ul li {
    float: left;
    font-size: 15px;
	font-family: 'Noto Serif JP', serif;
	font-weight: 400;
    width: calc(1030px / 7);
    text-align: center;
    padding: 10px 0;
    margin: 0;
    color: #fff;
    letter-spacing: 1px;
}
.header_menu ul li a {
    display: block;
    padding: 5px 15px;
    color: #fff;
    line-height: 2;
}
header {
	width: 1200px;
	max-width: 100%;
	left: calc(50% - 600px);
    position: absolute;
    z-index: 200;
    transition: .4s;
}
.fixed_header {
	background: rgba(0,0,0,.4);
	width: 180px;
	left: 0;
	top: 0;
	position: fixed;
	height: 60px;
}
.fixed_header #logo,
.fixed_header #logo a {
	width: 160px;
}
.fixed_header #logo a {
	padding-left: 20px !important;
}
.fixed_menu {
	width: calc(100% - 180px);
	top: 0;
	left: 180px;
	position: fixed;
	bottom: unset;
	height: 60px;
}
.fixed_menu ul {
	width: 100%;
	height: 60px;
}
.fixed_menu li {
	width: calc(100% / 8) !important;
}
.fixed_menu li a {
	font-size: 12px;
	letter-spacing: 0;
}
.home-msg {
	position: absolute;
	color: #666;
	top: 40%;
	right: 100px;
	z-index: 10;
	width: 140px;
	height: 140px;
	text-align: center;
	background: rgba(255,255,255,.8);
	padding: 30px 20px;
	border-radius: 120px;
}
.home-msg a {
	color: #666;
}
.home-msg:before {
	position: absolute;
	content: "";
	display: block;
	background: url(../img/top_fixed_onsen.png) no-repeat;
	width: 70px;
	height: 70px;
	background-size: contain;
	top: -40px;
	left: calc(50% - 35px);
}

#top_msg {
	background: url(../img/top_bg1.jpg) no-repeat;
	background-size: cover;
}
#top_msg .top_msg_img {
	width: 300px;
	margin: 0 auto 60px;
}
#top_msg h3,
#top_msg p {
	line-height: 2;
}
#top_msg h4.news_head {
	text-align: center;
	margin: 0 auto;
	padding-top: 20px;
}
#top_msg h4 span {
	color: #6a3906;
	font-size: 14px;
}
.tennen {
	background: url(../img/top_bg3_2.jpg) no-repeat;
	background-size: contain;
	background-position: top right;
}
.tennen_inner {
	background: url(../img/top_bg2.png) no-repeat;
	background-position: top left;
	padding: 90px 0 !important;
}
.tennen_title {
	width: 90px;
	max-width: 20%;
	float: left;
}
.tennen_detail {
	width: calc(60% - 90px);
	float: left;
	background: rgba(255,255,255,.6);
	padding-left: 10px;
	padding-right: 10px;
}
#top_msg .container.py-md-5 .row.inner_sec_info .shop_banner {
	text-align: center;
	margin-bottom: 3rem;
}
#top_msg .container.py-md-5 .row.inner_sec_info .shop_banner a img {
	width: 500px;
	display: inline-block;
}

@media screen and (max-width: 767px) {
	#top_msg .container.py-md-5 .row.inner_sec_info .shop_banner {
		margin-bottom: 2rem;
	}
	#top_msg .container.py-md-5 .row.inner_sec_info .shop_banner a img {
		width: 100%;
	}
}

.ganban {
	background: #000;
	background-image: url(../img/top_bg4_2.jpg);
	background-size: contain;
	background-position: top left;
	background-repeat: no-repeat;
}
.ganban_inner {
	background: url(../img/top_bg5.png) no-repeat;
	background-position: bottom right;
	padding: 90px 0 !important;
}
.ganban_title {
	width: 90px;
	max-width: 20%;
	float: right;
}
.ganban_detail {
	width: calc(60% - 90px);
	float: right;
	background: rgba(0,0,0,.5);
	padding-left: 10px;
	padding-right: 10px;
}
.ganban_detail p {
	color: #fff;
}

.relax {
	background: url(../img/top_bg6.jpg) no-repeat;
	background-size: contain;
	background-position: top right;
}
.relax_inner {
	background: url(../img/top_bg7.png) no-repeat;
	background-position: bottom left;
	padding: 90px 0 !important;
}
.relax_title {
	width: 90px;
	max-width: 20%;
	float: left;
}
.relax_detail {
	width: calc(60% - 90px);
	float: left;
	background: rgba(255,255,255,.6);
	padding-left: 10px;
	padding-right: 10px;
}

.restaurant {
	background: #cfc19f;
	background-image: url(../img/top_bg8_3.jpg);
	background-size: contain;
	background-position: top left;
	background-repeat: no-repeat;
}
.restaurant_inner {
	background: url(../img/top_bg9.png) no-repeat;
	background-position: bottom right;
	padding: 90px 0 !important;
}
.restaurant_title {
	width: 90px;
	max-width: 20%;
	float: right;
}
.restaurant_detail {
	width: calc(60% - 90px);
	float: right;
	background: rgba(255,255,255,.5);
	padding-left: 10px;
	padding-right: 10px;
}
.restaurant_detail p {
	color: #333;
}

.underlayer-page .container {
	width: 1200px;
	max-width: 100%;
	margin: 0 auto;
}
.underlayer-page h2 {
	margin-bottom: 70px !important;
	width: 500px;
	margin: 0 auto;
	text-align: center;
}
.underlayer-page h2 img {
	width: 85%;
}
.underlayer-page .page-description {
	margin-bottom: 50px;
}


.onsen-block {
	margin-bottom: 50px;
}
.onsen-block h3 {
	padding-top: 20px;
	text-align: center;
}
.onsen-na,
.ganban-block {
	background: url(../img/onsen_bg2.jpg) no-repeat;
	background-size: cover;
}
.ganban-block {
	margin-bottom: 50px;
}
.onsen-na-inner {
	background: url(../img/onsen_bg1.png) no-repeat;
	background-position: bottom right;
	padding: 40px;
}
.ganban-block-inner {
	background: url(../img/ganban_bg1.png) no-repeat;
	background-position: bottom right;
	padding: 40px;
}
.onsen-na-img,
.ganban-block-img {
	width: 55%;
	float: left;
}
.onsen-na-txt,
.ganban-block-txt {
	width: 45%;
	float: left;
	padding: 20px;
}
.onsen-na-txt h4,
.ganban-block-txt h4 {
	text-align: center;
	line-height: 2;
}
.onsen-btns,
.onsen-btns2 {
	padding: 70px 50px 30px;
}
.onsen-btns a {
	width: 40%;
	margin: 0 5%;
	float: left;
}
.onsen-btns2 a {
	width: 40%;
	margin: 0 auto;
	display: block;
}

.about-main-img {
    width: 100%;
    max-width: 800px;
    margin: 0 auto 50px;
}
.about-sub-title {
	width: 90%;
	max-width: 500px;
	margin: 0 auto 50px;
}
.about-sub-msg {
	line-height: 2;
	width: 96%;
	max-width: 800px;
	margin: 0 auto 50px;
	text-align: center;
}
.about-sub-copy {
	margin: 0 auto 30px;
}
.about-list {
	background: #fbf9dd;
	padding: 20px;
	width: 96%;
	margin: 0 auto 30px;
}
.about-list p {
    font-size: .9rem;
}
.about-list h4 {
	padding: 10px 0;
	text-align: center;
	border-bottom: solid 3px rgba(200,200,200, .7);
}
.about-list h5 {
	text-align: center;
	padding-bottom: 10px;
}
.about-list aside img {
	width: 48%;
	float: left;
	margin: 0 1%;
}
.introduction {
	background: #fbf9dd;
	padding: 30px 20px;
}
.introduction_detail {
	width: 30%;
	margin: 0 1.5% 30px;
	background: #fff;
	float: left;
	padding: 15px;
}
.introduction_detail:nth-child(3n - 1) {
	clear: both;
}
.introduction_detail h3 {
	font-size: 20px;
	text-align: center;
	color: #ba2024;
}
.introduction_detail img {
	display: block;
	width: 30%;
	float: left;
}
.introduction_detail p {
	width: 68%;
	margin-left: 2%;
	float: left;
}
.introduction2 {
	padding: 70px 0;
}
.introduction3 h3 {
	border-left: 5px solid #e2dfba;
	padding: 10px;
	border-bottom: 1px solid #e2dfba;
}
.introduction3-block a {
	color: #666;
}
.introduction3-block h4 {
	padding-top: 10px;
	margin-bottom: 0px;
}
.introduction4 {
	background: #fbf9dd;
	padding: 20px;
}
.introduction4 div {
	float: right;
	width: 57%;
	margin-left: 3%;
}
.introduction4 img {
	display: block;
	width: 40%;
	float: left;
}

.access-detail h3 {
	border-left: 5px solid #e2dfba;
	padding: 10px;
	border-bottom: 1px solid #e2dfba;
	margin-top: 30px;
}
.access-detail h4,
.access-detail p {
	padding-left: 30px;
}



.faq-wrap {
	padding-top: 30px;
}
.faq-dl-wrap {
	padding: 0 1em;
}
.faq-block dl {
	margin: 0 0 20px;
}
.faq-block dt {
	position: relative;
	cursor: pointer;
	background: #dfdfdf;
	padding: 0.5em 1em 0.5em 2.8em;
	font-size: 1.1em;
	line-height: 2;
}
.faq-block dl dt .toggle {
	display: block;
	width: 20px;
	height: 20px;
	background: #999;
	border-radius: 50%;
	text-align: center;
	color: #fff;
	line-height: 20px;
	font-size: 16px;
	position: absolute;
	top: 18px;
	left: 12px;
	padding: 0;
	margin-top: 0;
}
.faq-block dd {
	margin: 0;
	background: #efefef;
	padding: 1em;
	display: none;
	line-height: 1.9;
}

.recruit-head {
	position: relative;
}
.recruit-head-img {
	width: 80%;
	max-width: 900px;
}
.recruit-head-txt {
	position: absolute;
	top: 35%;
	right: 0;
	background: rgba(0,0,0,.8);
	padding: 60px;
}
.recruit-head-txt h3 {
	color: #fff;
	margin-bottom: 0;
}
.recruit-description {
	line-height: 2;
	text-align: center;
	padding: 70px 0;

}
.recruit-block {
	background: url(../img/onsen_bg2.jpg) no-repeat;
	background-size: cover;
	margin-bottom: 20px;
}
.recruit-block-inner {
	background: url(../img/recruit_bg1.png) no-repeat;
	background-position: bottom right;
	padding: 40px;
}
.recruit-block-img {
	width: 55%;
	float: left;
}
.recruit-block-txt {
	width: 45%;
	float: left;
	padding: 20px;
}
.recruit-block-txt h4 {
	text-align: center;
	line-height: 2;
}
.recruit-btns,
.relaxation-btns {
	padding: 40px 20px 0;
}
.recruit-btns a,
.relaxation-btns a {
	width: 100%;
	display: block;
	max-width: 500px;
	margin: 0 auto 30px;
	text-align: center;
}
.recruit-fixed-btn {
	position: fixed;
	bottom: 10%;
	right: 0;
	z-index: 1000000;
}
.recruit-fixed-btn a {
	background: #52568a !important;
	color: #fff !important;
	border: none !important;
	box-shadow: 2px 2px 4px #666;
	font-weight: bold;
	padding: 30px;
	border-radius: 10px 0 0 10px !important;
}


.relaxation-head {
	position: relative;
}
.relaxation-head-img {
	width: 100%;
	max-width: 1200px;
}
.relaxation-head-txt {
	position: absolute;
	top: 35%;
	left: 0;
	background: rgba(218, 157, 177, 0.6);
	padding: 60px;
}
.relaxation-head-txt h3 {
	color: #fff;
	margin-bottom: 0;
}
.relaxation-description {
	line-height: 2;
	text-align: center;
	padding: 50px 0 30px;
}
.relaxation-block {
	background: url(../img/onsen_bg2.jpg) no-repeat;
	background-size: cover;
	margin-bottom: 50px;
}
.relaxation-block-inner {
	background: url(../img/relaxation_bg1.png) no-repeat;
	background-position: bottom right;
	padding: 40px;
}
.relaxation-block-img {
	width: 55%;
	float: left;
}
.relaxation-block-txt {
	width: 45%;
	float: left;
	padding: 20px;
}
.relaxation-block-txt h4 {
	text-align: center;
	line-height: 2;
}
.relaxation-m-block-inner {
	padding: 40px;
}
.relaxation-menu {
	clear: both;
}
.relaxation-menu iframe {
	max-width: 100%;
	height: 315px;
}
.relaxation-menu h3 {
	text-align: center;
	padding-top: 30px;
}
.relaxation-menu h4 {
	padding-top: 10px;
}
.relaxation-menu p {
	margin-bottom: 50px;
}
#s1 table {
	width: 100%;
	border: solid 1px #999;
}
#s1 th {
	background: #0098db;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
#s1 td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}
#s1 .relaxation-menu h3,
#s1 .relaxation-menu h4 {
	color: rgb(0, 147, 219);
}
#s1 .relaxation-m-block-inner {
	background: rgba(0, 147, 219, .1);
}
#s2 table {
	width: 100%;
	border: solid 1px #999;
}
#s2 th {
	background: #aa952f;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
#s2 td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}
#s2 .relaxation-menu h3,
#s2 .relaxation-menu h4 {
	color: #aa952f;
}
#s2 .relaxation-m-block-inner {
	background: rgba(170, 149, 47, .1);
}
#s3 table {
	width: 100%;
	border: solid 1px #999;
}
#s3 th {
	background: #0da20d;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
#s3 td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}
#s3 .relaxation-menu h3,
#s3 .relaxation-menu h4 {
	color: #0da20d;
}
#s3 .relaxation-m-block-inner {
	background: rgba(0, 234, 0, .05);
}

.restaurant-head {
    position: relative;
}
.restaurant-head-img {
    width: 100%;
    max-width: 1200px;
}
.restaurant-head-txt {
    position: absolute;
    top: 35%;
    left: 0;
    background: rgba(238, 170, 81, .6);
    padding: 60px;
}
.restaurant-head-txt h3 {
	color: #fff;
	margin-bottom: 0;
}
.restaurant-description {
    line-height: 2;
    text-align: center;
    padding: 70px 0;
}
.restaurant-block {
	background: url(../img/onsen_bg2.jpg) no-repeat;
	background-size: cover;
	margin-bottom: 50px;
}
.restaurant-block-inner {
	background: url(../img/restaurant_bg1.png) no-repeat;
	background-position: bottom right;
	padding: 40px;
}
.restaurant-block-inner table {
	width: 100%;
	border: solid 1px #999;
}
.restaurant-block-inner th {
	background: #c081b6;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
.restaurant-block-inner td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}
.restaurant-block-img {
	width: 40%;
	float: left;
}
.restaurant-block-txt {
	width: 60%;
	float: left;
	padding: 20px;
}
.restaurant-m-block-inner {
	padding: 40px;
}
.restaurant-menu {
	clear: both;
}
.restaurant-menu iframe {
	max-width: 100%;
	height: auto;
}
.restaurant-menu h2 {
	color: #c081b6;
	padding-top: 80px;
	text-align: center;
	border-bottom: 1px solid #ccc;
	margin-bottom: 0 !important;
	padding-bottom: 20px;
}
.restaurant-menu h3 {
	text-align: center;
	padding-top: 70px;
	color: #c081b6;
}
.restaurant-menu h4 {
	padding-top: 10px;
	color: #c081b6;
	text-align: center;
	font-size: 16px;
}
.restaurant-menu h5 {
	font-size: 20px;
	padding-top: 50px;
	padding-bottom: 10px;
}
.restaurant-menu p {
	margin-bottom: 50px;
}
.restaurant-m-block-inner table {
	width: 100%;
	border: solid 1px #999;
}
.restaurant-m-block-inner th {
	background: #c081b6;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
.restaurant-m-block-inner td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}

.floorguide-img {
	max-width: 1000px;
	margin: 0 auto 100px;
}
.floorguide-img img {
	display: inline-block;
	margin-bottom: 50px;
}
.user-flow {
	width: 100%;
	max-width: 1000px;
	margin: 0 auto;
	padding-top: 20px;
}
.user-flow dl {
	box-shadow: 1px 1px 2px #999;
	border: solid 1px #ddd;
}
.user-flow dt {
	background: #c081b6;
	color: #fff;
	font-size: 16px;
	font-weight: bold;
}
.user-flow dt span {
	display: inline-block;
	margin: 10px;
	padding: 7px;
	background: rgba(255,255,255,.7);
	font-size: 18px;
	color: #c081b6;
}
.user-flow dd {
	background: #fff;
	margin-left: 0;
	padding: 10px;
	font-size: 15px;
}
.user-flow dd:after {
	content: "";
	display: block;
	clear: both;
}
.user-flow dd p {
	width: 75%;
	float: left;
}
.user-flow dd img {
	width: 25%;
	float: right;
}
.ic-tag {
	background: rgba(192, 129, 182, .2);
	padding: 30px 0;
	margin-bottom: 60px;
}
.ic-tag h3 {
	color: #c081b6;
}
.ic-tag p {
	padding-top: 15px;
}
.notices {
	margin-bottom: 30px;
}
.notices:after {
	content: "";
	display: block;
	clear: both;
}
.notices img {
	display: block;
	float: left;
	width: 20%;
	max-width: 80px;
}
.notices p {
	width: 80%;
	float: left;
}
.price-table {
	width: 100%;
	border: solid 1px #999;
	margin-bottom: 15px;
}
.price-table th {
	background: #c081b6;
	padding: 15px 0;
	text-align: center;
	color: #fff;
	border: solid 1px #999;
}
.price-table td {
	padding: 10px;
	color: #333;
	border: solid 1px #999;
	background: #fff;
}
.notice-block div {
	margin-bottom: 30px;
}
.notice-block ul {
	padding-left: 20px;
}

.payment-wrap {
	display: block;
}

@media (min-width: 992px) {
	.payment-wrap, .payment-cont {
			max-width: 100%;
	}
}

@media (min-width: 768px) {
	.payment-wrap, .payment-cont {
			max-width: 100%;
		}
	}

.sitemap,
.sitemap ul {
	list-style: none;
}
.sitemap li {
	padding: 0;
	list-style-type: none;
}
.sitemap li a {
	position: relative;
	border-bottom: 1px solid transparent;
	transition: 0.8s;
	color: #666;
	font-size: 17px;
	margin-bottom: 15px;
	display: inline-block;
	text-decoration: none;
}
.sitemap li a::after {
	position: absolute;
	bottom: -4px;
	left: 0;
	content: '';
	width: 100%;
	height: 1px;
	background: #333;
	transform: scale(0, 1);
	transform-origin: left top;
	transition: transform .3s;
}
.sitemap li a:hover::after {
	transform: scale(1, 1);
}

.sitemap li a::before {
	position: static;
	display: inline-block;
	content: '＋';
	vertical-align: middle;
}
.sitemap ul {
	padding: 0 0 5px 25px;
}
.sitemap li li a {
	font-size: 15px;
	color: #999;
}
.sitemap li li a::before {
	display: inline-block;
	content: '';
	width: 10px;
	margin-top: -4px;
	border-top: 1px solid #999;
	margin-right: 5px;
}



@keyframes slide{
	0%,25.203252032520325%{margin-left:0}
	33.333333333333336%,58.53658536585366%{margin-left:-100%}
	66.66666666666667%,91.869918699187%{margin-left:-200%}}


.banner-w3pvt-1,
.banner-w3pvt-2,
.banner-w3pvt-3 {
	background-size: cover !important;
}
.banner-w3pvt-1 {
	background: url(../img/slider1_4.jpg) no-repeat top;
}
.banner-w3pvt-2 {
	background: url(../img/slider5_2.jpg) no-repeat top;
}
.banner-w3pvt-3 {
	background: url(../img/slider6_2.jpg) no-repeat top;
}
.overlay-w3ls {
	background: rgba(0, 0, 0, 0.25);
}
.banner-hny-info h3 {
	font-size: 3em;
	line-height: 2;
}
.services {
    background: url(../img/top_services.jpg) no-repeat top;
	background-size: cover;
}
.news {
    background: url(../img/top_news.jpg) no-repeat top;
	background-size: cover;
}
.news-bg {
	padding: 10px 12px;
	border-radius: 2px;
}
.news-bg time {
	display: block;
	font-size: 12px;
	text-align: right;
	color: 666;
}
.news-bg h4 a {
	font-size: 16px;
	color: #333;
}
.news-bg p {
	padding-top: 15px;
	color: #333;
}
.banner_reservation-wrapper {
    position: relative;
	margin: 0 auto;
	width: 100%;
}
.banner_reservation-right {
    position: absolute;
    width: 30%;
    right: 0;
    top: -20%;
}
.breadcrumb-item a span {
    font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol" !important;
	color: #e2dfba;
	font-size: 12px;
}
.breadcrumb-item a.active span {
	color: #fff;
}
.about-importance-title,
.bowcms-init-title {
	color: #e2dfba !important;
}
.about-importance h4,
.bowcms-description h4 {
	padding-bottom: 15px;
}
.about-importance i:before,
.bowcms-description i:before {
	color: #e2dfba;
}
.inner-page {
	background: url('../img/underlayer_head.jpg') no-repeat top;
	background-size: cover;
}
.inner-page #logo,
.inner-page #logo a {
	float: none;
	width: 200px;
}

.one-by-one-table {
	width: 100%;
}
.one-by-one-table th,
.one-by-one-table td {
	vertical-align: middle;
	border: 1px solid #ddd;
	padding: 10px 15px;
	line-height: 2.2;
	font-size: .9rem;
}
.one-by-one-table tr:first-child th,
.one-by-one-table tr:first-child td, {
	border-top: 0;
}
.one-by-one-table th {
	color: #e2dfba;
}
.one-by-one-table th {
	border-right: none;
}
.one-by-one-table td {
	text-align: right;
	border-left: none;
}
#timeline .demo-card {
	background: #e2dfba;
	height: auto;
}
#timeline .demo-card .head:after {
	border-color: #e2dfba;
}
#timeline .demo-card .head h3 {
	color: #fff;
	line-height: 1.5rem;
	padding-right: .8rem;
}
#timeline .demo-card-wrapper {
	height: 1950px;
}
h2 span.small {
	display: block;
	font-size: 1rem;
	margin: 0;
}
h3 span.small {
	display: block;
	font-size: 0.8rem;
	margin: 0;
}
.ribbon-title {
	position: relative;
	padding: 0.5em;
	background: #e2dfba;
	color: white;
	font-family: sans-serif;
	font-size: 1.6rem;
}
.ribbon-title:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(149, 158, 155);
}
.ribbon-title-other {
	position: relative;
	padding: 0.5em;
	background: #444;
	color: white;
	font-family: sans-serif;
	font-size: 1.6rem;
}
.ribbon-title-other:before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(149, 158, 155);
}
.stripe-title {
	border-bottom: solid 3px rgba(32, 169, 57, .5);
	position: relative;
}

.stripe-title:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #e2dfba;
	bottom: -3px;
	width: 20%;
}
.stripe-title-other {
	border-bottom: solid 3px rgba(32, 32, 32, .5);
	position: relative;
}

.stripe-title-other:after {
	position: absolute;
	content: " ";
	display: block;
	border-bottom: solid 3px #333;
	bottom: -3px;
	width: 20%;
}
.price-title {
	text-align: center;
	font-size: 2rem;
	padding-bottom: 15px;
	font-family: sans-serif;
	color: #ff5600;
}
.price-title small {
	font-family: sans-serif;
	font-size: .9rem;
}
.price-title-other {
	text-align: center;
	font-size: 2rem;
	padding-bottom: 15px;
	font-family: sans-serif;
	color: #222;
}
.price-title-other small {
	font-family: sans-serif;
	font-size: .9rem;
}
.works-section *:not(.fa),
.price-section *:not(.fa) {
	font-family: sans-serif;
}
.price-strong {
	font-size: 1.4rem;
	color: #ff5500;
	font-weight: bold;
}
.price-strong-other {
	font-size: 1.4rem;
	color: #222;
	font-weight: bold;
}
col.obo-table-head {
	width: 30%;
}
col.obo-table-body {
	width: 70%;
}
.price-section h5 {
	position: relative;
	padding: 30px 0.6em 0.6em;
	border-bottom: 2px solid #ff5500;
	border-radius: 20px;
	text-align: center;
	color: #ff5500;
	margin-bottom: 30px;
}
.price-section h5:after {
	position: absolute;
	content: '';
	top: 100%;
	left: 48%;
	border: 15px solid transparent;
	border-top: 15px solid #ff5500;
	width: 0;
	height: 0;
}
.price-section .fa,
.works-description .fa {
	vertical-align: top;
	padding-top: 6px;
	width: 5%;
}
.price-section .fa:before {
	color: #ff5500;
}
.price-point,
.works-point {
	width: 95%;
	display: inline-block;
	margin-bottom: 15px;
}
.others th {
	color: #222;
}
.double-bar {
	position: relative;
	display: inline-block;
	width: 100%;
	text-align: center;
	font-family: sans-serif;
	color: #e2dfba;
}
.double-bar:before, .double-bar:after {
	content: '';
	position: absolute;
	top: 47%;
	display: inline-block;
	width: 25%;
	height: 5px;
	border-top: solid 1px #ccc;
	border-bottom: solid 1px #ccc;
}
.double-bar:before {
	left:0;
}
.double-bar:after {
	right: 0;
}
#price-reason p {
	padding: 0 1rem 30px;
}
.text-sans {
	font-family: sans-serif;
}
.opacity-half {
	opacity: .7;
}
.service-list li{
	color: #e2dfba;
	font-size:150%;
	font-family: 'Lobster';
	list-style: decimal inside;
}
.service-list li span{
	color: #555;
	font-size:16px;
	font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",Meiryo,"メイリオ",Helvetica,Sans-Serif;
}
span.strong {
	display: inline-block;
	font-size: 120%;
	font-weight: bold;
	color: #222;
}
.inner_sec_info > div {
	margin-bottom: 20px;
}
span.number {
	font-family: 'Lobster', sans-serif;
	font-style: italic;
	font-weight: bold;
	color: #e2dfba;
	display: inline-block;
	margin-right: 8px;
	font-size: 110%;
}
span.warn {
	color: #c62;
}
.service-feature {
	margin-bottom: 20px;
}
.text-small p {
	font-size: .8rem;
}
#news-list {
	background: rgba(32, 169, 57, .2);
}
#news-list .news-grids > div {
	margin-bottom: 30px;
}
#news-list .news-grids > div > div {
	border-radius: 20px;
}
#news-list h3 {
	margin-bottom: 0 !important;
	font-size: 1.5rem;
}
#footer-contact {
	background: rgba(32, 169, 57, .7);
}
#footer-contact * {
	font-family: 'Lobster', sans-serif;
	color: #fff;
}
#footer-contact h2 {
	text-align: center;
}
#footer-contact h3 {
	font-size: 1.2rem;
	margin-bottom: 10px;
}
#footer-contact p {
	font-size: .9rem;
}
#footer-contact a {
	display: block;
	background: #009688;
	border-radius: 40px;
	border: none;
	margin-top: 20px;
	padding: 18px;
}
.brother {
	background: rgba(255,255,255,.4);
	padding: 30px;
	border-radius: 20px;
}
.brother h5 {
	text-align: center;
	color: #b91d22;
}


small.required {
	color: #800;
}
small.unrequired {
	color: #999;
}
.validation-errors {
	color: #800;
	margin-bottom: .2rem;
}
.contact-hny-form input,
.contact-hny-form textarea {
	color: #333;
}
.blog-list-item {
	background: #fff;
	padding: 5px 10px;
	margin-bottom: 30px;
}
.blog-list-item h3 {
	color: #823f07;
	font-size: 1.2rem;
	margin-bottom: 10px;
	padding-top: 10px;
}
.blog-list-item .blog-main-image img {
	width: 100%;
}
.blog-list-item .posted-on {
	text-align: right;
	color: #999;
	display: block;
	font-size: .9rem;
	padding-top: 20px;
}
.pagination {
	text-align: center;
	display: block;
	margin: 20px 0;
	border-radius: 4px;
}
.pagination > li {
	display: inline-block;
}
.blog-latest-articles,
.blog-latest-archives,
.blog-categories {
	margin-bottom: 30px;
}
.blog-latest-articles article {
	margin-bottom: 20px;
}
.blog-latest-archives article {
	margin-bottom: 10px;
}
.blog-latest-articles article div {
	width: 30%;
	margin-right: 2%;
	height: 65px;
	float: left;
	background-size: cover;
	border-radius: 5px;
}
.blog-latest-articles article .date,
.blog-latest-articles article .title {
	float: left;
	width: 65%;
}
.blog-latest-articles article a {
	display: block;
	width: 100%;
}
.blog-latest-articles article a:after {
	content: "";
	clear: both;
	display: block;
}
.blog-latest-articles .date {
	color: #999;
	text-align: right;
	font-size: .9rem;
}
.blog-latest-articles .title {
	color: #823f07;
	font-size: 1.1rem;
}
.blog-latest-articles .header,
.blog-categories .header,
.blog-latest-archives .header {
	border-bottom: 3px solid #af8c60;
	display: block;
	position: relative;
	color: #333;
	font-size: 16px;
	font-weight: 600;
	font-family: 'Source Sans Pro',sans-serif;
	margin-bottom: 30px;
	padding-bottom: 15px;
	line-height: 1.4;
	z-index: 2;
}
.blog-latest-articles .header:after,
.blog-categories .header:after,
.blog-latest-archives .header:after {
	position: absolute;
	content: "";
	height: 3px;
	width: 50px;
	background-color: #e2dfba;
	border-radius: 4px;
	left: 0;
	bottom: -2px;
}
h3.tittle-w3ls {
	font-size: 2rem !important;
}
.date-post {
	padding: 1em 1em 0;
}
.blog-title {
	color: #555;
	font-size: 2.3rem;
}
.blog-release-at {
	font-family: sans-serif;
	font-size: .8rem;
	color: #999;
}
.blog-main-image,
.blog-main-image img {
	width: 100%;
}
.blog-content img {
	max-width: 100% !important;
}
.blog-main-image {
	margin-bottom: 20px;
}
.blog-article h2 {
	font-size: 1.7rem;
	color: #333;
	margin-bottom: 20px;
	padding-top: 20px;
}
.blog-article h2:before {
	content: "";
	display: inline-block;
	width: 3px;
	height: 35px;
	vertical-align: bottom;
	background: #af8c5f;
	margin-right: 10px;
}
.blog-article h3 {
	font-size: 1.5rem;
	color: #666;
	border-left: 2px solid #af8c5f;
	padding-left: 8px;
	margin-bottom: 20px;
	padding-top: 3px;
}
.blog-article h4 {
	font-size: 1.3rem;
	color: #af8c5f;
	margin-bottom: 20px;
	padding-top: 20px;
}
.blog-article h5 {
	font-size: 1.2rem;
	color: #af8c5f;
	margin-bottom: 20px;
	padding-top: 20px;
}
.blog-article h6 {
	font-size: 1.15rem;
	color: #666;
	margin-bottom: 20px;
	padding-top: 20px;
}
.blog-article .user-table {
	width: 100%;
}
.blog-article .user-table th,
.blog-article .user-table td {
	width: 50%;
	padding: 20px 10px;
	text-align: center;
	border: solid 1px #e2dfba;
	font-size: 1rem;
}
.blog-article ul,
.blog-article ol {
	padding-left: 20px;
}
.category1 {
	background: #ca5114;
	padding: 5px 10px;
	font-size: .8rem;
	border-radius: 10px;
	color: #fff;
}
.category2 {
	background: #f90;
	padding: 5px 10px;
	font-size: .8rem;
	border-radius: 10px;
	color: #fff;
}
.h2-small {
	width: 350px !important;
}

.clearfix:after {
	content: "";
	display: block;
	clear: both;
}

/* banner */
.price-banner {
	width: 800px;
	display: block;
	margin: 0 auto;
}
.price-banner .b_sp {
	display: none;
}
/* 予約リンク */
.yoyaku_btn1 {
	display: block;
	width: 340px;
	max-width: 80%;
	background: #2196f3;
	color: #fff;
	font-weight: bold;
	text-align: center;
	margin: 50px auto 0;
	border-radius: 30px;
	padding: 15px 0;
	border: solid 2px #2196f3;
	transition: .6s;
}
.yoyaku_btn1:hover {
	color: #2196f3;
	background: #fff;
}
.yoyaku_btn2 {
	display: block;
	width: 340px;
	max-width: 80%;
	background: #f790e0;
	color: #fff;
	font-weight: bold;
	text-align: center;
	margin: 20px auto;
	border-radius: 30px;
	padding: 15px 0;
	border: solid 2px #f790e0;
	transition: .6s;
}
.yoyaku_btn2:hover {
	color: #f790e0;
	background: #fff;
}
.yoyaku_btn3 {
	display: block;
	width: 340px;
	max-width: 80%;
	background: #2196f3;
	color: #fff;
	font-weight: bold;
	text-align: center;
	margin: 20px auto;
	border-radius: 30px;
	padding: 15px 0;
	border: solid 2px #2196f3;
	transition: .6s;
}
.yoyaku_btn3:hover {
	color: #2196f3;
	background: #fff;
}



















@media screen and (max-width: 1200px) {
.navbar-brand,
#logo,
#logo h1 {
	width: 190px;
}
.container {
	max-width: 1100px;
}
}

@media screen and (max-width: 1000px) {
input[type=checkbox] {
	width: 7%;
	height: 21px;
	vertical-align: -40%;
}
ul.menu li {
	padding: 10px 5px;
	margin-left: 8px;
}
.container {
	max-width: 800px;
}
header {
	left: 10px;
	top: 10px;
	width: 170px;
}
.header_menu {
	position: fixed;
	height: 0;
	width: 100%;
	float: none;
	top: 20px;
	left: unset;
	right: 0px;
}
.hamburger {
	display: block;
	top: 0px;
	width: 30px;
	height: 24px;
	right: 10px;
	z-index: 3;
	box-sizing: border-box;
	cursor: pointer;
	-webkit-transition: all 400ms;
	transition: all 400ms;
	position: absolute;
}
.hamburger span {
	position: absolute;
	width: 30px;
	height: 5px;
	background: #8E8E8E;
	border-radius: 10px;
	-webkit-transition: all 400ms;
	transition: all 400ms;
	border: 1px solid #fff;
}
.hamburger span:nth-child(1) {
	top: 0;
}
.hamburger span:nth-child(2) {
	top: 10px;
}
.hamburger span:nth-child(3) {
	top: 20px;
}
.hamburger.open span {
	background: #333;
}
.hamburger.open span:nth-child(1) {
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	top: 10px;
}
.hamburger.open span:nth-child(2) {
	display: none;
}
.hamburger.open span:nth-child(3) {
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
	top: 10px;
}
ul.menu li {
	padding: 25px 0;
	margin-left: 0;
	width: 50% !important;
}
.header_menu ul {
	width: 100%;
	margin: 0 auto;
	background: rgba(0,0,0,.4);
	margin-top: 80px;
}


.toggle {
	background-color: #607D8B !important;
	cursor: pointer !important;
	text-transform: uppercase;
	margin-top: 1em;
}
.toggle:hover {
	color: #fff !important;
	background-color: #607D8B !important;
}
.banner-hny-info h3 {
	font-size: 1.5em;
}
.one-by-one-table {
	margin-bottom: 20px;
}
.one-by-one-table,
.one-by-one-table tbody,
.one-by-one-table tr,
.one-by-one-table th,
.one-by-one-table td {
    display: block;
    width: 100% !important;
}
.one-by-one-table th {
	border: 1px solid #ddd;
	border-bottom: none;
}
.one-by-one-table td {
	border: 1px solid #ddd;
	border-top: none;
}
#timeline .demo-card-wrapper {
	height: auto;
}
.price-section .fa {
	padding-top: 5px;
	width: 10%;
}
.price-point {
	width: 90%;
}
.double-bar-custom:before,
.double-bar-custom:after {
	width: 10%;
}
#news-list .news-grids {
	padding-top: 30px;
}
#news-list h3 {
	margin-bottom: 0 !important;
	font-size: 1.2rem;
}
.banner_reservation-right {
    top: -10%;
}
#footer-contact h2 {
	font-size: 1.4rem;
	margin-bottom: 15px;
}
#footer-contact h3 {
	font-size: 1rem;
}
.tittle-w3ls small {
	font-size: 1.1rem;
}
.blog-title {
	font-size: 1.4rem;
}
.blog-content {
	font-size: 18px;
}
.blog-categories a {
	margin: 0 15px 15px 0;
}
.blog-release-at {
	font-size: 1rem;
	text-align: right;
}
.breadcrumb {
	padding: 0 0 10px;
}
.breadcrumb span {
	font-size: 14px !important;
}

#top_msg h3 {
	font-size: 20px;
}
#top_msg .top_msg_img {
	width: 70%;
}
.tennen {
	background-size: cover;
	background-position: 50% 50%;
}
.tennen_title {
	width: 15%;
}
.tennen_detail {
	width: 85%;
}
.tennen_inner {
	background-size: contain;
}
.ganban {
	background-size: cover;
}
.ganban_inner {
	background-size: contain;
}
.ganban_detail {
	float: left;
	width: 85%;
}
.ganban_title {
	float: left;
	width: 15%;
}

.relax {
	background-size: cover;
}
.relax_inner {
	background-size: contain;
}
.relax_title {
	width: 15%;
}
.relax_detail {
	width: 85%;
}

.restaurant {
	background-size: cover;
}
.restaurant_inner {
    background-size: contain;
}
.restaurant_title {
    float: left;
    width: 15%;
	background: rgb(255 255 255 / 54%);
}
.restaurant_detail {
	width: 85%;
	float: left;
}
.footer-grids h4 {
	width: 70%;
	margin: 0 auto !important;
}
.list-info-wthree {
	margin: 0 auto;
}
.list-info-wthree li {
	text-align: center;
}
.underlayer-page h2 {
	width: 90%;
}

.underlayer-page h2 img {
	width: 100%;
}


.onsen-block h3 {
	font-size: 1.5rem;
}
.onsen-na-inner,
.ganban-block-inner {
	padding: 40px 20px;
	background-size: contain;
}
.onsen-na-img,
.ganban-block-img {
	float: none;
	width: 100%;
}
.onsen-na-txt,
.ganban-block-txt {
	width: 100%;
	float: none;
}
.onsen-btns,
.onsen-btns2 {
	padding: 60px 20px 0;
}
.onsen-btns a,
.onsen-btns2 a {
	width: 100%;
	margin: 0 auto 30px;
	float: none;
}

.recruit-block-inner,
.relaxation-block-inner,
.restaurant-block-inner {
	padding: 40px 20px;
	background-size: contain;
}
.recruit-block-img,
.relaxation-block-img,
.restaurant-block-img {
	float: none;
	width: 100%;
}
.recruit-block-txt,
.relaxation-block-txt,
.restaurant-block-txt {
	width: 100%;
	float: none;
}
.recruit-btns a {
	width: 100%;
	margin: 0 auto 30px;
	float: none;
}
.recruit-head-txt {
	position: relative;
	top: auto;
	right: auto;
	padding: 40px 20px;
}
.recruit-head-txt h3 {
	font-size: 1.4rem;
}
.recruit-head-img,
.restaurant-head-img {
	width: 100%;
}

.relaxation-head-txt,
.restaurant-head-txt {
	position: relative;
	padding: 40px 20px;
}
.relaxation-head-txt h3,
.restaurant-head-txt h3 {
	font-size: 1.4rem;
}

.relaxation-m-block-inner h3,
.restaurant-m-block-inner h3 {
	font-size: 22px;
	text-align: center;
}
.relaxation-m-block-inner h4,
.restaurant-m-block-inner h4 {
	font-size: 18px;
}
.relaxation-m-block-inner,
.restaurant-m-block-inner {
	padding: 40px 5px;
}
.flex-table tr {
	display: flex;
	flex-wrap: wrap;
}
.flex-table th {
	width: 100%;
}
.flex-table td {
	width: 50%;
	flex: 1;
}
.restaurant-m-block-inner h3 {
	font-size: 22px;
	text-align: center;
}
.restaurant-m-block-inner h4 {
	font-size: 18px;
}
.restaurant-m-block-inner {
	padding: 40px 5px;
}

.user-flow dd p {
	width: 100%;
	float: none;
	padding-top: 15px;
}
.user-flow dd img {
	width: 100%;
	float: none;
}
.ic-tag h3 {
	font-size: 22px;
}
.home-msg {
	top: 50%;
	right: 10px;
}
.sp_none {
	display: none;
}
.thead01::before {
	content: "\5927\4EBA\FF08\4E2D\5B66\751F\4EE5\4E0A\FF09";
	color: #000;
	display: block;
}
.thead02::before {
    content: "\005b50\004f9b\00ff08\0033\006b73\004ee5\004e0a\00ff09";
    color: #000;
    display: block;
}
.about-sub-copy {
	font-size: 20px;
	padding: 0 10px;
}
.about-list h4 {
	font-size: 18px;
}
.about-list h5 {
	font-size: 17px;
}
.introduction_detail {
	width: 100%;
	float: none;
}
.introduction2 h2 {
	font-size: 25px;
}
.introduction2 p {
	width: 96%;
	margin: 0 auto 10px;
}
.introduction3 h3 {
	font-size: 20px;
}
.introduction3-block {
	margin-bottom: 20px;
}
.introduction4 div {
	width: 100%;
	float: none;
	margin-left: 0;
}
.introduction4 img {
	width: 100%;
	float: none;
}
.h2-small {
	width: 60% !important;
}
.recruit-fixed-btn {
	bottom: 0;
	width: 100%;
}
.recruit-fixed-btn a {
	padding: 20px;
	border-radius: unset !important;
	width: 100%;
}

.top_yt_wrap {
	position: relative;
	width: 100%;
	height: 0;
	padding-bottom: 56.25%;
	overflow: hidden;
	margin-bottom: 50px;
}
.top_yt_wrap iframe {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
}

/* banner */
.price-banner {
	width: 96%;
	display: block;
	margin: 0 auto;
}
.price-banner .b_sp {
	display: inline;
}
.price-banner .b_pc {
	display: none;
}
img.banner {
	max-width: 300px;
}



}

@media screen and (max-width: 767px) {
	.banner_reservation-wrapper {
		position: static;
	}
	.banner_reservation-right {
		position: static;
		width: 85%;
		margin: 5rem auto 0;
	}
}