/* ----------------------------------------------------
	bg
---------------------------------------------------- */
.bg {
	background-color: rgb(var(--wht));
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

/* ----------------------------------------------------
	kv
---------------------------------------------------- */
.kv {
	background-image: url(../img/kv.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100vh;
}

/*
	opening
------------------------------ */
.opening {
	background-image: url(../img/op-bg.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100vh;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 1200;
}

.opening__title {
	margin-bottom: min(5rem, 3.66vw);
	width: min(57.7rem, 42.24vw);
}

.opening__date {
	line-height: 3;
	color: rgb(var(--grn));
	font-family: var(--title);
	font-size: min(3.3rem, 2.416vw);
	font-weight: 400;
	text-align: center;
	letter-spacing: min(0.3rem, 0.22vw);
}

.opening__note {
	width: min(35.2rem, 25.769vw);
}

/* 各要素の初期状態 */
.opening__title,
.opening__date,
.opening__note {
	opacity: 0;
	transition: opacity 1s ease;
}

@media screen and (max-width: 768px) {
	.opening {
		background-image: url(../img/op-bg_sp.webp);
	}

	.opening__title {
		margin-bottom: 19.2vw;
		width: 81.333vw;
	}

	.opening__date {
		margin-bottom: 2.667vw;
		line-height: 1.4;
		font-size: 6.933vw;
		letter-spacing: 0.8vw;
	}

	.opening__date small {
		font-size: 4.533vw;
	}

	.opening__note {
		width: 61.333vw;
	}
}

.header,
.main,
.footer {
	opacity: 0;
	visibility: hidden;
	transition: opacity 0.5s ease;
}

.header.is-visible,
.main.is-visible,
.footer.is-visible {
	opacity: 1;
	visibility: visible;
}

/* ----------------------------------------------------
	header
---------------------------------------------------- */
.header {
	background: rgba(var(--navBg), 0.8);
	padding-right: min(2.5rem, 1.83vw);
	width: 100%;
	height: min(7.7rem, 5.637vw);
	display: flex;
	justify-content: flex-end;
	align-items: center;
	position: fixed;
	top: 0;
	left: 0;
	z-index: 500;
}

.header__logo {
	width: min(13.9rem, 10.176vw);
	position: absolute;
	top: 50%;
	left: min(3.3rem, 2.416vw);
	transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
	.header {
		padding-right: 24vw;
		height: 16vw;
	}

	.header__logo {
		width: 25.333vw;
		left: 5.333vw;
	}
}

/*
	gnav
------------------------------ */
.gnav {
	line-height: 1;
	display: flex;
}

.gnav__list {
	display: flex;
}

.gnav__list--item {
	margin-right: min(3.3rem, 2.416vw);
}

.gnav__list--item a {
	color: rgb(var(--brn));
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	text-decoration: none;
}

/* reserve */
.reserve__list {
	display: none;
}

@media screen and (max-width: 768px) {
	.gnav {
		background-color: rgba(var(--footerBg), 0.93);
		padding-top: 24vw;
		width: 100%;
		height: 100%;
		overflow: auto;
		position: fixed;
		top: 0;
		right: 0;
		left: auto;
		transform: translateX(100%);
		transition: transform 1s cubic-bezier(0.215, 0.61, 0.355, 1);
	}

	.gnav__list {
		display: block;
	}

	.gnav__list--item {
		margin-left: 16vw;
	}

	.gnav__list--item a {
		line-height: 2.4;
		color: rgb(var(--grn));
		font-size: 6.667vw;
	}

	/* reserve */
	.reserve__link {
		pointer-events: none;
	}

	.reserve__list {
		display: block;
	}

	.reserve__list--item a {
		font-size: 4.8vw
	}

	.reserve__list--item a::before {
		content: "＞";
	}

	/* is-open */
	body.is-open {
		width: 100vw;
		height: 100vh;
		overflow: hidden;
		position: fixed;
		top: 0;
		left: 0;
	}

	.is-open .gnav {
		z-index: 999;
		transform: translateX(0);
	}
}

/*
	toggle
------------------------------ */
.toggle {
	display: none;
}

@media screen and (max-width: 768px) {
	.toggle {
		width: 11.2vw;
		height: 4.533vw;
		display: block;
		position: fixed;
		top: 5.867vw;
		right: 6.667vw;
		z-index: 1000;
	}

	.toggle__inner {
		width: 100%;
		height: 100%;
		position: relative;
		cursor: pointer;
	}

	.toggle__inner--item {
		background: rgb(var(--grn));
		width: 100%;
		height: 1px;
		display: block;
		position: absolute;
		left: 50%;
		transition: all 0.6s;
	}

	.toggle__inner--item:nth-child(1) {
		top: 0;
		transform: translateX(-50%);
	}

	.toggle__inner--item:nth-child(2) {
		bottom: 0;
		transform: translateX(-50%);
	}

	/* is-open */
	.is-open .toggle__inner--item {
		transform-origin: 0 0;
	}

	.is-open .toggle__inner--item:nth-child(1) {
		top: 50%;
		transform: rotate(30deg) translate(-50%, -50%);
	}

	.is-open .toggle__inner--item:nth-child(2) {
		top: 50%;
		bottom: auto;
		transform: rotate(-30deg) translate(-50%, -50%);
	}
}

/*
	lang
------------------------------ */
.lang {
	background-color: rgb(var(--wht));
	width: min(11.2rem, 8.199vw);
	font-family: var(--mincho);
	font-size: min(1.3rem, 0.952vw);
	position: relative;
}

.lang__title {
	background-image: url(../img/icon-lang.svg);
	background-position: left min(0.6rem, 0.439vw) center;
	background-repeat: no-repeat;
	background-size: min(1.6rem, 1.171vw) auto;
	padding-left: min(2.6rem, 1.903vw);
	height: min(3rem, 2.196vw);
	font-weight: 700;
	display: flex;
	align-items: center;
	cursor: pointer;
}

.lang__title::after {
	background-color: rgb(var(--brn));
	width: min(0.6rem, 0.439vw);
	height: min(0.6rem, 0.439vw);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	position: absolute;
	top: 50%;
	right: min(0.6rem, 0.439vw);
	transform: translateY(-50%);
	transition: all 0.5s ease 0s;
	content: "";
}

.lang-active .lang__title::after {
	clip-path: polygon(0 100%, 100% 100%, 50% 0);
}

.lang__select {
	width: 100%;
	display: none;
	position: absolute;
	top: min(3rem, 2.196vw);
}

.lang__list {
	background-color: rgb(var(--wht));
}

.lang__link {
	padding-left: min(2.4rem, 1.757vw);
	height: min(3rem, 2.196vw);
	color: rgb(var(--brn));
	font-weight: 900;
	text-decoration: none;
	display: flex;
	align-items: center;
}

span.lang__link,
.lang__link:hover {
	background-color: #E0E0E0;
	opacity: 1;
}

@media screen and (max-width: 768px) {
	.lang {
		width: 16vw;
		font-size: 3.2vw;
	}

	.lang__title {
		background-color: rgb(var(--wht));
		background-position: left 2.667vw center;
		background-size: 6.4vw auto;
		padding-left: 0;
		width: 16vw;
		height: 9.067vw;
	}

	.lang__title::after {
		width: 2.133vw;
		height: 2.133vw;
		right: 2.667vw;
	}

	.lang__title--text {
		display: none;
	}

	.lang__select {
		width: 120%;
		top: 9.067vw;
	}

	.lang__link {
		padding-left: 1.6vw;
		height: 9.067vw;
	}
}

/* ----------------------------------------------------
	section
---------------------------------------------------- */
.section {
	padding: min(10rem, 7.321vw) 0;
	position: relative;
}

.section__title {
	padding-bottom: min(13.5rem, 9.883vw);
	line-height: normal;
	color: rgb(var(--grn));
	font-family: var(--title);
	font-size: min(5rem, 3.66vw);
	font-weight: 400;
	text-align: center;
	position: relative;
}

.section__title::after {
	background-color: rgb(var(--grn));
	width: 1px;
	height: min(6.8rem, 4.978vw);
	position: absolute;
	top: min(8.6rem, 6.296vw);
	left: 50%;
	transform: translateX(-50%);
	content: "";
}

@media screen and (max-width: 768px) {
	.section {
		padding: 21.333vw 0;
	}

	.section__title {
		padding-bottom: 26.667vw;
		font-size: 10.667vw;
	}

	.section__title::after {
		height: 18.133vw;
		top: 14.667vw;
	}
}

/* ----------------------------------------------------
	concept
---------------------------------------------------- */
.concept {
	background-image: url(../img/op-bg.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	margin-bottom: 0;
}

.concept .section__title {
	background-image: url(../img/concept-bg.svg);
	background-position: center bottom;
	background-repeat: no-repeat;
	background-size: min(68.8rem, 50.366vw) auto;
	padding-bottom: min(19rem, 13.909vw);
}

.concept__content {
	color: rgb(var(--brn));
	text-align: center;
}

.concept__content--title {
	margin-bottom: min(1.6rem, 1.171vw);
	font-size: min(2.8rem, 2.05vw);
	font-weight: 700;
}

.concept__content--lead .text {
	line-height: 2.5;
	font-size: min(2rem, 1.464vw);
	font-weight: 600;
}

@media screen and (max-width: 768px) {
	.concept {
		background-image: url(../img/op-bg.webp);
	}

	.concept .section__title {
		background-image: url(../img/concept-bg_sp.svg);
		background-position: center bottom 2.667vw;
		background-size: 86.4vw auto;
		padding-bottom: 45.333vw;
	}

	.concept__content--title {
		margin-bottom: 4.267vw;
		font-size: 5.333vw;
	}

	.concept__content--lead {
		padding: 0 5.867vw;
		text-align: left;
	}

	.concept__content--lead .text {
		font-size: 4.267vw;
	}

	.concept__content--lead .text:not(:last-of-type) {
		margin-bottom: 1em;
	}
}

/* ----------------------------------------------------
	renewal
---------------------------------------------------- */
.renewal {
	background-color: rgb(var(--wht));
}

.renewal__list {
	margin: 0 auto;
	width: min(120rem, 87.848vw);
	display: flex;
	justify-content: space-between;
}

.renewal__list--item {
	width: min(36.7rem, 26.867vw);
}

.renewal__content--title {
	height: min(9.5rem, 6.955vw);
	line-height: 1.4;
	color: rgb(var(--beg));
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
	text-align: center;
	display: flex;
	justify-content: center;
	align-items: center;
}

.renewal__content--detail .text {
	color: rgb(var(--brn));
	font-size: min(1.5rem, 1.098vw);
}

@media screen and (max-width: 768px) {
	.renewal__image {
		margin-bottom: 5.333vw;
	}

	.renewal__list {
		padding: 0 5.867vw;
		width: 100%;
		display: block;
	}

	.renewal__list--item {
		width: 100%;
	}

	.renewal__list--item:not(:last-of-type) {
		margin-bottom: 10.667vw;
	}

	.renewal__content--title {
		margin-bottom: 5.333vw;
		height: auto;
		font-size: 5.333vw;
	}

	.renewal__content--detail .text {
		font-size: 4vw;
	}
}

/* ----------------------------------------------------
	menu
---------------------------------------------------- */
.menu {
	background-color: rgb(var(--footerBg));
}

.menu__list {
	margin: 0 auto min(10rem, 7.321vw);
	width: min(113.5rem, 83.089vw);
	display: flex;
	flex-wrap: wrap;
}

.menu__list--item {
	margin-bottom: min(4rem, 2.928vw);
	width: min(53.4rem, 39.092vw);
	display: flex;
	flex-direction: column;
}

.menu__list--item:nth-child(odd) {
	margin-right: calc(100% - min(53.4rem, 39.092vw) * 2);
}

.menu__list--title {
	height: min(7rem, 5.124vw);
	line-height: normal;
	color: rgb(var(--brn));
	font-family: var(--shippori);
	font-size: min(4.5rem, 3.294vw);
	font-weight: 600;
	display: flex;
	align-items: center;
}

.menu .thumbnail {
	margin-top: min(1rem, 0.732vw);
}

.menu .thumbnail .slick-track {
	display: flex;
	transform: unset !important;
}

.menu .thumbnail .slick-slide {
	width: min(12.6rem, 9.224vw) !important;
	float: none;
	position: relative;
	cursor: pointer;
}

.menu .thumbnail .slick-slide:not(:last-of-type) {
	margin-right: min(1rem, 0.732vw);
}

.menu .thumbnail .slick-slide::before {
	background-color: rgb(var(--wht));
	width: 100%;
	height: 100%;
	opacity: 0;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
	transition: all 0.5s ease 0s;
	content: "";
}

.menu .thumbnail .slick-slide:hover::before,
.menu .thumbnail .slick-slide.slick-current::before {
	opacity: 0.7;
}

.menu__content {
	margin: min(1.5rem, 1.098vw) 0 min(3.5rem, 2.562vw);
}

.menu__content--title {
	font-size: min(1.8rem, 1.318vw);
	font-weight: 700;
	display: flex;
}

.menu__content--title::before {
	color: rgb(var(--grn));
	content: "●";
}

.menu__content--detail {
	font-size: min(1.5rem, 1.098vw);
}

.menu__content--detail .title {
	color: rgb(var(--grn));
	font-weight: 700;
	display: flex;
}

.menu__content--detail .title::before {
	content: "・";
}

.menu__list--item .link-button {
	background-color: rgb(var(--grn));
	margin: auto auto 0;
	width: min(28rem, 20.498vw);
	height: min(6rem, 4.392vw);
	color: rgb(var(--wht));
	font-size: min(2rem, 1.464vw);
	font-weight: 700;
}

@media screen and (max-width: 768px) {
	.menu__list {
		margin-bottom: 13.333vw;
		padding: 0 5.867vw;
		width: 100%;
		display: block;
	}

	.menu__list--item {
		margin-bottom: 0;
		width: 100%;
		display: block;
	}

	.menu__list--item:nth-child(odd) {
		margin-right: 0;
	}

	.menu__list--item:not(:last-of-type) {
		margin-bottom: 12vw;
	}

	.menu__list--title {
		margin-bottom: 1.333vw;
		height: 12vw;
		font-size: 8vw;
	}

	.menu .thumbnail {
		margin-top: 1.333vw;
	}

	.menu .thumbnail .slick-slide {
		width: 20.8vw !important;
	}

	.menu .thumbnail .slick-slide:not(:last-of-type) {
		margin-right: 1.6vw;
	}

	.menu__content {
		margin: 3.467vw 0 8vw;
	}

	.menu__content--title {
		font-size: 4.8vw;
	}

	.menu__content--detail {
		font-size: 4vw;
	}

	.menu__list--item .link-button {
		width: 74.667vw;
		height: 16vw;
		font-size: 4.267vw;
	}
}

/*
	cafe
------------------------------ */
.menu .cafe__list {
	margin-top: min(1.5rem, 1.098vw);
}

.menu .cafe__list--item {
	font-size: min(1.5rem, 1.098vw);
	display: flex;
}

.menu .cafe__list--item::before {
	content: "・";
}

@media screen and (max-width: 768px) {
	.menu .cafe__list {
		margin-top: 3.467vw;
	}

	.menu .cafe__list--item {
		font-size: 4vw;
	}
}

/*
	breakfast
------------------------------ */
.menu__list--item.breakfast {
	padding-top: min(7rem, 5.124vw);
}

.breakfast__content {
	background-color: #E5D8BE;
	padding: min(2rem, 1.464vw) 0 min(5rem, 3.66vw) min(3rem, 2.196vw);
}

.breakfast__content--title {
	line-height: normal;
	color: rgb(var(--brn));
	font-family: var(--shippori);
	font-size: min(4.5rem, 3.294vw);
	font-weight: 600;
}

.breakfast .menu__content {
	margin-bottom: 0;
}

@media screen and (max-width: 768px) {
	.menu__list--item.breakfast {
		padding-top: 0;
	}

	.breakfast__content {
		padding: 5.333vw 0 6.4vw 5.333vw;
	}

	.breakfast__content--title {
		margin-bottom: 1.333vw;
		font-size: 8vw;
	}
}

/*
	plan
------------------------------ */
.plan {
	margin: 0 auto;
	width: min(96rem, 70.278vw);
}

.plan__content {
	background-color: rgb(var(--wht));
	margin-bottom: min(7rem, 5.124vw);
	display: flex;
	align-items: center;
}

.plan__image {
	width: min(54rem, 39.531vw);
}

.plan__detail {
	padding: 0 min(4.5rem, 3.294vw) 0 min(5rem, 3.66vw);
	width: calc(100% - min(54rem, 39.531vw));
}

.plan__title {
	margin-bottom: min(2rem, 1.464vw);
	line-height: 1.3;
	color: rgb(var(--grn));
	font-size: min(2.6rem, 1.903vw);
	font-weight: 600;
}

.plan__title.eng {
	line-height: 0.72;
	font-family: var(--title);
	font-size: min(3.2rem, 2.343vw);
	font-weight: 400;
}

.plan__text {
	font-size: min(1.6rem, 1.171vw);
}

.plan__menu {
	margin-top: 1em;
	color: #8E8484;
	font-family: var(--gothic);
	font-size: min(1.4rem, 1.025vw);
	font-weight: 600;
}

.plan__link a {
	font-size: min(1.8rem, 1.318vw);
	font-weight: 700;
	display: inline-flex;
}

.plan__link a::before {
	content: "＞";
}

@media screen and (max-width: 768px) {
	.plan {
		padding: 0 5.867vw;
		width: 100%;
	}

	.plan__content {
		margin-bottom: 0;
		display: block;
	}

	.plan__content:not(:last-of-type) {
		margin-bottom: 13.333vw;
	}

	.plan__image {
		width: 100%;
	}

	.plan__detail {
		padding: 12vw 6.4vw;
		width: 100%;
	}

	.plan__title {
		margin-bottom: 3.2vw;
		font-size: 5.333vw;
	}

	.plan__title.eng {
		font-size: 6.667vw;
	}

	.plan__text {
		font-size: 4vw;
	}

	.plan__menu {
		font-size: 3.733vw;
	}

	.plan__link a {
		font-size: 4.267vw;
	}
}

/* ----------------------------------------------------
	interview
---------------------------------------------------- */
.interview .section__title {
	color: rgb(var(--wht));
}

.interview .section__title::after {
	background-color: rgb(var(--wht));
}

.interview__list {
	margin: 0 auto;
	width: min(96rem, 70.278vw);
}

.interview__list--content {
	background-color: #E5D8BE;
	padding: min(4.5rem, 3.294vw) min(5rem, 3.66vw) min(8rem, 5.857vw);
	position: relative;
}

.interview__list--content:not(:last-of-type) {
	margin-bottom: min(10rem, 7.321vw);
}

body.is-interview .bg {
	background-image: url(../img/interview-bg.webp);
}

@media screen and (max-width: 768px) {
	.interview__list {
		padding: 0 5.867vw;
		width: 100%;
	}

	.interview__list--content {
		padding: 6.667vw 6.667vw 18.667vw;
	}

	.interview__list--content:not(:last-of-type) {
		margin-bottom: 26.667vw;
	}

	body.is-interview .bg {
		background-image: url(../img/interview-bg_sp.webp);
	}
}

/*
	profile
------------------------------ */
.profile {
	display: flex;
	justify-content: space-between;
	align-items: flex-end;
}

.profile__image {
	width: min(39rem, 28.551vw);
}

.profile__content {
	width: calc(100% - min(42.5rem, 31.113vw));
}

.profile__job {
	position: relative;
	left: max(-2rem, -1.464vw);
}

.profile__job.chef {
	margin-bottom: min(1rem, 0.732vw);
	width: min(12.4rem, 9.078vw);
}

.profile__job.designer {
	width: min(20.4rem, 14.934vw);
}

.profile__post {
	margin-bottom: 1em;
	line-height: 1.6;
	font-size: min(1.4rem, 1.025vw);
	font-weight: 600;
}

.profile__name {
	margin-bottom: min(1.8rem, 1.318vw);
	line-height: 0.8;
	font-size: min(2.9rem, 2.123vw);
	font-weight: 600;
}

.profile__name .eng {
	margin-top: min(1rem, 0.732vw);
	line-height: 1.6;
	font-size: min(1.4rem, 1.025vw);
	display: block;
}

.profile__content--text {
	line-height: 1.7;
	font-size: min(1.6rem, 1.171vw);
}

@media screen and (max-width: 768px) {
	.profile {
		display: block;
	}

	.profile__image {
		margin-bottom: 4.267vw;
		width: 100%;
	}

	.profile__content {
		width: 100%;
	}

	.profile__job {
		display: none;
	}

	.profile__post {
		font-size: 3.733vw;
	}

	.profile__name {
		margin-bottom: 4.8vw;
		font-size: 7.733vw;
	}

	.profile__name .eng {
		margin-top: 2.667vw;
		font-size: 3.733vw;
	}

	.profile__content--text {
		font-size: 4vw;
	}
}

/*
	accordion
------------------------------ */
.accordion-switch {
	background-color: rgb(var(--grn));
	width: min(24rem, 17.57vw);
	height: min(5.2rem, 3.807vw);
	color: rgb(var(--wht));
	display: flex;
	justify-content: center;
	align-items: center;
	position: absolute;
	bottom: max(-2.6rem, -1.903vw);
	left: 50%;
	transform: translateX(-50%);
	transition: all 0.5s ease 0s;
	cursor: pointer;
}

.accordion-switch:hover {
	opacity: 0.9;
}

.accordion-switch__text {
	font-size: min(1.4rem, 1.025vw);
	display: inline-flex;
	align-items: center;
	transition: all 0.5s ease 0s;
}

.accordion-switch__text svg {
	margin-left: min(0.5rem, 0.366vw);
	width: min(1.5rem, 1.098vw);
	height: auto;
}

.accordion-content {
	margin-top: min(8rem, 5.857vw);
	display: none;
}

/* is-active */
.is-active.accordion-switch {
	height: min(2.4rem, 1.757vw);
	bottom: max(-1.2rem, -0.878vw);
}

.is-active.accordion-switch i {
	display: none;
}

.is-active.accordion-switch svg {
	margin-left: 0;
	transform: rotate(180deg);
}

.is-active.accordion-content {
	display: block;
}

@media screen and (max-width: 768px) {
	.accordion-switch {
		width: 64vw;
		height: 13.867vw;
		bottom: -6.933vw;
	}

	.accordion-switch__text {
		font-size: 3.733vw;
	}

	.accordion-switch__text svg {
		margin-left: 0.333vw;
		width: 4vw;
	}

	.accordion-content {
		margin-top: 18.667vw;
	}

	/* is-active */
	.is-active.accordion-switch {
		height: 6.4vw;
		bottom: -3.2vw;
	}
}

/*
	faq
------------------------------ */
.faq__question {
	color: rgb(var(--grn));
	font-size: min(1.8rem, 1.318vw);
	font-weight: 700;
	display: flex;
	/* align-items: center; */
}

.faq__question i {
	margin-right: 0.25em;
	font-family: var(--title);
	font-size: min(2.5rem, 1.83vw);
	font-weight: 400;
	display: inline-block;
	position: relative;
	top: -0.2em;
}

.faq__answer {
	font-size: min(1.6rem, 1.171vw);
}

.faq__answer:not(:last-of-type) {
	margin-bottom: min(2.8rem, 2.05vw);
}

.faq__answer::before {
	content: "──";
}

@media screen and (max-width: 768px) {
	.faq__question {
		margin-bottom: 2.667vw;
		line-height: 1.5;
		font-size: 4vw;
	}

	.faq__question i {
		font-size: 4.8vw;
	}

	.faq__answer {
		font-size: 3.733vw;
	}

	.faq__answer:not(:last-of-type) {
		margin-bottom: 6.4vw;
	}
}

/* ----------------------------------------------------
	information
---------------------------------------------------- */
.information {
	background-image: url(../img/op-bg.webp);
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
}

.information__content {
	margin: 0 auto min(6rem, 4.392vw);
	padding: min(5rem, 3.66vw) min(6.4rem, 4.685vw) min(2rem, 1.464vw);
	width: min(96rem, 70.278vw);
	border: solid 1px rgb(var(--grn));
	display: flex;
	justify-content: space-between;
}

.information__block {
	width: min(32.2rem, 23.572vw);
}

.information__block.price {
	width: min(45rem, 32.943vw);
}

.information__title {
	margin-bottom: min(1.6rem, 1.171vw);
	color: rgb(var(--grn));
	font-size: min(2.2rem, 1.611vw);
	font-weight: 500;
	border-bottom: solid 1px rgb(var(--grn));
}

.information__detail {
	margin-bottom: min(3rem, 2.196vw);
	font-size: min(1.8rem, 1.318vw);
}

.information__detail .table {
	letter-spacing: -0.005em;
}

.information__detail .table__row {}

.information__detail .table__th {
	vertical-align: top;
	white-space: nowrap;
}

.information__detail .table__td {
	padding-left: 0.5em;
}

.information__detail .note {
	margin-top: min(2rem, 1.464vw);
}

.information__detail .note li {
	font-size: min(1.2rem, 0.878vw);
	text-align: right;
}

.information__content+.note {
	margin: 0 auto;
	width: min(96rem, 70.278vw);
}

@media screen and (max-width: 768px) {
	.information {
		background-image: url(../img/op-bg_sp.webp);
		padding-right: 5.867vw;
		padding-left: 5.867vw;
	}

	.information__content {
		margin-bottom: 0;
		padding: 0;
		width: 100%;
		border: none;
		display: block;
	}

	.information__block,
	.information__block.price {
		width: 100%;
	}

	.information__title {
		margin-bottom: 2.667vw;
		font-size: 5.867vw;
	}

	.information__detail {
		margin-bottom: 4vw;
		font-size: 4.267vw;
	}

	.price .information__detail {
		margin-bottom: 0;
	}

	.price .information__detail .table,
	.price .information__detail tbody,
	.price .information__detail .table__row,
	.price .information__detail .table__th,
	.price .information__detail .table__td {
		display: block;
	}

	.price .information__detail .table__row:not(:last-of-type) {
		margin-bottom: 1em;
	}

	.price .information__detail .table__td {
		padding-left: 0;
	}

	.information__detail .note {
		margin-top: 8vw;
	}

	.information__detail .note li {
		font-size: 3.2vw;
		text-align: left;
	}

	.information__content+.note {
		width: 100%;
	}
}

/* ----------------------------------------------------
	footer
---------------------------------------------------- */
.footer {
	background-color: rgb(var(--footerBg));
	padding: min(11.5rem, 8.419vw) 0 min(5rem, 3.66vw);
}

@media screen and (max-width: 768px) {
	.footer {
		padding: 16vw 0 6vw;
	}
}

/* 
	footer__hotel 
------------------------------ */
.footer__hotel {
	margin-bottom: min(9rem, 6.589vw);
	text-align: center;
}

.footer__hotel--name {
	margin-bottom: min(1rem, 0.732vw);
	line-height: normal;
	color: rgb(var(--grn));
	font-size: min(3rem, 2.196vw);
	font-weight: 600;
}

.footer__hotel--address {
	margin-bottom: min(5rem, 3.66vw);
	font-size: min(1.8rem, 1.318vw);
}

.footer__hotel--map iframe {
	width: min(74.5rem, 54.539vw);
	height: min(40rem, 29.283vw);
}

@media screen and (max-width: 768px) {
	.footer__hotel {
		margin-bottom: 16vw;
	}

	.footer__hotel--name {
		margin-bottom: 2.667vw;
		font-size: 6.667vw;
	}

	.footer__hotel--address {
		margin-bottom: 8vw;
		font-size: 4.8vw;
	}

	.footer__hotel--map iframe {
		width: 100%;
		height: 86.4vw;
	}
}

/* 
	footer__logo 
------------------------------ */
.footer__logo {
	margin: 0 auto min(5rem, 3.66vw);
	width: min(20rem, 14.641vw);
}

@media screen and (max-width: 768px) {
	.footer__logo {
		margin-bottom: 10.667vw;
		width: 38.933vw;
	}
}

/* 
	hotel-nav 
------------------------------ */
.footer .hotel-nav {
	margin-bottom: min(3rem, 2.196vw);
	line-height: 1;
	font-size: min(1.8rem, 1.318vw);
	font-weight: 600;
	display: flex;
	justify-content: center;
	align-items: center;
}

.footer .hotel-nav::before,
.footer .hotel-nav__item::after {
	content: "|";
}

.footer .hotel-nav__item a {
	padding: 0 1em;
	text-decoration: none;
}

@media screen and (max-width: 768px) {
	.footer .hotel-nav {
		margin-bottom: 10.667vw;
		font-size: 4.267vw;
		text-align: center;
		display: block;
	}

	.footer .hotel-nav::before {
		content: "";
	}

	.footer .hotel-nav__item::before,
	.footer .hotel-nav__item::after {
		content: "|";
	}

	.footer .hotel-nav__item:not(:last-of-type) {
		margin-bottom: 1em;
	}
}

/* 
	copy
------------------------------ */
.footer .copy {
	color: #8E8484;
	font-size: min(1.2rem, 0.878vw);
	text-align: center;
}

@media screen and (max-width: 768px) {
	.footer .copy {
		font-size: 2.667vw;
	}
}