@charset "utf-8";
#thought {
	width: 100%;
	height: auto;
	padding: calc((125 / var(--vw)) * 100vw) 0 calc((60 / var(--vw)) * 100vw);
	position: relative;
	z-index: 2;
	overflow: hidden;
}
	.thought__object {
		width: calc((376 / var(--vw)) * 100vw);
		height: auto;
		position: absolute;
		top: 0;
		right: calc((-4 / var(--vw)) * 100vw);
		z-index: -1;
	}
	.thought__inner {
		width: calc((1200 / var(--vw)) * 100vw);
		height: auto;
		margin: 0 auto;
	}
		.thought__contents {
			display: flex;
			justify-content: space-between;
			align-items: flex-start;
			width: 100%;
			height: auto;
			margin: 0 auto calc((110 / var(--vw)) * 100vw);
		}
			.thought__contents__heading {
				width: fit-content;
				height: auto;
				padding-left: calc((20 / var(--vw)) * 100vw);
				font-size: calc((32 / var(--vw)) * 100vw);
				font-weight: 700;
				line-height: 1.8;
				letter-spacing: 0.1em;
			}
				.thought__contents__heading__row {
					display: block;
					overflow: hidden;
				}
					.thought__contents__heading__row__item {
						display: block;
						transition: transform 1.2s cubic-bezier(.19, 1, .22, 1);
						transform: translateY(100%);
					}
					._inview .thought__contents__heading__row__item {
						transform: translateY(0%);
					}
			.thought__contents__text {
				width: calc((490 / 1200) * 100%);
				font-size: calc((14 / var(--vw)) * 100vw);
				font-weight: 700;
				line-height: 2;
				letter-spacing: 0.1em;
			}
		.thought__list {
			display: flex;
			flex-direction: column;
			gap: calc((50 / var(--vw)) * 100vw);
			width: 100%;
			height: auto;
		}
			.thought__list__item {
				display: grid;
				grid-template-columns: repeat(4, 1fr);
				gap: calc((14 / var(--vw)) * 100vw);
				width: 100%;
				height: auto;
			}
				.thought__list__item__heading {
					display: flex;
					flex-direction: column;
					justify-content: center;
					align-items: center;
					width: 100%;
					height: auto;
					border-radius: calc((10 / var(--vw)) * 100vw);
					background-color: var(--color--red);
					opacity: 0;
					transform: translate(calc((-20 / var(--vw)) * 100vw), 0px);
					-webkit-transform: translate(calc((-20 / var(--vw)) * 100vw), 0px);
					transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
				}
				._inview .thought__list__item__heading {
					opacity: 1;
					transform: translate(0, 0);
					-webkit-transform: translate(0, 0);
				}
					.thought__list__item__heading__number {
						width: 100%;
						height: auto;
						margin-bottom: calc((10 / var(--vw)) * 100vw);
						font-size: calc((16 / var(--vw)) * 100vw);
						font-weight: 700;
						line-height: 2;
						letter-spacing: 0.03em;
						text-align: center;
						color: var(--color--white);
					}
					.thought__list__item__heading__main_text {
						width: 100%;
						height: auto;
						font-size: calc((20 / var(--vw)) * 100vw);
						font-weight: 700;
						line-height: 1.4;
						letter-spacing: 0.03em;
						text-align: center;
						color: var(--color--white);
					}
					.thought__list__item__heading__sub_text {
						width: 100%;
						height: auto;
						font-size: calc((10 / var(--vw)) * 100vw);
						font-weight: 500;
						line-height: 2;
						letter-spacing: 0.03em;
						text-align: center;
						color: var(--color--white);
					}
				.thought__list__item__list {
					display: grid;
					gap: calc((14 / var(--vw)) * 100vw);
					width: 100%;
					height: auto;
					grid-column: 2 / 5;
				}
				.thought__list__item__list._2column {
					grid-template-columns: repeat(2, 1fr);
				}
				.thought__list__item__list._3column {
					grid-template-columns: repeat(3, 1fr);
				}
					.thought__list__item__list__item {
						width: 100%;
						height: auto;
						border-radius: calc((10 / var(--vw)) * 100vw);
						opacity: 0;
						transform: translate(calc((-20 / var(--vw)) * 100vw), 0px);
						-webkit-transform: translate(calc((-20 / var(--vw)) * 100vw), 0px);
						transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
						will-change: transform;
					}
					._2column .thought__list__item__list__item:nth-of-type(1),
					._2column .thought__list__item__list__item:nth-of-type(3) {
						transition-delay: 0.3s;
					}
					._2column .thought__list__item__list__item:nth-of-type(2),
					._2column .thought__list__item__list__item:nth-of-type(4) {
						transition-delay: 0.4s;
					}
					._3column .thought__list__item__list__item:nth-of-type(1) {
						transition-delay: 0.3s;
					}
					._3column .thought__list__item__list__item:nth-of-type(2) {
						transition-delay: 0.4s;
					}
					._3column .thought__list__item__list__item:nth-of-type(3) {
						transition-delay: 0.5s;
					}
					._inview .thought__list__item__list__item {
						transform: translate(0, 0);
						-webkit-transform: translate(0, 0);
						opacity: 1;
					}
					._2column .thought__list__item__list__item {
						padding: calc((30 / var(--vw)) * 100vw) calc((30 / var(--vw)) * 100vw) calc((50 / var(--vw)) * 100vw);
					}
					._3column .thought__list__item__list__item {
						padding: calc((45 / var(--vw)) * 100vw) calc((30 / var(--vw)) * 100vw) calc((30 / var(--vw)) * 100vw);
					}
						.thought__list__item__list__item__heading {
							width: 100%;
							height: auto;
						}
						._2column .thought__list__item__list__item__heading {
							display: flex;
							justify-content: space-between;
							align-items: flex-start;
							margin-bottom: calc((20 / var(--vw)) * 100vw);
						}
						._3column .thought__list__item__list__item__heading {
							display: flex;
							flex-direction: column;
							justify-content: flex-start;
							align-items: center;
							gap: calc((6 / var(--vw)) * 100vw);
							margin-bottom: calc((5 / var(--vw)) * 100vw);
						}
							.thought__list__item__list__item__heading__main_text {
								font-size: calc((16 / var(--vw)) * 100vw);
								font-weight: 700;
								line-height: 1.4;
								letter-spacing: 0.03em;
								color: var(--color--red);
							}
							.thought__list__item__list__item__heading__sub_text {
								font-size: calc((10 / var(--vw)) * 100vw);
								font-weight: 500;
								line-height: 2;
								letter-spacing: 0.03em;
								color: var(--color--red);
							}
						.thought__list__item__list__item__image {
							width: 100%;
							max-width: calc((271 / var(--vw)) * 100vw);
							height: calc((141 / var(--vw)) * 100vw);
							margin: 0 auto calc((30 / var(--vw)) * 100vw);
							overflow: hidden;
						}
							.thought__list__item__list__item__image img {
								width: 100%;
								height: 100%;
								object-fit: cover;
								object-position: center;
							}
						.thought__list__item__list__item__text {
							width: 100%;
							height: auto;
							padding: 0 calc((15 / var(--vw)) * 100vw);
							font-size: calc((14 / var(--vw)) * 100vw);
							font-weight: 500;
							line-height: 1.8;
							letter-spacing: 0.03em;
							color: #6E6E6E;
						}
		.thought__note {
			width: 100%;
			height: auto;
			margin: calc((32 / var(--vw)) * 100vw) 0;
			font-size: calc((12 / var(--vw)) * 100vw);
			font-weight: 700;
			line-height: 2;
			letter-spacing: 0.1em;
			text-align: right;
			color: var(--color--gray);
			opacity: 0;
			transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
		}
		._inview.thought__note {
			opacity: 1;
		}

#event {
	width: 100%;
	height: auto;
	padding: calc((75 / var(--vw)) * 100vw) 0 calc((120 / var(--vw)) * 100vw);
	border-radius: calc((60 / var(--vw)) * 100vw) calc((60 / var(--vw)) * 100vw) 0 0;
	background-color: var(--color--mid_gray);
}
	.event__inner {
		width: calc((962 / var(--vw)) * 100vw);
		height: auto;
		margin: 0 auto;
	}
		#event .section_heading {
			margin-bottom: calc((70 / var(--vw)) * 100vw);
		}
		.event__list {
			display: flex;
			justify-content: space-between;
			align-items: stretch;
			width: calc((962 / var(--vw)) * 100vw);
			height: auto;
			margin: 0 auto;
		}
			.event__list__item {
				width: calc((450 / var(--vw)) * 100vw);
				height: auto;
				border-radius: calc((10 / var(--vw)) * 100vw);
				background-color: var(--color--black);
				overflow: hidden;
				opacity: 0;
				transform: translate(0, calc((20 / var(--vw)) * 100vw));
				-webkit-transform: translate(0, calc((20 / var(--vw)) * 100vw));
				transition: 1s cubic-bezier(0.490, 0.035, 0.140, 0.910);
			}
			._inview.event__list__item {
				opacity: 1;
				transform: translate(0, 0);
				-webkit-transform: translate(0, 0);
			}
				.event__list__item__image {
					width: 100%;
					height: auto;
					border-radius: calc((10 / var(--vw)) * 100vw);
					overflow: hidden;
				}
				.event__list__item__contents {
					width: 100%;
					height: auto;
					padding: calc((30 / var(--vw)) * 100vw) calc((38 / var(--vw)) * 100vw) calc((40 / var(--vw)) * 100vw);
				}
					.event__list__item__contents dt {
						width: 100%;
						height: auto;
						margin-bottom: calc((20 / var(--vw)) * 100vw);
						font-size: calc((26 / var(--vw)) * 100vw);
						font-weight: 700;
						line-height: 1.4;
						letter-spacing: 0em;
						color: var(--color--white);
					}
					.event__list__item__contents dd {
						width: 100%;
						height: auto;
						font-size: calc((14 / var(--vw)) * 100vw);
						font-weight: 500;
						line-height: 1.8;
						letter-spacing: 0.03em;
						color: var(--color--white);
					}

/* PC ================================================== */
@media all and (min-width: 769px){

}

/* Tablet ================================================== */
@media all and (max-width: 768px){
		#fv .section_sub_heading {
			display: none;
		}

#thought {
	padding: calc((68 / var(--vw)) * 100vw) 0 calc((60 / var(--vw)) * 100vw);
}
	.thought__object {
		width: calc((183 / var(--vw)) * 100vw);
		right: 0;
	}
	.thought__inner {
		width: calc((330 / var(--vw)) * 100%);
	}
		.thought__contents {
			flex-direction: column;
			justify-content: flex-start;
			align-items: stretch;
			margin: 0 auto calc((40 / var(--vw)) * 100vw);
		}
			.thought__contents__heading {
				width: 100%;
				padding-left: 0;
				margin: 0 auto calc((30 / var(--vw)) * 100vw);
				font-size: calc((24 / var(--vw)) * 100vw);
				line-height: 1.4;
				letter-spacing: 0em;
			}
			.thought__contents__text {
				width: 100%;
				height: auto;
				font-weight: 500;
				line-height: 1.8;
				letter-spacing: 0.03em;
			}
		.thought__list {
			gap: calc((30 / var(--vw)) * 100vw);
		}
			.thought__list__item {
				grid-template-columns: repeat(1, 1fr);
				gap: calc((10 / var(--vw)) * 100vw);
			}
				.thought__list__item__heading {
					justify-content: center;
					align-items: flex-start;
					padding: calc((12 / var(--vw)) * 100vw) 0 calc((10 / var(--vw)) * 100vw) calc((53 / var(--vw)) * 100vw);
					border-radius: calc((5 / var(--vw)) * 100vw);
					position: relative;
					transform: translate(0px, calc((20 / var(--vw)) * 100vw));
					-webkit-transform: translate(0px, calc((20 / var(--vw)) * 100vw));
				}
					.thought__list__item__heading__number {
						width: fit-content;
						margin-bottom: 0;
						text-align: left;
						position: absolute;
						top: calc((10 / var(--vw)) * 100vw);
						left: calc((17 / var(--vw)) * 100vw);
					}
					.thought__list__item__heading__main_text {
						margin-bottom: calc((1 / var(--vw)) * 100vw);
						text-align: left;
					}
					.thought__list__item__heading__sub_text {
						font-size: calc((10 / var(--vw)) * 100vw);
						text-align: left;
					}
				.thought__list__item__list {
					gap: calc((10 / var(--vw)) * 100vw);
					grid-column: initial;
				}
				.thought__list__item__list._2column {
					grid-template-columns: repeat(1, 1fr);
				}
				.thought__list__item__list._3column {
					grid-template-columns: repeat(1, 1fr);
				}
					.thought__list__item__list__item {
						border-radius: calc((5 / var(--vw)) * 100vw);
						transform: translate(0px, calc((20 / var(--vw)) * 100vw));
						-webkit-transform: translate(0px, calc((20 / var(--vw)) * 100vw));
					}
					._2column .thought__list__item__list__item:nth-of-type(1),
					._2column .thought__list__item__list__item:nth-of-type(3) {
						transition-delay: 0s;
					}
					._2column .thought__list__item__list__item:nth-of-type(2),
					._2column .thought__list__item__list__item:nth-of-type(4) {
						transition-delay: 0s;
					}
					._3column .thought__list__item__list__item:nth-of-type(1) {
						transition-delay: 0s;
					}
					._3column .thought__list__item__list__item:nth-of-type(2) {
						transition-delay: 0s;
					}
					._3column .thought__list__item__list__item:nth-of-type(3) {
						transition-delay: 0s;
					}
					._2column .thought__list__item__list__item {
						padding: calc((40 / var(--vw)) * 100vw) calc((29 / var(--vw)) * 100vw) calc((40 / var(--vw)) * 100vw);
					}
					._3column .thought__list__item__list__item {
						padding: calc((40 / var(--vw)) * 100vw) calc((29 / var(--vw)) * 100vw) calc((40 / var(--vw)) * 100vw);
					}
						._2column .thought__list__item__list__item__heading {
							flex-direction: column;
							justify-content: flex-start;
							align-items: center;
							gap: calc((6 / var(--vw)) * 100vw);
							margin-bottom: calc((8 / var(--vw)) * 100vw);
						}
						._3column .thought__list__item__list__item__heading {
							margin-bottom: calc((9 / var(--vw)) * 100vw);
						}
							.thought__list__item__list__item__heading__main_text {
								text-align: center;
							}
							.thought__list__item__list__item__heading__sub_text {
								text-align: center;
							}
						.thought__list__item__list__item__image {
							width: 100%;
							max-width: initial;
							height: auto;
							margin: 0 auto calc((26 / var(--vw)) * 100vw);
						}
						.thought__list__item__list__item__text {
							padding: 0;
						}
		.thought__note {
			margin: calc((20 / var(--vw)) * 100vw) 0;
			font-size: calc((12 / var(--vw)) * 100vw);
			text-align: center;
		}

#event {
	padding: calc((50 / var(--vw)) * 100vw) 0 calc((60 / var(--vw)) * 100vw);
}
	.event__inner {
		width: calc((324 / var(--vw)) * 100%);
	}
		#event .section_heading {
			margin-bottom: calc((40 / var(--vw)) * 100vw);
		}
		.event__list {
			flex-direction: column;
			justify-content: flex-start;
			gap: calc((20 / var(--vw)) * 100vw);
			width: 100%;
		}
			.event__list__item {
				width: 100%;
			}
				.event__list__item__contents {
					padding: calc((20 / var(--vw)) * 100vw) calc((26 / var(--vw)) * 100vw) calc((30 / var(--vw)) * 100vw);
				}
					.event__list__item__contents dt {
						margin-bottom: calc((15 / var(--vw)) * 100vw);
						font-size: calc((16 / var(--vw)) * 100vw);
					}
}

/* SP ================================================== */
@media all and (max-width: 575px){

}