
/* --------------------------------------------------------------------------------------
	キービジュアル
--------------------------------------------------------------------------------------- */

.story-lead-head {
	background: url(../../img/75th/key-story-bg.png) no-repeat 30% top;
	min-height: 702px;
	padding-top: 200px;
}

.story-lead-head h2 {
	font-size: 2.8rem;
	font-weight: var(--Bold);
}

.story-lead-head h3 {
	font-size: 4.8rem;
	font-weight: var(--Bold);
	margin-top: 3px;
}


@media (max-width: 1099px) {

	.wrapper-75th { background: url(../../img/75th/key-story-bg-sp.png) no-repeat center top / 100% auto; }

	.story-lead-head {
		background: none;
		min-height: inherit;
		padding-bottom: 9.95vw;
		padding-top: 18.657vw;
	}

	.story-lead-head h2 { font-size: 4.478vw; }

	.story-lead-head h3 { font-size: 7.96vw; }
}

/* --------------------------------------------------------------------------------------
	コンテンツ
--------------------------------------------------------------------------------------- */

.story-content-wrap {
	padding-left: 60px;
	padding-right: 60px;
}

.story-content-inner {
	background-color: rgba(255, 255, 255, .4);
	border: 2px solid #fff;
	border-radius: 16px;
	margin-top: -320px;
	max-width: 1280px;
	padding: 80px 140px;
}

.story-content-wrap .main-head {
	font-size: 2rem;
	font-weight: var(--Bold);
	line-height: 2.1;
	margin-bottom: 56px;
	text-align: center;
}

.story-content-wrap .text-content > p,
.story-content-wrap .main-section p { line-height: 1.8; }

.story-content-wrap .text-content > p:nth-of-type(n+2),
.story-content-wrap .main-section p { margin-top: 24px; }

.story-content-wrap .main-section { margin-top: 38px; }

.story-content-wrap .main-section h4 {
	font-size: 2rem;
	font-weight: var(--Bold);
	margin-bottom: 24px;
}

.story-content-wrap .main-section figure {
	background-color: #fff;
	border-radius: 16px;
	padding: 46px 32px;
	position: relative;
}

.story-content-wrap .main-section figure figcaption {
	font-size: 1.2rem;
	position: absolute;
	right: 28px;
}

.story-content-wrap .main-section figure .logo {
	margin-left: auto;
	margin-right: auto;
	max-width: 197px;
}

.story-content-wrap .main-section figure .character {
	margin-top: -14px;
	text-align: center;
}

.story-content-wrap .main-section figure .character img {
	margin-left: auto;
	margin-right: auto;
	max-height: 250px;
	width: auto;
}

.story-content-wrap .character-case {
	border: 2px solid #fff;
	border-radius: 16px;
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
	margin-bottom: 32px;
	margin-top: 60px;
	padding-bottom: 42px;
	padding-top: 32px;
	position: relative;
}

.story-content-wrap .character-case > div { flex-shrink: 0; }

.story-content-wrap .character-case > div img {
	display: block;
	height: auto;
	position: relative;
	width: 100%;
}

.story-content-wrap .character-case > .thinking { margin-top: 13px; }
.story-content-wrap .character-case > .thinking img { max-height: 185px; }

.story-content-wrap .character-case > .success { margin-left: 32px; }
.story-content-wrap .character-case > .success img { max-height: 210px; }


.story-content-wrap .character-case > .exploring {
	margin-left: 60px;
	margin-top: 7px;
}

.story-content-wrap .character-case > .exploring img { max-height: 197px; }

.story-content-wrap .character-case > .relaxed { margin-top: 20px; }

.story-content-wrap .character-case > .relaxed img { max-height: 158px; }

.story-content-wrap .character-case > .longday {
	margin-left: 95px;
	margin-top: 20px;
}

.story-content-wrap .character-case > .longday img { max-height: 158px; }

.story-content-wrap .end-head {
	font-size: 2.4rem;
	font-weight: var(--Bold);
	line-height: 2.1;
	margin-top: 42px;
	text-align: center;
}

.story-return-top-banner {
	display: inline-block;
	margin-bottom: 104px;
	margin-top: 64px;
}

.story-return-top-banner a {
	align-items: center;
	background: rgba(255, 255, 255, 0.702) url(../../img/75th/icon-arrow.svg) no-repeat calc(100% - 28px) center;
	border: 2px solid #fff;
	border-radius: 100vw;
	box-shadow: 0 0 6px rgba(154,154,154,.2);
	display: flex;
	font-weight: var(--Bold);
	gap: 16px;
	justify-content: center;
	min-height: 74px;
	min-width: 320px;
	padding: 10px 64px;
}

@media (max-width: 1099px) {

	.story-content-wrap { padding: 0; }

	.story-content-inner {
		margin-top: 0;
		padding: 11.194vw 4.975vw;
	}

	.story-content-wrap .main-head {
		font-size: 3.98vw;
		line-height: 1.8;
		margin-bottom: 6.219vw;
	}

	.story-content-wrap .text-content > p:nth-of-type(n+2),
	.story-content-wrap .main-section p { margin-top: 5.97vw; }

	.story-content-wrap .main-section { margin-top: 5.97vw; }

	.story-content-wrap .main-section h4 {
		font-size: 3.98vw;
		margin-bottom: 4.726vw;
	}

	.story-content-wrap .main-section figure {
		border-radius: 3.98vw;
		padding: 5.721vw 3.98vw;
	}

	.story-content-wrap .main-section figure .logo { max-width: 33.831vw; }

	.story-content-wrap .main-section figure .character img { max-height: 36.333vw; }

	.story-content-wrap .main-section figure figcaption {
		bottom: -7.667vw;
		font-size: 2.736vw;
		right: 0;
	}

	.story-content-wrap .main-section figure:has(figcaption) + p { margin-top: 13.333vw; }

	.story-content-wrap .character-case {
		border: none;
		border-radius: 0;
		flex-wrap: wrap;
		margin-top: 5.97vw;
		padding: 0;
	}

	/* .story-content-wrap .character-case > div { width: 50%; } */

	.story-content-wrap .character-case > .thinking { margin-top: 1.866vw; }
	.story-content-wrap .character-case > .thinking img { max-height: 25.622vw; }

	.story-content-wrap .character-case > .success { margin-left: 10.821vw; }
	.story-content-wrap .character-case > .success img { max-height: 29.229vw; }

	.story-content-wrap .character-case > .exploring {
		margin-left: -3.731vw;
		margin-top: -1.617vw;
		width: 100%;
	}

	.story-content-wrap .character-case > .exploring img { max-height: 27.239vw; }

	.story-content-wrap .character-case > .relaxed {
		margin-left: -2.333vw;
		margin-top: -1.99vw;
	}

	.story-content-wrap .character-case > .relaxed img { max-height: 21.766vw; }

	.story-content-wrap .character-case > .longday {
		margin-left: 16.652vw;
		margin-top: -1.99vw;
	}

	.story-content-wrap .character-case > .longday img { max-height: 21.766vw; }

	.story-content-wrap .end-head {
		font-size: 3.98vw;
		margin-top: 9.453vw;
	}

	.story-return-top-banner {
		display: block;
		margin: 12.935vw auto;
		max-width: 59.701vw;
	}

	.story-return-top-banner a {
		background-position: calc(100% - 4.478vw) center;
		background-size: 2.985vw auto;
		gap: 2.488vw;
		min-height: 14.925vw;
		min-width: 100%;
		padding: 1.99vw 11.94vw 1.99vw 5.721vw;
	}
}

