/* リセット */
html {
	scroll-behavior: smooth;
}
body {
	margin-inline: auto;
	overflow-x: hidden;
}
a {
	color: inherit;
}
button {
	padding: 0;
}
picture {
	display: block;
}
dialog {
	padding: 0;
	border: 0;
}
dialog::backdrop {
	background-color: rgb(0, 0, 0, 0.3);
}
@media (min-width: 769px) {
	.sp-only {
		display: none !important;
	}
}
@media (max-width: 768px) {
	.pc-only {
		display: none !important;
	}
	dialog {
		max-width: unset;
		max-height: unset;
	}
}


/* フォント */
.eb-garamond {
	font-family: "EB Garamond";
	font-optical-sizing: auto;
}
.noto-sans {
	font-family: var(--font-family-noto-sans);
	font-optical-sizing: auto;
}
.noto-serif {
	font-family: var(--font-family-noto-serif);
	font-optical-sizing: auto;
}


/* ボタン */
.button {
	display: block;
	text-align: center;
}
.button-brown {
	background-color: #5d401a;
	color: #ffffff;
}
.button-green {
	background-color: #204722;
	color: #ffffff;
}
.button-beige {
	background-color: #d8ceb3;
}
.button-arrow {
	position: relative;
}
.button-arrow::after {
	content: "";
	position: absolute;
	top: 50%;
	translate: 0 -50%;
	width: 6px;
	height: 6px;
	border-top: 2px solid;
	border-right: 2px solid;
	rotate: 45deg;
}
@media (min-width: 769px) {
	.button {
		width: clamp(440px * 0.75, 440 / 1500 * 100vw, 440px);
		line-height: clamp(70px * 0.75, 70 / 1500 * 100vw, 70px);
		font-size: clamp(22px * 0.75, 22 / 1500 * 100vw, 22px);
	}
	.button-arrow::after {
		right: 20px;
	}
}
@media (max-width: 768px) {
	.button {
		width: 100%;
		line-height: 55px;
		font-size: 18px;
	}
	.button-arrow::after {
		right: 15px;
	}
}


/* ホバー */
@media (min-width: 769px) {
	.hover-black:hover {
		background-color: #000;
	}
	.hover-beige:hover {
		background-color: #b0a379;
	}
}


/* 背景 */
.bg-beige {
	background-color: #e8e7d6;
}


/* タイポグラフィ */
.text-green {
	color: #204722;
}
.text-beige {
	color: #d7ceb2;
}
.text-white {
	color: #ffffff;
}
.text-bold {
	font-weight: bold;
}
@media (min-width: 769px) {
	.text-h2 {
		font-size: clamp(64px * 0.75, 64 / 1500 * 100vw, 64px);
	}
	.text-h3 {
		font-size: clamp(32px * 0.75, 32 / 1500 * 100vw, 32px);
	}
	.text-p {
		font-size: clamp(16px * 0.85, 16 / 1500 * 100vw, 16px);
		line-height: calc(32 / 16);
	}
}
@media (max-width: 768px) {
	.text-h2 {
		font-size: 36px;
	}
	.text-h3 {
		font-size: 25px;
	}
	.text-p {
		font-size: 14px;
		line-height: calc(25 / 14);
	}
}


/* レイアウト */
.ib {
	display: inline-block;
}
@media (min-width: 769px) {
	.content-inner {
		max-width: clamp(1200px * 0.75, 1200 / 1500 * 100vw, 1200px);
		margin-inline: auto;
		padding-inline: 40px;
	}
}
@media (min-width: 1124px) {
	.content-inner {
		padding-inline: 0;
	}
}
@media (max-width: 768px) {
	.content-inner {
		padding-inline: 30px;
	}
}

.header-language-list {
	display: flex;
	height: clamp(70px * 0.75, 70 / 1500 * 100vw, 70px);
	align-items: center;
	gap: 0.8em;
	font-size: 14px;
	color: #ffffff;
	text-shadow: 0 0 10px #000000, 0 0 5px #000000;
}
.header-language-item {
	padding-block: 0.3em;
}
.header-language-item.-current {
	border-bottom: 1px solid;
}
/* ヘッダー */
@media (min-width: 769px) {
	.header {
		position: absolute;
		z-index: 1;
		top: 0;
		right: clamp(161px * 0.75, 161 / 1500 * 100vw, 161px);
		margin-right: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.header-reservation-link {
		position: fixed;
		z-index: 1;
		top: 0;
		right: 0;
		width: clamp(161px * 0.75, 161 / 1500 * 100vw, 161px);
	}
	.header-reservation-link::after {
		content: none;
	}
}
@media (max-width: 768px) {
	.header-language-list{
		position: absolute;
		top:10px;
		right:0;
		left:0;
		z-index:1;
		color: #fff;
		margin: 0 auto;
		justify-content: center;
	}
	.header-reservation-link {
		position: absolute;
		z-index: 1;
		top: 100vh;
		left: 0;
		right: 0;
		line-height: 60px;
	}
	.header-reservation-link.-fixed {
		position: fixed;
		top: unset;
		bottom: 0;
	}
	.header-reservation-link::after {
		right: 25px;
	}
}


/* MV */
.main-visual {
	position: relative;
	height: 100vh;
}
.main-visual-title {
	position: absolute;
	z-index: 1;
	top: 50%;
	left: 50%;
	translate: -50% -50%;
}
.main-visual-title-text-image {
	display: block;
	width: auto;
}
.mv-bg {
	height: 100vh;
}
.mv-bg img, .mv-bg .mv-video {
	display: block;
	height: 100vh;
	width: 100%;
	object-fit: cover;
	object-position: bottom;
}
.slick-zoom img {
	animation: zoom 6s 0s linear forwards infinite;
}
@keyframes zoom {
	0% { scale: 1 }
	100% { scale: 1.2 }
}
@media (min-width: 769px) {
	.main-visual-title-text-image {
		height: 120px;
	}
}
@media (max-width: 768px) {
	.main-visual-title-text-image {
		height: 73px;
	}
	.mv-bg img.mv4 {
		object-position: top left;
	}
}


/* MV下のナビ部分 */
@media (min-width: 769px) {
	.nav-section {
		padding-top: clamp(15px * 0.75, 15 / 1500 * 100vw, 15px);
		padding-bottom: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.nav-list {
		display: flex;
		gap: 1em;
		width: fit-content;
		margin-left: auto;
		margin-right: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
		margin-bottom: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
		font-size: clamp(18px * 0.8, 18 / 1500 * 100vw, 18px);
	}
	.nav-link {
		display: block;
		padding-block: clamp(6px * 0.75, 6 / 1500 * 100vw, 6px);
		padding-inline: clamp(8px * 0.75, 8 / 1500 * 100vw, 8px);
		border-bottom: 1px solid transparent;
	}
	.nav-link:hover {
		border-bottom-color: currentColor;
		color: #5d401a;
	}
	.nav-section-button {
		margin-inline: auto;
	}
}
@media (max-width: 768px) {
	.nav-section {
		padding: 30px;
	}
}


/* アクセス */
@media (min-width: 769px) {
	.access-section {
		box-sizing: border-box;
	}
	.access-section.-en {
		min-height: clamp(1145px * 0.75, 1145 / 1500 * 100vw, 1145px);
	}
	.access-section-inner {
		position: relative;
	}
	.access-map-image {
		position: absolute;
		z-index: -1;
		top: 0;
		height: auto;
	}
	.access-map-image.-en {
		right: calc(-1 * clamp(83px * 0.75, 83 / 1500 * 100vw, 83px));
		width: clamp(1472px * 0.7, 1472 / 1500 * 100vw, 1472px);
	}
	.access-h2 {
		font-size: clamp(48px * 0.75, 48 / 1500 * 100vw, 48px);
		line-height: calc(58 / 48);
		padding-top: clamp(115px * 0.2, 115 * 0.6 / 1500 * 100vw, 115px);
		margin-bottom: clamp(50px * 0.75, 50 / 1500 * 100vw, 50px);
	}
	.access-lead.-en {
		width: clamp(690px * 0.75, 690 / 1500 * 100vw, 690px);
	}
	.access-button-list {
		display: flex;
		flex-direction: row-reverse;
		justify-content: center;
		gap: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
	}
	.access-button-list.-en {
		margin-top: clamp(520px * 0.75, 520 / 1500 * 100vw, 520px);
	}
	.access-button-list.-tw {
		margin-top: clamp(670px * 0.75, 670 / 1500 * 100vw, 670px);
	}
	.access-button-list.-cn {
		margin-top: clamp(670px * 0.75, 670 / 1500 * 100vw, 670px);
	}
	.access-button {
		font-size: clamp(18px * 0.75, 18 / 1500 * 100vw, 18px);
		line-height: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
		width: clamp(346px * 0.75, 346 / 1500 * 100vw, 346px);
	}
	.access-text-wrap.-cn ,
	.access-text-wrap.-tw{
		padding-top: clamp(50px * 0.75, 50 / 1500 * 100vw, 50px);
	}
}
@media (max-width: 768px) {
	.access-section-inner {
		position: relative;
		padding-bottom: 60px;
	}
	.access-section-inner.-en {
		padding-top: 285px;
	}
	.access-map-picture {
		margin-inline: -30px;
	}
	.access-map-image {
		display: block;
		width: 100%;
		height: auto;
	}
	.access-text-wrap {
		position: absolute;
		top: 50px;
		left: 30px;
		right: 30px;
	}
	.access-h2 {
		line-height: calc(50 / 36);
		margin-bottom: 25px;
	}
	.access-button-list {
		margin-top: 50px;
		display: flex;
		flex-direction: column;
		gap: 10px;
	}
}


/* アクセスモーダル */
.access-dialog-close {
	position: absolute;
}
.access-dialog-close-image {
	display: block;
}
.access-dialog-content {
	overflow: auto;
	box-sizing: border-box;
}
.access-dialog-h2 {
	color: #204722;
}
.access-dialog-h3 {
	display: flex;
	align-items: center;
}
.access-dialog-h3-train-image {
	width: auto;
}
.access-dialog-h3-car-image {
	width: auto;
}
.access-dialog-route-image {
	display: block;
	width: 100%;
	height: auto;
}
.access-dialog-note {
	position: relative;
}
.access-dialog-note::before {
	content: "※";
	position: absolute;
	top: 0;
	left: -1.3em;
}
@media (min-width: 769px) {
	.access-dialog-close {
		top: 20px;
		right: 20px;
	}
	.access-dialog-close:hover {
		filter: grayscale(100%) contrast(200%);
	}
	.access-dialog-close-image {
		width: clamp(70px * 0.75, 70 / 1500 * 100vw, 70px);
		height: clamp(70px * 0.75, 70 / 1500 * 100vw, 70px);
	}
	.access-dialog-content {
		padding-inline: clamp(80px * 0.75, 80 / 1500 * 100vw, 80px);
		padding-top: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
		padding-bottom: clamp(130px * 0.75, 130 / 1500 * 100vw, 130px);
		max-height: 90vh;
	}
	.access-dialog-h2 {
		font-size: clamp(64px * 0.75, 64 / 1500 * 100vw, 64px);
	}
	.access-dialog-section {
		margin-top: clamp(80px * 0.75, 80 / 1500 * 100vw, 80px);
	}
	.access-dialog-h3 {
		gap: 0.5em;
		font-size: clamp(32px * 0.75, 32 / 1500 * 100vw, 32px);
		margin-bottom: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.access-dialog-h3-train-image {
		height: clamp(27px * 0.75, 27 / 1500 * 100vw, 27px);
	}
	.access-dialog-h3-car-image {
		height: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.access-dialog-note {
		font-size: clamp(16px * 0.85, 16 / 1500 * 100vw, 16px);
		line-height: calc(23 / 16);
		margin-top: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
		width: fit-content;
		margin-left: auto;
	}
}
@media (max-width: 768px) {
	.access-dialog {
		margin: 15px;
	}
	.access-dialog-close {
		top: 10px;
		right: 10px;
	}
	.access-dialog-close-image {
		width: 45px;
		height: 45px;
	}
	.access-dialog-content {
		padding-inline: 30px;
		padding-top: 60px;
		padding-bottom: 50px;
		max-height: calc(100vh - 2 * 15px);
	}
	.access-dialog-h2 {
		font-size: 46px;
		margin-bottom: 40px;
	}
	.access-dialog-section.-border-bottom {
		padding-bottom: 60px;
		border-bottom: 1px solid #d7ceb2;
		margin-bottom: 60px;
	}
	.access-dialog-h3 {
		justify-content: center;
		gap: 0.3em;
		font-size: 28px;
		margin-bottom: 40px;
	}
	.access-dialog-h3-train-image {
		height: 24px;
	}
	.access-dialog-h3-car-image {
		height: 18px;
	}
	.access-dialog-route-image.-border-bottom {
		padding-bottom: 40px;
		border-bottom: 1px solid #d7ceb2;
		margin-bottom: 40px;
	}
	.access-dialog-note {
		font-size: 12px;
		line-height: calc(20 / 12);
		margin-left: 1.3em;
		margin-top: 50px;
	}
}


/* 客室 */
.room-image {
	display: block;
	width: 100%;
	height: auto;
}
.splide__pagination {
	z-index: 0;
}
.splide__pagination__page {
	background-color: #b0a48b;
	opacity: 1;
	transition: none;
	margin: 0;
}
.splide__pagination__page.is-active {
	z-index: 0;
	transform: none;
	background-color: #5d401a;
}
@media (min-width: 769px) {
	.room-section {
		padding-top: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
		padding-bottom: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.room-splide {
		margin-top: clamp(80px * 0.75, 80 / 1500 * 100vw, 80px);
		margin-bottom: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.room-item {
		padding-inline: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.room-h3 {
		margin-top: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
		margin-bottom: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.room-arrows-wrap {
		display: flex;
		align-items: center;
		gap: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.room-arrows {
		display: flex;
		gap: clamp(16px * 0.75, 16 / 1500 * 100vw, 16px);
	}
	.room-arrow {
		border-radius: 50%;
		width: clamp(46px * 0.75, 46 / 1500 * 100vw, 46px);
		height: clamp(46px * 0.75, 46 / 1500 * 100vw, 46px);
		background-image: url("../img/slider-button-left.webp");
		background-size: cover;
	}
	.room-arrow:hover {
		background-image: url("../img/slider-button-left-hover.webp");
	}
	.room-next {
		rotate: 180deg;
	}
	.splide__arrow {
		display: none;
	}
	.splide__pagination {
		bottom: calc(-1 * clamp(50px * 0.75, 50 / 1500 * 100vw, 50px));
	}
	.splide__pagination__page {
		width: 14px;
		height: 14px;
		margin-right: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.room-button {
		margin-inline: auto;
	}
}
@media (max-width: 768px) {
	.room-section {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.room-splide {
		margin-top: 30px;
		margin-bottom: 65px;
		margin-inline: 15px;
	}
	.room-item {
		padding-inline: 15px;
	}
	.room-h3 {
		margin-top: 30px;
		margin-bottom: 20px;
	}
	.splide__arrow {
		opacity: 1;
		z-index: 0;
		transform: none;
		background-color: transparent;
		background-image: url("../img/slider-button-left.webp");
		background-size: cover;
		top: -64px;
		width: 32px;
		height: 32px;
	}
	.splide__arrow svg {
		display: none;
	}
	.splide__arrow--prev {
		left: unset;
		right: calc(15px + 32px + 13px);
	}
	.splide__arrow--next {
		right: 15px;
		rotate: 180deg;
	}
	.splide__pagination {
		bottom: -30px;
	}
	.splide__pagination__page {
		width: 11px;
		height: 11px;
		margin-right: 16px;
	}
}


/* 温泉 */
.hotspring-bg-1, .hotspring-bg-2 {
	background-size: cover;
	background-position: center;
}
.hotspring-kv-image {
	display: block;
	width: 100%;
	height: auto;
}
.hotspring-image {
	display: block;
	width: 100%;
	height: auto;
}
.hotspring-prev, .hotspring-next {
	position: absolute;
	background-size: cover;
}
.hotspring-next {
	rotate: 180deg;
}
.hotspring-dots {
	display: flex;
	justify-content: center;
}
.hotspring-dots > li > button {
	border-radius: 50%;
	background-color: #808080;
	overflow: hidden;
	color: transparent;
}
.hotspring-dots > .slick-active > button {
	background-color: #ffffff;
}
.use-cn-font{
	font-family: 'Noto Serif SC';
}
@media (min-width: 769px) {
	.hotspring-bg-1 {
		background-image: url("../img/hot-spring-bg-1-pc.webp");
		padding-top: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
		padding-bottom: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.hotspring-bg-2 {
		background-image: url("../img/hot-spring-bg-2-pc.webp");
		padding-top: clamp(80px * 0.75, 80 / 1500 * 100vw, 80px);
		padding-bottom: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.hotspring-lead ,
	.hotspring-lead-cn ,
	.hotspring-lead-tw{
		margin-inline: clamp(58px * 0.75, 58 / 1500 * 100vw, 58px);
	}
	.hotspring-list {
		margin-top: clamp(90px * 0.75, 90 / 1500 * 100vw, 90px);
		margin-inline: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.hotspring-item {
		padding-inline: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.hotspring-h3 {
		margin-top: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
		margin-bottom: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.hotspring-prev, .hotspring-next {
		top: 33%;
		width: clamp(26px * 0.75, 26 / 1500 * 100vw, 26px);
		height: clamp(48px * 0.75, 48 / 1500 * 100vw, 48px);
		background-image: url("../img/slider-angle-left-light.webp");
	}
	.hotspring-prev {
		left: calc(-1 * clamp(30px * 0.75, 30 / 1500 * 100vw, 30px));
	}
	.hotspring-next {
		right: calc(-1 * clamp(30px * 0.75, 30 / 1500 * 100vw, 30px));
	}
	.hotspring-dots {
		gap: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
		margin-top: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.hotspring-dots > li > button {
		width: 14px;
		height: 14px;
	}
}
@media (max-width: 768px) {
	.hotspring-bg-1 {
		background-image: url("../img/hot-spring-bg-1-sp.webp");
		padding-top: 60px;
		padding-bottom: 35px;
	}
	.hotspring-bg-2 {
		background-image: url("../img/hot-spring-bg-2-sp.webp");
		padding-top: 40px;
		padding-bottom: 60px;
	}
	.hotspring-list {
		margin-top: 85px;
		margin-inline: -15px;
	}
	.hotspring-item {
		padding-inline: 15px;
	}
	.hotspring-h3 {
		margin-top: 30px;
		margin-bottom: 20px;
	}
	.hotspring-prev, .hotspring-next {
		top: -57px;
		width: 32px;
		height: 32px;
		background-image: url("../img/slider-button-left.webp");
	}
	.hotspring-prev {
		right: calc(15px + 32px + 13px);
	}
	.hotspring-next {
		right: 15px;
	}
	.hotspring-dots {
		gap: 16px;
		margin-top: 25px;
	}
	.hotspring-dots > li > button {
		width: 11px;
		height: 11px;
	}
}


/* 施設 */
.facility-image {
	display: block;
	width: 100%;
	height: auto;
}
@media (min-width: 769px) {
	.facility-section {
		padding-top: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
		padding-bottom: clamp(115px * 0.75, 115 / 1500 * 100vw, 115px);
	}
	.facility-h2 {
		position: absolute;
	}
	.facility-list {
		display: grid;
		grid-template-columns: 1fr 1fr;
		grid-template-rows: auto auto;
		column-gap: clamp(70px * 0.75, 70 / 1500 * 100vw, 70px);
		row-gap: clamp(80px * 0.75, 80 / 1500 * 100vw, 80px);
	}
	.facility-item.-n1 {
		grid-column: 1 / 3;
		display: grid;
		grid-template-columns: clamp(290px * 0.75, 290 / 1500 * 100vw, 290px) 1fr;
		gap: clamp(25px * 0.75, 25 / 1500 * 100vw, 25px);
		align-items: center;
	}
	.facility-image.-n1 {
		grid-column: 2;
	}
	.facility-text-wrap.-n1 {
		grid-column: 1;
		grid-row: 1;
	}
	.facility-h3 {
		margin-top: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
		margin-bottom: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
}
@media (max-width: 768px) {
	.facility-prev, .facility-next {
		position: absolute;
		background-size: cover;
	}
	.facility-next {
		rotate: 180deg;
	}
	.facility-dots {
		display: flex;
		justify-content: center;
	}
	.facility-dots > li > button {
		border-radius: 50%;
		background-color: #b0a48b;
		overflow: hidden;
		color: transparent;
	}
	.facility-dots > .slick-active > button {
		background-color: #5d401a;
	}
	.facility-section {
		padding-top: 60px;
		padding-bottom: 60px;
	}
	.facility-list {
		margin-top: 30px;
		margin-inline: -15px;
	}
	.facility-item {
		padding-inline: 15px;
	}
	.facility-h3 {
		margin-top: 25px;
		margin-bottom: 15px;
	}
	.facility-prev, .facility-next {
		top: -64px;
		width: 32px;
		height: 32px;
		background-image: url("../img/slider-button-left.webp");
	}
	.facility-prev {
		right: calc(15px + 32px + 13px);
	}
	.facility-next {
		right: 15px;
	}
	.facility-dots {
		gap: 16px;
		margin-top: 25px;
	}
	.facility-dots > li > button {
		width: 11px;
		height: 11px;
	}
}


/* 料理 */
.cuisine-image {
	display: block;
	width: 100%;
	height: auto;
}
.cuisine-prev, .cuisine-next {
	position: absolute;
	background-size: cover;
}
.cuisine-next {
	rotate: 180deg;
}
.cuisine-dots {
	display: flex;
	justify-content: center;
}
.cuisine-dots > li > button {
	border-radius: 50%;
	background-color: #b0a48b;
	overflow: hidden;
	color: transparent;
}
.cuisine-dots > .slick-active > button {
	background-color: #5d401a;
}
@media (min-width: 769px) {
	.cuisine-section {
		padding-top: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
		padding-bottom: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.cuisine-list {
		margin-top: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
		margin-inline: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.cuisine-item {
		padding-inline: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.cuisine-h3 {
		margin-top: clamp(55px * 0.75, 55 / 1500 * 100vw, 55px);
		margin-bottom: clamp(25px * 0.75, 25 / 1500 * 100vw, 25px);
	}
	.cuisine-prev, .cuisine-next {
		top: 33%;
		width: clamp(26px * 0.75, 26 / 1500 * 100vw, 26px);
		height: clamp(48px * 0.75, 48 / 1500 * 100vw, 48px);
		background-image: url("../img/slider-angle-left-dark.webp");
	}
	.cuisine-prev {
		left: calc(-1 * clamp(30px * 0.75, 30 / 1500 * 100vw, 30px));
	}
	.cuisine-next {
		right: calc(-1 * clamp(30px * 0.75, 30 / 1500 * 100vw, 30px));
	}
	.cuisine-dots {
		gap: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
		margin-top: clamp(40px * 0.75, 40 / 1500 * 100vw, 40px);
	}
	.cuisine-dots > li > button {
		width: 14px;
		height: 14px;
	}
}
@media (max-width: 768px) {
	.cuisine-section {
		padding-top: 55px;
		padding-bottom: 60px;
	}
	.cuisine-list {
		margin-top: 30px;
		margin-inline: -15px;
	}
	.cuisine-item {
		padding-inline: 15px;
	}
	.cuisine-h3 {
		line-height: calc(32 / 25);
		margin-top: 25px;
		margin-bottom: 25px;
	}
	.cuisine-prev, .cuisine-next {
		top: -64px;
		width: 32px;
		height: 32px;
		background-image: url("../img/slider-button-left.webp");
	}
	.cuisine-prev {
		right: calc(15px + 32px + 13px);
	}
	.cuisine-next {
		right: 15px;
	}
	.cuisine-dots {
		gap: 16px;
		margin-top: 20px;
	}
	.cuisine-dots > li > button {
		width: 11px;
		height: 11px;
	}
}


/* 周辺観光 */
.attraction-image {
	display: block;
	width: 100%;
	height: auto;
}
@media (min-width: 769px) {
	.attraction-section {
		padding-block: clamp(120px * 0.75, 120 / 1500 * 100vw, 120px);
	}
	.attraction-h2 {
		margin-bottom: clamp(60px * 0.75, 60 / 1500 * 100vw, 60px);
	}
	.attraction-list {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.attraction-item {
		display: flex;
		flex-direction: column;
	}
	.attraction-h3 {
		margin-top: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
		margin-bottom: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.attraction-lead {
		flex: 1;
	}
	.attraction-bottom {
		margin-top: clamp(25px * 0.75, 25 / 1500 * 100vw, 25px);
		border-top: 1px solid #d7ceb2;
		padding-top: clamp(15px * 0.75, 15 / 1500 * 100vw, 15px);
	}
}
@media (max-width: 768px) {
	.attraction-section {
		padding-top: 60px;
		padding-bottom: 10px;
	}
	.attraction-h2 {
		margin-bottom: 40px;
	}
	.attraction-h3 {
		margin-top: 30px;
		margin-bottom: 20px;
	}
	.attraction-bottom {
		margin-top: 14px;
		border-top: 1px solid #d7ceb2;
		padding-top: 14px;
		padding-bottom: 50px;
	}
}


/* フッター */
.footer-top {
	display: flex;
	align-items: center;
	background-size: cover;
	background-position: center;
}
.footer-middle {
	display: flex;
	align-items: center;
	justify-content: center;
	background-color: #000000;
	color: #d7ceb2;
}
.footer-bottom {
	display: flex;
	flex-direction: column;
	align-items: center;
}
.footer-logo-image {
	display: block;
	width: auto;
}
.footer-insta-image {
	display: block;
	width: auto;
}
@media (min-width: 769px) {
	.footer-top {
		height: clamp(310px * 0.75, 310 / 1500 * 100vw, 310px);
		background-image: url("../img/footer-reservation-bg-pc.webp");
		justify-content: center;
	}
	.footer-middle {
		height: clamp(192px * 0.75, 192 / 1500 * 100vw, 192px);
		font-size: clamp(32px * 0.75, 32 / 1500 * 100vw, 32px);
	}
	.footer-middle-link:hover {
		color: #ffffff;
	}
	.footer-bottom {
		padding-top: clamp(38px * 0.75, 38 / 1500 * 100vw, 38px);
		padding-bottom: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
		gap: clamp(30px * 0.75, 30 / 1500 * 100vw, 30px);
	}
	.footer-logo-image {
		height: clamp(67px * 0.75, 67 / 1500 * 100vw, 67px);
	}
	.footer-insta-image {
		height: clamp(20px * 0.75, 20 / 1500 * 100vw, 20px);
	}
	.footer-copyright {
		font-size: 12px;
	}
}
@media (max-width: 768px) {
	.footer {
		margin-bottom: 60px;
	}
	.footer-top {
		height: 183px;
		background-image: url("../img/footer-reservation-bg-sp.webp");
		padding-inline: 30px;
		justify-content: stretch;
	}
	.footer-middle {
		height: 113px;
		font-size: 28px;
	}
	.footer-bottom {
		padding-top: 30px;
		padding-bottom: 20px;
		gap: 22px;
	}
	.footer-logo-image {
		height: 34px;
	}
	.footer-insta-image {
		height: 18px;
	}
	.footer-copyright {
		font-size: 10px;
	}
}