/* CSS Document */

/* Noto JP
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans:wght@400;700&display=swap');
font-family: 'Noto Sans', sans-serif;
*/

/* Noto JP
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+TC:wght@400;700&display=swap');
font-family: 'Noto Sans TC', sans-serif;
*/

/* 筑紫ゴシック（Adobe Fonts）
font-family: fot-tsukuardgothic-std, sans-serif;
*/

:root{
	--color: #3e3a39;
	--color-rgb: 62, 58, 57;
	--color-theme: #80B41F;
	--color-theme-rgb: 128, 180, 31;
	--color-point: #2c9150;
	--variable-color: var(--color-theme);
	--color-border: #808080;
	--font: 'Noto Sans JP', sans-serif;
	--wrap-space: 24px;
	--wrap-fit: calc(100% - 48px);
	--wrap-min: 375px;
	--wrap-max: 1120px;
	--wrap: clamp(calc(var(--wrap-min) - 48px), calc(100dvw - 48px), var(--wrap-max));
	--dummy: #f2f2f2 url("/common/lsc/images/noImg.png") no-repeat center / cover;
}
:root:lang(en){
	--font: 'Noto Sans', sans-serif;
}
:root:lang(zh-TW){
	--font: 'Noto Sans TC', sans-serif;
}

img[src*="src"],
img[src="[url]"]{
	display: block;
	background: #ccc;
}
[lsc-lt]{
	display: contents;
}

html{
	min-width: var(--wrap-min);
	scroll-behavior: smooth;
	scroll-padding-top: 56px;
}

body{
	color: var(--color);
	font: 500 16px var(--font);
	line-height: 1.65;
	overflow-wrap: anywhere;
}
::selection{
	background: var(--color-theme);
	color: #fff;
}
::-moz-selection{
	background: var(--color-theme);
	color: #fff;
}

a{
	color: inherit;
	.done &{
		transition-property: color, text-decoration, background, background-color, background-size, border, border-color, box-shadow, filter, opacity;
		transition-duration: 0.2s;
		transition-timing-function: ease-out;
	}
	:focus-visible{
		outline: var(--color-theme) auto 2px;
		outline-offset: 2px;
	}
}

wbr{
	.translated-ltr &:not(:lang(ja)){
		display: none;
	}
}

main{
	& a{
		color: #00A4C8;
		text-decoration: underline;
	}
}

input,
textarea,
select{
	background-color: transparent;
	accent-color: var(--color-theme);
	caret-color: var(--color-theme);
}

input{
	&[type="checkbox"]:checked,
	&[type="radio"]:checked{
		background-color: var(--color-theme);
	}
}

button{
	display: grid;
	align-items: center;
	min-height: 48px;
	padding: 8px 16px;
	background: black;
	color: white;
	text-align: center;
	&:focus-visible{
		outline: var(--color-theme) auto 2px;
		outline-offset: 2px;
	}
}

#wrapper{
	display: grid;
	grid-template-rows: auto auto 1fr;
	min-height: 100dvh;
	#header{
		grid-column: 1;
		grid-row: 1;
		position: sticky;
		top: 0;
		z-index: 110;
	}
	#nav{
		z-index: 120;
	}
	#pagePath{
		grid-row: 2;
	}
	#main{
		align-self: start;
	}
	#footer{
		margin-top: auto;
	}
}

#header{
	display: grid;
	grid-template-columns: 1fr var(--wrap) 1fr;
	align-items: center;
	grid-row-gap: clamp(8px, calc(16 / 1366 * 100vw), 16px);
	padding: clamp(8px, calc(16 / 1366 * 100vw), 16px) 0;
	background: #fff;
	body:not(.scrollTop) &{
		filter: drop-shadow(0 0 8px rgba(0, 0, 0, 0.1));
	}
	&>*{
		grid-column: 2;
	}
	#siteName{
		grid-row: 1;
		justify-self: start;
		z-index: 1;
	}
	#navButton{
		grid-column: 2 / 4;
		grid-row: 1;
		justify-self: end;
		margin: calc(0px - clamp(8px, calc(16 / 1366 * 100vw), 16px)) 0;
	}
	#hNav{
		grid-column: 2 / 4;
		grid-row: 1;
		width: min(calc(100% - 80px), var(--wrap-max));
		padding-left: clamp(288px, calc(420 / 1366 * 100vw), 420px);
		@media (max-width: 991.98px) {
			display: none;
		}
	}
	#hPickup{
		@media (max-width: 991.98px) {
			display: none;
		}
	}
}

#siteName{
	& a{
		display: block;
		aspect-ratio: 300 / 48;
		height: clamp(40px, calc(64 / 1366 * 100vw), 64px);
		background: url("/common/images/ml.logoType.svg") no-repeat center / contain;
		font-size: 0;
		transition: none;
	}
}

#navButton{
	all: unset;
	box-sizing: border-box;
	display: grid;
	align-content: center;
	justify-items: center;
	align-self: center;
	grid-gap: 6px;
	width: clamp(64px, calc(80 / 1366 * 100vw), 80px);
	aspect-ratio: 1;
	color: inherit;
	font-weight: 700;
	font-size: 10px;
	font-family: inherit;
	text-transform: uppercase;
	letter-spacing: 0.1em;
	line-height: clamp(10px, calc(20 / 1366 * 100vw), 20px);
	overflow: hidden;
	pointer-events: all;
	cursor: pointer;
	& i{
		order: -1;
		width: min(50%, 32px);
		height: 3px;
		background: currentColor;
		border-radius: 1.5px;
	}
}

#hNav{
	display: grid;
	grid-template-columns: 1fr;
	align-items: center;
	grid-gap: clamp(14px, calc(16 / 1366 * 100vw), 16px) 12px;
	#hNavGlobal{
		justify-self: end;
		&:not(:only-child){
			grid-column: 1 / 4;
			grid-row: 2;
		}
	}
	#hNavFavorite{
		grid-column: 3;
		grid-row: 1;
	}
	#hNavLanguage{
		grid-column: 1;
		grid-row: 1;
		justify-self: end;
	}
	#hNavSearch{
		grid-column: 2;
		grid-row: 1;
		width: 190px;
	}
}

#hNavGlobal{
	font-size: clamp(11px, calc(13 / 1366 * 100vw), 13px);
	letter-spacing: 0.04em;
	& ul{
		display: flex;
		align-items: center;
		column-gap: clamp(12px, calc(16 / 11200 * 100vw), 16px);
	}
	& li{
		display: contents;
	}
	& a{
		display: flex;
		align-items: center;
		column-gap: clamp(4px, calc(6 / 1366 * 100vw), 6px);
		&:before{
			content: "";
			aspect-ratio: 20 / 16;
			width: clamp(16px, calc(20 / 1366 * 100vw), 20px);
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><rect width="100%" height="100%" /></svg>') no-repeat center / contain;
		}
		&[href$="/feature/index.html"]:before{
			-webkit-mask-image: var(--icon-feature);
		}
		&[href$="/spot/index.html"]:before{
			-webkit-mask-image: var(--icon-spot);
		}
		&[href$="/festival/index.html"]:before{
			-webkit-mask-image: var(--icon-event);
		}
		&[href$="/itineraries/index.html"]:before{
			-webkit-mask-image: var(--icon-course);
		}
		&[href$="/gourmet"]:before{
			-webkit-mask-image: var(--icon-gourmet);
		}
		&[href$="/booking/index.html"]:before{
			-webkit-mask-image: var(--icon-booking);
		}
		&[href$="/access/index.html"]:before{
			-webkit-mask-image: var(--icon-access);
		}
	}
}

#hNavFavorite{
	& a{
		display: flex;
		align-items: center;
		column-gap: 4px;
		font-size: 12px;
		&:before{
			content: "";
			aspect-ratio: 1;
			width: 16px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16"><path d="M1.45,0v16l6.55-3.36,6.55,3.36V0H1.45ZM10.23,10.18l-2.23-1.17-2.23,1.17.43-2.48-1.81-1.76,2.49-.36,1.12-2.26,1.12,2.26,2.49.36-1.81,1.76.43,2.48Z"/></svg>') no-repeat center / contain;
		}
	}
}

#hNavLanguage{
	height: 18px;
	font-size: 12px;
	& details{
		position: relative;
		background: #e6e6e6;
		border-radius: 9px;
		&::details-content{
			interpolate-size: allow-keywords;
			height: 0;
			overflow: hidden;
			transform-origin: center top;
			transition: height 0.2s ease-out, content-visibility 0.2s ease-out allow-discrete;
		}
		&[open]{
			&::details-content{
				height: auto;
			}
		}
	}
	& summary{
		all: unset;
		position: relative;
		display: grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		column-gap: 8px;
		padding: 0 10px;
		align-items: center;
		height: 18px;
		cursor: pointer;
		z-index: 1;
		&:after{
			content: "";
			aspect-ratio: 1;
			width: 8px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 8 8" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round;"><polyline points="7 2.5 4 5.5 1 2.5" /></svg>') no-repeat center / contain;
		}
		details[open] &:after{
			transform: scale(1, -1);
		}
	}
	& li{
		border-top: 1px solid #fff;
	}
	& a{
		display: grid;
		align-items: center;
		min-height: 18px;
		padding: 0 10px;
	}
}

#hNavSearch{
	.gsc-control-cse{
		display: contents;
	}
	.gsc-search-box-tools{
		all: unset;
		box-sizing: border-box;
		display: flex;
		align-items: center;
		height: 18px;
		padding-left: 10px;
		background: #efefef;
		border-radius: 9px;
		& *{
			all: unset;
			box-sizing: border-box;
		}
		& div,
		& table,
		& tbody,
		& tr,
		& td{
			display: contents;
		}
		& input{
			margin-right: auto;
			background-color: transparent !important;
			background-size: auto 10px !important;
			font-size: 12px;
			&::placeholder{
				color: #ccc;
			}
		}
		& button{
			cursor: pointer;
			aspect-ratio: 1;
			width: 12px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 12 12" style="fill: none; stroke: black; stroke-width: 2px;"><circle cx="5" cy="5" r="3.5"/><line x1="11" y1="11" x2="8" y2="8"/></svg>') no-repeat center / contain;
			& svg{
				display: none;
			}
		}
		& a{
			cursor: pointer;
			display: grid;
			align-items: center;
			aspect-ratio: 1;
			width: 12px;
			font-size: 12px;
			opacity: 0.5;
		}
	}
	.gsc-results-wrapper-overlay{
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}

#hPickup{
	font-weight: 700;
	font-size: clamp(12px, calc(16 / 1366 * 100vw), 16px);
	letter-spacing: 0.025em;
	& ul{
		display: flex;
		justify-content: center;
		align-items: center;
		column-gap: 1em;
		&:has(li:only-child){
			justify-content: center;
		}
	}
	& li{
		display: contents;
		&:nth-child(n+2):before{
			content: "";
			height: 1em;
			border-left: 1px solid currentColor;
		}
	}
	& a{
		display: block;
		text-align: center;
	}
}

#nav{
	position: fixed;
	top: 0;
	right: 0;
	width: 100%;
	display: grid;
	grid-template-columns: min(var(--wrap-fit), 360px);
	justify-content: center;
	align-content: start;
	background: rgba(0, 0, 0, 0.8);
	height: max(100dvh, 100%);
	padding: 24px 0 48px 0;
	color: #fff;
	font-weight: 700;
	overflow-y: auto;
	overscroll-behavior: none;
	transform: translateX(100%);
	transition: transform 0.2s ease-out;
	.nav &{
		transform: translateX(0);
	}
	& h2{
		font-size: 20px;
		letter-spacing: 0.5em;
		text-align: center;
	}
	#navGlobal{
		margin-top: 16px;
	}
	#navPickup{
		margin-top: 24px;
		padding-top: 24px;
		border-top: 1px solid currentColor;
	}
	#navExtra{
		margin-top: 24px;
		padding-top: 24px;
		border-top: 1px solid currentColor;
	}
	#navLanguage{
		margin-top: 24px;
		order: 1;
	}
	#navSearch{
		grid-row: 2;
		margin-top: 16px;
	}
	#navFavorite{
		margin-top: 16px;
	}
}

#navGlobal{
	& ul{
		display: grid;
		justify-items: center;
		grid-gap: 16px 24px;
		&:has(li:nth-child(5)){
			justify-items: unset;
			grid-template-columns: repeat(2, 1fr);
		}
	}
	& li{
		display: contents;
	}
	& a{
		display: flex;
		align-items: center;
		column-gap: 8px;
		&:before{
			content: "";
			aspect-ratio: 20 / 16;
			width: 20px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><rect width="100%" height="100%" /></svg>') no-repeat center / contain;
		}
		&[href$="/feature/index.html"]:before{
			-webkit-mask-image: var(--icon-feature);
		}
		&[href$="/spot/index.html"]:before{
			-webkit-mask-image: var(--icon-spot);
		}
		&[href$="/festival/index.html"]:before{
			-webkit-mask-image: var(--icon-event);
		}
		&[href$="/itineraries/index.html"]:before{
			-webkit-mask-image: var(--icon-course);
		}
		&[href$="/gourmet"]:before{
			-webkit-mask-image: var(--icon-gourmet);
		}
		&[href$="/booking/index.html"]:before{
			-webkit-mask-image: var(--icon-booking);
		}
		&[href$="/access/index.html"]:before{
			-webkit-mask-image: var(--icon-access);
		}
	}
}

#navPickup{
	& ul{
		display: grid;
		grid-row-gap: 16px;
	}
	& li{
		display: contents;
	}
	& a{
		display: block;
		text-align: center;
	}
}

#navExtra{
	& ul{
		display: grid;
		grid-row-gap: 16px;
	}
	& li{
		display: contents;
	}
	& a{
		display: block;
		text-align: center;
	}
}

#navFavorite{
	& a{
		display: grid;
		grid-template-columns: 24px auto;
		justify-content: center;
		align-items: center;
		column-gap: 8px;
		&:before{
			content: "";
			aspect-ratio: 1;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 36 36"><path d="M7.27,4.9V31.1L18,25.6l10.73,5.5V4.9ZM21.65,21.57,18,19.65l-3.65,1.92L15,17.5l-2.95-2.88L16.17,14,18,10.33,19.83,14l4.08.59L21,17.5Z"/></svg>') no-repeat center / contain;
		}
	}
}

#navSearch{
	.gsc-control-cse{
		display: contents;
	}
	.gsc-search-box-tools{
		all: unset;
		box-sizing: border-box;
		display: grid;
		grid-template-columns: 1fr auto 48px;
		grid-template-rows: 48px 0;
		align-items: center;
		height: 48px;
		padding-left: 16px;
		background: #fff;
		border-radius: 4px;
		overflow: hidden;
		& *{
			all: unset;
			box-sizing: border-box;
		}
		& div,
		& table,
		& tbody,
		& tr,
		& td{
			display: contents;
		}
	& input{
		all: unset;
		box-sizing: border-box;
		grid-column: 1;
		grid-row: 1;
		width: auto;
		color: var(--color);
		font-weight: 700;
		&::placeholder{
			color: #ccc;
		}
	}
	& button{
		all: unset;
		box-sizing: border-box;
		grid-column: 3;
		grid-row: 1;
		aspect-ratio: 1;
		height: 100%;
		background: var(--color-theme);
		font-size: 0;
		cursor: pointer;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px;"><circle cx="10" cy="10" r="6"/><line x1="16" y1="16" x2="20" y2="20"/></svg>') no-repeat center / 50%;
		& svg{
			display: none;
		}
	}
	& a{
		cursor: pointer;
		display: grid;
		align-items: center;
		aspect-ratio: 1;
		width: 1em;
		opacity: 0.5;
	}
	}
	.gsc-results-wrapper-overlay{
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
	.gsc-results-wrapper-overlay{
		top: 50%;
		left: 50%;
		transform: translate(-50%, -50%);
	}
}

#navLanguage{
	& details{
		position: relative;
		background: var(--color-theme);
		border-radius: 24px;
		&::details-content{
			interpolate-size: allow-keywords;
			height: 0;
			overflow: hidden;
			transform-origin: center top;
			transition: height 0.2s ease-out, content-visibility 0.2s ease-out allow-discrete;
		}
		&[open]{
			&::details-content{
				height: auto;
			}
		}
	}
	& summary{
		position: relative;
		display: grid;
		grid-template-columns: 1fr auto;
		align-items: center;
		column-gap: 8px;
		min-height: 48px;
		padding: 8px 16px;
		font-weight: 700;
		text-align: center;
		letter-spacing: 0.2em;
		cursor: pointer;
		z-index: 1;
		&:after{
			content: "";
			aspect-ratio: 1;
			width: 16px;
			background: currentColor;
			-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px;"><polyline points="1 5 8 12 15 5"/></svg>') no-repeat center / contain;
		}
		details[open] &:after{
			transform: scale(1, -1);
		}
	}
	& li{
		border-top: 1px solid currentColor;
	}
	& a{
		display: grid;
		align-items: center;
		min-height: 48px;
		padding: 8px 16px;
		text-align: center;
	}
}

#navClose{
	all: unset;
	box-sizing: border-box;
	position: fixed;
	top: 0;
	right: 0;
	display: grid;
	align-content: center;
	justify-items: center;
	aspect-ratio: 1;
	width: 64px;
	color: #fff;
	font-size: 0;
	cursor: pointer;
	&:before,
	&:after{
		content: "";
		grid-column: 1;
		grid-row: 1;
		width: 40px;
		height: 4px;
		background: currentColor;
		border-radius: 2px;
	}
	&:before{
		transform: rotate(45deg);
	}
	&:after{
		transform: rotate(-45deg);
	}
}

#pagePath{
	display: grid;
	grid-template-columns: var(--wrap);
	justify-content: center;
	padding: clamp(10px, calc(12 / 768 * 100vw), 12px) 0;
	background: var(--color-theme);
	color: #fff;
	font-size: clamp(12px, calc(14 / 768 * 100vw), 14px);
	& ul{
		display: flex;
		flex-wrap: wrap;
		grid-gap: clamp(4px, calc(8 / 768 * 100vw), 8px);
		}
	& li{
		display: contents;
		&:not(:last-child):after{
			content: '\3E';
		}
	}
	& a{
		display: block;
		&:hover{
			text-decoration: underline;
		}
	}
}

#footer{
	display: grid;
	grid-template-columns: var(--wrap);
	justify-content: center;
	background: var(--color-theme);
	@media (max-width: 767.98px) {
		&:before{
			grid-row: 2;
			content: "";
			margin-inline: -24px;
			margin-top: 8px;
			border-top: 1px solid #fff;
		}
	}
	#fNav{
		margin: 24px 0 16px 0;
	}
	#copyright{
		margin: 16px 0;
	}
}

#fNav{
	& ul{
		display: grid;
		grid-gap: 8px 1em;
		@media (min-width: 768px) {
			display: flex;
			justify-content: center;
			align-items: center;
		}
	}
	& li{
		display: contents;
		@media (min-width: 768px) {
			&:nth-child(n+2):before{
				content: "";
				height: 1em;
				border-left: 1px solid currentColor;
			}
		}
	}
	& a{
		display: block;
		text-align: center;
		font-weight: 700;
		font-size: clamp(14px, calc(16 / 1366 * 100vw), 16px);
		letter-spacing: 0.1em;
	}
}

#copyright{
	& p{
		font-size: 10px;
		text-align: center;
		letter-spacing: 0.1em;
	}
}

#pageTop{
	position: sticky;
	bottom: 0;
	font-size: 0;
	cursor: pointer;
	opacity: 0;
	transition: opacity 0.2s ease-out 1s;
	z-index: 100;
	.done:not(.scrollTop) &{
		opacity: 1;
	}
	&:hover:before{
		background: #e50012;
	}
	&:before,
	&:after{
		content: "";
		position: absolute;
		right: 0;
		bottom: 0;
		aspect-ratio: 1;
		width: 48px;
	}
	&:before{
		background: var(--color-theme);
	}
	&:after{
		-webkit-mask-image: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 20"><path d="M2.582 13.891c-0.272 0.268-0.709 0.268-0.979 0s-0.271-0.701 0-0.969l7.908-7.83c0.27-0.268 0.707-0.268 0.979 0l7.908 7.83c0.27 0.268 0.27 0.701 0 0.969s-0.709 0.268-0.978 0l-7.42-7.141-7.418 7.141z" /></svg>');
		-webkit-mask-repeat: no-repeat;
		-webkit-mask-position: center;
		-webkit-mask-size: 32px;
		background: #fff;
	}
}

#pagenation{
	overflow: hidden;
	[LSC-LB*="lscListPgn"]{
		display: none;
	}
	& ul,
	& ol{
		display: flex;
		flex-wrap: wrap;
		align-items: center;
		justify-content: center;
		grid-gap: 0.5em;
		max-width: var(--wrap);
		margin: auto;
		font-size: clamp(14px, calc(16 / 1200 * 100vw), 16px);
		list-style: none;
	}
	& ul{
		& li{
			display: contents;
			&:nth-child(n+2):before{
				content: "｜";
			}
		}
	}
	& a{
		display: grid;
		color: inherit;
		text-decoration: none;
		&:not([rel]){
			place-items: center;
			aspect-ratio: 1;
			width: 3em;
			border: 1px solid var(--color-theme);
			border-radius: 1.5em;
		}
		&[rel]{
			align-items: center;
			grid-gap: 4px;
			letter-spacing: 0.05em;
			&:before{
				aspect-ratio: 1;
				background: currentColor;
				-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 16 16" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px;"><polyline points="6 2 12 8 6 14"/></svg>') no-repeat center / contain;
			}
		}
		&[rel="prev"]{
			grid-template-columns: 1em auto;
			margin-right: 0.5em;
			&:before{
				content: "";
				transform: scale(-1, 1);
			}
		}
		&[rel="next"]{
			grid-template-columns: auto 1em;
			margin-left: 0.5em;
			&:before{
				content: "";
				order: 1;
			}
		}
		&.lsc-current-page{
			background: var(--color-theme);
			color: #fff;
			pointer-events: none;
		}
	}
}

#cookiePolicy{
	position: fixed;
	left: 16px;
	bottom: 16px;
	display: grid;
	grid-row-gap: 8px;
	max-width: calc(100% - 32px);
	padding: 16px;
	background: rgba(0, 0, 0, 0.7);
	border-radius: 4px;
	z-index: 1000;

	& p{
		color: #fff;
		font-size: 14px;
	}
	& a{
		text-decoration-line: underline;
		text-decoration-style: dashed;
	}
	& button{
		all: unset;
		justify-self: start;
		padding: 8px;
		background: #efefef;
		color: inherit;
		border-radius: 4px;
		font: inherit;
		line-height: 1;
		cursor: pointer;
	}
}

.infoWin{
	dl{
		display: flex;
		flex-wrap: wrap;
		justify-content: center;
		grid-gap: 0.5em;
		max-width: clamp(200px, calc(240 / 1200 * 100vw), 240px);
	}
	& dt{
		width: 100%;
		font-weight: 700;
	}
	& dd{
		&:has(img){
			width: 100%;
		}
		&:has(a){
			display: grid;
			width: calc(50% - 0.25em);
		}
		& img{
			aspect-ratio: 3 / 2;
			object-fit: cover;
		}
		& a{
			display: grid;
			align-items: center;
			min-height: 2.5em;
			padding: 0.25em 0.5em;
			background: var(--color-theme);
			border-radius: 4px;
			color: #fff;
			font-size: clamp(12px, calc(14 / 1200 * 100vw), 14px);
			text-align: center;
			text-decoration: none;
			outline: none;
			&[href*="google.co.jp"]{
				background: #1a1a1a;
			}
		}
	}
}

.slick-arrow{
	all: unset;
	box-sizing: border-box;
	cursor: pointer;
	position: relative;
	aspect-ratio: 1;
	width: 48px;
	background: rgba(62, 58, 57, 0.7);
	border-radius: 100%;
	color: #fff;
	font-size: 0;
	z-index: 1;
	&:before{
		content: "";
		position: absolute;
		top: 0;
		left: 0;
		width: 100%;
		height: 100%;
		background: currentColor;
		-webkit-mask: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 24 24" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 2px;"><polyline points="8 20 16 12 8 4"/></svg>') no-repeat center / 50%;
	}
	&.slick-prev:before{
		transform: scale(-1, 1);
	}
}

.slick-dots{
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	align-content: center;
	grid-gap: 16px clamp(24px, calc(32 / 1200 * 100vw), 32px);
	& li{
		display: contents;
	}
	& button{
		all: unset;
		box-sizing: border-box;
		cursor: pointer;
		aspect-ratio: 1;
		width: 8px;
		background: #fff;
		border-radius: 100%;
		font-size: 0;
		.slick-active &{
			background: #505050;
		}
	}
}

:root{
	--icon-point: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 26 26" style="fill: none; stroke: black; stroke-linecap: round; stroke-linejoin: round; stroke-width: 1.8px;"><line x1="8.5" y1="24.93" x2="1.78" y2="23.43"/><line x1="9.75" y1="21.02" x2="1.48" y2="17.58"/><line x1="11.65" y1="17.38" x2="5.84" y2="13.67"/><line x1="14.06" y1="14.1" x2="7.47" y2="8.04"/><line x1="17.19" y1="11.35" x2="13" y2="5.88"/><line x1="20.65" y1="9.15" x2="16.53" y2="1.2"/><line x1="24.52" y1="7.64" x2="22.46" y2="1.07"/></svg>');
	--icon-feature: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M2.52,4.7v.68c.78-.34,1.77-.52,2.8-.52,1.08,0,2.11.2,2.91.57v-.68c-.84-.33-1.86-.52-2.91-.52-1.01,0-1.98.17-2.8.47ZM2.51,7.03v.68c.78-.34,1.77-.53,2.8-.53s2.11.2,2.91.57v-.68c-.84-.33-1.86-.52-2.91-.52s-1.99.17-2.8.48ZM2.51,9.36v.68c.78-.35,1.78-.53,2.81-.53s2.11.2,2.91.57v-.68c-.84-.33-1.86-.51-2.91-.51s-1.99.17-2.81.48ZM11.78,4.74v.68c.8-.37,1.83-.57,2.91-.57s2.02.18,2.81.53v-.68c-.82-.31-1.79-.47-2.81-.47-1.05,0-2.07.18-2.91.52ZM11.77,7.07v.68c.8-.37,1.83-.57,2.91-.57s2.02.18,2.8.52v-.67c-.82-.31-1.79-.48-2.8-.48s-2.08.18-2.91.52ZM11.77,9.39v.63s0,.05,0,.05c.8-.37,1.83-.58,2.92-.58s2.01.18,2.79.52v-.67c-.81-.31-1.78-.47-2.79-.47-1.05,0-2.08.18-2.91.52ZM18.28,1.92c-.97-.51-2.25-.79-3.59-.79-1.11,0-2.18.19-3.06.55-.01,0-.02,0-.04.02-.17.07-.33.14-.49.22-.45.23-.82.51-1.09.81-.28-.3-.64-.58-1.09-.81-.18-.09-.36-.17-.56-.25-.02,0-.03-.01-.05-.02-.87-.34-1.91-.52-2.99-.52-1.35,0-2.62.28-3.59.79-1.11.58-1.72,1.4-1.72,2.31v8.73c0,.4.32.72.72.72h1.65c.1,0,.19-.02.28-.06.69-.29,1.62-.49,2.67-.49,1.84,0,3.31.61,3.79,1.28.01.02.02.03.04.05.21.26.53.41.86.41s.65-.15.86-.41c.01-.02.03-.03.04-.05.48-.67,1.94-1.28,3.79-1.28,1.06,0,1.98.2,2.67.49.09.04.19.06.28.06h1.64c.4,0,.72-.32.72-.72V4.24c0-.91-.61-1.73-1.72-2.31ZM9.27,11.23v.88c-.11-.07-.23-.14-.36-.21-.61-.32-1.34-.55-2.13-.67-.47-.07-.96-.11-1.46-.11s-.94.04-1.39.1c-.82.12-1.57.36-2.2.68-.12.07-.25.13-.36.21v-7.87c0-.42.44-.86,1.17-1.19.7-.33,1.67-.54,2.79-.54,1.18,0,2.2.25,2.91.6.65.33,1.04.74,1.04,1.13v6.99ZM18.64,12.11c-.12-.07-.24-.14-.36-.21-.57-.29-1.23-.51-1.96-.64-.52-.09-1.07-.14-1.63-.14s-1.07.05-1.57.13c-.75.13-1.44.35-2.02.65-.13.07-.25.13-.36.21v-7.87c0-.39.39-.81,1.04-1.14.71-.35,1.73-.6,2.91-.6s2.11.22,2.82.55c.71.33,1.14.77,1.14,1.18v7.87Z"/></svg>');
	--icon-spot: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M7.52,5.89c-.11.11-.11.29,0,.4.11.11.29.11.4,0,.11-.11.11-.29,0-.4-.11-.11-.29-.11-.4,0ZM1.72,4.84v9.03c0,.62.51,1.13,1.13,1.13h1.41V3.71h-1.41c-.62,0-1.13.5-1.13,1.13ZM17.15,3.71h-1.41v11.29h1.41c.62,0,1.13-.51,1.13-1.13V4.84c0-.62-.51-1.13-1.13-1.13ZM13.18,1.92c0-.51-.41-.92-.92-.92h-4.53c-.51,0-.92.41-.92.92v1.79h-1.43v11.29h9.22V3.71h-1.43v-1.79ZM10.95,7.93l-1.4,1.4c-.15.15-.39.15-.53,0l-2.17-2.17c-.07-.07-.11-.17-.11-.27v-1.4c0-.21.17-.38.38-.38h1.4c.1,0,.2.04.27.11l2.17,2.17c.15.15.15.39,0,.53ZM12.06,3.71h-4.11v-1.58h4.11v1.58Z"/></svg>');
	--icon-event: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M10.25,3.91v-1.31s.04,0,.06,0c.12,0,.28-.01.47-.04.16-.02.31-.07.47-.12.23-.08.44-.18.6-.26.16-.08.26-.14.26-.14l.68-.4-.79-.06-.54-.04c-.11,0-.26-.04-.41-.07-.23-.06-.47-.14-.65-.2-.09-.03-.17-.06-.22-.08-.03-.01-.05-.02-.06-.02,0,0-.01,0-.02,0h0s0,0,0,0l-.34-.14v2.91c-2.15,2.27-3.56,2.75-4.7,3.47h9.9c-1.14-.72-2.56-1.2-4.7-3.47ZM15.23,7.99H4.77c-.21,1.43-1.11,4.93-1.71,7.01h2.97s.88-.54,1.22-3.77c0,0,1.65.07,2.74-1.92,1.1,1.99,2.74,1.92,2.74,1.92.34,3.22,1.22,3.77,1.22,3.77h2.97c-.6-2.08-1.5-5.58-1.71-7.01Z"/></svg>');
	--icon-course: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M7.87,1.05c-.38-.14-.8.05-.94.43L2.26,14.01c-.14.38.05.8.43.94.08.03.17.05.26.05.3,0,.57-.18.68-.48L8.3,1.98c.14-.38-.05-.8-.43-.94ZM14.25,7.89l.16-.74c.55-1.72-3.6-4.06-5.4-4.38l-2.5,6.71c7.21.81,4.89,2.05,4.89,2.05,0,0-.38.81,2.44.97,1.87-.11,3.39-.65,3.94-2.44-2.78.08-3.53-2.16-3.53-2.16Z"/></svg>');
	--icon-gourmet: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M8.77,5.78c.08-.82.04-1.4-1.16-2.53,0,0-1.37-1.3-2.15-2.04-.65-.62-1.57.31-.91.94l2.25,2.14c.14.14.15.36.01.51l-.07.07c-.14.14-.36.15-.51.01l-2.26-2.15c-.37-.35-.72-.21-.95.03-.23.24-.35.59.02.95l2.26,2.15c.14.14.15.36.01.51l-.07.07c-.14.14-.36.15-.51.01l-2.25-2.14c-.66-.63-1.54.34-.89.95.78.74,2.15,2.04,2.15,2.04,1.19,1.14,1.77,1.15,2.59,1.03.66-.1,1.14-.26,1.88.45l6.55,6.22,1.08-1.14-6.55-6.22c-.74-.71-.61-1.19-.55-1.86ZM4.71,13.86l1.08,1.14,3.94-3.74-1.14-1.09-3.88,3.68ZM17.93,2.4c-1.11-1.16-3.17-1-4.48.25-.8.76-1.15,1.81-1.15,2.68,0,.77-.06,1.3-.66,1.96l-.78.74,1.14,1.09.72-.69c.69-.56,1.23-.6,1.99-.56.88.04,1.94-.25,2.74-1.01,1.32-1.25,1.58-3.3.48-4.46Z"/></svg>');
	--icon-booking: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M14.91,6.07h-1.74v1.74h1.74v-1.74ZM12.22,6.07h-1.74v1.74h1.74v-1.74ZM10.48,13.2h1.74v-1.74h-1.74v1.74ZM14.91,8.76h-1.74v1.74h1.74v-1.74ZM12.58,3.46c.38,0,.69-.31.69-.69v-1.08c0-.38-.31-.69-.69-.69s-.69.31-.69.69v1.08c0,.38.31.69.69.69ZM7.51,3.46c.38,0,.69-.31.69-.69v-1.08c0-.38-.31-.69-.69-.69s-.69.31-.69.69v1.08c0,.38.31.69.69.69ZM6.83,11.46h-1.74v1.74h1.74v-1.74ZM6.83,8.76h-1.74v1.74h1.74v-1.74ZM9.52,11.46h-1.74v1.74h1.74v-1.74ZM14.96,1.98h-1.09v.79c0,.71-.58,1.29-1.29,1.29s-1.29-.58-1.29-1.29v-.79h-2.48v.79c0,.71-.58,1.29-1.29,1.29s-1.29-.58-1.29-1.29v-.79h-1.17c-1.07,0-1.93.86-1.93,1.93v9.16c0,1.07.86,1.93,1.93,1.93h9.91c1.07,0,1.93-.86,1.93-1.93V3.91c0-1.07-.86-1.93-1.93-1.93ZM15.95,13.07c0,.55-.44.99-.99.99H5.04c-.55,0-.99-.44-.99-.99v-7.94h11.89v7.94ZM12.57,9.02l-.52-.4-.94,1.21-.56-.45-.41.51,1.08.86,1.35-1.74ZM9.52,8.76h-1.74v1.74h1.74v-1.74ZM9.52,6.07h-1.74v1.74h1.74v-1.74Z"/></svg>');
	--icon-access: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M2.78,13.39c0,.61.5,1.11,1.11,1.11s1.11-.5,1.11-1.11v-1.05h-2.22v1.05ZM2.61,6.25c.08-.17.22-.44.48-.93.12-.22.25-.47.39-.72h-1.19c-.45,0-.82.37-.82.82s.37.82.82.82h.32ZM15,13.39c0,.61.5,1.11,1.11,1.11s1.11-.5,1.11-1.11v-1.05h-2.22v1.05ZM17.71,4.6h-1.19c.14.25.27.5.39.72.26.48.4.76.48.93h.32c.45,0,.82-.37.82-.82s-.37-.82-.82-.82ZM17.06,6.46c.06.02-2.06-3.86-2.16-4.07-.27-.55-.93-.89-1.57-.89h-6.67c-.64,0-1.3.33-1.57.89-.1.21-2.21,4.08-2.16,4.07,0,0-.68.68-.74.74-.29.31-.27.58-.27.84v3.08c0,.58.1.89.78.89h14.56c.68,0,.78-.31.78-.89v-3.08c0-.27.02-.53-.27-.84-.05-.05-.73-.74-.73-.74ZM4.69,5.27s1.36-2.44,1.44-2.6c.14-.27.53-.47.93-.47h5.9c.4,0,.79.2.93.47.08.16,1.44,2.6,1.44,2.6.12.22.01.64-.36.64H5.04c-.37,0-.48-.42-.35-.64ZM4.51,10.7c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25.56,1.25,1.25-.56,1.25-1.25,1.25ZM11.89,11.04c0,.09-.07.17-.16.17h-3.45c-.09,0-.17-.07-.17-.17v-1.52c0-.09.07-.16.17-.16h3.45c.09,0,.16.07.16.16v1.52ZM15.49,10.7c-.69,0-1.25-.56-1.25-1.25s.56-1.25,1.25-1.25,1.25.56,1.25,1.25-.56,1.25-1.25,1.25Z"/></svg>');
	--icon-theme: url('data:image/svg+xml;charset=UTF-8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 20 16"><path d="M2.33,10.31l2.43-1.83c-1.17-.17-2.26.65-2.43,1.83ZM13.3,10.31l2.43-1.83c-1.18-.17-2.26.65-2.43,1.83ZM19.96,9.98c-.02-.17-.06-.33-.1-.49h.03s-.03-.06-.07-.16c-.13-.43-.31-.82-.55-1.18-.67-1.44-1.71-3.66-2.18-4.71-.7-1.61-1.97-2.71-3.65-2.47-1.69.24-2.89,1.72-2.82,3.38,0,.03,0,.06,0,.08h-1.23s0-.06,0-.08c.07-1.67-1.14-3.14-2.82-3.38-1.69-.24-2.95.85-3.65,2.47-.47,1.05-1.51,3.27-2.18,4.71-.24.36-.42.75-.55,1.18-.05.1-.07.15-.07.15h.03c-.04.16-.08.33-.1.5-.34,2.43,1.35,4.68,3.78,5.03,2.43.34,4.68-1.35,5.03-3.78.02-.17.21-.85,1.15-.85s1.13.68,1.15.85c.34,2.43,2.59,4.12,5.03,3.78,2.43-.34,4.12-2.59,3.78-5.03ZM4.87,13.53c-1.62.23-3.12-.9-3.35-2.52-.23-1.62.9-3.12,2.52-3.35,1.62-.23,3.12.9,3.35,2.52.23,1.62-.9,3.12-2.52,3.35ZM18.48,11.01c-.23,1.62-1.73,2.75-3.35,2.52-1.62-.23-2.75-1.73-2.52-3.35.23-1.62,1.73-2.75,3.35-2.52,1.62.23,2.75,1.73,2.52,3.35Z"/></svg>');
}





