/* ----------------------------------------------------
	header
---------------------------------------------------- */
.header__title {
	margin-bottom: min(3rem, 2.196vw);
	padding-top: min(11.7rem, 8.565vw);
	line-height: 1;
	font-family: var(--font-en);
	font-weight: 400;
	display: flex;
	flex-direction: column;
	justify-content: center;
	align-items: center;
}

.header__title span {
	opacity: 0;
	animation-fill-mode: forwards;
}

.header__title--small {
	font-size: min(4.8rem, 3.514vw);
	animation: fadeInUp 1s ease-out 0.5s forwards;
}

.header__title--image {
	margin-top: min(4rem, 2.928vw);
	width: min(116.5rem, 85.286vw);
	animation: fadeInUp 1s ease-out 0.75s forwards;
}

.header__date {
	margin: 0 auto;
	line-height: 1;
	color: rgb(var(--orn));
	font-family: var(--font-en);
	font-size: min(6.4rem, 4.685vw);
	text-align: center;
	opacity: 0;
	position: relative;
	top: min(3rem, 2.196vw);
	position: relative;
	z-index: 2;
	animation-fill-mode: forwards;
	animation: fadeInUp 1.25s ease-out 1.25s forwards;
}

@keyframes fadeInUp {
	from {
		opacity: 0;
		transform: translateY(min(5rem, 3.66vw));
	}

	to {
		opacity: 1;
		transform: translateY(0);
	}
}

@media screen and (max-width: 768px) {
	.header__title {
		margin-bottom: 4vw;
		padding-top: 44.533vw;
		padding-top: 31.2vw;
		line-height: 1.2;
	}

	.header__title--small {
		font-size: 6.4vw;
	}

	.header__title--image {
		margin-top: 9.333vw;
		width: 91.467vw;
	}

	.header__date {
		font-size: 8.533vw;
		top: 4vw;
	}
}

/* ----------------------------------------------------
	kv
---------------------------------------------------- */
.kv {
	width: 100%;
	position: relative;
}

.kv__image {
	margin: 0 auto;
	width: min(116.6rem, 85.359vw);
}

@media screen and (max-width: 768px) {
	.kv__image {
		width: 89.333vw;
		height: 156vw;
	}
}

/* ----------------------------------------------------
	bg
---------------------------------------------------- */
.bg {
	background-image: url(../img/top/kv.webp);
	background-position: center top;
	background-repeat: no-repeat;
	background-size: cover;
	width: 100%;
	height: 100vh;
	position: fixed;
	top: 0;
	left: 0;
	z-index: -1;
}

.bg::before {
	background-color: rgba(var(--blk), 1);
	width: 100%;
	height: 100vh;
	position: absolute;
	top: 0;
	left: 0;
	z-index: 5;
	transition: all 1.5s ease 0s;
	content: "";
}

.bg-faded .bg::before {
	background-color: rgba(var(--blk), 0.8);
}

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

/* ----------------------------------------------------
	about
---------------------------------------------------- */
.about {
	margin: 0 auto min(9rem, 6.589vw);
	width: min(80.6rem, 59.004vw);
}

.about__title {
	margin-bottom: min(6rem, 4.392vw);
	font-size: min(4.4rem, 3.221vw);
	font-weight: 400;
}

.about__text {
	line-height: 2.4;
	font-size: min(2.2rem, 1.611vw);
}

@media screen and (max-width: 768px) {
	.about {
		margin-bottom: 21.333vw;
		width: 77.867vw;
	}

	.about__title {
		margin-bottom: 3.2vw;
		line-height: 2;
		font-size: 6.4vw;
	}

	.about__text {
		line-height: 2.4;
		font-size: 4.267vw;
	}
}

/* ----------------------------------------------------
	section
---------------------------------------------------- */
.section {
	margin-bottom: min(16rem, 11.713vw);
}

.section__title {
	line-height: 1;
	font-family: var(--font-en);
	font-size: min(6.4rem, 4.685vw);
	font-weight: 400;
}

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

	.section__title {
		font-size: 9.6vw;
	}
}

/* ----------------------------------------------------
	guide
---------------------------------------------------- */
.guide {
	margin-bottom: min(16rem, 11.713vw);
}

.guide__title {
	margin-bottom: min(1rem, 0.732vw);
	line-height: 1;
	font-family: var(--font-en);
	font-size: 8.931vw;
	font-weight: 400;
	text-align: center;
	white-space: nowrap;
	position: relative;
	bottom: -3.66vw;
	z-index: 1;
}

.guide__nav {
	margin-bottom: min(8.4rem, 6.149vw);
}

.guide__nav--list {
	display: flex;
}

.guide__nav--list-item {
	background-position: center;
	background-repeat: no-repeat;
	background-size: cover;
	width: 50%;
	height: 41.728vw;
	display: flex;
	justify-content: center;
	align-items: center;
}

.guide__nav--content .logo {
	margin-bottom: min(2rem, 1.464vw);
	height: min(9rem, 6.589vw);
	display: flex;
	justify-content: center;
	align-items: center;
}

.guide__nav--content .logo img {
	width: auto;
}

.guide__nav--content .text {
	margin-bottom: min(3rem, 2.196vw);
	font-size: min(2rem, 1.464vw);
	text-align: center;
}

.guide__nav--content .link-button {
	margin-top: min(2rem, 1.464vw);
}

/* nav01 */
.guide__nav--list-item.nav01 {
	background-image: url(../img/top/guide-nav-bg01.webp);
}

.guide__nav--list-item.nav01 .logo img {
	height: min(8.9rem, 6.515vw);
}

/* nav02 */
.guide__nav--list-item.nav02 {
	background-image: url(../img/top/guide-nav-bg02.webp);
}

.guide__nav--list-item.nav02 .logo img {
	height: min(8.1rem, 5.93vw);
}

.guide__list-title {
	margin-bottom: min(3.3rem, 2.416vw);
	line-height: 1;
	font-family: var(--font-en);
	font-size: min(12.2rem, 8.931vw);
	font-weight: 400;
	text-align: center;
}

.guide__list--item a {
	text-decoration: none;
	display: flex;
	flex-direction: row-reverse;
	align-items: center;
	position: relative;
	z-index: 1;
}

.guide__list--item:nth-child(even) a {
	flex-direction: row;
	top: -7.321vw;
	z-index: 2;
}

.guide__list--item.guide-view .guide__image {
	width: 74.231%;
}

.guide__list--item.guide-bar .guide__image {
	width: 50%;
}

.guide__list--item.guide-dining .guide__image {
	width: 66.764%;
}

.guide__list--item.guide-flexible .guide__image {
	width: 61.786%;
}

.guide__list--item .guide__content {
	padding: 0 min(6rem, 4.392vw) 0 0;
	display: inline-block;
}

.guide__list--item:nth-child(even) .guide__content {
	padding: 0 0 0 min(6rem, 4.392vw);
}

.guide__list--item .guide__content--title {
	color: rgb(var(--orn));
	font-family: var(--font-en);
	font-size: min(8rem, 5.857vw);
	font-weight: 400;
}

.guide__list--item .guide__content--text {
	font-size: min(2rem, 1.464vw);
}

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

	.guide__title {
		line-height: 1;
		font-size: 13.6vw;
		white-space: wrap;
		bottom: -4.267vw;
	}

	.guide__nav {
		margin-bottom: 22.933vw;
	}

	.guide__nav--list {
		display: block;
	}

	.guide__nav--list-item {
		width: 100%;
		height: 83.467vw;
	}

	.guide__nav--content .logo {
		margin-bottom: 3.733vw;
		height: 13.333vw;
	}

	.guide__nav--content .logo img {
		width: auto;
	}

	.guide__nav--content .text {
		margin-bottom: 4.267vw;
		font-size: 3.733vw;
	}

	.guide__nav--content .link-button {
		margin-top: 4.267vw;
	}

	/* nav01 */
	.guide__nav--list-item.nav01 .logo img {
		height: 13.067vw;
	}

	/* nav02 */
	.guide__nav--list-item.nav02 .logo img {
		height: 12vw;
	}

	.guide__list-title {
		margin-bottom: min(3.3rem, 2.416vw);
		font-size: 13.6vw;
	}

	.guide__list--item a {
		display: block;
	}

	.guide__list--item:nth-child(even) a {
		text-align: right;
		top: auto;
	}

	.guide__list--item .guide__image {
		text-align: right;
	}

	.guide__list--item:nth-child(even) .guide__image {
		text-align: left;
	}

	.guide__list--item.guide-view .guide__image {
		margin-left: auto;
		width: 86.4vw;
	}

	.guide__list--item.guide-bar .guide__image {
		margin-right: auto;
		width: 64.533vw;
	}

	.guide__list--item.guide-dining .guide__image {
		margin-left: auto;
		width: 86.133vw;
	}

	.guide__list--item.guide-flexible .guide__image {
		margin-right: auto;
		width: 79.733vw;
	}

	.guide__list--item .guide__content {
		padding: 0 0 0 8.533vw;
		position: relative;
		top: -9.6vw;
	}

	.guide__list--item:nth-child(even) .guide__content {
		padding: 0 4.533vw 0 0;
		text-align: left;
	}

	.guide__list--item .guide__content--title {
		font-size: 10.667vw;
	}

	.guide__list--item .guide__content--text {
		font-size: 4.267vw;
	}
}

/* ----------------------------------------------------
	news
---------------------------------------------------- */
.news {
	margin-right: auto;
	margin-left: auto;
	padding: min(9rem, 6.589vw) 0;
	width: min(116.6rem, 85.359vw);
	position: relative;
}

.news::before {
	background: rgb(var(--gry));
	width: 100vw;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	z-index: -1;
	content: "";
}

.news__title {
	position: absolute;
	top: max(-3rem, -2.196vw);
	left: 0;
}

.news__container {
	margin-left: min(10rem, 7.321vw);
	width: min(106.6rem, 78.038vw);
	max-height: min(32.8rem, 24.012vw);
	overflow-y: auto;
}

.news__container::-webkit-scrollbar {
	background: rgb(var(--wht));
	width: 2px;
	border-radius: 0;
}

.news__container::-webkit-scrollbar-thumb {
	background: rgb(var(--orn));
	border-radius: 0;
}

.news__table {
	width: 100%;
	font-size: min(2rem, 1.464vw);
}

.news__table--row,
.news__table--text {
	padding: min(3.6rem, 2.635vw) 0;
	line-height: 1.5;
	border-top: solid 1px;
	border-bottom: solid 1px;
}

.news__table--date {
	width: min(14rem, 10.249vw);
	border-top: solid 1px rgb(var(--orn));
	border-bottom: solid 1px rgb(var(--orn));
}

.news__table--text {
	padding-right: min(4rem, 2.928vw);
	padding-left: min(4rem, 2.928vw);
	width: calc(100% - min(14rem, 10.249vw));
	border-top: solid 1px #A8A8A8;
	border-bottom: solid 1px #A8A8A8;
}

@media screen and (max-width: 768px) {
	.news {
		margin-right: 0;
		margin-left: auto;
		padding: 14.933vw 0;
		width: 95.733vw;
	}

	.news__title {
		top: -4.8vw;
	}

	.news__container {
		margin: 0 auto;
		width: 85.067vw;
		max-height: 86.4vw;
		overflow-y: auto;
	}

	.news__table,
	.news__table--body,
	.news__table--row,
	.news__table--date,
	.news__table--text {
		width: 100%;
		border: none;
		display: block;
	}

	.news__table {
		font-size: 3.733vw;
	}

	.news__table {
		border-top: solid 1px #A8A8A8;
	}

	.news__table--row {
		border-bottom: solid 1px #A8A8A8;
		position: relative;
	}

	.news__table--row::before {
		background: rgb(var(--orn));
		width: 20%;
		height: 1px;
		position: absolute;
		top: -1px;
		left: 0;
		content: "";
	}

	.news__table--row:last-of-type:after {
		background: rgb(var(--orn));
		width: 20%;
		height: 1px;
		position: absolute;
		bottom: -1px;
		left: 0;
		content: "";
	}

	.news__table--date {
		margin-bottom: 1.6vw;
		padding-top: 4.267vw;
	}

	.news__table--text {
		padding: 0 4.267vw 4.267vw 0;
	}
}

/* ----------------------------------------------------
	chef
---------------------------------------------------- */
.chef {
	position: relative;
}

.chef-bg {
	background: url(../img/chef-bg.webp) center no-repeat;
	background-size: cover;
	width: 100%;
	height: min(48rem, 35.139vw);
	position: absolute;
	top: 50%;
	left: 0;
	z-index: -1;
	transform: translateY(-50%);
}

.chef__container {
	margin: 0 auto;
	width: min(116.6rem, 85.359vw);
	display: flex;
	flex-wrap: wrap;
}

.chef__image {
	width: min(52.3rem, 38.287vw);
}

.chef__content {
	padding-top: min(2.2rem, 1.611vw);
	width: min(58.3rem, 42.679vw);
}

.chef__title {
	margin-bottom: min(3rem, 2.196vw);
}

.chef__text {
	line-height: 2;
	font-size: min(2rem, 1.464vw);
}

.chef__name {
	margin: min(2.4rem, 1.757vw) 0;
	font-family: var(--font-en);
	font-size: min(4rem, 2.928vw);
}

.chef__content .link-button {
	margin: 0;
}

@media screen and (max-width: 768px) {
	.chef-bg {
		background-image: url(../img/chef-bg_sp.webp);
		background-position: center top 6.4vw;
		background-size: 100% auto;
		height: 121.6vw;
		top: 0;
		transform: translateY(0);
	}

	.chef__container {
		width: 80.533vw;
		display: block;
	}

	.chef__image {
		margin: 0 auto;
		width: 68.8vw;
	}

	.chef__content {
		margin-bottom: 10.667vw;
		padding-top: min(2.2rem, 1.611vw);
		width: 100%;
	}

	.chef__title {
		margin-bottom: 8.533vw;
	}

	.chef__text {
		line-height: 1.8;
		font-size: 4vw;
	}

	.chef__name {
		margin: 3.2vw 0;
		font-size: 5.333vw;
	}
}

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

.plan__lead {
	margin-bottom: min(3.2rem, 2.343vw);
	font-size: min(2rem, 1.464vw);
}

.plan__list {
	margin-bottom: min(4rem, 2.928vw);
}

.plan__image {
	margin-bottom: min(2rem, 1.464vw);
}

.plan__list--title {
	margin-bottom: min(0.8rem, 0.586vw);
	font-size: min(2rem, 1.464vw);
	font-weight: 400;
}

.plan__list--date {
	margin-bottom: min(1.6rem, 1.171vw);
	font-size: min(1.8rem, 1.318vw);
}

.plan__list--text {
	margin-bottom: min(1.6rem, 1.171vw);
	font-size: min(1.4rem, 1.025vw);
}

.plan__list .link-text {
	margin-top: auto;
	font-size: min(1.8rem, 1.318vw);
}

@media screen and (max-width: 768px) {
	.plan {
		width: 80.533vw;
	}

	.plan__title {
		margin-bottom: 1.6vw;
		font-size: 9.6vw;
	}

	.plan__lead {
		margin-bottom: 5.867vw;
		line-height: 1.5;
		font-size: 4.267vw;
	}

	.plan__list {
		margin-bottom: 23.2vw;
		display: block;
		justify-content: space-between;
	}

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

	.plan__image {
		margin-bottom: 4.267vw;
	}

	.plan__list--title {
		margin-bottom: 2.667vw;
		font-size: 4.267vw;
	}

	.plan__list--date,
	.plan__list--text {
		margin-bottom: 3.733vw;
		font-size: 3.733vw;
	}

	.plan__list .link-text {
		font-size: 3.733vw;
	}
}

/*
	slick
------------------------------ */
.plan__list .slick-track {
	display: flex;
}

.plan__list .slick-list {
	margin: 0 max(-3.3rem, -2.416vw);
}

.plan__list .slick-slide {
	margin: 0 min(3.3rem, 2.416vw);
	width: min(34.5rem, 25.256vw);
	height: auto;
}

.plan__list .slick-slide>div,
.plan__list .slick-slide>div>.plan__list--item {
	height: 100%;
}

.plan__list--item {
	display: flex !important;
	flex-direction: column;
}

.plan__list .slick-arrow {
	background: url(../img/arrow02.webp) center no-repeat;
	background-size: cover;
	width: min(3.2rem, 2.343vw);
	height: min(3.2rem, 2.343vw);
	top: max(-6.4rem, -4.685vw);
	right: auto;
	bottom: auto;
	left: auto;
	z-index: 1;
}

.plan__list .slick-prev {
	right: min(4.8rem, 3.514vw);
	transform: rotate(180deg);
}

.plan__list .slick-next {
	right: 0;
	transform: rotate(360deg);
}

@media screen and (max-width: 768px) {
	.plan__list .slick-list {
		margin: 0;
	}

	.plan__list .slick-slide {
		margin: 0;
		width: 100%;
		height: auto;
	}

	.plan__list .slick-arrow {
		width: 7.467vw;
		height: 7.467vw;
		top: auto;
		right: auto;
		bottom: -16vw;
		left: auto;
		z-index: 1;
	}

	.plan__list .slick-prev {
		right: auto;
		left: 37.5%;
	}

	.plan__list .slick-next {
		right: 37.5%;
	}
}