.hero,
.reasons_note {
	background-color: #F7F7F7;
}
.hero {
	margin: 120px auto 170px;
	padding: 40px 0;
	position: relative;
}
.hero_wrap {
	position: relative;
	display: flex;
	gap: 80px;
}
.hero_bgtext {
	position: absolute;
	bottom: 0;
	left: 50%;
	transform: translateX(-50%);
	width: 100%;
}
.hero_copy {
	padding: 80px 0 216px;
	width: 60%;
}
.hero_title {
	margin-bottom: 40px;
	font-weight: 700;
	font-size: 25px;
	color: #202733;
}
.hero_lead,
.reasons_text,
.reasons_note p,
.terms_intro p {
	line-height: 200%;
}
.hero_lead {
	margin-bottom: 20px;
}
.hero_image {
	max-width: 450px;
	width: 40%;
	position: relative;
}
.hero_image img {
	border-radius: 40px;
}
.reasons {
	margin-bottom: 100px;
}
.reasons_list {
	display: flex;
	gap: 40px;
}
.reasons_item {
	width: calc((100% - 80px) / 3);
}
.reasons_media,
.reasons_textblock {
	margin-bottom: 20px;
}
.reasons_title {
	margin-bottom: 20px;
	font-weight: 700;
	font-size: 23px;
	display: flex;
	align-items: center;
	justify-content: flex-start;
}
.reasons_text {
	font-weight: 500;
}
.reasons_note {
	border-radius: 6px;
	padding: 20px;
	font-size: 14px;
}
.reasons_note_title {
	margin-bottom: 10px;
	font-weight: 700;
}
.reasons_note_text {
	font-weight: 500;
}
.reasons_note_text span {
	display: block;
	position: relative;
	padding-left: 1em;
}
.reasons_note_text span::before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}
.terms {
	margin-bottom: 160px;
}
.terms_intro {
	margin-bottom: 80px;
}
.terms_intro p {
	font-weight: 500;
}
.terms_content {
	width: calc(100vw - 80px);
	height: 439px;
	border-radius: 48px;
	background: #0C14FE;
	display: flex;
	align-items: center;
	justify-content: center;
	flex-direction: column;
	background-image: url(/shared/img/service-list/reuse/sales-form/contact-bg.png);
	background-size: auto 100%;
	background-repeat: no-repeat;
	background-position: center left;
	margin-left: calc(620px - 50vw);
	text-align: center;
	color: #FFFFFF;
	position: relative;
	overflow: hidden;
}
.terms_content::before {
	content: "";
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	background-color: #0C14FE4D;
}
.terms_panel {
	position: relative;
}
.terms_headline {
	font-weight: 700;
	font-size: 30px;
	line-height: 175%;
	margin-bottom: 24px;
}
.terms_headline span {
	border-bottom: 1px solid #FFFFFF;
}
.terms_actions p {
	font-weight: 700;
	font-size: 25px;
	margin-bottom: 16px;
}
.terms_actions a {
	min-width: 445px;
	font-size: 18px;
	padding: 0 80px;
	margin: auto;
}
.terms_badges {
	margin-bottom: 24px;
}
.terms_badges li {
	font-weight: 700;
	font-size: 35px;
	text-align: left;
	padding-left: 52px;
	position: relative;
}
.terms_badges li::before {
	position: absolute;
	content: "";
	background-image: url(/shared/img/service-list/sales/partner/ico-check.svg);
	width: 30px;
	height: 30px;
	background-size: 100%;
	background-position: center;
	background-repeat: no-repeat;
	top: 50%;
	left: 0;
	transform: translateY(-50%);
}
@media (max-width: 1200px) {
	.terms_content {
		width: 100%;
		height: auto;
		margin-left: 0;
		padding: 32px 0 40px;
	}
}
@media (max-width: 1000px) {
	.terms_content {
		background-image: url(/shared/img/service-list/reuse/sales-form/contact-bg-sp.png);
		background-size: auto;
		background-position: bottom left;
	}
	.hero_wrap {
		gap: 40px;
	}
	.hero_copy {
		padding: 0 0 216px;
	}
	.reasons_list {
		gap: 20px;
	}
	.reasons_item {
		width: calc((100% - 40px) / 3);
	}
}
@media (max-width: 767px) {
	.hero {
		margin: 68px auto 80px;
		padding: 20px 0 12px;
	}
	.hero_wrap {
		flex-direction: column-reverse;
	}
	.hero_bgtext {
		width: calc(100% + 40px);
	}
	.hero_copy {
		padding: 0 0 88px;
		width: 100%;
	}
	.hero_title {
		margin-bottom: 12px;
		font-size: 18px;
		text-align: center;
	}
	.hero_lead,
	.reasons_text,
	.terms_intro p {
		font-size: 13px;
	}
	.hero_image {
		width: 100%;
		max-width: 100%;
	}
	.hero_image img {
		border-radius: 20px;
	}
	.reasons {
		margin-bottom: 80px;
	}
	.reasons_list {
		flex-direction: column;
		gap: 52px;
	}
	.reasons_item {
		width: 100%;
	}
	.reasons_note {
		padding: 16px 20px;
	}
	.terms {
		margin-bottom: 120px;
	}
	.terms_intro {
		margin-bottom: 40px;
	}
	.terms_content {
		height: 462px;
		justify-content: flex-start;
		padding-top: 40px;
		margin: auto;
	}
	.terms_headline {
		font-size: 18px;
		margin-bottom: 20px;
	}
	.terms_actions {
		max-width: 295px;
		width: 100%;
	}
	.terms_actions p {
		font-size: 18px;
	}
	.terms_actions a {
		min-width: 0;
		height: 66px;
		padding: 0;
	}
	.terms_badges {
		margin-bottom: 32px;
	}
	.terms_badges li {
		font-size: 18px;
		padding-left: 46px;
		margin-bottom: 20px;
	}
	.terms_badges li::before {
		top: 0;
		transform: none;
	}
}