@charset "UTF-8";

/* ---------------------------------------------------
	article
---------------------------------------------------- */
.article {
	padding: 100px 0;
}

.article__title {
	margin-bottom: 1.5rem;
	line-height: 1;
	font-family: var(--montserrat);
	text-align: center;
}

.article__title .en {
	background: linear-gradient(-90deg, rgba(209, 173, 176, 1) 0%, rgba(217, 207, 191, 1) 25%, rgba(188, 210, 173, 1) 50%, rgba(180, 209, 210, 1) 72%, rgba(171, 191, 218, 1) 100%);
	font-size: 40px;
	font-weight: 600;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: inline-block;
}

.article__title .jp {
	margin-top: 1rem;
	font-family: var(--gothic);
	font-size: 20px;
	display: block;
}

.article__lead {
	margin-bottom: 2.5em;
	font-size: 18px;
	text-align: center;
}

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

	.article__title .en {
		font-size: 8vw;
	}


	.article__title .jp,
	.article__lead {
		font-size: 3.46667vw;
	}
}

/* ---------------------------------------------------
	lead
---------------------------------------------------- */
.lead {
	padding-bottom: 0;
	text-align: center;
}

.lead__title {
	margin-bottom: 1em;
	font-size: 23px;
}

.lead__title .date {
	background: linear-gradient(-90deg, rgba(209, 173, 176, 1) 0%, rgba(217, 207, 191, 1) 25%, rgba(188, 210, 173, 1) 50%, rgba(180, 209, 210, 1) 72%, rgba(171, 191, 218, 1) 100%);
	margin-bottom: 1rem;
	font-family: var(--montserrat);
	font-size: 30px;
	font-weight: 600;
	-webkit-background-clip: text;
	-webkit-text-fill-color: transparent;
	display: inline-block;
}

.lead__title .text {
	display: block;
}

.lead__text .text {
	line-height: 2;
	font-size: 18px;
}

@media screen and (max-width: 768px) {
	.lead__title {
		font-size: 4.8vw;
	}

	.lead__title .date {
		font-size: 5.33333vw;
	}

	.lead__text .text {
		font-size: 3.46667vw;
	}
}

/* ---------------------------------------------------
	movie
---------------------------------------------------- */
.movie {
	padding-bottom: 0;
}

/* ---------------------------------------------------
	seasonal
---------------------------------------------------- */
.seasonal {}

.seasonal__nav,
.seasonal .video {
	margin-bottom: 100px;
}

.seasonal__nav {}

.seasonal__nav--list {
	display: flex;
	justify-content: center;
}

.seasonal__nav--item {
	margin: 0 1.25em;
	max-width: 176px;
}

.seasonal__nav--item a {
	line-height: 1.25;
	text-align: center;
	text-decoration: none;
	display: block;
}

.seasonal__nav--item a figure {
	margin-bottom: 1em;
}

.seasonal__nav--item a figcaption {
	margin-top: 1rem;
	font-size: 50px;
}

.seasonal__nav--item a figcaption span,
.seasonal__nav--item a figcaption small {
	font-size: 27px;
}

.seasonal__nav--item a figcaption small {
	display: block;
}

.seasonal__nav--item a svg {
	width: 44px;
	fill: none;
	stroke-miterlimit: 10;
	stroke-width: 1.58px;
}

.seasonal__nav--item.type1 a {
	color: rgb(var(--season1));
}

.seasonal__nav--item.type1 a svg {
	stroke: rgb(var(--season1));
}

.seasonal__nav--item.type2 a {
	color: rgb(var(--season2));
}

.seasonal__nav--item.type2 a svg {
	stroke: rgb(var(--season2));
}

.seasonal__nav--item.type3 a {
	color: rgb(var(--season3));
}

.seasonal__nav--item.type3 a svg {
	stroke: rgb(var(--season3));
}

@media screen and (max-width: 768px) {

	.seasonal__nav,
	.seasonal .video {
		margin-bottom: 13.33333vw;
	}

	.seasonal__nav--item {
		margin: 0 0.75em;
		max-width: 25.33333vw;
	}

	.seasonal__nav--item a figcaption {
		font-size: 7.2vw;
	}

	.seasonal__nav--item a figcaption span,
	.seasonal__nav--item a figcaption small {
		font-size: 4vw;
	}

	.seasonal__nav--item a svg {
		width: 6.13333vw;
	}
}

/*
	season
------------------------------ */
.season {
	padding: 80px 0;
	border-top-style: solid;
	border-top-width: 4px;
}

.season__title {
	margin-bottom: 2rem;
	padding-top: 80px;
	line-height: 1;
	font-size: 60px;
	font-weight: normal;
	display: flex;
	justify-content: center;
	align-items: baseline;
}

.season__title i {
	font-size: 45px;
}

.season__nav,
.season__slide {
	margin: 0 auto;
	max-width: 960px;
}

/* season1 */
#season1.season {
	border-top-color: rgb(var(--season1));
}

#season1 .season__title {
	background: url(../img/titleBg1.svg) center top no-repeat;
	background-size: 60px auto;
	color: rgb(var(--season1));
}

#season1 .season__nav {
	background: linear-gradient(90deg, rgba(175, 190, 215, 1) 0%, rgba(121, 145, 179, 1) 100%);
}

@media screen and (max-width: 768px) {}

/* season2 */
#season2.season {
	border-top-color: rgb(var(--season2));
}

#season2 .season__title {
	background: url(../img/titleBg2.svg) center top no-repeat;
	background-size: 70px auto;
	color: rgb(var(--season2));
}

#season2 .season__nav {
	background: linear-gradient(90deg, rgba(192, 209, 176, 1) 0%, rgba(145, 177, 107, 1) 100%);
}

@media screen and (max-width: 768px) {}

/* season3 */
#season3.season {
	padding-bottom: 0;
	border-top-color: rgb(var(--season3));
}

#season3 .season__title {
	background: url(../img/titleBg3.svg) center top no-repeat;
	background-size: 70px auto;
	color: rgb(var(--season3));
}

#season3 .season__nav {
	background: linear-gradient(90deg, rgba(203, 174, 176, 1) 0%, rgba(176, 127, 140, 1) 100%);
}

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

	.season__title {
		padding-top: 17.6vw;
		font-size: 8.8vw;
	}

	.season__title i {
		font-size: 6.66667vw;
	}

	/* season1 */
	#season1 .season__title {
		background-size: 12.53333vw auto;
	}

	/* season2 */
	#season2 .season__title {
		background-size: 13.33333vw auto;
	}

	/* season3 */
	#season3 .season__title {
		background-size: 15.2vw auto;
	}
}

/*
	season__nav
------------------------------ */
.season__nav {
	margin-bottom: 2em;
	font-size: 16px;
	border-radius: 8px;
	overflow: hidden;
}

.season__nav--list .slick-track {
	width: 100% !important;
	display: flex;
	flex-wrap: wrap;
}

.season__nav .slick-slide {
	border-bottom: solid 1px rgb(var(--wht));
}

.season__nav--item {
	height: 60px;
	color: rgb(var(--wht));
	display: flex !important;
	justify-content: center;
	align-items: center;
	position: relative;
	cursor: pointer;
}

.season__nav--item svg {
	width: 17px;
	fill: none;
	stroke: rgb(var(--wht));
	stroke-miterlimit: 10;
	stroke-width: .85px;
	position: absolute;
	top: 50%;
	right: 1em;
	transform: translateY(-50%);
}

@media screen and (max-width: 768px) {
	.season__nav {
		font-size: 3.73333vw;
	}

	.season__nav--list .slick-track {
		display: block !important;
	}

	.season__nav--item {
		height: 9.6vw;
	}

	.season__nav--item svg {
		width: 2.66667vw;
	}
}

/* season1 */
#season1 .season__nav .slick-slide:nth-child(1),
#season1 .season__nav .slick-slide:nth-child(2) {
	width: 31% !important;
	border-right: solid 1px rgb(var(--wht));
}

#season1 .season__nav .slick-slide:nth-child(3) {
	width: 38% !important;
}

#season1 .season__nav .slick-slide:nth-child(4),
#season1 .season__nav .slick-slide:nth-child(5) {
	width: calc(100% / 2) !important;
	border-bottom: none;
}

#season1 .season__nav .slick-slide:nth-child(4) {
	border-right: solid 1px rgb(var(--wht));
}

@media screen and (max-width: 768px) {
	#season1 .season__nav .slick-slide {
		border-right: none !important;
	}

	#season1 .season__nav .slick-slide:nth-child(1),
	#season1 .season__nav .slick-slide:nth-child(2),
	#season1 .season__nav .slick-slide:nth-child(3),
	#season1 .season__nav .slick-slide:nth-child(4),
	#season1 .season__nav .slick-slide:nth-child(5) {
		width: 100% !important;
	}

	#season1 .season__nav .slick-slide:nth-child(4) {
		border-bottom: solid 1px rgb(var(--wht));
	}

	#season1 .season__nav .slick-slide:nth-child(5) {
		border-bottom: none;
	}
}

/* season2 */
#season2 .season__nav .slick-slide {
	width: calc(100% / 3) !important;
	border-right: solid 1px rgb(var(--wht));
}

#season2 .season__nav .slick-slide:nth-child(7),
#season2 .season__nav .slick-slide:nth-child(8) {
	width: 50% !important;
	border-bottom: none;
}

#season2 .season__nav .slick-slide:nth-child(3),
#season2 .season__nav .slick-slide:nth-child(6),
#season2 .season__nav .slick-slide:nth-child(8) {
	border-right: none;
}

@media screen and (max-width: 768px) {
	#season2 .season__nav .slick-slide {
		border-right: none !important;
	}

	#season2 .season__nav .slick-slide:nth-child(1),
	#season2 .season__nav .slick-slide:nth-child(2),
	#season2 .season__nav .slick-slide:nth-child(3),
	#season2 .season__nav .slick-slide:nth-child(4),
	#season2 .season__nav .slick-slide:nth-child(5),
	#season2 .season__nav .slick-slide:nth-child(6),
	#season2 .season__nav .slick-slide:nth-child(7),
	#season2 .season__nav .slick-slide:nth-child(8) {
		width: 100% !important;
	}

	#season2 .season__nav .slick-slide:nth-child(7) {
		border-bottom: solid 1px rgb(var(--wht));
	}
}

/* season3 */
#season3 .season__nav .slick-slide {
	width: calc(100% / 3) !important;
	border-right: solid 1px rgb(var(--wht));
}

#season3 .season__nav .slick-slide:nth-child(7),
#season3 .season__nav .slick-slide:nth-child(8),
#season3 .season__nav .slick-slide:nth-child(9) {
	border-bottom: none;
}

#season3 .season__nav .slick-slide:nth-child(3),
#season3 .season__nav .slick-slide:nth-child(6),
#season3 .season__nav .slick-slide:nth-child(9) {
	border-right: none;
}

@media screen and (max-width: 768px) {
	#season3 .season__nav .slick-slide {
		width: 100% !important;
		border-right: none;
	}

	#season3 .season__nav .slick-slide:nth-child(7),
	#season3 .season__nav .slick-slide:nth-child(8) {
		border-bottom: solid 1px rgb(var(--wht));
	}
}

/*
	season__slide
------------------------------ */
.season__slide {
	overflow-x: hidden;
}

.season__slide--contents {
	position: relative;
}

.season__slide--images {
	margin-bottom: 3rem;
}

.season__slide .container {
	padding: 0;
	max-width: 600px;
	text-align: center;
}

.season__slide--title {
	margin-bottom: 1rem;
	line-height: 1.5;
	font-size: 25px;
}

.season__slide--place {
	margin-bottom: 1rem;
	font-weight: bold;
}

.season__slide--text {
	margin-bottom: 2em;
	text-align: left;
}

.season__slide .linkBtn {
	margin-bottom: 1em;
	font-size: 18px;
}

.season__slide .back {
	text-align: center;
}

.season__slide .back a {
	color: #b2b2b3;
	font-size: 13px;
	font-weight: bold;
}

@media screen and (max-width: 960px) {
	.season__slide {
		font-size: 1.66667vw;
	}

	.season__slide--title {
		font-size: 2.60417vw;
	}

	.season__slide .linkBtn {
		font-size: 1.875vw;
	}

	.season__slide .back a {
		font-size: 13px;
	}
}

@media screen and (max-width: 768px) {
	.season__slide {
		font-size: 3.46667vw;
	}

	.season__slide .container {
		padding: 0 4.8vw;
		max-width: 100%;
	}

	.season__slide--images {
		margin-bottom: 4.8vw;
	}

	.season__slide--title {
		margin-bottom: 0.5em;
		font-size: 4.8vw;
	}

	.season__slide .linkBtn {
		font-size: 18px;
	}

	.season__slide .back a {
		font-size: 3.46667vw;
	}
}

/*
	slide-arrow
------------------------------ */
.season__slide .slide-arrow {
	background: none;
	width: 20px;
	height: 20px;
	outline: none;
	border: none;
	position: absolute;
	top: 600px;
	z-index: 2;
}

.season__slide .prev-arrow {
	border-top: solid 3px;
	border-left: solid 3px;
	left: 5px;
	cursor: pointer;
	transform: rotate(-45deg);
}

.season__slide .next-arrow {
	border-right: solid 3px;
	border-bottom: solid 3px;
	right: 5px;
	transform: rotate(-45deg);
}

/* season1 */
#season1 .season__slide--place a {
	color: rgb(var(--season1));
}

#season1 .season__slide .slide-arrow {
	border-color: rgb(var(--season1));
}

/* season2 */
#season2 .season__slide--place a {
	color: rgb(var(--season2));
}

#season2 .season__slide .slide-arrow {
	border-color: rgb(var(--season2));
}

/* season3 */
#season3 .season__slide--place a {
	color: rgb(var(--season3));
}

#season3 .season__slide .slide-arrow {
	border-color: rgb(var(--season3));
}

@media screen and (max-width: 1000px) {
	.season__slide .slide-arrow {
		width: 2vw;
		height: 2vw;
		top: 60vw;
	}

	.season__slide .prev-arrow {
		left: 0.5vw;
	}

	.season__slide .next-arrow {
		right: 0.5vw;
	}
}

@media screen and (max-width: 768px) {
	.season__slide .slide-arrow {
		width: 2.66667vw;
		height: 2.66667vw;
		top: 62.5vw;
	}

	.season__slide .prev-arrow {
		border-top: solid 2px;
		border-left: solid 2px;
		left: 3.2vw;
	}

	.season__slide .next-arrow {
		border-right: solid 2px;
		border-bottom: solid 2px;
		right: 3.2vw;
	}
}

/*
	tab
------------------------------ */
.tab-buttons {
	margin: 0 auto;
	width: 640px;
	display: flex;
	justify-content: space-between;
	position: absolute;
	top: 750px;
	left: 50%;
	transform: translateX(-50%);
}

.tab-btn {
	background: #dcdcdc;
	padding: 0;
	width: 49%;
	height: 48px;
	color: rgb(var(--wht));
	font-size: 16px;
	border: none;
	outline: none;
	border-radius: 4px;
	transition: all 0.5s ease 0s;
	cursor: pointer;
}

.tab-btn:hover,
.tab-btn.active {
	background: linear-gradient(90deg, rgba(192, 209, 175, 1) 0%, rgba(146, 177, 108, 1) 100%);
}

.tab-contents .season__slide--place {
	margin-bottom: 5.5em;
}

.tab-content {
	display: none;
}

@media screen and (max-width: 960px) {
	.tab-buttons {
		top: 78.125vw;
	}
}

@media screen and (max-width: 768px) {
	.tab-buttons {
		width: calc(100% - 12.8vw);
		top: 90.5vw;
	}

	.tab-btn {
		height: 9.6vw;
		font-size: 3.73333vw;
	}

	.tab-contents .season__slide--place {
		margin-bottom: 18.4vw;
	}
}


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

.more::before {
	background: linear-gradient(-90deg, rgba(209, 173, 176, 1) 0%, rgba(217, 207, 191, 1) 25%, rgba(188, 210, 173, 1) 50%, rgba(180, 209, 210, 1) 72%, rgba(171, 191, 218, 1) 100%);
	width: 100%;
	height: 3px;
	display: block;
	position: absolute;
	top: 0;
	left: 0;
	content: "";
}

.more__list {
	margin: 0 auto 2em;
	max-width: 960px;
	display: flex;
	flex-wrap: wrap;
}

.more__list--item {
	width: 25%;
}

@media screen and (max-width: 768px) {
	.more__list--item {
		width: 50%;
	}
}

/* ---------------------------------------------------
	banner
---------------------------------------------------- */
.banner {
	background: rgb(var(--banner));
	text-align: center;
}

.banner__title {
	margin-bottom: 1rem;
	font-size: 25px;
}

.banner__list {
	margin: 0 auto;
	max-width: 640px;
}

.banner__list--item:not(:last-of-type) {
	margin-bottom: 1em;
}

@media screen and (max-width: 768px) {
	.banner__title {
		font-size: 4.8vw;
	}
}

/* ---------------------------------------------------
	contact
---------------------------------------------------- */
.contact {
	text-align: center;
}

.contact__list {
	margin: 2em 0;
	display: inline-flex;
}

.contact__list--item:not(:last-of-type) {
	margin-right: 2em;
}

.contact__list--item a {
	color: rgb(var(--blk));
	font-size: 18px;
	font-weight: bold;
	display: flex;
	align-items: center;
}

.contact__list--item a .icon {
	margin-right: 0.5em;
	width: 40px;
	height: 40px;
	border-radius: 50%;
	display: inline-block;
	display: flex;
	justify-content: center;
	align-items: center;
}

.contact__list--item.mail .icon {
	background: linear-gradient(-45deg, rgba(188, 210, 173, 1) 0%, rgba(180, 209, 210, 1) 50%, rgba(171, 191, 218, 1) 100%);
}

.contact__list--item.tel .icon {
	background: linear-gradient(-45deg, rgba(209, 173, 176, 1) 0%, rgba(217, 207, 191, 1) 50%, rgba(188, 210, 173, 1) 100%);
}

.contact__list--item a .icon img {
	width: 21px;
}

.contact .list.note li {
	justify-content: center;
}

@media screen and (max-width: 768px) {
	.contact__list {
		margin: 3em 0 4em;
		display: inline-block;
	}

	.contact__list--item:not(:last-of-type) {
		margin-bottom: 1em;
		margin-right: 0;
	}

	.contact__list--item a {
		font-size: 4.8vw;
	}

	.contact__list--item a .icon {
		width: 9.33333vw;
		height: 9.33333vw;
	}

	.contact__list--item a .icon img {
		width: 5.6vw;
	}

	.contact .list.note {
		padding: 0 6.4vw;
	}

	.contact .list.note li {
		text-align: left;
		justify-content: flex-start;
	}
}