.p-mv {
	position: relative;
}
.p-mv:before {
	content: '';
	position: absolute;
	top: 0;
	right: 0;
	left: 0;
	height: calc(100% + 594px);
	margin-inline: auto;
	background-image: linear-gradient(180deg, #deebfc, #fff);
	z-index: -1;
}
@media (min-width: 48em) {
	.p-mv:before {
		height: calc(100% + 282px);
	}
}
.p-mv__inner {
	padding-top: 78px;
}
@media (min-width: 48em) {
	.p-mv__inner {
		display: grid;
		grid-template-areas: 'blank title img' 'blank works img' 'blank btn img' 'blank a img';
		grid-template-columns: 102px 660px 1fr;
		align-items: start;
		max-width: 1512px;
		padding-top: 80px;
		margin-inline: auto;
	}
}
@media (min-width: 48em) {
	.p-mv__title {
		grid-area: title;
		padding-top: 45px;
	}
}
.p-mv__title-line1 {
	display: block;
	width: -moz-fit-content;
	width: fit-content;
	padding-left: 9px;
	margin-inline: auto;
	font-size: 1.8rem;
	font-weight: 700;
	text-align: center;
	letter-spacing: 0.02em;
}
@media (min-width: 48em) {
	.p-mv__title-line1 {
		padding-left: 0;
		margin-inline: 0;
		font-size: 3.2rem;
		text-align: left;
		letter-spacing: 0;
	}
}
.p-mv__title-line1 > span {
	font-size: 2.6rem;
	color: var(--c-blue);
}
@media (min-width: 48em) {
	.p-mv__title-line1 > span {
		font-size: 4.2rem;
	}
}
.p-mv__title-line2 {
	display: block;
	width: 355px;
	padding-left: 20px;
	margin: 8px auto 0;
	box-sizing: content-box;
}
@media (min-width: 48em) {
	.p-mv__title-line2 {
		width: 636px;
		padding-left: 3px;
		margin: 18px 0 0;
	}
}
.p-mv__img {
	position: relative;
	margin-top: -2.1333333333vw;
	z-index: -1;
}
@media (min-width: 48em) {
	.p-mv__img {
		grid-area: img;
		height: 640px;
		margin-top: 0;
		margin-left: -138px;
		clip-path: polygon(296px 0%, 100% 0, 100% 100%, 0% 100%);
	}
	.p-mv__img img {
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}
}
@media (min-width: 94.5em) {
	.p-mv__img {
		min-width: calc(50vw + 132px);
	}
}
.p-mv__works {
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	gap: 7px;
	max-width: 375px;
	padding-inline: 16px;
	margin-inline: auto;
	margin-top: -36px;
}
@media (min-width: 48em) {
	.p-mv__works {
		grid-area: works;
		gap: 15px;
		padding-inline: 0;
		padding-left: 6px;
		width: 570px;
		max-width: none;
		margin-inline: 0;
		margin-top: 20px;
		box-sizing: content-box;
	}
}
.p-mv__works-item {
	filter: drop-shadow(0px 0px 12px rgba(89, 168, 255, 0.5));
}
.p-mv__btn {
	display: grid;
	grid-template-columns: auto 20px;
	align-items: center;
	justify-content: center;
	gap: 14px;
	width: calc(100% - 40px);
	min-height: 56px;
	padding-left: 8px;
	margin: 24px auto 0;
	font-size: 1.8rem;
	font-weight: 800;
	color: #fff;
	background-color: #00cca3;
	border-radius: 12px;
	box-shadow: 2px 2px #006268;
	transform: translate(-2px, -2px);
}
@media (min-width: 48em) {
	.p-mv__btn {
		grid-area: btn;
		grid-template-columns: auto 38px;
		gap: 18px;
		width: -moz-fit-content;
		width: fit-content;
		padding-right: 16px;
		padding-left: 32px;
		font-size: 3rem;
		min-height: 87px;
		margin: 32px 0 0;
		border: 2px solid #00cca3;
		box-shadow: 3px 3px #006268;
		border-radius: 20px;
		transform: translate(-2px);
		transition-property: color, background-color, box-shadow, transform;
		transition-duration: 0.3s;
		transition-timing-function: ease;
	}
	.p-mv__btn:hover {
		color: #00cca3;
		background-color: #fff;
		box-shadow: 0 0 #006268;
		transform: translate(3px, 3px);
	}
}
.p-problem {
	margin-top: 60px;
}
.p-problem__inner {
	padding-inline: 20px;
	padding-bottom: 42px;
}
@media (min-width: 48em) {
	.p-problem__inner {
		padding-inline: 0;
		padding-bottom: 156px;
	}
}
.p-problem__title {
	font-size: 2.4rem;
	font-weight: 800;
	text-align: center;
	color: var(--c-blue);
}
@media (min-width: 48em) {
	.p-problem__title {
		margin-top: 74px;
		font-size: 4.2rem;
	}
}
.p-problem__list {
	display: grid;
	gap: 12px;
	margin-top: 32px;
}
@media (min-width: 48em) {
	.p-problem__list {
		grid-template-columns: repeat(3, 1fr);
		gap: 15px;
		max-width: 1280px;
		padding-inline: 40px;
		margin-inline: auto;
		margin-top: 60px;
	}
}
.p-problem__item {
	padding-bottom: 28px;
	background-color: #fff;
	border-radius: 8px;
	box-shadow: 0 7px 40px #bed8f8e6;
}
@media (min-width: 48em) {
	.p-problem__item {
		padding-bottom: 44px;
	}
}
.p-problem__item-img {
	height: 150px;
}
@media (min-width: 48em) {
	.p-problem__item-img {
		height: 220px;
	}
}
.p-problem__item-img img {
	height: 100%;
	-o-object-fit: contain;
	object-fit: contain;
}
.p-problem__item-title {
	margin-top: 15px;
	font-size: 2rem;
	font-weight: 700;
	color: var(--c-blue);
	text-align: center;
}
@media (min-width: 48em) {
	.p-problem__item-title {
		margin-top: 18px;
		font-size: 3.2rem;
	}
}
.p-problem__item-text {
	padding-inline: 20px;
	margin-top: 15px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.6;
}
@media (min-width: 48em) {
	.p-problem__item-text {
		padding-inline: 35px;
		margin-top: 18px;
		font-size: 1.8rem;
		line-height: 1.5;
	}
}
.p-problem__block {
	margin-top: 80px;
}
@media (min-width: 48em) {
	.p-problem__block {
		display: flex;
		max-width: 1512px;
		margin-inline: auto;
		margin-top: 142px;
	}
	.p-problem__block:nth-child(odd) {
		padding-left: 102px;
	}
	.p-problem__block:nth-child(odd) .p-problem__content {
		padding-top: 62px;
		padding-right: 30px;
	}
	.p-problem__block:nth-child(odd) .p-problem__block-img {
		margin-left: auto;
		clip-path: polygon(191px 0%, 100% 0, 100% 100%, 0% 100%);
	}
	.p-problem__block:nth-child(2n) .p-problem__content {
		order: 2;
		padding-top: 66px;
		padding-right: 40px;
		margin-left: 52px;
	}
	.p-problem__block:nth-child(2n) .p-problem__block-img {
		order: 1;
		clip-path: polygon(0% 0%, calc(100% - 191px) 0, 100% 100%, 0% 100%);
	}
}
.p-problem__block + .p-problem__block {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-problem__block + .p-problem__block {
		margin-top: 120px;
	}
}
@media (min-width: 48em) {
	.p-problem__content {
		max-width: 620px;
		box-sizing: content-box;
	}
}
.p-problem__heading {
	font-size: 2.6rem;
	font-weight: 800;
	color: var(--c-blue);
	line-height: 1.4;
}
@media (min-width: 48em) {
	.p-problem__heading {
		font-size: 3.8rem;
		line-height: 1.5;
	}
}
.p-problem__text {
	margin-top: 15px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.8;
}
@media (min-width: 48em) {
	.p-problem__text {
		margin-top: 28px;
		font-size: 2.4rem;
	}
}
.p-problem__block-img {
	margin: 20px -20px 0;
}
@media (min-width: 48em) {
	.p-problem__block-img {
		height: 412px;
		margin: 0;
	}
	.p-problem__block-img img {
		height: 100%;
		-o-object-fit: cover;
		object-fit: cover;
	}
}
.p-solution {
	position: relative;
	padding-top: 72px;
	padding-bottom: 52px;
	color: #fff;
	background-image: linear-gradient(to bottom, #004fce, #2f97ff);
}
@media (min-width: 48em) {
	.p-solution {
		padding-top: 124px;
		padding-bottom: 116px;
	}
}
.p-solution:before {
	content: '';
	position: absolute;
	inset: -2px 0 auto;
	aspect-ratio: 146/26;
	width: 146px;
	margin-inline: auto;
	background-color: #fff;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (min-width: 48em) {
	.p-solution:before {
		inset: -4px 0 auto;
		aspect-ratio: 272/50;
		width: 272px;
	}
}
.p-solution__bg-wave {
	position: absolute;
	top: 72px;
	left: 0;
	width: 100%;
	pointer-events: none;
}
@media (min-width: 48em) {
	.p-solution__bg-wave {
		top: 92px;
	}
}
.p-solution__title {
	position: relative;
	font-weight: 800;
	text-align: center;
}
.p-solution__title-line1 {
	display: block;
	font-size: 1.6rem;
	line-height: 1.6;
}
@media (min-width: 48em) {
	.p-solution__title-line1 {
		font-size: 4.2rem;
		line-height: 1.5;
	}
}
.p-solution__title-line1 > span {
	color: var(--c-yellow);
}
.p-solution__title-line2 {
	display: block;
	font-size: 2.5rem;
	line-height: 1.3;
}
@media (min-width: 48em) {
	.p-solution__title-line2 {
		font-size: 4.2rem;
		line-height: 1.5;
	}
}
.p-solution__title-line2 > span {
	font-size: 3.2rem;
	color: var(--c-yellow);
}
@media (min-width: 48em) {
	.p-solution__title-line2 > span {
		font-size: 5.4rem;
	}
}
.p-solution__text {
	position: relative;
	padding-inline: 20px;
	margin-top: 34px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.8;
}
@media (min-width: 48em) {
	.p-solution__text {
		margin-top: 40px;
		font-size: 1.8rem;
		text-align: center;
	}
}
.p-intro {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-intro {
		margin-top: 80px;
	}
}
.p-intro__inner {
	padding-inline: 20px;
}
.p-intro__movie {
	position: relative;
	aspect-ratio: 16/9;
	margin-top: 30px;
}
@media (min-width: 48em) {
	.p-intro__movie {
		width: 1000px;
		margin-inline: auto;
		margin-top: 60px;
	}
}
.p-intro__movie iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	border: none;
}
.p-intro__cta {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-intro__cta {
		margin-top: 72px;
	}
}
.p-feature {
	position: relative;
	margin-top: 50px;
	background-image: linear-gradient(to bottom, #f0f5fa 0px calc(100% - 288px), #fff calc(100% - 288px) 100%);
}
@media (min-width: 48em) {
	.p-feature {
		margin-top: 136px;
		background-image: linear-gradient(to bottom, #f0f5fa 0px calc(100% - 300px), #fff calc(100% - 300px) 100%);
	}
}
.p-feature__inner {
	padding: 50px 20px 0;
}
@media (min-width: 48em) {
	.p-feature__inner {
		max-width: 1280px;
		padding: 80px 40px 0;
		margin-inline: auto;
	}
}
.p-feature__block {
	padding: 20px;
	margin-top: 30px;
	background-color: #fff;
}
@media (min-width: 48em) {
	.p-feature__block {
		padding: 33px 33px 48px;
		margin-top: 60px;
	}
}
.p-feature__block + .p-feature__block {
	margin-top: 20px;
}
@media (min-width: 48em) {
	.p-feature__block + .p-feature__block {
		margin-top: 60px;
	}
}
@media (min-width: 48em) {
	.p-feature__head {
		display: grid;
		grid-template-areas: 'number heading' 'number text';
		grid-template-columns: auto 1fr;
		gap: 20px 40px;
	}
}
.p-feature__number {
	display: flex;
	flex-direction: column;
	align-items: center;
	justify-content: center;
	width: 70px;
	aspect-ratio: 1;
	padding-top: 4px;
	margin-inline: auto;
	color: var(--c-blue);
	text-align: center;
	background-color: #deebfc;
	border-radius: 9999px;
}
@media (min-width: 48em) {
	.p-feature__number {
		grid-area: number;
		width: 120px;
		padding-top: 0;
		padding-bottom: 8px;
	}
}
.p-feature__number-text {
	font-size: 1.4rem;
	font-weight: 700;
	line-height: 1;
}
@media (min-width: 48em) {
	.p-feature__number-text {
		font-size: 2rem;
		line-height: 1.5;
	}
}
.p-feature__number-body {
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 3.6rem;
	font-weight: 500;
	line-height: 1;
}
@media (min-width: 48em) {
	.p-feature__number-body {
		font-size: 4.8rem;
	}
}
.p-feature__heading {
	margin-top: 16px;
	font-size: 2rem;
	font-weight: 800;
	line-height: 1.6;
	letter-spacing: -0.02em;
}
@media (min-width: 48em) {
	.p-feature__heading {
		grid-area: heading;
		margin-top: 4px;
		font-size: 3.2rem;
		line-height: 1.5;
		letter-spacing: 0;
	}
}
.p-feature__text {
	margin-top: 20px;
	font-size: 1.5rem;
	font-weight: 500;
	line-height: 1.7;
	letter-spacing: -0.02em;
}
@media (min-width: 48em) {
	.p-feature__text {
		grid-area: text;
		margin-top: 0;
		font-size: 1.8rem;
		line-height: 1.5;
		letter-spacing: 0;
	}
}
.p-feature__body {
	margin-top: 30px;
}
.p-feature__panel {
	padding: 16px 15px 20px;
	background-color: #f0f5fa;
}
@media (min-width: 48em) {
	.p-feature__panel {
		padding: 30px 43px 40px;
		margin-left: 20px;
		width: 1100px;
	}
}
.p-feature__panel + .p-feature__panel {
	margin-top: 10px;
}
@media (min-width: 48em) {
	.p-feature__panel + .p-feature__panel {
		margin-top: 20px;
	}
}
.p-feature__panel-heading {
	font-size: 1.8rem;
	font-weight: 800;
	color: var(--c-blue);
	text-align: center;
}
@media (min-width: 48em) {
	.p-feature__panel-heading {
		font-size: 2.8rem;
	}
}
.p-feature__panel-img {
	margin-top: 14px;
}
@media (min-width: 48em) {
	.p-feature__panel-img {
		margin-top: 24px;
	}
}
.p-feature__case {
	padding: 24px 15px 20px;
	background-color: #f0f5fa;
}
@media (min-width: 48em) {
	.p-feature__case {
		display: grid;
		grid-template-columns: 1fr 535px;
		gap: 28px;
		align-items: center;
		width: 1100px;
		padding: 30px;
		margin-left: 20px;
	}
}
.p-feature__case + .p-feature__case {
	margin-top: 10px;
}
@media (min-width: 48em) {
	.p-feature__case + .p-feature__case {
		margin-top: 20px;
	}
}
.p-feature__case-content {
	display: grid;
	grid-template-areas: 'heading heading' 'img list';
	gap: 24px 12px;
	grid-template-columns: 51px 1fr;
}
@media (min-width: 48em) {
	.p-feature__case-content {
		grid-template-columns: 74px 1fr;
		grid-template-areas: 'img heading' 'img list' 'img blank';
		gap: 0 30px;
	}
}
.p-feature__case-heading {
	grid-area: heading;
	font-weight: 800;
	line-height: 1.8;
	text-align: center;
}
@media (min-width: 48em) {
	.p-feature__case-heading {
		padding-top: 20px;
		text-align: left;
	}
}
.p-feature__case-heading-line1 {
	display: block;
	font-size: 1.4rem;
	color: var(--c-blue);
	line-height: 1.4;
}
@media (min-width: 48em) {
	.p-feature__case-heading-line1 {
		font-size: 1.8rem;
		line-height: 1.1;
	}
}
.p-feature__case-heading-line1 > span {
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 2.2rem;
}
@media (min-width: 48em) {
	.p-feature__case-heading-line1 > span {
		font-size: 3.2rem;
	}
}
.p-feature__case-heading-line2 {
	font-size: 1.8rem;
}
@media (min-width: 48em) {
	.p-feature__case-heading-line2 {
		font-size: 2.4rem;
	}
}
.p-feature__case-list {
	grid-area: list;
}
@media (min-width: 48em) {
	.p-feature__case-list {
		margin-top: 24px;
	}
}
.p-feature__case-item {
	padding-left: 1em;
	text-indent: -1em;
	font-size: 1.5rem;
	font-weight: 600;
	line-height: 1.5;
}
@media (min-width: 48em) {
	.p-feature__case-item {
		font-size: 1.6rem;
	}
}
.p-feature__case-item + .p-feature__case-item {
	margin-top: 4px;
}
@media (min-width: 48em) {
	.p-feature__case-item + .p-feature__case-item {
		margin-top: 8px;
	}
}
.p-feature__case-person {
	grid-area: img;
	padding-left: 4px;
}
@media (min-width: 48em) {
	.p-feature__case-person {
		padding-left: 0;
	}
}
.p-feature__case-img {
	margin-top: 36px;
}
@media (min-width: 48em) {
	.p-feature__case-img {
		margin-top: 0;
	}
}
.p-feature__cta {
	margin-top: 20px;
}
@media (min-width: 48em) {
	.p-feature__cta {
		margin-top: 72px;
	}
}
.p-case {
	margin-top: 54px;
	background-image: linear-gradient(to bottom, #fffade 0px calc(100% - 288px), #fff calc(100% - 288px) 100%);
}
@media (min-width: 48em) {
	.p-case {
		margin-top: 86px;
		background-image: linear-gradient(to bottom, #fffade 0px calc(100% - 300px), #fff calc(100% - 300px) 100%);
	}
}
.p-case__inner {
	padding-inline: 20px;
	padding-top: 50px;
}
@media (min-width: 48em) {
	.p-case__inner {
		max-width: 1280px;
		padding-inline: 40px;
		padding-top: 80px;
		margin-inline: auto;
	}
}
.p-case__panel {
	padding: 35px 20px 30px;
	margin-top: 40px;
	background-color: #fff;
}
@media (min-width: 48em) {
	.p-case__panel {
		display: grid;
		grid-template-columns: repeat(3, 1fr);
		gap: 14px;
		padding: 40px 45px;
		margin-top: 60px;
	}
}
.p-case__block + .p-case__block {
	margin-top: 54px;
}
@media (min-width: 48em) {
	.p-case__block + .p-case__block {
		margin-top: 0;
	}
}
.p-case__title {
	color: var(--c-blue);
	text-align: center;
}
.p-case__title-line1 {
	display: block;
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 2.2rem;
	font-weight: 600;
	line-height: 1.2;
}
@media (min-width: 48em) {
	.p-case__title-line1 {
		font-size: 3.2rem;
	}
}
.p-case__title-line1 > span {
	font-size: 2.9rem;
}
@media (min-width: 48em) {
	.p-case__title-line1 > span {
		font-size: 4.2rem;
	}
}
.p-case__title-line2 {
	display: block;
	font-size: 2.2rem;
	font-weight: 800;
}
@media (min-width: 48em) {
	.p-case__title-line2 {
		font-size: 3.2rem;
	}
}
.p-case__flow {
	display: grid;
	gap: 48px;
	margin-top: 18px;
}
@media (min-width: 48em) {
	.p-case__flow {
		gap: 50px;
	}
}
.p-case__flow-item {
	position: relative;
	background-color: var(--c-bg);
}
.p-case__flow-item + .p-case__flow-item:before {
	content: '';
	position: absolute;
	top: -32px;
	left: 50%;
	width: 43px;
	height: 18px;
	background-color: var(--c-blue);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	transform: translate(-50%);
}
@media (min-width: 48em) {
	.p-case__flow-item + .p-case__flow-item:before {
		top: -34px;
		width: 52px;
		height: 23px;
	}
}
.p-case__flow-item.issue {
	--c-heading: var(--c-blue);
	--c-bg: #f0f5fa;
}
@media (min-width: 48em) {
	.p-case__flow-item.issue .p-case__content {
		min-height: 158px;
	}
}
.p-case__flow-item.action {
	--c-heading: #09b0de;
	--c-bg: #ebf9f9;
}
@media (min-width: 48em) {
	.p-case__flow-item.action .p-case__content {
		min-height: 266px;
	}
}
.p-case__flow-item.result {
	--c-heading: #ff8d22;
	--c-bg: #f9f9eb;
}
.p-case__heading {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	min-height: 48px;
	padding-right: 10px;
	font-size: 2rem;
	font-weight: 800;
	color: #fff;
	background-color: var(--c-heading);
}
@media (min-width: 48em) {
	.p-case__heading {
		gap: 20px;
		min-height: 60px;
		font-size: 2.8rem;
	}
}
@media (min-width: 48em) {
	.p-case__icon-issue {
		width: 33px;
	}
}
.p-case__content {
	padding: 20px;
	font-size: 1.6rem;
	font-weight: 500;
	line-height: 1.5;
	letter-spacing: -0.01em;
}
@media (min-width: 48em) {
	.p-case__content {
		padding: 25px 31px;
		font-size: 1.8rem;
		letter-spacing: 0;
	}
}
@media (min-width: 48em) {
	.p-case__icon-action {
		width: 39px;
	}
}
.p-case__action-text {
	margin-top: 1.5em;
	color: var(--c-blue);
}
@media (min-width: 48em) {
	.p-case__icon-result {
		width: 27px;
	}
}
.p-case__result-img {
	width: 144px;
	margin: 12px auto 0;
	filter: drop-shadow(0px 0px 16px rgba(248, 200, 127, 0.5));
}
@media (min-width: 48em) {
	.p-case__result-img {
		margin-top: 20px;
		width: 180px;
	}
}
.p-case__cta {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-case__cta {
		margin-top: 72px;
	}
}
.p-reason {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-reason {
		margin-top: 166px;
	}
}
.p-reason__inner {
	position: relative;
	padding-inline: 20px;
}
@media (min-width: 48em) {
	.p-reason__inner {
		padding-inline: 0;
	}
}
.p-reason__bg-wave {
	position: absolute;
	top: 60px;
	left: 0;
	width: 100%;
	z-index: -1;
	opacity: 0.3;
}
@media (min-width: 48em) {
	.p-reason__bg-wave {
		top: -44px;
		opacity: 1;
	}
}
.p-reason__list {
	margin-top: 52px;
}
@media (min-width: 48em) {
	.p-reason__list {
		max-width: 1512px;
		margin-inline: auto;
		margin-top: 60px;
	}
}
@media (min-width: 48em) {
	.p-reason__item {
		display: flex;
	}
	.p-reason__item:nth-child(odd) {
		gap: 105px;
		flex-direction: row-reverse;
		padding-left: 156px;
	}
	.p-reason__item:nth-child(2n) {
		gap: 132px;
		padding-right: 128px;
	}
}
.p-reason__item + .p-reason__item {
	margin-top: 30px;
}
@media (min-width: 48em) {
	.p-reason__item + .p-reason__item {
		margin-top: 80px;
	}
}
.p-reaseon__img {
	aspect-ratio: 335/200;
}
@media (min-width: 48em) {
	.p-reaseon__img {
		flex: 1;
		height: 400px;
		aspect-ratio: auto;
	}
}
.p-reaseon__img img {
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
}
.p-reason__content {
	margin-top: 10px;
}
@media (min-width: 48em) {
	.p-reason__content {
		width: 520px;
		padding-top: 66px;
	}
}
.p-reason__title {
	color: var(--c-blue);
}
.p-reason__title-line1 {
	display: block;
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 2.2rem;
	line-height: 1.4;
	font-weight: 600;
}
@media (min-width: 48em) {
	.p-reason__title-line1 {
		font-size: 3.2rem;
	}
}
.p-reason__title-line1 > span {
	font-size: 2.8rem;
}
@media (min-width: 48em) {
	.p-reason__title-line1 > span {
		font-size: 4.2rem;
	}
}
.p-reason__title-line2 {
	display: block;
	font-size: 2rem;
	font-weight: 800;
}
@media (min-width: 48em) {
	.p-reason__title-line2 {
		margin-top: 14px;
		font-size: 3.2rem;
	}
}
.p-reason__text {
	margin-top: 4px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
}
@media (min-width: 48em) {
	.p-reason__text {
		margin-top: 18px;
		font-size: 1.8rem;
	}
}
.p-flow {
	margin-top: 64px;
	background-color: #f0f5fa;
}
@media (min-width: 48em) {
	.p-flow {
		margin-top: 144px;
	}
}
.p-flow__inner {
	padding: 50px 20px;
}
@media (min-width: 48em) {
	.p-flow__inner {
		max-width: 1280px;
		padding: 80px 40px;
		margin-inline: auto;
	}
}
.p-flow__list {
	display: grid;
	gap: 16px;
	margin-top: 30px;
}
@media (min-width: 48em) {
	.p-flow__list {
		grid-template-columns: repeat(5, 1fr);
		gap: 25px;
		margin-top: 60px;
	}
}
.p-flow__item {
	position: relative;
	display: flex;
	padding: 20px 20px 20px 14px;
	background-color: #fff;
}
@media (min-width: 48em) {
	.p-flow__item {
		display: block;
		padding: 52px 20px 36px;
	}
}
.p-flow__item:before {
	content: '';
	position: absolute;
	top: 100%;
	right: 0;
	left: 0;
	width: 32px;
	aspect-ratio: 32/10;
	margin-inline: auto;
	background-color: #fff;
	clip-path: polygon(0 0, 50% 100%, 100% 0);
}
@media (min-width: 48em) {
	.p-flow__item:before {
		top: 0;
		right: auto;
		bottom: 0;
		left: calc(100% - 1px);
		margin-block: auto;
		margin-inline: 0;
		width: 15px;
		height: 35px;
		aspect-ratio: 15/35;
		clip-path: polygon(0 0, 0 100%, 100% 50%);
	}
}
.p-flow__item:last-child:before {
	content: none;
}
.p-flow__number {
	flex-shrink: 0;
	text-align: center;
	font-family:
		Roboto Condensed,
		sans-serif;
	color: var(--c-blue);
	font-size: 3.6rem;
	line-height: 1;
}
@media (min-width: 48em) {
	.p-flow__number {
		position: absolute;
		top: 14px;
		left: 20px;
		font-size: 4.2rem;
	}
}
.p-flow__number-text {
	font-size: 1.7rem;
}
@media (min-width: 48em) {
	.p-flow__number-text {
		font-size: 2rem;
	}
}
.p-flow__icon {
	flex-shrink: 0;
	width: 70px;
	margin-right: 20px;
}
@media (min-width: 48em) {
	.p-flow__icon {
		width: 112px;
		margin-right: auto;
		margin-left: auto;
	}
}
@media (min-width: 48em) {
	.p-flow__content {
		margin-top: 20px;
	}
}
.p-flow__heading {
	font-size: 1.8rem;
	font-weight: 600;
	color: var(--c-blue);
}
@media (min-width: 48em) {
	.p-flow__heading {
		font-size: 2.4rem;
		text-align: center;
	}
}
.p-flow__text {
	margin-top: 5px;
	font-size: 1.4rem;
	font-weight: 500;
	line-height: 1.8;
}
@media (min-width: 48em) {
	.p-flow__text {
		margin-top: 10px;
		font-size: 1.6rem;
		line-height: 1.5;
	}
}
.p-faq {
	margin-top: 50px;
}
@media (min-width: 48em) {
	.p-faq {
		margin-top: 80px;
	}
}
.p-faq__inner {
	padding-inline: 20px;
	padding-bottom: 68px;
}
@media (min-width: 48em) {
	.p-faq__inner {
		max-width: 1180px;
		padding-inline: 40px;
		padding-bottom: 150px;
		margin-inline: auto;
	}
}
.p-faq__item {
	margin-top: 40px;
}
@media (min-width: 48em) {
	.p-faq__item {
		margin-top: 60px;
	}
}
.p-faq__item + .p-faq__item {
	margin-top: 30px;
}
@media (min-width: 48em) {
	.p-faq__item + .p-faq__item {
		margin-top: 80px;
	}
}
.p-faq__question {
	display: flex;
	gap: 10px;
	padding: 20px;
	color: var(--c-blue);
	background-color: #f0f5fa;
}
@media (min-width: 48em) {
	.p-faq__question {
		gap: 24px;
		padding: 28px 40px;
	}
}
.p-faq__q {
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 2.2rem;
	line-height: 1;
}
@media (min-width: 48em) {
	.p-faq__q {
		font-size: 3.6rem;
	}
}
.p-faq__question-body {
	font-size: 1.8rem;
	font-weight: 500;
	line-height: 1.2444444444;
	letter-spacing: 0.02em;
}
@media (min-width: 48em) {
	.p-faq__question-body {
		font-size: 2.4rem;
		line-height: 1.5;
	}
}
.p-faq__answer {
	display: flex;
	gap: 10px;
	padding-left: 20px;
	margin-top: 14px;
}
@media (min-width: 48em) {
	.p-faq__answer {
		gap: 24px;
		padding-left: 40px;
		margin-top: 22px;
	}
}
.p-faq__a {
	font-family:
		Roboto Condensed,
		sans-serif;
	font-size: 2.2rem;
	line-height: 1;
	color: #00cca3;
}
@media (min-width: 48em) {
	.p-faq__a {
		font-size: 3.6rem;
	}
}
.p-faq__answer-body {
	font-size: 1.4rem;
	line-height: 1.6;
}
@media (min-width: 48em) {
	.p-faq__answer-body {
		font-size: 1.6rem;
		line-height: 1.75;
	}
}
.p-bottom-cta {
	color: #fff;
	background-image: linear-gradient(to bottom, #004fce, #2f97ff);
}
@media (min-width: 48em) {
	.p-bottom-cta {
		display: flex;
		flex-direction: row-reverse;
		justify-content: space-between;
		align-items: center;
	}
}
.p-bottom__cta-img {
	pointer-events: none;
}
@media (min-width: 48em) {
	.p-bottom__cta-img {
		width: 29.7619047619%;
	}
}
.p-bottom-cta__content {
	padding-bottom: 34px;
	margin-top: 18px;
}
@media (min-width: 48em) {
	.p-bottom-cta__content {
		padding-bottom: 0;
		margin-inline: -100px;
		margin-top: 0;
	}
}
.p-bottom-cta__title {
	font-weight: 700;
	text-align: center;
}
.p-bottom-cta__title-line1 {
	display: block;
	font-size: 1.8rem;
	line-height: 1.6;
}
@media (min-width: 48em) {
	.p-bottom-cta__title-line1 {
		font-size: 2.8rem;
	}
}
.p-bottom-cta__title-line2 {
	display: block;
	font-size: 2.6rem;
}
@media (min-width: 48em) {
	.p-bottom-cta__title-line2 {
		font-size: 4.2rem;
	}
}
.p-bottom-cta__btn {
	position: relative;
	display: grid;
	grid-template-columns: auto 20px;
	align-items: center;
	justify-content: center;
	gap: 14px;
	width: calc(100% - 80px);
	min-height: 56px;
	padding-left: 8px;
	margin: 48px auto 0;
	font-size: 1.8rem;
	font-weight: 800;
	color: #fff;
	background-color: #00cca3;
	border-radius: 12px;
	box-shadow: 2px 2px #006268;
	transform: translate(-2px, -2px);
}
@media (min-width: 48em) {
	.p-bottom-cta__btn {
		grid-template-columns: auto 38px;
		gap: 18px;
		width: -moz-fit-content;
		width: fit-content;
		min-height: 87px;
		padding-right: 48px;
		padding-left: 62px;
		margin: 76px auto 0;
		border: 2px solid #00cca3;
		font-size: 3rem;
		box-shadow: 3px 3px #006268;
		border-radius: 20px;
		transition-property: color, background-color, box-shadow, transform;
		transition-duration: 0.3s;
		transition-timing-function: ease;
	}
	.p-bottom-cta__btn:hover {
		color: #00cca3;
		background-color: #fff;
		box-shadow: 0 0 #006268;
		transform: translate(3px, 3px);
	}
	.p-bottom-cta__btn:hover .p-bottom-cta__fukidasi {
		--color: #fff;
		--bg: #00cca3;
	}
}
.p-bottom-cta__fukidasi {
	--color: #00cca3;
	--bg: #fff;
	position: absolute;
	top: -26px;
	right: 0;
	left: 0;
	width: calc(100% - 40px);
	padding-block: 4px;
	margin-inline: auto;
	font-size: 1.5rem;
	text-align: center;
	color: var(--color);
	background-color: var(--bg);
	border-radius: 9999px;
	filter: drop-shadow(0px 3px 0px rgba(0, 0, 0, 0.2));
}
@media (min-width: 48em) {
	.p-bottom-cta__fukidasi {
		top: -36px;
		width: -moz-fit-content;
		width: fit-content;
		padding: 8px 33px 7px 40px;
		font-size: 2rem;
		filter: drop-shadow(0px 4px 0px rgba(0, 0, 0, 0.2));
		transition-property: color, background-color;
		transition-duration: 0.3s;
		transition-timing-function: ease;
	}
}
.p-bottom-cta__fukidasi:before {
	content: '';
	position: absolute;
	top: calc(100% - 2px);
	left: 50%;
	width: 20px;
	height: 9px;
	background-color: var(--bg);
	clip-path: polygon(0 0, 50% 100%, 100% 0);
	transform: translate(-50%);
}
@media (min-width: 48em) {
	.p-bottom-cta__fukidasi:before {
		width: 28px;
		height: 12px;
		transition: background-color 0.3s ease;
	}
}
