.p-services-menu {
	--background: #fff;
	position: relative;
	z-index: 1;
}

@media screen and (max-width: 750px) {
	.p-top-services__title__ja {
		font-size: 8vw !important;
	}
}

.p-services-menu__list {
	--row-gap: 1.85em;
	margin-top: 50px;
}

.p-services-main {
	display: grid;
	gap: 160px;
}

@media screen and (max-width: 750px) {
	.p-services-main {
		gap: 80px;
	}
}

.p-services-item__content {
	container-type: inline-size;
	z-index: 1;
}

.p-services-item#po .p-services-item__content h3 {
	margin: 1.5em 0 -1.5em;
}

.p-services-item__heading {
	--icon-size: 1.85em;
	--badge-size: 3.75;
	--badge-font-size: 2.4rem;
	--border-color: #a8dde1;
	--border-width: 4px;
	--border-length: 12px;
	--border-gap: 10px;
	position: relative;
	display: flex;
	flex-wrap: nowrap;
	align-items: center;
	min-height: 2.5em;
	padding-bottom: 0.35em;
	margin-bottom: 0.9em;
	font-family: var(--font-family-kiwi);
	font-size: 3.6rem;
	line-height: 1.2;
}

.p-services-item__heading::after {
	position: absolute;
	bottom: 0;
	left: 0;
	width: 100%;
	height: var(--border-width);
	content: "";
	background: url(../../images/common/line_02.png) repeat-x left bottom;
	background-size: auto 10px !important;
	padding-bottom: 10px;
}

.p-services-item:nth-child(even) .p-services-item__heading::after {
	background: url(../../images/common/line_01.png) repeat-x left bottom;
}

:where([data-theme-color=forest]) .p-services-item__heading {
	--border-color: #c9e1a8;
}

@container (max-width: 500px) {
	.p-services-item__heading {
		font-size: 3rem;
	}
}

@container (max-width: 520px) {
	.p-services-item__heading {
		--badge-font-size: 1.8rem;
		--border-length: 10px;
		--border-gap: 8px;
	}
}

@container (max-width: 425px) {
	.p-services-item__heading {
		--badge-font-size: 1.5rem;
		--badge-size: 3.6;
		--border-width: 3px;
		--border-length: 8px;
		--border-gap: 6px;
		--icon-size: 2em;
		font-size: 2.5rem;
	}
}

.p-services-item__heading__icon {
	width: var(--icon-size);
	height: var(--icon-size);
	margin-right: 0.5em;
	object-fit: contain;
}

.p-services-item__heading__text {
	flex: 1;
}

.p-services-item__heading__badge {
	display: flex;
	align-items: center;
	justify-content: center;
	width: calc(var(--badge-font-size) * var(--badge-size));
	height: calc(var(--badge-font-size) * var(--badge-size));
	margin-top: -0.5em;
	margin-left: 0.1em;
	font-size: var(--badge-font-size);
	line-height: 1.2;
	border-radius: 50%;
	background: linear-gradient(45deg, rgba(89, 194, 225, 0.8) 0%, rgba(192, 215, 110, 0.8) 50%, rgba(89, 194, 225, 0.8) 100%);
	background-size: 200% 200%;
	background-position: right top;
	background-repeat: no-repeat;
	color: #fff;
}

.p-services-item:nth-child(even) .p-services-item__heading__badge {
	background: linear-gradient(45deg, rgba(243, 168, 125, 0.8) 0%, rgba(255, 216, 0, 0.8) 100%);
}

.p-services-item__heading__badge + .p-services-item__heading__badge {
	margin-left: 0.2em;
}

.p-services-item__summery {
	margin-bottom: 1em;
	font-family: var(--font-family-kiwi);
}

.p-services-item:nth-child(odd) .c-check-list__item::before {
	color: #4b8ea1;
}

.p-services-item:nth-child(even) .c-check-list__item::before {
	color: #ff931e;
}

.p-services-item__note {
	margin-top: 1.5em;
	line-height: 1.7;
}

.p-services-item#mouthpiece .p-services-item__note:nth-of-type(2) {
	margin-bottom: 1.5em;
}

.p-services-item__note > li::before {
	font-size: 1.15em;
	line-height: 1.5;
	color: #ff931e;
}

.p-services-item:nth-child(odd) .p-services-item__note > li::before {
	color: #4b8ea1;
}

.p-services-item__more {
	display: flex;
	flex-wrap: wrap;
	gap: 1.75em 2em;
	justify-content: flex-end;
	margin-top: 2em;
}

.p-services-column {
	margin-top: 80px;
    background: linear-gradient(to right, rgb(253, 239, 232) 0%, rgb(255, 248, 209) 100%);
}

.p-services-column + .p-services-column {
	margin-top: 50px;
}

.p-services-column__heading {
	margin-bottom: 1em;
	text-align: center;
}

.p-services-alliance {
	--stripe-width: 18px;
	--color1: #e2f4f6;
	--color2: #eef9f9;
	padding: 80px 0 160px;
	margin-top: 80px;
	background: linear-gradient(45deg, rgb(192, 215, 110) 0%, rgb(89, 194, 225) 100%);
}

@media screen and (max-width: 750px) {
	.p-services-alliance {
		padding-bottom: 80px;
		margin-top: 50px;
	}
}

:where([data-theme-color=forest]) .p-services-alliance {
	--color1: #eaf4dd;
	--color2: #f2f8e8;
}

.p-services-alliance__icon {
	display: block;
	width: 84px;
	margin-right: auto;
	margin-bottom: 2rem;
	margin-left: auto;
}

.p-services-alliance__heading {
	margin-bottom: 1em;
	color: #fff;
	text-align: center;
}

.p-services-alliance__heading > span {
	display: inline-block;
}

.p-services-alliance__intro {
	color: #fff;
	text-align: center;
}

.p-services-alliance__intro > span {
	display: inline-block;
}

.p-services-alliance__list {
	margin-top: 4em;
}

.p-services-alliance__item {
	max-width: 90%;
	overflow: hidden;
	border: 1px solid;
	border-radius: 12px;
}

.p-services-alliance__link {
	display: block;
}

.p-services-main .l-image-block01__image {
	position: relative;
	z-index: 1;
}

.p-services-main .l-image-block01__image::before {
	content: "";
	position: absolute;
	right: -50px;
	bottom: -50px;
	background: url(../../images/top/features/bg_item_03_pc.png);
	background-size: 100% 100%;
	z-index: 2;
	width: 150px;
	aspect-ratio: 946 / 755;
	transform: rotate(120deg);
}

.p-services-main .p-services-item:nth-child(even) .l-image-block01__image::before {
	display: none;	
}

.p-services-column .l-image-block01__image::before {
	display: none;
}
