@charset "UTF-8";
/*----------
	早わかり
----------*/
/* セクション */
.overview-section {
	margin-top: -50px;
	padding: 60px 20px 130px;
	position: relative;
	overflow: hidden;
}
.overview-section--odd {
	border-top-left-radius: 50px;
	background-color: #E7EAEB;
}
.overview-section--odd .overview-section__entitle {
	right: 0;
}
.overview-section--even {
	border-top-right-radius: 50px;
	background-color: #fff;
}
.overview-section--even .overview-section__entitle {
	left: 0;
}
.overview-section__entitle {
	width: 52px;
	position: absolute;
	top: 5px;
}
@media (min-width: 1100px), print {
	.overview-section {
		padding: 120px 40px 220px;
		margin-top: -100px;
	}
	.overview-section--odd {
		border-top-left-radius: 100px;
	}
	.overview-section--even {
		border-top-right-radius: 100px;
	}
	.overview-section__entitle {
		width: 104px;
	}
}

/* サブタイトル */
.overview-subtitle {
	position: relative;
	margin-bottom: 30px;
	padding-bottom: 24px;
	text-align: center;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.4;
	color: #002F7C;
}
.overview-subtitle::after {
	content: "";
	display: block;
	width: 80px;
	height: 4px;
	position: absolute;
	bottom: 0;
	left: 50%;
	translate: -50% 0;
	background-color: #00A3E2;
}
.overview-subtitle > span {
	display: block;
	margin-bottom: 8px;
	font-family: "Zalando Sans Expanded", sans-serif;
	font-size: 1.4rem;
	line-height: 1;
	color: #00A3E2;
}
.overview-subtitle > span > em {
	margin-top: 4px;
	display: block;
	font-style: normal;
	font-size: 4rem;
}
@media (min-width: 1100px), print {
	.overview-subtitle {
		margin-bottom: 50px;
		padding-bottom: 34px;
		font-size: 4rem;
	}
	.overview-subtitle > span {
		margin-bottom: 16px;
		font-size: 2rem;
	}
	.overview-subtitle > span > em {
		font-size: 6rem;
	}
}

/* lead */
.overview-lead {
	text-align: center;
	font-weight: bold;
	font-size: 2.4rem;
	line-height: 1.8;
	color: #fff;
}
.overview-lead > em {
	display: inline-block;
	margin: 5px 0;
	padding: 0 8px;
	background-color: #002F7C;
	font-style: normal;
}
@media (min-width: 768px) {
	.overview-lead > br.u-ir-spbr + em {
		padding-left: 0;
		margin-left: -8px;
	}
}
@media (min-width: 1100px), print {
	.overview-lead {
		font-size: 4rem;
	}
	.overview-lead > em {
		padding: 0 20px;
	}
	.overview-lead > br.u-ir-spbr + em {
		padding-left: 0;
		margin-left: -20px;
	}
}

/* KV */
.overview-kv {
	margin-top: 80px;
	position: relative;
}
.overview-kv::after {
	content: "";
	display: block;
	max-width: 1280px;
	width: calc(100% - 40px);
	height: 100%;
	border-radius: 24px;
	position: absolute;
	top: 0;
	left: 50%;
	z-index: -1;
	translate: -50% 0;
	background-color: #002F7C;
	background-image: linear-gradient(110deg, #1C75CF 0%, #033587 100%);
}
.overview-kv__upper {
	max-width: 320px;
	margin-inline: auto;
	padding: 50px 20px 20px;
	position: relative;
}
.overview-kv__upper::before {
	content: "";
	width: 100px;
	height: 86px;
	position: absolute;
	top: -35px;
	left: 0;
	background: url("../img/pages/ir/overview/kv-img1.png") no-repeat center/contain;
}
.overview-kv__upper > p {
	text-align: center;
	font-weight: 600;
	font-size: 2rem;
	line-height: 1.8;
	color: #fff;
}
.overview-kv__upper > p > em {
	display: inline-block;
	margin: 8px 5px;
	padding: 0 5px;
	background-color: #fff;
	font-style: normal;
	color: #002F7C;
}
.overview-kv__lower {
	max-width: 320px;
	margin-inline: auto;
	padding: 20px 40px 86px;
	position: relative;
}
.overview-kv__lower::before {
	content: "";
	width: 120px;
	height: 92px;
	position: absolute;
	bottom: -30px;
	right: 0;
	background: url("../img/pages/ir/overview/kv-img2.png") no-repeat center/contain;
}
.overview-kv__lower > p {
	text-align: center;
	font-weight: 600;
	font-size: 1.4rem;
	line-height: 1.8;
	color: #fff;
}
.overview-kv__bg {
	width: 100%;
	height: 160px;
	background: transparent url("../img/pages/ir/overview/kv-bg.webp") repeat-x center left/auto 100%;
	animation: linear 80s infinite overview-kv-bgsp;
}
@media (min-width: 768px) {
	.overview-kv__upper {
		max-width: 1000px;
		padding: 80px 0 50px;
	}
	.overview-kv__upper::before {
		width: 225px;
		height: 192px;
		top: -56px;
		left: 0;
	}
	.overview-kv__upper > p {
		font-size: 3.4rem;
	}
	.overview-kv__upper > p > em {
		margin: 16px 10px;
		padding: 0 10px;
	}
	.overview-kv__lower {
		max-width: 1000px;
		margin-inline: auto;
		padding: 50px 0 86px;
	}
	.overview-kv__lower::before {
		width: 276px;
		height: 209px;
		bottom: -80px;
		right: -20px;
	}
	.overview-kv__lower > p {
		font-size: 2rem;
	}
	.overview-kv__bg {
		height: 280px;
		animation: linear 80s infinite overview-kv-bgpc;
	}
}

@keyframes overview-kv-bgsp {
	from {
		background-position-x: 0;
	}
	to {
		background-position-x: 1828px;
	}
}
@keyframes overview-kv-bgpc {
	from {
		background-position-x: 0;
	}
	to {
		background-position-x: 3200px;
	}
}
/* POINT1 */
.overview-p1-1 > li {
	padding: 20px;
	border-radius: 8px;
	background-color: #fff;
}
.overview-p1-1 > li > figure {
	display: block;
	max-width: 280px;
	margin: 0 auto;
}
.overview-p1-1 > li > figure > figcaption {
	margin-top: 12px;
	text-align: center;
	font-weight: bold;
	font-size: 1.6rem;
	color: #002F7C;
}
@media (min-width: 1100px), print {
	.overview-p1-1 > li {
		padding: 40px 60px;
	}
	.overview-p1-1 > li > figure > figcaption {
		font-size: 2.4rem;
	}
}

.overview-p1-2 {
	margin-top: 30px;
}
.overview-p1-2__inner {
	margin-inline: -20px;
	overflow-x: auto;
}
.overview-p1-2__inner > figure {
	display: block;
	width: 640px;
	margin-inline: auto;
	padding: 0 20px 15px 20px;
}
.overview-p1-2__note {
	margin-top: 30px;
	text-align: center;
	font-size: 1.2rem;
}
.overview-p1-2__note > span {
	display: inline-block;
	min-height: 20px;
	padding-left: 25px;
	background: url("../img/pages/ir/flick.svg") no-repeat left center/20px;
}
@media (min-width: 1100px), print {
	.overview-p1-2 {
		margin-top: 50px;
	}
	.overview-p1-2__inner {
		margin-inline: 0;
		overflow-x: visible;
	}
	.overview-p1-2__inner > figure {
		padding: 0;
		width: 100%;
	}
	.overview-p1-2__note {
		display: none;
	}
}

.overview-p1-3 dt {
	position: relative;
	padding-right: 110px;
}
.overview-p1-3__image {
	width: 95px;
	position: absolute;
	bottom: 20px;
	right: 0;
}

/* POINT2 */
.overview-p2-1 {
	max-width: 840px;
	margin: 50px auto 0;
}
.overview-p2-1 > li > dl > dt {
	padding: 10px;
	border-radius: 8px;
	position: relative;
	text-align: center;
	font-weight: 600;
	font-size: 1.4rem;
	line-height: 1.4;
	background-color: #002F7C;
	color: #fff;
}
.overview-p2-1 > li > dl > dt::after {
	content: "";
	display: block;
	width: 24px;
	height: 16px;
	position: absolute;
	bottom: -15px;
	left: calc(50% - 12px);
	background-color: #002F7C;
	clip-path: polygon(0 0, 100% 0, 50% 100%);
}
.overview-p2-1 > li > dl > dd {
	margin-top: 26px;
	padding: 10px 20px 30px;
	border: 1px solid #C4CDDD;
	border-radius: 8px;
	background-color: #fff;
}
.overview-p2-1 > li > dl > dd > figure {
	display: block;
	max-width: 310px;
	margin: 0 auto;
}
.overview-p2-1 > li > dl > dd > figure > figcaption {
	margin-top: 12px;
	text-align: center;
	font-weight: 600;
	font-size: 1.6rem;
	color: #002F7C;
}
@media (min-width: 1100px), print {
	.overview-p2-1 > li > dl > dt {
		padding-block: 16px;
		font-size: 2rem;
	}
	.overview-p2-1 > li > dl > dd {
		padding: 20px 40px 36px;
	}
	.overview-p2-1 > li > dl > dd > figure > figcaption {
		font-size: 1.8rem;
	}
}

/* POINT3 */
.overview-p3-1 > li > figure {
	display: block;
}
.overview-p3-1 > li > figure > img {
	display: block;
	border-radius: 8px;
}
.overview-p3-1 > li > figure > figcaption {
	margin-bottom: 20px;
	font-weight: 600;
	font-size: 1.6rem;
	line-height: 1.4;
}

/* POINT4 */
.overview-p4-1 {
	max-width: 1000px;
	margin: 40px auto 0;
}
@media (min-width: 1100px), print {
	.overview-p4-1 {
		margin-top: 60px;
	}
}

/* POINT45*/
#point5 {
	padding-bottom: 80px;
}
#point5 .inner::before {
	content: "";
	display: block;
	width: 1px;
	height: calc(100% + 140px);
	border-left: 1px dotted #002F7C;
	position: absolute;
	left: 0%;
	top: -60px;
}
@media (min-width: 1100px), print {
	#point5 .inner::before {
		height: calc(100% + 200px);
		top: -120px;
	}
}

.overview-p5-1 > li {
	padding-left: 28px;
	position: relative;
}
.overview-p5-1 > li + li {
	margin-top: 20px;
}
.overview-p5-1 > li::before {
	content: "";
	width: 100%;
	height: 2px;
	position: absolute;
	top: 50%;
	left: 0;
	background-color: #002F7C;
}
.overview-p5-1 > li::after {
	content: "";
	display: block;
	width: 16px;
	height: 16px;
	border-radius: 50%;
	position: absolute;
	top: calc(50% - 8px);
	left: -7px;
	background-color: #002F7C;
}
.overview-p5-1 > li > dl {
	padding: 20px 20px 30px;
	border: 1px solid #C4CDDD;
	border-radius: 16px;
	position: relative;
	z-index: 1;
	background-color: #fff;
}
.overview-p5-1 > li > dl > dt {
	font-weight: bold;
	font-size: 2rem;
	line-height: 1.4;
}
.overview-p5-1 > li > dl > dt > span {
	display: inline-block;
	margin-bottom: 8px;
	padding-right: 14px;
	border-right: 1px solid #C4CDDD;
	font-family: "Zalando Sans Expanded", sans-serif;
	font-size: 2.6rem;
	line-height: 1;
	color: #002F7C;
}
.overview-p5-1 > li > dl > dt > span.overview-p5-1__future {
	font-family: "Noto Sans JP", sans-serif;
	margin-bottom: 14px;
}
.overview-p5-1 > li > dl > dt > em {
	display: block;
	font-style: normal;
}
.overview-p5-1 > li > dl > dd {
	margin-top: 18px;
}
@media (min-width: 1100px), print {
	.overview-p5-1 > li {
		padding-left: 137px;
	}
	.overview-p5-1 > li + li {
		margin-top: 48px;
	}
	.overview-p5-1 > li::after {
		width: 20px;
		height: 20px;
		top: calc(50% - 10px);
		left: -10px;
	}
	.overview-p5-1 > li > dl {
		padding: 48px;
	}
	.overview-p5-1 > li > dl > dt {
		display: flex;
		justify-content: flex-start;
		align-items: center;
		font-size: 3.2rem;
		gap: 40px;
	}
	.overview-p5-1 > li > dl > dt > span {
		margin-bottom: 0;
		padding-right: 40px;
		font-size: 5rem;
	}
	.overview-p5-1 > li > dl > dt > span.overview-p5-1__future {
		font-size: 3.6rem;
		margin-bottom: 0;
	}
	.overview-p5-1 > li > dl > dd {
		margin-top: 28px;
	}
}

.overview-company {
	padding-block: 70px;
	background: url("../img/pages/ir/overview/company-bg-sp.webp") no-repeat center bottom/cover;
}
.overview-company__text {
	text-align: center;
	font-weight: 500;
	font-size: 1.6rem;
	line-height: 1.6;
	color: #fff;
	text-shadow: 0 0 20px rgba(0, 0, 0, 0.8);
}
.overview-company__lead {
	text-align: center;
	margin-block: 26px;
}
.overview-company__lead > em {
	display: inline-block;
	margin-inline: 10px;
	padding: 0 5px;
	background-color: #fff;
	font-style: normal;
	font-weight: bold;
	font-size: 2.4rem;
	color: #002F7C;
}
@media (min-width: 768px) {
	.overview-company {
		background-image: url("../img/pages/ir/overview/company-bg-pc.webp");
	}
}
@media (min-width: 1100px), print {
	.overview-company {
		padding-block: 130px;
	}
	.overview-company__text {
		font-size: 2rem;
	}
	.overview-company__lead {
		margin-block: 40px;
	}
	.overview-company__lead > em {
		margin-inline: 20px;
		padding: 0 28px;
		font-size: 4rem;
	}
}
/*# sourceMappingURL=overview.css.map */
