/*----------------------
|- wrapper
-----------------------*/
.wrapper {
	position: relative;
	width: 100%;
	max-width: 1180px;
	margin: 0 auto;
	background-color: #fff;
}
h1 {
	display: none;
}
@media screen and (max-width: 767px){}
/*----------------------
|- mv
-----------------------*/

@media screen and (max-width: 767px){}
/*----------------------
|- section
-----------------------*/
.section-ttl {
	position: relative;
	width: fit-content;
	margin: 0 auto clamp(1.875rem, 0.712rem + 5.81vw, 5rem);
	padding: 0 clamp(1.563rem, 0.115rem + 7.24vw, 5rem);
	font-size: clamp(1.125rem, 0.02rem + 5.53vw, 3.75rem);
	font-weight: 800;
	text-align: center;
}
.section-ttl::before,
.section-ttl::after {
	content: '';
	position: absolute;
	top: 50%;
	transform: translateY(-50%);
	width: clamp(1rem, 0.105rem + 4.47vw, 3.125rem);
	height: clamp(1rem, 0.105rem + 4.47vw, 3.125rem);
	background-image: url(/assets/img/img_ttl_decoration.png);
	background-size: 100%;
}
.section-ttl::before {
	left: 0;
}
.section-ttl::after {
	right: 0;
}
@media screen and (min-width: 1181px){
	.section-ttl {
		min-width: 900px;
	}
}
@media screen and (max-width: 1180px){
	.section-ttl {
		width: 90%;
	}
}
/*----------------------
|- area-block
-----------------------*/
.area-block {
	padding: clamp(1.563rem, 0.283rem + 6.4vw, 5rem) 0 clamp(1.563rem, 0.749rem + 4.07vw, 3.75rem);
}
.area-list {
	width: 90%;
	max-width: 1058px;
	margin: auto;
	display: grid;
	grid-template-columns: repeat(2,1fr);
	gap: clamp(0.688rem, -0.257rem + 2.85vw, 1.625rem);
}
.area-list__item {
	position: relative;
	border-radius: clamp(0.438rem, 0.186rem + 0.76vw, 0.688rem);
	overflow: hidden;
}
.area-photo {
	transition: .5s;
}
.area-list__item a:hover::before {
	opacity: .3;
}
.area-list__item a:hover .area-photo {
	transform: scale(1.1);
}
.area-txt-box {
	position: absolute;
	top: clamp(0.625rem, -0.005rem + 1.9vw, 1.25rem);
	left: clamp(0.625rem, -0.32rem + 2.85vw, 1.563rem);
	width: calc(100% - clamp(1.25rem, -0.64rem + 5.7vw, 3.126rem));
}
.area-list__ttl, .area-list__time {
	color: #fff;
	font-weight: 800;
}
.area-list__ttl {
	margin-bottom: clamp(0.438rem, -0.381rem + 2.47vw, 1.25rem);
	font-size: clamp(12px, 3.5vw, 42px);
	line-height: 1.19;
	text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.45);
}
.area-list__time {
	font-size: clamp(0.625rem, 0.111rem + 2.57vw, 1.813rem);
	letter-spacing: .13rem;
	text-shadow: 2px 2px 6px rgba(0, 0, 0, 0.45);
}
.area-list__time span {
	letter-spacing: 0;
}
.icon-list {
	position: absolute;
	bottom: clamp(0.313rem, -0.317rem + 1.9vw, 0.938rem);
	left: 0;
	width: 100%;
	padding: 0 clamp(0.313rem, -0.317rem + 1.9vw, 0.938rem);
	display: flex;
	align-items: flex-end;
	gap: 0 clamp(0.188rem, -0.253rem + 1.33vw, 0.625rem);
	z-index: 2;
}
.area-icon {
	width: clamp(1.25rem, -1.647rem + 8.75vw, 4.125rem);
}
.down-icon {
	width: clamp(1rem, -1.141rem + 6.46vw, 3.125rem);
	margin: 0 0 0 auto;
}
.legend-box {
	position: relative;
	width: 90%;
	max-width: 1060px;
	margin: clamp(1.563rem, 0.283rem + 6.4vw, 5rem) auto 0;
	padding: clamp(1.563rem, 0.283rem + 6.4vw, 5rem) 10px;
	border: 1px solid #000;
}
.legend-box__ttl {
	position: absolute;
	/* top: -25px; */
	top: -9%;
	left: clamp(1.563rem, 0.481rem + 5.41vw, 4.063rem);
	width: fit-content;
	padding: 0 10px;
	font-size: clamp(0.75rem, 0.145rem + 3.02vw, 2.375rem);
	font-weight: 500;
	letter-spacing: .013rem;
	background-color: #fff;
}
.icon-legend {
	display: grid;
	grid-template-columns: repeat(3,auto);
	justify-content: center;
	/* gap: 30px 80px; */
	gap: clamp(0.625rem, 0.276rem + 1.74vw, 1.563rem) clamp(1.563rem, 0.283rem + 6.4vw, 5rem);
}
.uk .icon-legend {
	grid-template-columns: repeat(2,auto);
	gap: clamp(1.25rem, 0.552rem + 3.49vw, 3.125rem) clamp(2.813rem, 0.371rem + 12.21vw, 9.375rem);
}
.icon-legend__item {
	display: grid;
	/* grid-template-columns: 66px 1fr; */
	grid-template-columns: clamp(1.375rem, 0.186rem + 5.95vw, 4.125rem) 1fr;
	align-items: center;
	/* gap: 0 20px; */
	gap: 0 clamp(0.313rem, -0.036rem + 1.74vw, 1.25rem);
}
.icon-legend__txt {
	font-size: clamp(0.625rem, 0.113rem + 2.56vw, 2rem);
	/* font-size: 32px; */
	letter-spacing: .013rem;
	font-weight: 500;
}
@media screen and (max-width: 767px){
	.area-list__time {
		letter-spacing: 0;
	}
}
/*----------------------
|- food-block
-----------------------*/
.food-block {
	padding: clamp(1.875rem, 0.945rem + 4.65vw, 4.375rem) 0 clamp(1.563rem, 0.283rem + 6.4vw, 5rem);
	/* padding: 70px 0 80px; */
	background-color: #d7e1c6;
}
.food-list {
	width: 90%;
	max-width: 1060px;
	margin: auto;
	display: flex;
	justify-content: space-between;
	gap: 0 clamp(0.938rem, 0.262rem + 3.38vw, 2.5rem);
}
.food-list__txt {
	/* margin-top: 20px; */
	margin-top: clamp(0.5rem, 0.221rem + 1.4vw, 1.25rem);
	/* font-size: 32px; */
	font-size: clamp(0.5rem, -0.149rem + 3.24vw, 2rem);
	font-weight: 700;
	line-height: 1.3;
	text-align: center;
}
@media screen and (max-width: 767px){}
/*----------------------
|- detail-block
-----------------------*/
.detail-block {
	padding-top: clamp(1.875rem, 0.247rem + 8.14vw, 6.25rem);
	background-color: #f6f2e9;
}
.detail-block__ttl {
	width: 93%;
	max-width: 1090px;
	margin: auto;
	padding-bottom: clamp(0.188rem, 0.141rem + 0.23vw, 0.313rem);
	font-size: clamp(1.188rem, 0.234rem + 4.77vw, 3.75rem);
	font-weight: 800;
	text-align: center;
	border-bottom: 2px solid #000;
}
.detail-box {
	position: relative;
	padding-bottom: clamp(1.563rem, 0.313rem + 6.25vw, 5rem);
}
.detail-box:first-of-type {
	padding-top: clamp(1.25rem, 0.087rem + 5.81vw, 4.375rem);
}
.detail-box:nth-of-type(n+2) .detail-box__item {
	padding-top: clamp(1.563rem, 0.085rem + 7.39vw, 5.625rem);
}
.detail-box:nth-of-type(n+2)::before {
	content: '';
	position: absolute;
	top: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 93%;
	max-width: 1090px;
	height: 1px;
	background-color: #000;
}
.detail-box__item {
	width: 90%;
	max-width: 1070px;
	margin: auto;
	display: grid;
	grid-template-columns: clamp(8.875rem, 1.875rem + 35vw, 27.688rem) 1fr;
	grid-template-rows: repeat(3, auto);
	align-items: center;
	gap: 0 clamp(0.938rem, 0.356rem + 2.91vw, 2.5rem);
}
.detail-img {
	grid-area: 1 / 1 / 2 / 2;
}
.detail-name {
	font-size: clamp(0.938rem, 0.17rem + 3.84vw, 3rem);
	font-weight: 800;
	grid-area: 1 / 2 / 2 / 3;
}
.detail-name span {
	font-feature-settings: 'palt';
	font-size: clamp(0.688rem, 0.153rem + 2.67vw, 2.125rem);
	font-weight: 700;
	display: block;
}
.detail-txt-box {
	margin-top: clamp(0.625rem, 0.16rem + 2.33vw, 1.875rem);
	grid-area: 2 / 1 / 3 / 3;
}
.detail-ttl {
	margin-bottom: clamp(0rem, -0.116rem + 0.58vw, 0.313rem);
	font-size: clamp(0.75rem, 0.145rem + 3.02vw, 2.375rem);
	font-weight: 800;
	letter-spacing: .06rem;
}
.detail-txt {
	font-size: clamp(0.688rem, 0.106rem + 2.91vw, 2.25rem);
	font-weight: 600;
	line-height: 1.38;
}
.detail-access {
	margin-top: clamp(0.625rem, 0.392rem + 1.16vw, 1.25rem);
	font-feature-settings: 'palt';
	font-size: clamp(0.625rem, 0.113rem + 2.56vw, 2rem);
	font-weight: 800;
}
.detail-access-txt {
	font-feature-settings: 'palt';
	font-size: clamp(0.625rem, 0.113rem + 2.56vw, 2rem);
	font-weight: 600;
}
.detail-btn {
	margin-top: clamp(0.938rem, 0.124rem + 4.07vw, 3.125rem);
	display: flex;
	grid-area: 3 / 1 / 4 / 3;
	gap: 0 clamp(0.625rem, 0.392rem + 1.16vw, 1.25rem);
}
.detail-btn__item {
	width: clamp(10.125rem, 2.032rem + 40.47vw, 31.875rem);
}
.detail-btn__item a {
	width: 100%;
	height: 100%;
	padding: clamp(0.438rem, 0.065rem + 1.86vw, 1.438rem) 0;
	font-size: clamp(0.688rem, 0.129rem + 2.79vw, 2.188rem);
	font-weight: 800;
	text-align: center;
	background-color: #fff;
	border: 1px solid #000;
	display: block;
	transition: .3s;
}
.detail-box__ttl {
	width: fit-content;
	margin: clamp(1.25rem, 0.32rem + 4.65vw, 3.75rem) 0;
	padding: clamp(0.313rem, 0.196rem + 0.58vw, 0.625rem) clamp(1.875rem, 0.317rem + 7.79vw, 6.063rem) clamp(0.313rem, 0.196rem + 0.58vw, 0.625rem) clamp(1.563rem, 0.749rem + 4.07vw, 3.75rem);
	color: #fff;
	font-size: clamp(0.688rem, 0.176rem + 2.56vw, 2.063rem);
	font-weight: 800;
	background-color: #000;
	border-radius: 0 50px 50px 0;
}
.other-spot {
	width: 90%;
	max-width: 1062px;
	margin: auto;
}
.other-spot > * + * {
	margin-top: clamp(0.938rem, 0.356rem + 2.91vw, 2.5rem);
}
.other-spot__item a {
	font-size: clamp(0.75rem, 0.145rem + 3.02vw, 2.375rem);
	font-weight: 800;
}
.other-spot__item a span {
	font-size: clamp(0.688rem, 0.246rem + 2.21vw, 1.875rem);
	transform: rotate(90deg);
	display: inline-block;
}
@media screen and (min-width: 768px){
	.detail-btn__item a:hover {
		color: #fff;
		background-color: #000;
	}
	.other-spot__item a:hover {
		text-decoration: underline;
	}
}
@media screen and (max-width: 767px){
	.detail-block__ttl {
		border-bottom: 1px solid #000;
	}
}
/*----------------------
|- xxxxxxxxxxxxxxxxxxxx
-----------------------*/
@media screen and (max-width: 767px){}