/*! Common settings */

h1, h2, h3, h4, h5, h6 {
	font-weight: 400;
	line-height: 160%
}
:root {
	--easing: cubic-bezier(.2, 1, .2, 1);
	--transition: .8s var(--easing);
	--box-shadow: .8rem .8rem 1.2rem rgba(0, 0, 0, .05), -.8rem -.8rem 1.2rem #FFF;
	--box-shadow-hover: 1rem 1rem 1.5rem rgba(0, 0, 0, .08), -1rem -1rem 1.5rem #FFF;
	--box-shadow-inset: inset .8rem .8rem 1.2rem rgba(0, 0, 0, .05), inset -.8rem -.8rem 1.2rem #FFF;
	--box_shadow_glow: 0 0 10px 6px rgba(153, 153, 153, .2);
	--margin_auto: auto;
	--margin_with: 1em auto;
	--margin_with_title: 100px auto;
	--margin_with_title_half: 50px auto;
	--margin_with_double: 2em auto;
	--margin_half_with: .6em auto;
	--margin_without: 0 auto;
	--padding_without: 0;
	--padding_title: 100px 0;
	--padding_normal: 0 1em;
	--padding_all_double: 2em;
	--padding_all: 1em;
	--padding_half_all: .6em
}
body {
	font-family: "Noto Sans JP", sans-serif;
	font-weight: 400;
	text-align: center;
	background-color: #f8f8f8
}
body * {
	margin: 0;
	padding: 0
}
body h1, body h2, body h3, body h4, body h5, body h6 {
	font-weight: 400
}
body p {
	overflow: hidden
}
body p img {
	width: 100%;
	height: auto
}
body a {
	text-decoration: none;
	transition: all .6s;
	color: inherit
}
body a.img-hover img {
	transform: scale(1);
	transition: var(--transition)
}
body a.img-hover:hover img {
	transform: scale(1.2)
}
body a:hover {
	color: inherit;
	opacity: .6;
	text-decoration: none;
	opacity: .5
}
#body_wrap {
	z-index: auto;
}
body small {
	display: block;
	font-size: .8125rem;
	text-align: left
}
body .trim-image {
	position: relative
}
body .trim-image:before {
	content: "";
	display: block;
	padding-top: 100%
}
body .trim-image img {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	margin: auto;
	-o-object-fit: cover;
	object-fit: cover
}
@-webkit-keyframes NaviUpAnime {
	from {
		opacity: 0;
		transform: translateY(-100px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@keyframes NaviUpAnime {
	from {
		opacity: 0;
		transform: translateY(-100px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@-webkit-keyframes NaviDownAnime {
	from {
		opacity: 1;
		transform: translateY(50px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@keyframes NaviDownAnime {
	from {
		opacity: 1;
		transform: translateY(50px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@media screen and (min-width:1025px) {
	body article.wrapper {
		position: relative
	}
	body article.wrapper .common-header {
		position: relative;
		top: 0;
		left: 0;
		z-index: 100
	}
	body article.wrapper .common-header.navi-up-move {
		position: fixed;
		top: 0;
		left: 0;
		z-index: 100;
		width: 100%;
		background-color: rgba(255, 255, 255, .8);
		-webkit-animation: NaviUpAnime .5s forwards;
		animation: NaviUpAnime .5s forwards;
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both
	}
	body article.wrapper .common-header.navi-down-move {
		-webkit-animation: NaviDownAnime .5s forwards;
		animation: NaviDownAnime .5s forwards;
		-webkit-animation-fill-mode: both;
		animation-fill-mode: both
	}
	#global-menu-btn {
		display: none!important
	}
}
@media screen and (max-width:1024px) {
	article.wrapper {
		width: 100%;
		height: auto
	}
	article.wrapper nav#main-navi {
		display: none
	}
}
/*! Page top */

@-webkit-keyframes PageUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@keyframes PageUpAnime {
	from {
		opacity: 0;
		transform: translateY(100px)
	}
	to {
		opacity: 1;
		transform: translateY(0)
	}
}
@-webkit-keyframes PageDownAnime {
	from {
		opacity: 1;
		transform: translateY(0)
	}
	to {
		opacity: 1;
		transform: translateY(100px)
	}
}
@keyframes PageDownAnime {
	from {
		opacity: 1;
		transform: translateY(0)
	}
	to {
		opacity: 1;
		transform: translateY(100px)
	}
}
#page-top {
	position: fixed;
	right: 10px;
	bottom: 10px;
	z-index: 2;
	opacity: 0;
	transform: translateY(100px)
}
#page-top a {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #2d0000;
	border-radius: 5px;
	width: 60px;
	height: 60px;
	color: #fff;
	text-align: center;
	text-transform: uppercase;
	text-decoration: none
}
#page-top a:hover {
	background: #ccc
}
#page-top.page-up-move {
	-webkit-animation: PageUpAnime .5s forwards;
	animation: PageUpAnime .5s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
#page-top.page-down-move {
	-webkit-animation: PageDownAnime .5s forwards;
	animation: PageDownAnime .5s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
/*! Header */

.common-header {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	align-items: center;
	background-color: #fff
}
.common-header p#logo {
	width: 260px;
	height: auto
}
.common-header nav#main-navi ul {
	width: auto;
	height: auto;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}
.common-header nav#main-navi ul li {
	padding: 0 2em
}
.common-header div#head-btn {
	padding: var(--padding_all)
}
.common-header div#head-btn p {
	width: 160px;
	height: 40px;
	line-height: 40px;
	background-color: teal;
	color: #fff;
	font-weight: 700;
	border-radius: 10px
}
/*! Global menu */

#global-menu {
	display: none;
	position: fixed;
	z-index: 999;
	top: 0;
	left: 0;
	width: 100%;
	height: 100vh;
	background: url(../img/common/appearance.jpg) no-repeat center top
}
#global-menu.panelactive {
	display: block
}
#global-menu.panelactive #global-menu-inner {
	position: fixed;
	z-index: 999;
	width: 100%;
	height: 100%;
	overflow: auto;
	background: linear-gradient(to bottom, #2F2F2F 20%, rgba(250, 255, 255, 0) 100%)
}
#global-menu.panelactive ul#global-menu-list {
	padding: 100px 0
}
#global-menu.panelactive ul#global-menu-list li {
	list-style: none;
	text-align: center;
	margin: .6em auto;
	color: #fff
}
#global-menu.panelactive ul#global-menu-list li a {
	text-decoration: none;
	padding: 10px;
	display: block;
	color: #fff;
	transition: all .6s
}
#global-menu.panelactive ul#global-menu-list li a:hover {
	text-decoration: none;
	opacity: .5
}
.menu-open {
	height: 100vh;
	position: fixed
}
#global-menu-btn {
	position: relative;
	width: 56px;
	height: 44px;
	top: 20px;
	right: 20px;
	cursor: pointer;
	position: fixed;
	z-index: 9999;
	display: inline-block;
	transition: all .5s
}
#global-menu-btn span {
	position: absolute;
	left: 0;
	width: 100%;
	height: 3px;
	background-color: #2f2f2f;
	border-radius: 3px;
	display: inline-block;
	transition: all .5s
}
#global-menu-btn span:nth-of-type(1) {
	top: 0
}
#global-menu-btn span:nth-of-type(2) {
	top: 20px
}
#global-menu-btn span:nth-of-type(3) {
	bottom: 0
}
#global-menu-btn span:nth-of-type(1) {
	-webkit-animation: global-menu-btn-bar01 .75s forwards;
	animation: global-menu-btn-bar01 .75s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
@-webkit-keyframes global-menu-btn-bar01 {
	0% {
		transform: translateY(20px) rotate(45deg)
	}
	50% {
		transform: translateY(20px) rotate(0)
	}
	100% {
		transform: translateY(0) rotate(0)
	}
}
@keyframes global-menu-btn-bar01 {
	0% {
		transform: translateY(20px) rotate(45deg)
	}
	50% {
		transform: translateY(20px) rotate(0)
	}
	100% {
		transform: translateY(0) rotate(0)
	}
}
#global-menu-btn span:nth-of-type(2) {
	transition: all .25s .25s;
	opacity: 1
}
#global-menu-btn span:nth-of-type(3) {
	-webkit-animation: global-menu-btn-bar03 .75s forwards;
	animation: global-menu-btn-bar03 .75s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
@-webkit-keyframes global-menu-btn-bar03 {
	0% {
		transform: translateY(-20px) rotate(-45deg)
	}
	50% {
		transform: translateY(-20px) rotate(0)
	}
	100% {
		transform: translateY(0) rotate(0)
	}
}
@keyframes global-menu-btn-bar03 {
	0% {
		transform: translateY(-20px) rotate(-45deg)
	}
	50% {
		transform: translateY(-20px) rotate(0)
	}
	100% {
		transform: translateY(0) rotate(0)
	}
}
#global-menu-btn.active span:nth-of-type(1) {
	-webkit-animation: active-global-menu-btn-bar01 .75s forwards;
	animation: active-global-menu-btn-bar01 .75s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
@-webkit-keyframes active-global-menu-btn-bar01 {
	0% {
		transform: translateY(0) rotate(0)
	}
	50% {
		transform: translateY(20px) rotate(0)
	}
	100% {
		transform: translateY(20px) rotate(45deg)
	}
}
@keyframes active-global-menu-btn-bar01 {
	0% {
		transform: translateY(0) rotate(0)
	}
	50% {
		transform: translateY(20px) rotate(0)
	}
	100% {
		transform: translateY(20px) rotate(45deg)
	}
}
#global-menu-btn.active span:nth-of-type(2) {
	opacity: 0
}
#global-menu-btn.active span:nth-of-type(3) {
	-webkit-animation: active-global-menu-btn-bar03 .75s forwards;
	animation: active-global-menu-btn-bar03 .75s forwards;
	-webkit-animation-fill-mode: both;
	animation-fill-mode: both
}
@-webkit-keyframes active-global-menu-btn-bar03 {
	0% {
		transform: translateY(0) rotate(0)
	}
	50% {
		transform: translateY(-20px) rotate(0)
	}
	100% {
		transform: translateY(-20px) rotate(-45deg)
	}
}
@keyframes active-global-menu-btn-bar03 {
	0% {
		transform: translateY(0) rotate(0)
	}
	50% {
		transform: translateY(-20px) rotate(0)
	}
	100% {
		transform: translateY(-20px) rotate(-45deg)
	}
}
/*! main-content */

main#main-content {
	position: relative;
	/*! top-page */
	/*! Swiper */
	/*! top-page */
	/*! sub-page */
}
main#main-content .swiper-section {
	border-top: 1px solid #eee;
	overflow: hidden
}
main#main-content .swiper-section .swiper-inner {
	position: relative;
	max-width: 1200px;
	box-sizing: content-box;
	margin: 0 auto;
	padding: 0 6em;
	padding-top: 4em;
	padding-bottom: 4em
}
main#main-content .swiper-section .swiper-inner .swiper {
	overflow: visible
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between;
	gap: 1em
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper .swiper-slide {
	width: -webkit-max-content;
	width: -moz-max-content;
	width: max-content
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper .swiper-slide .slide {
	overflow: hidden;
	width: 400px;
	border-radius: 4px;
	box-shadow: var(--box-shadow)
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper .swiper-slide .slide .slide-media {
	position: relative;
	overflow: hidden;
	padding-top: 62.5%
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper .swiper-slide .slide .slide-media img {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: calc(100% + 16px);
	transform: translateY(-16px);
	-o-object-fit: cover;
	object-fit: cover
}
main#main-content .swiper-section .swiper-inner .swiper .swiper-wrapper .swiper-slide .slide .slide-content {
	padding: 2em
}
main#main-content .swiper-section .swiper-controller {
	display: flex;
	gap: 1.6em;
	align-items: center;
	justify-content: flex-end;
	margin-top: 2em
}
main#main-content .swiper-section .swiper-controller .swiper-pagination {
	display: flex;
	flex-wrap: wrap;
	gap: 1.2rem .8rem;
	justify-content: flex-start;
	margin: 0 auto 0 0;
	text-align: center
}
main#main-content .swiper-section .swiper-controller .swiper-pagination-bullet {
	width: 1.6em;
	height: 4px;
	cursor: pointer;
	transition: var(--transition);
	vertical-align: top;
	background-color: #ccc;
	border-radius: 0!important
}
main#main-content .swiper-section .swiper-controller .swiper-pagination-bullet-active {
	width: 4em;
	background-color: teal
}
main#main-content .swiper-section .swiper-controller .swiper-button-prev, main#main-content .swiper-section .swiper-controller .swiper-button-next {
	width: 4em;
	height: 4em;
	cursor: pointer;
	transition: var(--transition);
	position: relative;
	flex-shrink: 0;
	margin: 0
}
main#main-content .swiper-section .swiper-controller .swiper-button-prev::before, main#main-content .swiper-section .swiper-controller .swiper-button-next::before {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	content: "";
	border-radius: 50%;
	box-shadow: var(--box-shadow)
}
main#main-content .swiper-section .swiper-controller .swiper-button-prev::after, main#main-content .swiper-section .swiper-controller .swiper-button-next::after {
	width: .3em;
	height: .3em;
	content: "";
	border: solid #ddd;
	border-width: 3px 3px 0 0
}
main#main-content .swiper-section .swiper-controller .swiper-button-prev::after {
	margin-left: .2em;
	transform: rotate(-135deg)
}
main#main-content .swiper-section .swiper-controller .swiper-button-next::after {
	margin-right: .2em;
	transform: rotate(45deg)
}
main#main-content .swiper-section .swiper-controller .swiper-button-disabled {
	pointer-events: none;
	opacity: .5
}
main#main-content .swiper-section .swiper-controller .swiper-button-disabled::before {
	box-shadow: var(--box-shadow-inset)
}
@media screen and (max-width:1024px) {
	main#main-content .swiper-inner {
		padding: 0 4em
	}
	main#main-content .pc {
		display: none!important
	}
}
@media screen and (max-width:767px) {
	main#main-content .pc-tab {
		display: none!important
	}
	main#main-content .swiper-section .slide {
		width: 240px
	}
}
@media screen and (min-width:1025px) {
	main#main-content .tab-sp {
		display: none!important
	}
	main#main-content .swiper-button-prev::before, main#main-content .swiper-button-next::before {
		transition: var(--transition)
	}
	main#main-content .swiper-button-prev:hover::before, main#main-content .swiper-button-next:hover::before {
		transform: scale(1.2)
	}
	main#main-content .swiper-section .slide {
		transition: var(--transition)
	}
	main#main-content .swiper-section .slide img {
		transition: var(--transition)
	}
	main#main-content .swiper-section .slide:hover {
		transform: translateY(-16px);
		box-shadow: var(--box-shadow-hover)
	}
	main#main-content .swiper-section .slide:hover img {
		transform: translateY(0)
	}
}
main#main-content .top-page {
	/*! top-gallery */
	/*! search-unity */
}
main#main-content .top-page .top-gallery {
	margin-bottom: 100px
}
main#main-content .top-page .top-gallery .swiper {
	width: 100%;
	padding-top: 50px;
	padding-bottom: 50px;
	z-index: 0!important
}
main#main-content .top-page .top-gallery .swiper-slide {
	background-position: center;
	background-size: cover;
	height: auto
}
@media screen and (min-width:1025px) {
	main#main-content .top-page .top-gallery .swiper-slide {
		width: 700px
	}
}
@media screen and (max-width:1024px) {
	main#main-content .top-page .top-gallery .swiper-slide {
		width: 70%
	}
}
main#main-content .top-page .top-gallery .swiper-slide img {
	display: block;
	width: 100%
}
main#main-content .top-page .top-gallery .swiper-pagination {
	position: absolute;
	z-index: 1;
	bottom: 20px;
	left: 0;
	right: 0;
	margin: auto
}
main#main-content .top-page .top-gallery .swiper-pagination-bullet {
	border-radius: inherit;
	margin: 0 5px!important;
	width: 40px;
	height: 4px;
	background: teal;
	opacity: .19
}
main#main-content .top-page .top-gallery .swiper-pagination-bullet-active {
	background: teal;
	opacity: 1
}
main#main-content .l-mainContent__inner #search-unity {
	margin-bottom: 60px;
	position: relative
}
main#main-content .l-mainContent__inner #search-unity h1 {
	display: none
}
main#main-content .l-mainContent__inner #search-unity-main {
	width: min(96%, 1200px);
	margin: var(--margin_with)
}
main#main-content .l-mainContent__inner #search-unity .search-booking {
	width: 96%;
	margin: var(--margin_with);
	/*! modal window */
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal {
	display: none;
	height: 100vh;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1000
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal-bg {
	height: 100vh;
	width: 100%;
	position: fixed;
	top: 0;
	left: 0;
	background: rgba(0, 0, 0, .5);
	z-index: 1001
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal-content {
	position: fixed;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	width: auto;
	background-color: #fff;
	border-radius: 6px;
	padding: var(--padding_half_all);
	box-shadow: var(--box_shadow_glow);
	z-index: 1002
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal-content dl {
	width: 100%;
	display: flex;
	flex-wrap: wrap;
	justify-content: center
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal-content dl dt, main#main-content .l-mainContent__inner #search-unity .search-booking .modal-content dl dd {
	width: 50%
}
main#main-content .l-mainContent__inner #search-unity .search-booking .modal-content dl dt {
	text-align: right;
	padding-right: 1em
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map {
	width: 500px!important;
	height: auto;
	text-align: center
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map img {
	width: 100%;
	height: 100%
}
main#main-content .l-mainContent__inner #search-unity .search-booking-inner {
	width: var(--min_width);
	margin: var(--margin_with);
	background-color: #fff;
	padding: var(--padding_all);
	border-radius: 10px;
	position: relative;
	box-shadow: var(--box_shadow_glow);
	gap: 10px
}
@media screen and (min-width:1025px) {
	main#main-content .l-mainContent__inner #search-unity .search-booking-inner {
		display: flex;
		flex-wrap: wrap;
		align-items: flex-start
	}
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items {
	display: flex;
	flex-wrap: wrap
}
@media screen and (min-width:1025px) {
	main#main-content .l-mainContent__inner #search-unity .search-booking-items.w-3 {
		width: calc(100% / 3)
	}
	main#main-content .l-mainContent__inner #search-unity .search-booking-items.w-100 {
		width: 100%
	}
}
@media screen and (max-width:1024px) {
	main#main-content .l-mainContent__inner #search-unity .search-booking-items {
		justify-content: flex-start;
		margin-bottom: 20px
	}
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items .material-icons {
	color: #777
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items .search-title {
	font-size: .875rem;
	color: #777
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items label {
	display: inline-block;
	font-size: .9375rem;
	margin: 0 1em
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items input[type=text], main#main-content .l-mainContent__inner #search-unity .search-booking-items input[type=date] {
	border: 1px solid #fff;
	background-color: #fff;
	padding: var(--padding_half_all);
	border-radius: 6px;
	font-size: 1.125rem
}
main#main-content .l-mainContent__inner #search-unity .search-booking-items .search-label {
	color: #555
}
main#main-content .l-mainContent__inner #search-unity .search-booking-btn {
	text-align: center
}
main#main-content .l-mainContent__inner #search-unity .search-booking-btn button#search-booking-send {
	width: 140px;
	height: 50px;
	line-height: 50px;
	border: none;
	outline: none;
	background-color: #faa300;
	color: #fff;
	font-weight: 700;
	border-radius: 10px
}
main#main-content .l-mainContent__inner #search-unity .search-booking-btn button#search-booking-send:hover {
	cursor: pointer
}
main#main-content .l-mainContent__inner #search-unity .search-booking button.search-dates-decision, main#main-content .l-mainContent__inner #search-unity .search-booking button.search-booking-counter-decision {
	width: min(90%, 160px);
	margin: var(--margin_with);
	height: 50px;
	line-height: 50px;
	border: none;
	outline: none;
	background-color: #0174be;
	color: #fff;
	font-weight: 700;
	border-radius: 10px
}
main#main-content .l-mainContent__inner #search-unity .search-booking button.search-dates-decision:hover, main#main-content .l-mainContent__inner #search-unity .search-booking button.search-booking-counter-decision:hover {
	cursor: pointer
}
main#main-content .l-mainContent__inner #search-unity .search-booking button.search-dates-decision a, main#main-content .l-mainContent__inner #search-unity .search-booking button.search-booking-counter-decision a {
	display: block;
	width: 100%;
	height: 100%
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map {
	width: 100%
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map svg {
	width: auto;
	height: auto
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map svg a path {
	transition: fill .3s linear
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map svg a:hover {
	cursor: pointer
}
main#main-content .l-mainContent__inner #search-unity .search-booking-map svg a:hover path {
	fill-opacity: .8
}
main#main-content .l-mainContent__inner #search-unity .search-booking-counter {
	display: flex;
	flex-wrap: nowrap;
	margin-bottom: 6px
}
main#main-content .l-mainContent__inner #search-unity .search-booking-counter-select {
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	gap: 6px
}
main#main-content .l-mainContent__inner #search-unity .search-booking-counter-select .count-button {
	cursor: pointer;
	display: inline-block;
	width: 40px;
	height: 40px;
	background-color: #0174be;
	color: #fff;
	border: none;
	outline: none;
	border-radius: 10px
}
main#main-content .l-mainContent__inner #search-unity .search-booking-counter-select .count-button:disabled {
	opacity: .2
}
main#main-content .l-mainContent__inner #search-unity .search-booking-counter-select input[type=number] {
	padding: .4em;
	border: 1px solid #eee;
	border-radius: 4px;
	width: 4em;
	-webkit-user-select: none;
	-moz-user-select: none;
	user-select: none;
	-webkit-appearance: none!important;
	-moz-appearance: none!important;
	appearance: none!important
}
main#main-content .l-mainContent__inner #search-unity select#area-choose {
	display: none!important
}
main#main-content .top-page section.top-box {
	width: 100%;
	height: auto;
	margin: 10em auto
}
main#main-content .top-page section.top-box>h1 {
	text-align: center;
	margin: 2em auto;
	font-weight: 700
}
main#main-content .top-page div.column-box {
	width: 100%;
	height: auto;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 2em
}
main#main-content .top-page div.column-box section {
	position: relative
}
main#main-content .top-page div.column-box section a {
	position: absolute;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0
}
main#main-content .top-page div.column-box section img {
	transition: all .6s ease
}
main#main-content .top-page div.column-box section:hover {
	background-color: #fff;
	opacity: .8
}
main#main-content .top-page div.column-box section:hover img {
	transform: scale(1.1)
}
main#main-content .top-page div.column-box section p {
	overflow: hidden
}
main#main-content .top-page div.column-box.col-1>section {
	width: calc(100% - 0em)
}
main#main-content .top-page div.column-box.col-2>section {
	width: calc(50% - 1em)
}
main#main-content .top-page div.column-box.col-3>section {
	width: calc(33.3333333333% - 2em)
}
main#main-content .top-page div.column-box.col-4>section {
	width: calc(25% - 3em)
}
main#main-content .top-page div.column-box.col-5>section {
	width: calc(20% - 4em)
}
main#main-content .top-page div.column-box.col-6>section {
	width: calc(16.6666666667% - 5em)
}
main#main-content .top-page div.column-box section.column-items {
	margin: 0 0 4em 0;
	padding: 0 0 1em 0;
	border-radius: 4px;
	box-shadow: var(--box-shadow)
}
main#main-content .top-page div.column-box section.column-items h1, main#main-content .top-page div.column-box section.column-items h2, main#main-content .top-page div.column-box section.column-items h3 {
	padding: .6em 1em
}
main#main-content .top-page div.column-box section.column-items p.column-photo {
	width: 100%;
	height: auto;
	max-height: 300px
}
main#main-content .top-page div.column-box section.column-items p.more-btn {
	width: 200px;
	padding: 10px;
	color: teal;
	cursor: pointer;
	position: relative;
	text-decoration: none
}
main#main-content .top-page div.column-box section.column-items p.more-btn::after {
	content: "";
	display: block;
	position: absolute;
	top: 50%;
	right: 20px;
	width: 20px;
	height: 5px;
	border: none;
	border-right: 2px solid teal;
	border-bottom: 1px solid teal;
	transform: skew(45deg);
	transition: .3s
}
main#main-content .top-page div.column-box section.column-items p.more-btn:hover::after {
	right: 10px;
	width: 30px
}
main#main-content .top-page .recommend-unity {
	background-color: #f5f2f0;
	padding: var(--padding_title);
	margin: var(--margin_with_double)
}
main#main-content .top-page .recommend-unity>h1 {
	width: 100%;
	font-size: 1.75rem;
	padding: var(--padding_all)
}
@media screen and (min-width:1025px) {
	main#main-content .top-page .recommend-unity {
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		gap: 50px
	}
}
main#main-content .top-page .recommend-unity-items {
	background-color: #fff;
	box-shadow: var(--box_shadow_glow)
}
@media screen and (min-width:1025px) {
	main#main-content .top-page .recommend-unity-items {
		width: calc((96% - 100px)/3)
	}
}
@media screen and (max-width:1024px) {
	main#main-content .top-page .recommend-unity-items {
		width: min(90%, 700px);
		margin: var(--margin_with_double)
	}
}
main#main-content .top-page .recommend-unity-items a {
	display: block;
	width: 100%;
	height: 100%
}
main#main-content .top-page .recommend-unity-items p {
	width: 100%;
	height: auto;
	aspect-ratio: 4/3
}
main#main-content .top-page .recommend-unity-items p img {
	width: 100%;
	height: 100%
}
main#main-content .top-page .recommend-unity-items h1 {
	font-size: 1.375rem;
	font-weight: 700;
	padding: var(--padding_all)
}
main#main-content .top-page .recommend-unity-items h2 {
	font-size: .9375rem;
	text-align: left;
	padding: var(--padding_all)
}
main#main-content .top-page #events-unity {
	padding: var(--padding_all_double);
	display: flex;
	flex-wrap: nowrap
}
main#main-content .top-page #events-unity .events-unity-inner:nth-of-type(1) {
	width: 30%
}
main#main-content .top-page #events-unity .events-unity-inner:nth-of-type(2) {
	width: 70%
}
main#main-content .top-page #events-unity .events-unity-inner>h1 {
	font-weight: 700;
	font-size: 2rem
}
main#main-content .top-page #events-unity .events-unity-inner>h1 span {
	display: block;
	font-size: 1.375rem
}
main#main-content .top-page #events-unity .events-unity-inner>h1, main#main-content .top-page #events-unity .events-unity-inner>h2 {
	margin-bottom: 20px
}
main#main-content .top-page #events-unity .events-unity-inner>h1, main#main-content .top-page #events-unity .events-unity-inner>h2 {
	text-align: left
}
main#main-content .top-page #events-unity .events-unity-inner>h2 {
	font-size: 1rem
}
main#main-content .top-page #events-unity .event-items {
	display: flex;
	flex-wrap: nowrap;
	margin: var(--margin_with)
}
main#main-content .top-page #events-unity .event-items-photo {
	width: 40%;
	aspect-ratio: 16/9;
	padding: 1em
}
main#main-content .top-page #events-unity .event-items-photo img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	border-radius: 10px
}
main#main-content .top-page #events-unity .event-items-inner {
	width: 60%;
	padding: 1em
}
main#main-content .top-page #events-unity .event-items h1, main#main-content .top-page #events-unity .event-items h2, main#main-content .top-page #events-unity .event-items h3 {
	text-align: left
}
main#main-content .top-page #events-unity .event-items h1 {
	font-size: 1.375rem;
	font-weight: 700
}
main#main-content .top-page #events-unity .event-items h2 {
	font-size: 1rem;
	margin: 1.6em auto
}
main#main-content .top-page #events-unity .event-items ul {
	display: flex;
	flex-wrap: wrap
}
main#main-content .top-page #events-unity .event-items ul li {
	font-size: .875rem;
	display: inline-block;
	background-color: #2d0000;
	color: #fff;
	border-radius: 2px;
	margin-right: 4px;
	padding: .2em .6em
}
main#main-content .sub-page {
	/*! breadcrumb */
	/*! common-dl */
	/*! tos-dl */
	/*! Common-ul */
	/*! list-ul */
	/*! common-table */
	/*! common-box */
	/*! event */
	/*! guide-box */
	/*! shop-box */
	/*! hotel */
	/*! contact-parts */
}
main#main-content .sub-page .none-text {
	padding: var(--padding_title)
}
main#main-content .sub-page div#breadcrumb ul {
	width: 90%;
	height: auto;
	margin: var(--margin_with);
	display: flex;
	flex-wrap: wrap
}
main#main-content .sub-page div#breadcrumb ul li {
	font-size: .8125rem;
	list-style-type: none
}
main#main-content .sub-page div#breadcrumb ul li a:after {
	content: ">";
	padding: var(--padding_half_all)
}
main#main-content .sub-page dl.common-dl {
	width: 100%;
	margin: 0 0 1em 0
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page dl.common-dl {
		display: flex;
		flex-wrap: wrap;
		justify-content: center
	}
}
main#main-content .sub-page dl.common-dl dt, main#main-content .sub-page dl.common-dl dd {
	font-size: .875rem;
	border-bottom: 1px solid #ccc;
	padding: var(--padding_all)
}
main#main-content .sub-page dl.common-dl dt {
	text-align: center;
	font-weight: 700
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page dl.common-dl dt {
		width: 20%
	}
}
main#main-content .sub-page dl.common-dl dd {
	text-align: left;
	border-bottom: 1px solid #ccc
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page dl.common-dl dd {
		width: 80%
	}
}
main#main-content .sub-page dl.common-dl dd span {
	font-size: 90%
}
main#main-content .sub-page dl.common-dl dd span.screen_img {
	display: block;
	width: 160px;
	height: auto
}
main#main-content .sub-page dl.tos-dl {
	width: 100%;
	margin: 0 0 1em 0
}
main#main-content .sub-page dl.tos-dl dt, main#main-content .sub-page dl.tos-dl dd {
	text-align: left
}
main#main-content .sub-page dl.tos-dl>dt {
	padding: var(--padding_half_all);
	font-weight: 700
}
main#main-content .sub-page dl.tos-dl>dd {
	padding: var(--padding_all);
	border-bottom: 1px solid #ccc
}
main#main-content .sub-page dl.tos-dl>dd ul {
	margin: .6em 0 0 0
}
main#main-content .sub-page .common-ul li {
	list-style-position: outside;
	width: 96%;
	margin: var(--margin_auto)
}
main#main-content .sub-page .common-ul.list-number {
	list-style-type: decimal
}
main#main-content .sub-page .common-ul.list-eng {
	list-style-type: lower-alpha
}
main#main-content .sub-page .common-ul.list-kana {
	list-style-type: katakana
}
main#main-content .sub-page .list-ul {
	width: 96%;
	margin: 0 auto 1em auto
}
main#main-content .sub-page .list-ul li {
	list-style-type: decimal;
	list-style-position: outside;
	margin: 0 1em .2em 1em;
	text-align: left
}
main#main-content .sub-page .list-ul li>ul>li {
	list-style-type: lower-alpha;
	margin: 0 1em .6em 1em
}
main#main-content .sub-page .list-ul-text {
	color: #666;
	text-align: right
}
main#main-content .sub-page table.common-table {
	width: 96%;
	margin: var(--margin_with)
}
main#main-content .sub-page table.common-table th, main#main-content .sub-page table.common-table td {
	padding: var(--padding_all)
}
main#main-content .sub-page table.common-table th {
	background-color: #eee;
	text-align: center;
	font-weight: 700;
	border: 1px solid #ccc
}
main#main-content .sub-page table.common-table th span {
	font-weight: 400
}
main#main-content .sub-page table.common-table td {
	border: 1px solid #ccc;
	text-align: left
}
main#main-content .sub-page table.common-table td span {
	display: block
}
main#main-content .sub-page .common-box {
	width: min(100%, 1080px);
	height: auto;
	margin: 20px auto;
	padding: var(--padding_all)
}
main#main-content .sub-page .common-box>h1 {
	font-size: 1.5rem;
	text-align: center;
	padding: var(--padding_all)
}
main#main-content .sub-page .common-box>p.common_text {
	padding: .4em 1em;
	text-align: left
}
main#main-content .sub-page .common-box h2, main#main-content .sub-page .common-box h3, main#main-content .sub-page .common-box h4, main#main-content .sub-page .common-box h5 {
	text-align: left
}
main#main-content .sub-page .common-box h2, main#main-content .sub-page .common-box h3 {
	margin: 0 0 1em 0
}
main#main-content .sub-page .common-box h2 {
	font-size: 1.125rem
}
main#main-content .sub-page .common-box h3, main#main-content .sub-page .common-box h4, main#main-content .sub-page .common-box h5 {
	font-size: 1rem
}
main#main-content .sub-page .common-box h4 {
	padding: .4em 1em
}
main#main-content .sub-page .common-box h5 {
	padding: .4em 1em
}
main#main-content .sub-page .s-o {
	width: min(96%, 1400px);
	margin: var(--margin_with);
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}
main#main-content .sub-page .s-o-event {
	width: 65%
}
main#main-content .sub-page .s-o-event-outer {
	width: 100%
}
main#main-content .sub-page .s-o-event-calendar {
	width: 30%
}
main#main-content .sub-page .s-o-event-calendar-btn {
	display: inline-block;
	border: 2px solid #666;
	background-color: #fff;
	border-radius: 10px;
	padding: 2px 6px;
	font-size: .8125rem
}
main#main-content .sub-page .s-o-event-calendar-table {
	width: 100%
}
main#main-content .sub-page .s-o-event-calendar-table-head {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}
main#main-content .sub-page .s-o-event-calendar-table-head .btn-prev a, main#main-content .sub-page .s-o-event-calendar-table-head .btn-next a {
	padding: var(--padding_half_all);
	text-decoration: none;
	color: inherit
}
main#main-content .sub-page .s-o-event-calendar-table-row {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	border-bottom: 1px solid #ccc
}
main#main-content .sub-page .s-o-event-calendar-table-row.day-of-week>div {
	text-align: center
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day {
	width: 14.2857142857%;
	text-align: left;
	transition: all .6s;
	padding: 2px
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day:hover {
	opacity: .6;
	cursor: pointer;
	text-decoration: none;
	opacity: .5
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day-disp, main#main-content .sub-page .s-o-event-calendar-table-row .items-day-num {
	display: block;
	text-align: center;
	padding: 2px 6px
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day-disp {
	font-size: .875rem
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day-num {
	font-size: .75rem;
	color: #666
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day.col-sun {
	background-color: #ffe5e5
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day.col-sat {
	background-color: #e5f2ff
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day.not-items {
	background-color: #eee;
	color: #999
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day.items-today {
	background-color: #ffc
}
main#main-content .sub-page .s-o-event-calendar-table-row .items-day span.material-icons {
	font-size: .8125rem
}
main#main-content .sub-page .s-o-event-title {
	font-size: 1.5rem;
	font-weight: 700;
	padding: var(--padding_all)
}
main#main-content .sub-page .s-o-event-items {
	width: 100%;
	margin: var(--margin_with);
	display: flex;
	flex-wrap: nowrap;
	box-shadow: var(--box_shadow_glow);
	background-color: #fff
}
main#main-content .sub-page .s-o-event-items p {
	width: 30%
}
main#main-content .sub-page .s-o-event-items p img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover
}
main#main-content .sub-page .s-o-event-items-inner {
	width: 70%;
	padding: var(--padding_half_all)
}
main#main-content .sub-page .s-o-event-items h1, main#main-content .sub-page .s-o-event-items h2, main#main-content .sub-page .s-o-event-items h3, main#main-content .sub-page .s-o-event-items-name {
	width: 100%!important
}
main#main-content .sub-page .s-o-event-items h1, main#main-content .sub-page .s-o-event-items h2, main#main-content .sub-page .s-o-event-items h3 {
	text-align: left
}
main#main-content .sub-page .s-o-event-items h1 {
	font-weight: 700;
	font-size: 1.125rem
}
main#main-content .sub-page .s-o-event-items h1 span {
	display: block;
	text-align: right!important;
	font-size: .875rem
}
main#main-content .sub-page .s-o-event-items h2, main#main-content .sub-page .s-o-event-items h3 {
	font-size: 1rem
}
main#main-content .sub-page .s-o-event-items-name {
	font-size: .8125rem;
	text-align: right
}
main#main-content .sub-page .s-o-event-items-name span {
	display: block
}
main#main-content .sub-page .s-o-event-archive-title {
	font-size: 1.5rem;
	font-weight: 700;
	padding: var(--padding_all)
}
main#main-content .sub-page .s-o-event-archive-list li {
	list-style-type: none;
	text-align: left
}
main#main-content .sub-page .s-o-event-archive-list li a {
	padding: var(--padding_all)
}
main#main-content .sub-page .s-o-event-archive .no-event {
	color: #555;
	text-align: center
}
main#main-content .sub-page .event-tab-area {
	width: min(96%, 1000px);
	margin: var(--margin_with);
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 20px
}
main#main-content .sub-page .event-tab-area li {
	width: 15%;
	height: 40px;
	line-height: 40px;
	text-align: center;
	border: 1px solid #ccc;
	list-style-type: none;
	cursor: pointer
}
main#main-content .sub-page .event-tab.active {
	background-color: teal;
	color: #fff
}
main#main-content .sub-page .event-panel {
	display: none;
	text-align: center
}
main#main-content .sub-page .event-panel.active {
	display: block
}
main#main-content .sub-page .event-box {
	width: min(96%, 1200px);
	padding: var(--padding_all);
	margin: var(--margin_with);
	border-bottom: 1px solid #ccc
}
main#main-content .sub-page .event-box a {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .event-box-photo {
		width: 200px
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .event-box-photo {
		width: min(96%, 640px);
		margin: var(--margin_with)
	}
}
main#main-content .sub-page .event-box-inner {
	padding: var(--padding_all)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .event-box-inner {
		width: calc(100% - 200px)
	}
}
main#main-content .sub-page .event-box-cate {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	justify-content: flex-start;
	gap: 10px
}
main#main-content .sub-page .event-box-cate li {
	font-size: .75rem;
	background-color: #2d0000;
	color: #fff;
	border-radius: 6px;
	padding: var(--padding_half_all);
	list-style-type: none
}
main#main-content .sub-page .event-box-cate, main#main-content .sub-page .event-box h1 {
	margin-bottom: 16px
}
main#main-content .sub-page .event-box h1, main#main-content .sub-page .event-box h2 {
	text-align: left
}
main#main-content .sub-page .event-box h1 {
	font-size: 1.25rem
}
main#main-content .sub-page .event-box h2 {
	font-size: .9375rem;
	text-overflow: ellipsis;
	overflow: hidden;
	white-space: nowrap
}
main#main-content .sub-page .guide-box {
	padding-bottom: 60px
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box {
		margin: var(--margin_with_title_half)
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box {
		margin: var(--margin_with)
	}
}
main#main-content .sub-page .guide-box>h1, main#main-content .sub-page .guide-box>h2 {
	text-align: center
}
main#main-content .sub-page .guide-box>h1 {
	font-weight: 700;
	margin-bottom: 1em
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box>h1 {
		font-size: 2.25rem
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box>h1 {
		font-size: 1.5rem
	}
}
main#main-content .sub-page .guide-box>h1 span.guide-title-en {
	display: block;
	font-size: 1rem
}
main#main-content .sub-page .guide-box>h2 {
	width: min(80%, 1000px);
	font-size: 1.25rem;
	margin: var(--margin_with)
}
main#main-content .sub-page .guide-box-photo-list {
	width: 100%;
	display: flex;
	flex-wrap: nowrap;
	padding: 0!important;
	margin-bottom: 60px
}
main#main-content .sub-page .guide-box-photo-list li {
	width: 25%;
	list-style-type: none
}
main#main-content .sub-page .guide-box-btn {
	text-align: center;
	width: min(96%, 480px);
	height: 50px;
	line-height: 46px;
	margin: auto;
	font-weight: 700;
	border: 2px solid #0174be;
	background: #0174be;
	color: #fff;
	border-radius: 10px;
	transition: .5s
}
main#main-content .sub-page .guide-box-btn a {
	display: block;
	width: 100%;
	height: 100%
}
main#main-content .sub-page .guide-box-btn a:hover {
	cursor: pointer;
	color: #0174be;
	background: #fff
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-point {
		width: min(90%, 1200px);
		display: flex;
		flex-wrap: nowrap;
		margin: var(--margin_with_double)
	}
	main#main-content .sub-page .guide-box-point:nth-of-type(even) p {
		order: 1
	}
	main#main-content .sub-page .guide-box-point:nth-of-type(even) .guide-box-point-inner {
		order: 2
	}
	main#main-content .sub-page .guide-box-point:nth-of-type(odd) p {
		order: 2
	}
	main#main-content .sub-page .guide-box-point:nth-of-type(odd) .guide-box-point-inner {
		order: 1
	}
}
main#main-content .sub-page .guide-box-point-photo {
	height: auto;
	aspect-ratio: 4/3
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-point-photo {
		width: 500px
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-point-photo {
		width: min(96%, 750px);
		margin: var(--margin_with)
	}
}
main#main-content .sub-page .guide-box-point-inner>h1, main#main-content .sub-page .guide-box-point-inner>h2 {
	text-align: left
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-point-inner {
		width: calc(100% - 500px);
		padding: var(--padding_all_double)
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-point-inner {
		width: 96%;
		margin: var(--margin_with);
		padding: var(--padding_all)
	}
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-point h1 {
		font-size: 1.875rem
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-point h1 {
		font-size: 1.375rem;
		text-align: center
	}
}
main#main-content .sub-page .guide-box-point h2 {
	margin: var(--margin_with);
	padding: var(--padding_all)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-point h2 {
		font-size: 1.125rem
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-point h2 {
		font-size: .9375rem
	}
}
main#main-content .sub-page .guide-box-child {
	width: 100%;
	padding: var(--padding_all);
	margin: var(--margin_with)
}
main#main-content .sub-page .guide-box-child-outer {
	width: 100%;
	margin: var(--margin_with)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-child-outer {
		display: flex;
		flex-wrap: nowrap;
		gap: 60px
	}
}
main#main-content .sub-page .guide-box-child>h1, main#main-content .sub-page .guide-box-child>h2 {
	text-align: center
}
main#main-content .sub-page .guide-box-child>h1 {
	font-size: 1.625rem;
	font-weight: 700
}
main#main-content .sub-page .guide-box-child>h2 {
	font-size: 1.5rem;
	font-weight: 700;
	margin: var(--margin_with)
}
main#main-content .sub-page .guide-box-child-photo {
	width: min(80%, 400px);
	margin: var(--margin_auto)
}
main#main-content .sub-page .guide-box-child-price, main#main-content .sub-page .guide-box-child-details {
	padding: 10px;
	background-color: #fff;
	border-radius: 10px;
	text-align: center
}
main#main-content .sub-page .guide-box-child-price {
	font-size: 3.75rem;
	color: #aaa
}
main#main-content .sub-page .guide-box-child-details {
	font-size: 1.25rem
}
main#main-content .sub-page .guide-box-child-details-info {
	display: block;
	background-color: #0c356a;
	color: #fff;
	border-radius: 10px;
	margin: 1em auto;
	padding: .3em
}
main#main-content .sub-page .guide-box-child-items {
	background-color: #fff;
	border-radius: 10px;
	padding: var(--padding_half_all);
	margin: var(--margin_with)
}
main#main-content .sub-page .guide-box-child-items>h1 {
	font-size: 1.25rem;
	font-weight: 700;
	text-align: center
}
main#main-content .sub-page .guide-box-child-items>h2 {
	font-size: .875rem
}
main#main-content .sub-page .guide-box-table {
	width: min(96%, 1200px);
	margin: var(--margin_with);
	border-collapse: separate
}
main#main-content .sub-page .guide-box-table th, main#main-content .sub-page .guide-box-table td {
	padding: var(--padding_half_all);
	text-align: center
}
main#main-content .sub-page .guide-box-table th {
	background-color: rgba(255, 255, 255, .5)
}
main#main-content .sub-page .guide-box-table td {
	background-color: #fff
}
main#main-content .sub-page .guide-box-flow {
	width: min(96%, 1200px);
	margin: var(--margin_with)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-flow {
		display: flex;
		flex-wrap: wrap
	}
}
main#main-content .sub-page .guide-box-flow dt, main#main-content .sub-page .guide-box-flow dd {
	margin-bottom: 10px;
	text-align: left;
	padding: var(--padding_half_all)
}
main#main-content .sub-page .guide-box-flow dt {
	background-color: rgba(255, 255, 255, .5);
	counter-increment: flowcounter
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-flow dt {
		width: 20%
	}
}
main#main-content .sub-page .guide-box-flow dt:before {
	content: "0" counter(flowcounter) "："
}
main#main-content .sub-page .guide-box-flow dd {
	background-color: #fff
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-flow dd {
		width: 80%
	}
}
main#main-content .sub-page .guide-box-flow-ul {
	margin-top: 10px
}
main#main-content .sub-page .guide-box-flow-ul li {
	width: 96%;
	margin: var(--margin_auto);
	list-style-type: disc;
	text-align: left
}
main#main-content .sub-page .guide-box-faq {
	width: min(96%, 1200px);
	margin: var(--margin_with);
	background-color: #fff;
	counter-increment: faqcounter
}
main#main-content .sub-page .guide-box-faq h1, main#main-content .sub-page .guide-box-faq h2 {
	text-align: left
}
main#main-content .sub-page .guide-box-faq h1 {
	padding: var(--padding_half_all)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-faq h1 {
		font-size: 1.375rem
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-faq h1 {
		font-size: 1rem
	}
}
main#main-content .sub-page .guide-box-faq h1:before {
	content: "Ｑ" counter(faqcounter) " "
}
main#main-content .sub-page .guide-box-faq h1:after, main#main-content .sub-page .guide-box-faq h1.guide-box-open:after {
	display: inline-block;
	font-size: 1.875rem;
	font-family: "Material Icons";
	background-color: #666;
	color: #fff;
	border-radius: 4px
}
main#main-content .sub-page .guide-box-faq h1:after {
	content: ""
}
main#main-content .sub-page .guide-box-faq h1.guide-box-open:after {
	content: ""
}
main#main-content .sub-page .guide-box-faq h2 {
	padding: 0 2em 2em 2em
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .guide-box-faq h2 {
		font-size: 1.125rem
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .guide-box-faq h2 {
		font-size: .875rem
	}
}
main#main-content .sub-page .guide-box-text {
	width: min(96%, 1200px);
	margin: var(--margin_with);
	font-size: .875rem;
	text-align: right
}
main#main-content .sub-page .guide-box span.note-text {
	display: inline-block!important;
	font-size: .75rem;
	font-weight: normal!important
}
main#main-content .sub-page .guide-box-info {
	width: min(96%, 1200px);
	margin: var(--margin_with_double)
}
main#main-content .sub-page .guide-box-info li {
	list-style-type: none;
	text-align: left;
	counter-increment: infocounter;
	margin-bottom: 1em
}
main#main-content .sub-page .guide-box-info li:before {
	content: "※" counter(infocounter) "…"
}
main#main-content .sub-page .guide-box>.contact-parts-outer {
	width: min(96%, 1200px)!important;
	margin: var(--margin_with)
}
main#main-content .sub-page .shop {
	width: 100%
}
main#main-content .sub-page .shop-box {
	width: 100%;
	background-color: #fff;
	padding: var(--padding_all);
	margin: var(--margin_with);
	box-shadow: var(--box_shadow_glow)
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .shop-box {
		display: flex;
		flex-wrap: nowrap;
		justify-content: space-between
	}
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .shop-box-photo {
		width: 30%
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .shop-box-photo {
		width: 96%;
		margin: var(--margin_with)
	}
}
main#main-content .sub-page .shop-box-photo img {
	border-radius: 10px
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .shop-box-inner {
		width: 64%
	}
}
@media screen and (max-width:1024px) {
	main#main-content .sub-page .shop-box-inner {
		width: 96%;
		margin: var(--margin_with)
	}
}
main#main-content .sub-page .shop-box-inner h1 {
	font-size: 1.25rem;
	border-bottom: 2px solid #0c356a;
	text-align: left;
	font-weight: 700;
	margin-bottom: 6px
}
main#main-content .sub-page .shop-box-inner h1 span {
	font-size: .875rem;
	display: block
}
main#main-content .sub-page .shop-box-inner h2 {
	font-size: 1.5rem;
	font-weight: 700;
	margin-bottom: 4px
}
main#main-content .sub-page .shop-box-inner p {
	font-size: .875rem;
	text-align: center;
	color: #0174be;
	border: 1px solid #0174be;
	border-radius: 10px;
	padding: var(--padding_half_all)
}
main#main-content .sub-page .shop-info {
	width: 100%;
	margin: var(--margin_with_title)
}
main#main-content .sub-page .shop-info h1 {
	font-size: 1.625rem;
	font-weight: 700
}
main#main-content .sub-page .shop-info h1 span {
	display: block;
	font-size: 1.25rem
}
main#main-content .sub-page .shop-info h2 {
	text-align: center;
	padding: var(--padding_all)
}
main#main-content .sub-page .hotel {
	width: 90%;
	margin: var(--margin_auto);
	display: grid;
	grid-template-columns: 400px 1fr;
	grid-template-rows: repeat(2, auto);
	grid-template-areas: "hotelA hotelB"
}
main#main-content .sub-page .hotel-side {
	grid-area: hotelA;
	padding: var(--padding_all)
}
main#main-content .sub-page .hotel-side-box {
	margin-bottom: 1em
}
main#main-content .sub-page .hotel-side-box>h2 {
	font-size: 1.125rem;
	font-weight: 700;
	margin-bottom: 1em;
	text-align: left;
	padding: var(--padding_half_all);
	border-top: 2px solid #0c356a;
	background-color: #fff;
	border-bottom: 1px solid #0c356a;
	color: #0c356a
}
main#main-content .sub-page .hotel-side-box #hotel-area {
	width: 100%
}
main#main-content .sub-page .hotel-side-box #hotel-area svg {
	width: auto;
	height: auto
}
main#main-content .sub-page .hotel-side-box #hotel-area svg a path {
	transition: fill .3s linear
}
main#main-content .sub-page .hotel-side-box #hotel-area svg a:hover {
	cursor: pointer
}
main#main-content .sub-page .hotel-side-box #hotel-area svg a:hover path {
	fill-opacity: .8
}
main#main-content .sub-page .hotel-side-box .hotel-type {
	display: flex;
	flex-wrap: wrap;
	text-align: left;
	margin-bottom: 1em
}
main#main-content .sub-page .hotel-side-box .hotel-type-label {
	padding: 2px 4px;
	margin-right: 1em
}
main#main-content .sub-page .hotel-side-box #hotel-type-btn {
	width: 200px;
	height: 40px;
	line-height: 40px;
	margin-bottom: 10px;
	background-color: #0174be;
	color: #fff;
	font-weight: 700;
	cursor: pointer;
	border: none;
	border-radius: 10px
}
main#main-content .sub-page .hotel-side-child {
	width: 200px;
	background-color: #fff;
	box-shadow: var(--box_shadow_glow);
	padding: var(--padding_half_all);
	border-radius: 6px;
	margin: var(--margin_with)
}
main#main-content .sub-page .hotel-side-child p {
	margin: var(--margin_auto);
	padding: var(--padding_half_all);
	text-align: center
}
main#main-content .sub-page .hotel-side-child p img {
	width: 100%;
	height: 100%
}
main#main-content .sub-page .hotel-side-child h3 {
	font-size: .875rem
}
main#main-content .sub-page .hotel-list {
	grid-area: hotelB;
	padding: var(--padding_all)
}
main#main-content .sub-page .hotel-list-items {
	background-color: #fff;
	box-shadow: var(--box_shadow_glow);
	border-radius: 10px;
	margin: var(--margin_with)
}
main#main-content .sub-page .hotel-list-items h1 {
	grid-area: headB;
	font-size: 1.25rem;
	padding: .6em 1em 0 1em
}
main#main-content .sub-page .hotel-list-items h1 a {
	display: flex;
	flex-wrap: nowrap
}
main#main-content .sub-page .hotel-list-items h1 span {
	font-size: .75rem;
	display: inline-block;
	padding: 0 .6em;
	min-width: 60px
}
main#main-content .sub-page .hotel-list-items h1 span.hotel-area-name {
	grid-area: headA;
	margin-right: 2em;
	background-color: #183d3d;
	color: #fff
}
main#main-content .sub-page .hotel-list-items h1 span.hotel-type-name {
	text-align: center;
	grid-area: headC;
	margin-left: 2em;
	background-color: #2d0000;
	color: #fff;
	border-radius: 30px
}
main#main-content .sub-page .hotel-list-items-inner {
	display: flex;
	flex-wrap: nowrap;
	align-items: flex-start;
	padding: var(--padding_all)
}
main#main-content .sub-page .hotel-list-items-inner>p {
	width: 220px
}
main#main-content .sub-page .hotel-list-items-inner>div {
	width: calc(100% - 400px)
}
main#main-content .sub-page .hotel-list-items-inner>ul {
	width: 200px;
	list-style-type: none
}
main#main-content .sub-page .hotel-list-items-inner>ul li {
	width: 100%;
	height: 40px;
	line-height: 40px;
	background-color: #0174be;
	color: #fff;
	border-radius: 10px;
	margin-bottom: 1em
}
main#main-content .sub-page .hotel-list-items-inner>ul li a {
	display: block;
	width: 100%;
	height: 100%
}
main#main-content .sub-page .hotel-list-items-inner h2, main#main-content .sub-page .hotel-list-items-inner h3 {
	text-align: left;
	font-size: 1rem
}
main#main-content .sub-page .hotel-list-items-inner dl {
	display: flex;
	flex-wrap: wrap;
	padding: var(--padding_half_all)
}
main#main-content .sub-page .hotel-list-items-inner dl dt {
	width: 20%
}
main#main-content .sub-page .hotel-list-items-inner dl dd {
	width: 80%;
	text-align: left
}
main#main-content .sub-page .hotel-list-items-inner dl dt, main#main-content .sub-page .hotel-list-items-inner dl dd {
	font-size: .875rem;
	padding: var(--padding_half_all);
	border-bottom: 1px solid #ccc
}
main#main-content .sub-page .hotel-list .pagenate-box {
	display: flex;
	flex-wrap: nowrap;
	justify-content: space-between
}
main#main-content .sub-page .hotel-list .pagenate-box p {
	text-align: left
}
main#main-content .sub-page .hotel-list .pagenate-box ul {
	display: flex;
	flex-wrap: wrap;
	justify-content: flex-end;
	list-style-type: none;
	gap: 10px
}
main#main-content .sub-page .hotel-list .pagenate-box ul li {
	min-width: 40px;
	text-align: center;
	font-size: .8125rem
}
main#main-content .sub-page .hotel-list .pagenate-box ul li.disabled {
	background-color: #999;
	color: #ddd;
	border-radius: 6px
}
main#main-content .sub-page .hotel-list .pagenate-box ul li span.current {
	display: block;
	width: 100%;
	height: 100%;
	border-radius: 6px;
	background-color: #183d3d;
	color: #fff
}
main#main-content .sub-page .hotel-list .pagenate-box ul li a {
	display: block;
	width: 100%;
	height: 100%;
	border: 1px solid #ccc;
	background-color: #fff;
	border-radius: 6px
}
main#main-content .sub-page .contact-parts {
	width: 100%;
	margin: var(--margin_auto);
	border-bottom: 1px solid #ccc;
	padding: var(--padding_half_all)
}
main#main-content article.sub-page .contact-box {
    width:min(96%,1200px);
    margin:var(--margin_with_double);
    text-align: left;
}
main#main-content article.sub-page .contact-box h1 {
	text-align: center;
    margin-bottom:1em;
    font-size:1.625rem
}
main#main-content article.sub-page .contact-box h2,main#main-content article.sub-page .contact-box h3 {
    font-size:1rem
}
main#main-content article.sub-page .contact-box h2 {
    margin-bottom:2em
}
main#main-content article.sub-page .contact-box h3 span {
    display:block
}
main#main-content article.sub-page .contact-box .tab {
    width:100%;
    padding:var(--padding_all);
    text-align:center;
    background-color:#adadad61;
    color:#888
}
main#main-content article.sub-page .contact-box .tab-area {
    display:flex;
    flex-wrap:nowrap;
    justify-content:space-between;
    padding:0 !important;
    margin:0 !important;
    transition:all .5s ease 0s
}
main#main-content article.sub-page .contact-box .tab-area li {
    list-style-type:none
}
main#main-content article.sub-page .contact-box .tab.active {
    background-color:#fff;
    color:#2f2f2f !important
}
main#main-content article.sub-page .contact-box .tab:hover {
    cursor:pointer
}
main#main-content article.sub-page .contact-box .panel {
    display:none;
    text-align:center;
    background-color:#fff;
    padding:var(--padding_all)
}
main#main-content article.sub-page .contact-box .panel.active {
    transition:var(--transition);
    display:block
}
main#main-content article.sub-page .contact-parts {
    width:100%;
    margin:var(--margin_auto);
    border-bottom:1px solid #ccc;
    padding:var(--padding_half_all)
}
main#main-content .sub-page .contact-parts-outer {
	padding: var(--padding_all)
}
main#main-content .sub-page .contact-parts-inner {
	padding: .4em 0;
	text-align: left
}
@media screen and (min-width:1025px) {
	main#main-content .sub-page .contact-parts {
		display: flex;
		flex-wrap: nowrap;
		align-items: center
	}
	main#main-content .sub-page .contact-parts label.label-title {
		width: 14em
	}
	main#main-content .sub-page .contact-parts-inner {
		width: calc(100% - 15em)
	}
}
main#main-content .sub-page .contact-parts label {
	font-size: 1rem
}
main#main-content .sub-page .contact-parts span.required {
	background-color: #8c0000;
	color: #fff;
	border-radius: 6px;
	padding: 2px 6px;
	font-size: 80%;
	display: inline-block;
	margin: 0 6px
}
main#main-content .sub-page .contact-parts input[type=text], main#main-content .sub-page .contact-parts input[type=number], main#main-content .sub-page .contact-parts input[type=email], main#main-content .sub-page .contact-parts input[type=date], main#main-content .sub-page .contact-parts select, main#main-content .sub-page .contact-parts textarea {
	width: 100%;
	display: inline-block;
	font-size: 1rem;
	padding: var(--padding_half_all);
	border: 1px solid #eee
}
main#main-content .sub-page .contact-parts input[type=text]:focus, main#main-content .sub-page .contact-parts input[type=number]:focus, main#main-content .sub-page .contact-parts input[type=email]:focus, main#main-content .sub-page .contact-parts input[type=date]:focus, main#main-content .sub-page .contact-parts select:focus, main#main-content .sub-page .contact-parts textarea:focus {
	outline: 1px dashed #0174be!important
}
main#main-content .sub-page .contact-parts-btn {
	display: block;
	width: 160px;
	height: 50px;
	line-height: 50px;
	background-color: #0c356a;
	color: #fff;
	text-align: center;
	border: none;
	border-radius: 10px;
	font-size: 1.25rem;
	margin: var(--margin_with);
	transition: all .6s
}
main#main-content .sub-page .contact-parts-btn:hover {
	cursor: pointer;
	text-decoration: none;
	opacity: .5
}
main#main-content .sub-page .contact-parts table {
	width: 100%;
	margin: var(--margin_with)
}
main#main-content .sub-page .contact-parts table th, main#main-content .sub-page .contact-parts table td {
	display: block;
	width: 100%
}
main#main-content .sub-page .contact-parts table th {
	margin-bottom: 10px
}
main#main-content .sub-page .contact-parts table td {
	padding: 0 2em;
	margin-bottom: 30px
}
main#main-content .sub-page .contact-parts table .inline-box {
	display: inline!important
}
main#main-content .sub-page .contact-parts input[name=a-member], main#main-content .sub-page .contact-parts input[name=a-member-male], main#main-content .sub-page .contact-parts input[name=a-member-female] {
	width: 100px!important
}
main#main-content .sub-page .screen-reader-response {
	text-align: center;
	color: #8c0000
}
main#main-content .sub-page .screen-reader-response ul {
	display: none
}
main#main-content .sub-page .wpcf7-not-valid-tip {
	display: block;
	font-size: .875rem;
	color: #8c0000
}
main#main-content .sub-page .wpcf7-not-valid-tip:before {
	display: inline-block;
	vertical-align: middle;
	font-family: "Material Icons";
	content: "";
	font-size: 1rem
}
main#main-content .sub-page .wpcf7-response-output {
	width: min(90%, 1100px);
	margin: var(--margin_with);
	padding: var(--padding_all);
	color: #8c0000;
	font-size: .875rem;
	text-align: center
}
main#main-content .sub-page .wpcf7-list-item-label {
	font-size: 1rem;
	margin: 6px auto
}
/*! footer */

.common-footer {
	padding: var(--padding_all_double)
}
.common-footer ul {
	width: 100%;
	margin-bottom: 20px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	gap: 10px
}
.common-footer ul li {
	padding: var(--padding_half_all);
	list-style-type: none
}
.common-footer p#copyright {
	text-align: center
}
.l-footer .copyright a {
    color: inherit !important;
}


/*! RM2 */

#cart {
	position: fixed;
	z-index: 1060;
	top: 120px;
	right: 10px
}
@media screen and (max-width:1024px) {
	nav.rm-navi ul li {
		font-size: .75rem
	}
}
button.btn-cart {
	position: relative;
	display: inline-block;
	border: 1px solid #2f2f2f!important;
	border-radius: 10px!important;
	background-color: #2f2f2f!important;
	color: #fff;
	margin: var(--margin_auto)
}
button.btn-cart:before {
	content: "";
	position: absolute;
	top: 50%;
	left: 100%;
	margin-top: -10px;
	border: 10px solid rgba(0, 0, 0, 0);
	border-left: 10px solid #2f2f2f
}
button.btn-cart:hover {
	color: #fff;
	opacity: .8
}
button.btn-cart span.cart-title {
	display: none
}
button.btn-cart span.cart-title:after {
	opacity: 1;
	font-family: "Material Icons";
	content: ""
}
button.btn-cart i.material-icons {
	display: block!important
}