body {
	font-family: noto-sans-cjk-jp, sans-serif;
	letter-spacing: 0.07em;
}

.p-favour {
	background-color: #DCEBEB;
	padding-bottom: 7.8125rem;
	padding-top: 3.375rem;
	position: relative;
	z-index: 1;
}

.p-favour__blocks {
	margin-top: 4.125rem;
}

.p-favour__block {
	background-color: #fff;
	border-radius: 0.9375rem;
	padding: 2.0625rem 1.25rem;
	position: relative;
}

.p-favour__block + .p-favour__block {
	margin-top: 3.125rem;
}

.p-favour__subtitle {
	left: 50%;
	position: absolute;
	top: -1.75rem;
	transform: translateX(-50%);
	white-space: nowrap;
}

.p-favour__wrap {
	align-items: center;
	display: grid;
	gap: 1.25rem;
	grid-template-columns: 7.25rem 1fr;
}

.p-favour__bigText {
	font-size: 1rem;
	font-weight: bold;
	line-height: 1.5;
	text-align: center;
}

.p-favour__text {
	margin-top: 1.5rem;
}

.p-favour__block.--bottom {
	margin-top: 3.125rem;
}

.p-favour__bg1 {
	bottom: -3.125rem;
	position: absolute;
	width: 24.375rem;
}

.p-favour__bg2 {
	bottom: max(-14vw, -16rem);
	left: 0;
	position: absolute;
	width: 100%;
}

.p-favour__btn {
	height: 7.5rem;
	margin-inline: auto;
	margin-top: 5.9375rem;
	max-width: 22.5rem;
	position: relative;
	z-index: 1;
}

.p-state {
	padding-bottom: 5.5rem;
	padding-top: 3.6875rem;
}

.p-state__slider {
	margin-inline: auto;
	margin-top: 2.1875rem;
	max-width: 18.75rem;
	width: 100%;
}

.p-state__card {
	margin: 0 0.5625rem;
	width: 18.75rem;
}

@media screen and (min-width: 768px) {

.p-favour {
	padding-bottom: 21.875rem;
	padding-top: 8.125rem;
}

.p-favour__blocks {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 4.625rem;
}

.p-favour__block {
	padding: 4.375rem 3.625rem 3.75rem;
}

.p-favour__block + .p-favour__block {
	margin-top: 0;
}

.p-favour__wrap {
	display: block;
}

.p-favour__wrap img {
	margin: 0 auto;
	width: 12.8125rem;
}

.p-favour__bigText {
	font-size: 1.625rem;
	letter-spacing: 0.105em;
}

.p-favour__text {
	margin-top: 1.875rem;
}

.p-favour__block.--bottom {
	margin-inline: auto;
	margin-top: 4.4375rem;
	max-width: 68.25rem;
	padding: 6.0625rem 8.125rem 6.5rem;
}

.p-favour__btn {
	height: 15.625rem;
	margin-top: 10.9375rem;
	max-width: 47.5rem;
}

.p-state {
	padding-bottom: 13.375rem;
	padding-top: 7.625rem;
}

.p-state__slider {
	display: grid;
	gap: 1.875rem;
	grid-template-columns: repeat(3, 1fr);
	margin-top: 6.25rem;
	max-width: 81.25rem;
}

.p-state__card {
	margin: 0;
	width: 100%;
}

}


/*# sourceMappingURL=guide.css.map */
