.npb-why-nikasaan {
	position: relative;
	width: 100%;
	overflow: visible;
	background: linear-gradient(90deg, #e63d24 0%, #cf1d47 34%, #2245a1 100%);
	color: #fff;
	box-sizing: border-box;
	font-family: inherit;
}

.npb-why-nikasaan *,
.npb-why-nikasaan *::before,
.npb-why-nikasaan *::after {
	box-sizing: inherit;
}

.npb-why-nikasaan__curve {
	position: absolute;
	top: -42px;
	right: 0;
	z-index: 1;
}

.npb-why-nikasaan__inner {
	position: relative;
	z-index: 2;
	width: min(calc(100% - 32px), 77rem);
	margin-inline: auto;
	padding: 40px 0 48px;
}

.npb-why-nikasaan__title {
	margin: 0 0 32px;
	color: #fff;
	font-family: inherit !important;
	font-style: normal;
	font-size: 24px;
	font-weight: 700;
	line-height: 40px;
	text-align: center;
}

.npb-why-nikasaan__items {
	display: grid;
	grid-template-columns: repeat(4, minmax(0, 1fr));
	gap: 28px;
}

.npb-why-nikasaan__item {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 16px;
	min-width: 0;
}

.npb-why-nikasaan__icon {
	display: block;
	flex: 0 0 48px;
	width: 48px;
	height: 48px;
}

.npb-why-nikasaan__icon svg {
	display: block;
	width: 100%;
	height: 100%;
	fill: none;
	stroke: currentColor;
	stroke-width: 2.4;
	stroke-linecap: round;
	stroke-linejoin: round;
}

.npb-why-nikasaan__item p {
	margin: 0;
	color: inherit;
	font-family: inherit !important;
	font-size: 15px;
	font-weight: 400;
	line-height: 1.7;
}

@media (min-width: 61.25rem) {
	.npb-why-nikasaan {
		width: 100vw;
		margin-inline: calc(50% - 50vw);
	}

	.npb-why-nikasaan__curve {
		right: max(0px, calc((100vw - 73.25rem) / 2));
	}

	.npb-why-nikasaan__inner {
		width: min(calc(100% - 32px), 71.25rem);
	}
}

@media (max-width: 61.24rem) {
	.npb-why-nikasaan {
		width: calc(100% + 32px);
		margin-inline: -16px;
	}

	.npb-why-nikasaan__curve {
		display: none;
	}

	.npb-why-nikasaan__inner {
		width: 100%;
		padding: 18px 24px 32px;
	}

	.npb-why-nikasaan__title {
		margin-bottom: 24px;
		font-size: 22px;
		line-height: 34px;
	}

	.npb-why-nikasaan__items {
		display: flex;
		flex-direction: column;
		gap: 22px;
	}

	.npb-why-nikasaan__item {
		justify-content: flex-start;
		gap: 12px;
	}

	.npb-why-nikasaan__icon {
		flex-basis: 28px;
		width: 28px;
		height: 28px;
	}

	.npb-why-nikasaan__item p {
		font-size: 14px;
		line-height: 1.55;
	}
}
