:root {
	--kugai-yellow: #f8cf1f;
	--kugai-blue: #0d54a7;
	--kugai-orange: #e45f01;
	--kugai-cream: #fff5cc;
	--kugai-pale: #fff7d6;
	--kugai-gray: #eef3f5;
	--kugai-text: #111;
	--kugai-muted: #4d4d4d;
	--kugai-white: #fff;
	--kugai-wrap: min(
		var(--wp--style--global--content-size, 1200px),
		calc(100vw - 48px)
	);
	--kugai-wide: min(
		var(--wp--style--global--wide-size, 1400px),
		calc(100vw - 48px)
	);
	--kugai-space-s: 24px;
	--kugai-space-r: 40px;
	--kugai-space-m: 56px;
	--kugai-space-l: 112px;
	--kugai-section-padding-inline: max(24px, calc((100vw - 1120px) / 2));
	--kugai-section-padding-block: 78px;
	--kugai-section-padding-bottom: 92px;
	--kugai-section-heading-margin: 54px;
	--kugai-grid-gap: 30px;
	--kugai-layout-gap: 70px;
	--kugai-layout-gap-lg: 76px;
	--kugai-pattern-stripes-o: url("/wp/wp-content/plugins/onesta/assets/images/decorative/pattern-stripes-o.svg");
	--kugai-pattern-stripes-b: url("/wp/wp-content/plugins/onesta/assets/images/decorative/pattern-stripes-b.svg");
	--kugai-company-pattern: url("/wp/wp-content/plugins/onesta/assets/images/decorative/pattern-company.svg");
	--kugai-pattern-cover: center center / cover repeat;
	--kugai-font-sans:
		"Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo,
		sans-serif;
	--kugai-font-latin: "Outfit", "Noto Sans JP", sans-serif;
}

@media (max-width: 900px) {
	:root {
		--kugai-wrap: min(
			var(--wp--style--global--content-size, 1200px),
			calc(100vw - 48px)
		);
		--kugai-wide: min(
			var(--wp--style--global--wide-size, 1400px),
			calc(100vw - 48px)
		);
		--kugai-space-s: 20px;
		--kugai-space-r: 32px;
		--kugai-space-m: 48px;
		--kugai-space-l: 96px;
		--kugai-section-padding-inline: 24px;
		--kugai-section-padding-block: 96px;
		--kugai-section-padding-bottom: 110px;
		--kugai-section-heading-margin: 52px;
		--kugai-grid-gap: 24px;
		--kugai-layout-gap: 42px;
		--kugai-layout-gap-lg: 42px;
	}
}

@media (max-width: 560px) {
	:root {
		--kugai-wrap: min(
			var(--wp--style--global--content-size, 1200px),
			calc(100vw - 28px)
		);
		--kugai-wide: min(
			var(--wp--style--global--wide-size, 1400px),
			calc(100vw - 28px)
		);
		--kugai-space-s: 16px;
		--kugai-space-r: 28px;
		--kugai-space-m: 40px;
		--kugai-space-l: 80px;
		--kugai-section-padding-inline: 18px;
		--kugai-section-padding-block: 72px;
		--kugai-section-padding-bottom: 76px;
		--kugai-section-heading-margin: 42px;
		--kugai-grid-gap: 18px;
		--kugai-layout-gap: 32px;
		--kugai-layout-gap-lg: 32px;
	}
}

.kugai-top-page {
	background: var(--kugai-white);
	color: var(--kugai-text);
	font-family: var(--kugai-font-sans);
	line-height: 1.75;
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	overflow: clip;
	scroll-behavior: smooth;
}

.kugai-service-detail-page,
.kugai-service-index-page {
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	overflow: clip;
	background: var(--kugai-gray);
	color: var(--kugai-text);
	font-family: var(--kugai-font-sans);
	line-height: 1.8;
}

.kugai-service-detail-page
	:where(.wp-block-group, .wp-block-image, p, h1, h2, h3, ul),
.kugai-service-index-page
	:where(.wp-block-group, .wp-block-image, p, h1, h2, h3, ul) {
	margin-block: 0;
}

.kugai-service-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 455px;
	overflow: hidden;
	background: var(--kugai-blue);
}

.kugai-service-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;

	.wp-block-image,
	img {
		display: block;
		width: 100%;
		height: 100%;
	}

	img {
		object-fit: cover;
		object-position: center;
	}
}

.kugai-service-detail-page--maintenance .kugai-service-hero__media img {
	object-position: center 47%;
}

.kugai-service-detail-page--civil .kugai-service-hero__media img {
	object-position: center 50%;
}

.kugai-service-detail-page--equipment .kugai-service-hero__media img {
	object-position: center 34%;
}

.kugai-service-hero__band {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: calc(100% - 155px);
	min-height: 180px;
	margin-top: 18px;
	padding: 34px 120px 40px 24px;
	background: rgba(13, 84, 167, 0.88);
	clip-path: polygon(
		0 0,
		calc(100% - 190px) 0,
		calc(100% - 84px) 100%,
		0 100%
	);
	text-align: center;

	&::after {
		position: absolute;
		top: 0;
		right: -155px;
		width: 185px;
		height: 100%;
		background: rgba(13, 84, 167, 0.88);
		content: "";
		clip-path: polygon(26% 0, 100% 0, 100% 100%, 0 100%);
	}
}

.kugai-service-hero__copy {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 10px;
	justify-items: center;
	width: min(980px, calc(100vw - 320px));
	margin-inline: auto;
	color: var(--kugai-white);

	.kugai-eyebrow {
		color: var(--kugai-white);
		font-size: 22px;
		font-weight: 800;
		letter-spacing: 0;
		line-height: 1;
	}

	h1 {
		color: var(--kugai-yellow);
		font-size: clamp(42px, 4.1vw, 72px);
		font-weight: 400;
		letter-spacing: 0;
		line-height: 1.15;
	}
}

@media (max-width: 900px) {
	.kugai-service-hero {
		min-height: 360px;
	}

	.kugai-service-hero__band {
		width: 100%;
		min-height: 150px;
		margin-top: 0;
		padding: 28px 24px 32px;
		clip-path: none;

		&::after {
			display: none;
		}
	}

	.kugai-service-hero__copy {
		width: 100%;
		max-width: 640px;

		.kugai-eyebrow {
			font-size: 18px;
		}

		h1 {
			font-size: clamp(32px, 9vw, 48px);
			line-height: 1.2;
		}
	}
}

@media (min-width: 901px) {
	.kugai-service-hero::after {
		position: absolute;
		top: calc(50% - 86px);
		right: 0;
		z-index: 1;
		width: 240px;
		height: 180px;
		background: rgba(13, 84, 167, 0.88);
		content: "";
		clip-path: polygon(0 0, 100% 0, 100% 100%, 177px 100%);
		pointer-events: none;
	}

	.kugai-service-hero__band {
		width: 100%;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);

		&::after {
			display: none;
		}
	}
	.kugai-service-hero__copy {
		gap: 8px;
		width: min(720px, calc(100vw - 520px));

		.kugai-eyebrow {
			font-size: 24px;
			font-weight: 500;
		}

		h1 {
			font-size: clamp(36px, 1.95vw, 50px);
			font-weight: 400;
		}
	}
}

.kugai-service-detail__intro,
.kugai-service-index__intro {
	background: var(--kugai-white);
}

.kugai-service-detail__intro-inner,
.kugai-service-index__intro-inner {
	width: var(--kugai-wrap);
	margin-inline: auto;
	padding: 86px 0 100px;
}

.kugai-service-detail__intro p,
.kugai-service-index__intro p {
	color: #222;
	font-size: clamp(24px, 2vw, 36px);
	font-weight: 400;
	line-height: 2.05;
}

.kugai-service-detail__intro p + p,
.kugai-service-index__intro p + p {
	margin-top: 22px;
}

.kugai-service-detail__works {
	padding: 108px 0 132px;
	background: var(--kugai-gray);
}

.kugai-service-detail__heading {
	display: grid;
	gap: 18px;
	justify-items: center;
	margin-bottom: 96px;
	text-align: center;
}

.kugai-service-detail__heading .kugai-eyebrow {
	color: var(--kugai-blue);
	font-size: 30px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1;
}

.kugai-service-detail__heading h2 {
	color: #222;
	font-size: clamp(36px, 1.95vw, 50px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.25;
}

.kugai-service-detail__items {
	display: grid;
	gap: 82px;
	width: var(--kugai-wrap);
	margin-inline: auto;
}

.kugai-service-detail__item {
	display: grid;
	grid-template-columns: minmax(360px, 436px) minmax(0, 1fr);
	column-gap: 40px;
	align-items: start;

	> .wp-block-image {
		overflow: hidden;
		width: 100%;
		aspect-ratio: 436 / 300;
		border-radius: 22px;
		background: #d8e0e4;

		img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}
}

.kugai-service-detail__body {
	padding-top: 42px;

	h3 {
		position: relative;
		min-height: 72px;
		padding: 18px 54px 18px 86px;
		background: var(--kugai-yellow);
		color: #1f1f1f;
		font-size: clamp(27px, 2.35vw, 38px);
		font-weight: 400;
		line-height: 1.25;

		&::before {
			position: absolute;
			top: 0;
			bottom: 0;
			left: -61px;
			width: 62px;
			background: var(--kugai-yellow);
			content: "";
			clip-path: polygon(100% 0, 100% 100%, 0 100%);
		}
	}

	> p {
		margin-top: 22px;
		color: #3b3b3b;
		font-size: 21px;
		line-height: 1.85;
	}

	.wp-block-list {
		margin-top: 26px;
		padding-left: 1.3em;
		color: #222;
		line-height: 1.65;

		li + li {
			margin-top: 6px;
		}
	}
}

.kugai-service-detail__note {
	position: relative;
	display: flex;
	align-items: center;
	min-height: 60px;
	margin-top: 32px;
	padding: 10px 28px 10px 82px;
	border-radius: 10px;
	background: #d6ebff;
	color: #2d77c8;
	font-size: 28px;
	font-weight: 400;
	line-height: 1.35;

	&::before {
		position: absolute;
		left: 28px;
		display: grid;
		place-items: center;
		width: 34px;
		height: 34px;
		background-image: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-check.svg");
		background-repeat: no-repeat;
		background-size: contain;
		background-position: center;
		content: "";
	}
}

.kugai-service-detail__info-section {
	width: var(--kugai-wrap);
	margin: 116px auto 0;
}

.kugai-service-detail__info-title {
	position: relative;
	margin-bottom: 46px;
	padding-bottom: 24px;
	color: #333;
	font-size: clamp(28px, 2.45vw, 42px);
	font-weight: 400;
	text-align: center;

	&::after {
		position: absolute;
		bottom: 0;
		left: 50%;
		width: 56px;
		height: 4px;
		border-radius: 4px;
		background: var(--kugai-blue);
		content: "";
		transform: translateX(-50%);
	}
}

.kugai-service-detail__info-card {
	padding: 42px 74px;
	background: var(--kugai-white);

	p {
		color: #333;
		font-size: 22px;
		line-height: 2;
	}

	p + p {
		margin-top: 6px;
	}
}

.kugai-site-cta,
.kugai-service-detail__cta {
	position: relative;
	overflow: hidden;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
}

@media (max-width: 900px) {
	.kugai-service-detail__intro-inner,
	.kugai-service-index__intro-inner {
		padding: 58px 0 70px;
	}

	.kugai-service-detail__intro p,
	.kugai-service-index__intro p {
		font-size: clamp(21px, 5.4vw, 30px);
		line-height: 1.85;
	}

	.kugai-service-detail__works {
		padding: 70px 0 84px;
	}

	.kugai-service-detail__heading {
		gap: 12px;
		margin-bottom: 48px;
	}

	.kugai-service-detail__heading .kugai-eyebrow {
		font-size: 22px;
	}

	.kugai-service-detail__heading h2 {
		font-size: clamp(28px, 7vw, 38px);
	}

	.kugai-service-detail__items {
		gap: 56px;
	}

	.kugai-service-detail__item {
		grid-template-columns: 1fr;
		row-gap: 22px;
	}

	.kugai-service-detail__item > .wp-block-image {
		max-width: 100%;
		border-radius: 16px;
	}

	.kugai-service-detail__body {
		width: 100%;
		padding-top: 0;
	}

	.kugai-service-detail__body h3 {
		width: calc(100% - 30px);
		margin-left: 30px;
		min-height: 60px;
		padding: 14px 22px 14px 42px;
		font-size: 26px;
	}

	.kugai-service-detail__body h3::before {
		left: -30px;
		width: 32px;
	}

	.kugai-service-detail__body > p {
		margin-top: 18px;
		font-size: 18px;
		line-height: 1.75;
	}

	.kugai-service-detail__body .wp-block-list {
		margin-top: 20px;
		padding-left: calc(1.3em + 1rem);
		font-size: 16px;
		line-height: 1.7;
	}

	.kugai-service-detail__note {
		min-height: 0;
		margin-top: 24px;
		padding: 14px 18px 14px 56px;
		font-size: 21px;
	}

	.kugai-service-detail__note::before {
		left: 18px;
		width: 26px;
		height: 26px;
	}

	.kugai-service-detail__info-section {
		width: var(--kugai-wrap);
		margin-top: 72px;
	}

	.kugai-service-detail__info-title {
		margin-bottom: 30px;
		padding-bottom: 18px;
		font-size: 30px;
	}

	.kugai-service-detail__info-card {
		padding: 30px 26px;
	}

	.kugai-service-detail__info-card p {
		font-size: 18px;
		line-height: 1.85;
	}
}

@media (max-width: 560px) {
	.kugai-service-hero {
		min-height: 300px;
	}

	.kugai-service-hero__band {
		min-height: 126px;
		padding: 24px 20px 26px;
	}

	.kugai-service-hero__copy .kugai-eyebrow {
		font-size: 15px;
	}

	.kugai-service-hero__copy h1 {
		font-size: 34px;
	}

	.kugai-service-detail__intro-inner,
	.kugai-service-index__intro-inner {
		padding: 44px 0 54px;
	}

	.kugai-service-detail__intro p,
	.kugai-service-index__intro p {
		font-size: 20px;
		line-height: 1.8;
	}

	.kugai-service-detail__intro p + p,
	.kugai-service-index__intro p + p {
		margin-top: 16px;
	}

	.kugai-service-detail__works {
		padding: 54px 0 68px;
	}

	.kugai-service-detail__heading {
		margin-bottom: 38px;
	}

	.kugai-service-detail__heading .kugai-eyebrow {
		font-size: 18px;
	}

	.kugai-service-detail__heading h2 {
		font-size: 28px;
	}

	.kugai-service-detail__items {
		gap: 46px;
	}

	.kugai-service-detail__item {
		row-gap: 18px;
	}

	.kugai-service-detail__item > .wp-block-image {
		border-radius: 12px;
	}

	.kugai-service-detail__body h3 {
		width: calc(100% - 24px);
		margin-left: 24px;
		min-height: 54px;
		padding: 13px 16px 13px 34px;
		font-size: 23px;
		line-height: 1.3;
	}

	.kugai-service-detail__body h3::before {
		left: -24px;
		width: 26px;
	}

	.kugai-service-detail__body > p {
		font-size: 16px;
		line-height: 1.75;
	}

	.kugai-service-detail__body .wp-block-list {
		font-size: 15px;
	}

	.kugai-service-detail__note {
		padding: 13px 16px 13px 50px;
		border-radius: 8px;
		font-size: 18px;
	}

	.kugai-service-detail__note::before {
		left: 16px;
		width: 24px;
		height: 24px;
	}

	.kugai-service-detail__info-section {
		margin-top: 56px;
	}

	.kugai-service-detail__info-title {
		margin-bottom: 24px;
		font-size: 26px;
	}

	.kugai-service-detail__info-card {
		padding: 24px 18px;
	}

	.kugai-service-detail__info-card p {
		font-size: 16px;
		line-height: 1.8;
	}
}

.kugai-service-index__list {
	padding: 100px 0 128px;
	background: var(--kugai-gray);
}

.kugai-service-index__list-inner {
	width: var(--kugai-wrap);
	margin-inline: auto;
}

.kugai-service-index__heading {
	display: grid;
	gap: 12px;
	justify-items: center;
	margin-bottom: 54px;
	text-align: center;
}

.kugai-service-index__heading .kugai-eyebrow {
	color: var(--kugai-blue);
	font-size: 24px;
	font-weight: 900;
}

.kugai-service-index__heading h2 {
	font-size: clamp(32px, 3vw, 48px);
	font-weight: 400;
}

.kugai-service-index__grid {
	.onesta-grid__item {
		display: grid;
		gap: 18px;
		padding: 0 0 30px;
		overflow: hidden;
		border-radius: 8px;
		background: var(--kugai-white);
		color: inherit;
		text-decoration: none;

		&:hover {
			transform: translateY(-4px);
		}
	}

	.wp-block-image {
		aspect-ratio: 436 / 267;
		overflow: hidden;

		img {
			display: block;
			width: 100%;
			height: 100%;
			object-fit: cover;
		}
	}

	h3 {
		padding: 0 28px;
		color: var(--kugai-blue);
		font-size: 24px;
		font-weight: 900;
		line-height: 1.35;
	}

	p {
		padding: 0 28px;
		color: #333;
		font-size: 16px;
		line-height: 1.8;

		&:last-child {
			color: var(--kugai-orange);
			font-weight: 900;
		}
	}
}

.kugai-subpage {
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	overflow: clip;
	background: var(--kugai-white);
	color: var(--kugai-text);
	font-family: var(--kugai-font-sans);
	line-height: 1.8;
}

.kugai-subpage
	:where(
		.wp-block-group,
		.wp-block-image,
		figure,
		p,
		h1,
		h2,
		h3,
		ul,
		dl,
		dt,
		dd
	) {
	margin-block: 0;
}

.kugai-subpage img {
	display: block;
	max-width: 100%;
	height: auto;
}

.kugai-subpage-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 325px;
	overflow: hidden;
	background: var(--kugai-blue);
}

.kugai-subpage-hero__media {
	position: absolute;
	inset: 0;
	z-index: 0;
}

.kugai-subpage-hero__media .wp-block-image,
.kugai-subpage-hero__media img {
	width: 100%;
	height: 100%;
}

.kugai-subpage-hero__media img {
	object-fit: cover;
	object-position: center;
}

.kugai-subpage--projects .kugai-subpage-hero__media img {
	object-position: center 78%;
}

.kugai-subpage--company .kugai-subpage-hero__media img {
	object-position: center 38%;
}

.kugai-subpage--contact .kugai-subpage-hero__media img {
	object-position: center 45%;
}

.kugai-subpage-hero__band {
	position: relative;
	z-index: 1;
	display: grid;
	place-items: center;
	box-sizing: border-box;
	width: 100%;
	min-height: 120px;
	margin-top: 24px;
	padding: 24px 24px 28px;
	background: rgba(13, 84, 167, 0.88);
	clip-path: polygon(
		0 0,
		calc(100% - 345px) 0,
		calc(100% - 168px) 100%,
		0 100%
	);
	text-align: center;
}

.kugai-subpage-hero::after {
	position: absolute;
	right: 0;
	display: none;
	z-index: 1;
	background: rgba(13, 84, 167, 0.88);
	content: "";
	clip-path: polygon(32% 0, 100% 0, 100% 100%, 0 100%);
	pointer-events: none;
}

@media (min-width: 901px) {
	.kugai-subpage-hero::after {
		top: calc(50% - 86px);
		display: block;
		width: 240px;
		height: 180px;
		clip-path: polygon(0 0, 100% 0, 100% 100%, 177px 100%);
	}

	.kugai-subpage--recruit .kugai-subpage-hero__band {
		min-height: 180px;
		margin-top: 18px;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);
	}

	.kugai-subpage--projects .kugai-subpage-hero__band {
		min-height: 180px;
		margin-top: 18px;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);
	}

	.kugai-subpage--company .kugai-subpage-hero__band {
		min-height: 180px;
		margin-top: 18px;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);
	}

	.kugai-subpage--recruit .kugai-subpage-hero__copy .kugai-eyebrow {
		font-size: 24px;
		font-weight: 500;
	}

	.kugai-subpage--recruit .kugai-subpage-hero__copy h1 {
		font-size: clamp(36px, 1.95vw, 50px);
		font-weight: 400;
	}

	.kugai-subpage--contact .kugai-subpage-hero {
		min-height: 455px;
	}

	.kugai-subpage--contact .kugai-subpage-hero__band {
		min-height: 180px;
		margin-top: 18px;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);
	}

	.kugai-subpage--contact .kugai-subpage-hero__copy h1 {
		font-size: clamp(36px, 1.95vw, 50px);
		font-weight: 400;
	}
}

.kugai-subpage-hero__copy {
	display: grid;
	gap: 7px;
	justify-items: center;
	width: min(660px, calc(100vw - 520px));
	color: var(--kugai-white);
}

.kugai-subpage-hero__copy .kugai-eyebrow {
	color: var(--kugai-white);
	font-size: 18px;
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1;
}

.kugai-subpage-hero__copy h1 {
	color: var(--kugai-yellow);
	font-size: clamp(38px, 2.7vw, 54px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.15;
}

.kugai-subpage-section-title {
	position: relative;
	margin-bottom: 84px;
	padding-bottom: 26px;
	color: #333;
	font-size: clamp(30px, 2.2vw, 42px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.35;
	text-align: center;
}

.kugai-subpage-section-title::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 74px;
	height: 5px;
	background: var(--kugai-blue);
	content: "";
	transform: translateX(-50%);
	border-radius: 3px;
}

.kugai-results {
	padding: 72px 0 96px;
	background: linear-gradient(
		var(--kugai-white) 0 170px,
		var(--kugai-gray) 170px 100%
	);
}

.kugai-results::before {
	display: block;
	height: 170px;
	margin-bottom: -170px;
	background: var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover);
	content: "";
	opacity: 0.35;
}

.kugai-results-grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 46px 42px;
	align-items: stretch;
	width: min(1070px, calc(100vw - 96px));
	margin-inline: auto;
}

.kugai-results-card {
	display: grid;
	grid-template-rows: auto minmax(44px, auto) auto;
	align-content: start;
	align-items: start;
	justify-items: center;
	padding: 44px 32px 34px;
	border-radius: 6px;
	background: var(--kugai-white);
	box-shadow: 0 2px 14px rgba(17, 39, 61, 0.08);
}

.kugai-results-card:nth-child(-n + 2) {
	grid-template-rows: auto minmax(44px, auto) 1fr;
	height: 100%;
}

.kugai-results-card__icon {
	width: 86px;
	height: 86px;
	margin-bottom: 22px;
}

.kugai-results-card__icon img {
	width: 100%;
	height: 100%;
	object-fit: contain;
}

.kugai-results-card h3 {
	display: flex;
	align-items: center;
	justify-content: center;
	min-height: 44px;
	margin-bottom: 24px;
	color: #2c78d2;
	font-size: 23px;
	font-weight: 400;
	line-height: 1.35;
	text-align: center;
}

.kugai-results-card__body {
	box-sizing: border-box;
	display: grid;
	align-content: start;
	align-self: stretch;
	width: 100%;
	padding: 24px 28px;
	border-radius: 12px;
	background: #e4f2ff;
	color: #4a5a66;
	font-size: 17px;
	line-height: 2;
}

.kugai-results-card__body ul {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 2px 24px;
	padding-left: 1em;
}

.kugai-results-card:nth-child(1) .kugai-results-card__body ul,
.kugai-results-card:nth-child(3) .kugai-results-card__body ul,
.kugai-results-card:nth-child(4) .kugai-results-card__body ul {
	grid-template-columns: 1fr;
}

.kugai-news-list {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 44px 28px;
	width: min(1080px, calc(100vw - 96px));
	margin-inline: auto;
	padding: 84px 0 128px;
	background: var(--kugai-white);
}

.kugai-news-card {
	display: grid;
	gap: 12px;
}

.kugai-news-card__image {
	overflow: hidden;
	aspect-ratio: 360 / 220;
	background: #f7f7f7;
}

.kugai-news-card__image img {
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.kugai-news-card__meta {
	color: #999;
	font-size: 14px;
	letter-spacing: 0.08em;
	line-height: 1.4;
}

.kugai-news-card__title,
.kugai-news-card__title a {
	color: #555;
	font-size: 18px;
	font-weight: 400;
	line-height: 1.55;
	text-decoration: none;
}

.kugai-news-card__title a:hover {
	color: var(--kugai-orange);
}

.kugai-news-pager {
	grid-column: 1 / -1;
	display: flex;
	gap: 34px;
	justify-content: center;
	align-items: center;
	margin-top: 48px;
	color: #8a99a8;
	font-size: 24px;
}

.kugai-news-pager :where(a, span) {
	color: inherit;
	text-decoration: none;
}

.kugai-news-pager [aria-current="page"],
.kugai-news-pager a:hover {
	color: var(--kugai-blue);
}

.kugai-news-pager__next {
	font-size: 38px;
	line-height: 0.7;
}

.kugai-news-detail {
	padding: 62px 0 72px;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
}

.kugai-news-detail-card {
	box-sizing: border-box;
	width: min(1068px, calc(100vw - 96px));
	min-height: 920px;
	margin-inline: auto;
	padding: 62px 68px 84px;
	border-radius: 16px;
	background: var(--kugai-gray);
}

.kugai-news-detail-card h2 {
	margin-bottom: 8px;
	color: #333;
	font-size: clamp(24px, 2vw, 34px);
	font-weight: 400;
	line-height: 1.45;
}

.kugai-news-detail-card time {
	display: block;
	margin-bottom: 26px;
	color: #9ba3aa;
	font-size: 16px;
	letter-spacing: 0.08em;
}

.kugai-news-detail-card figure {
	overflow: hidden;
	margin-bottom: 34px;
	border-radius: 10px;
}

.kugai-news-detail-card img {
	width: 100%;
	aspect-ratio: 920 / 540;
	object-fit: cover;
}

.kugai-news-detail-card p {
	color: #424242;
	font-size: 18px;
	line-height: 1.9;
}

.kugai-news-detail-back {
	margin-top: 48px;
	text-align: center;
}

.kugai-news-detail-back a {
	color: #4b9be7;
	font-size: 17px;
	text-decoration: none;
}

.kugai-news-detail-back a::after {
	display: inline-grid;
	place-items: center;
	width: 18px;
	height: 18px;
	margin-left: 10px;
	border: 2px solid currentColor;
	border-radius: 50%;
	content: "›";
	font-size: 15px;
	line-height: 1;
}

.kugai-company-message {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(320px, 400px);
	gap: 64px;
	align-items: end;
	width: min(1180px, calc(100vw - 96px));
	margin-inline: auto;
	padding: 78px 0 86px;
	background: var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover);
}

.kugai-company-message h2 {
	margin-bottom: 28px;
	color: #2d78d4;
	font-size: clamp(28px, 2.4vw, 42px);
	font-weight: 400;
	line-height: 1.65;
}

.kugai-company-message p {
	color: #555;
	font-size: 18px;
	line-height: 2.05;
}

.kugai-company-message__signature {
	display: flex;
	align-items: center;
	gap: 44px;
	width: calc(100% + 90px);
	margin-top: 28px;
	padding: 18px 44px;
	background: var(--kugai-yellow);
	clip-path: polygon(0 0, calc(100% - 92px) 0, 100% 100%, 0 100%);
}

.kugai-company-message__signature span {
	font-size: 22px;
}

.kugai-company-message__signature strong {
	font-size: 38px;
	font-weight: 400;
	letter-spacing: 0.06em;
}

.kugai-company-message__photo {
	overflow: hidden;
	aspect-ratio: 400 / 490;
	background: #ddd;
}

.kugai-company-message__photo img {
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center top;
}

.kugai-company-info {
	padding: 96px 0 104px;
	background: var(--kugai-gray);
}

.kugai-company-profile {
	display: grid;
	gap: 22px;
	width: min(1080px, calc(100vw - 96px));
	margin-inline: auto;
}

.kugai-company-profile__row {
	display: grid;
	grid-template-columns: 180px minmax(0, 1fr);
	gap: 54px;
	align-items: start;
}

.kugai-company-profile dt {
	display: grid;
	place-items: center;
	min-height: 56px;
	padding: 8px 16px;
	background: #a8b3be;
	color: var(--kugai-white);
	font-size: 18px;
	font-weight: 400;
}

.kugai-company-profile dd {
	padding-top: 12px;
	color: #555;
	font-size: 18px;
	line-height: 2;
}

.kugai-company-office {
	display: grid;
	grid-template-columns: minmax(0, 1fr) 260px;
	gap: 60px;
	align-items: center;
	padding-bottom: 44px;
	border-bottom: 1px solid #d7dde2;
}

.kugai-company-office + .kugai-company-office {
	padding-top: 44px;
}

.kugai-company-office figure {
	display: grid;
	justify-items: end;
}

.kugai-company-office img {
	width: 260px;
	height: 136px;
	border-radius: 12px;
	object-fit: cover;
}

.kugai-company-office figcaption {
	margin-top: 10px;
	color: var(--kugai-orange);
	font-size: 13px;
}

.kugai-contact {
	padding: 68px 0 96px;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
}

.kugai-contact-lead {
	width: min(820px, calc(100vw - 48px));
	margin-inline: auto;
	margin-bottom: 46px;
	color: #555;
	font-size: clamp(22px, 2vw, 34px);
	font-weight: 400;
	line-height: 1.75;
	text-align: center;
}

.kugai-contact-form {
	box-sizing: border-box;
	display: grid;
	gap: 24px;
	width: min(1068px, calc(100vw - 96px));
	margin-inline: auto;
	padding: 76px 68px 72px;
	border-radius: 16px;
	background: var(--kugai-gray);
}

.kugai-contact-form__field {
	display: grid;
	gap: 10px;
	color: #5d6871;
	font-size: 18px;
}

.kugai-contact-form span::before {
	display: inline-block;
	width: 28px;
	height: 7px;
	margin-right: 10px;
	border-radius: 999px;
	background: var(--kugai-yellow);
	content: "";
	vertical-align: middle;
}

.kugai-contact-form em {
	display: inline-block;
	margin-left: 10px;
	padding: 2px 10px;
	background: #ff5361;
	color: var(--kugai-white);
	font-size: 12px;
	font-style: normal;
	line-height: 1.4;
}

.kugai-contact-form small {
	display: block;
	margin-top: 2px;
	padding-left: 38px;
	color: #b6c0c9;
	font-size: 14px;
	line-height: 1.4;
}

.kugai-contact-form__control {
	box-sizing: border-box;
	display: block;
	width: min(100%, 740px);
	min-height: 58px;
	padding: 12px 20px;
	border: 1px solid #c8d3dc;
	border-radius: 5px;
	background: var(--kugai-white);
	color: #333;
	font: inherit;
}

.kugai-contact-form__control--textarea {
	width: 100%;
	min-height: 300px;
}

.kugai-contact-form__field--short .kugai-contact-form__control {
	width: min(100%, 400px);
	color: #b3bdc6;
	font-style: normal;
}

.kugai-contact-form button {
	justify-self: center;
	min-width: 350px;
	min-height: 68px;
	margin-top: 28px;
	border: 0;
	border-radius: 999px;
	background: var(--kugai-orange);
	color: var(--kugai-white);
	cursor: pointer;
	font: inherit;
	font-size: 24px;
}

.kugai-contact-form button::after {
	margin-left: 62px;
	content: "›";
	font-size: 42px;
	line-height: 0;
	vertical-align: -4px;
}

.kugai-subpage-cta,
.kugai-site-cta {
	position: relative;
	overflow: hidden;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
}

.kugai-site-cta {
	padding: 0 10%;
}

.kugai-site-header {
	position: sticky;
	z-index: 30;
	top: 0;
	display: grid;
	grid-template-columns: 360px 1fr 220px 260px;
	align-items: stretch;
	min-height: 74px;
	background: #fff;
	border-bottom: 8px solid #f8cf1f;
	box-shadow: 0 1px 0 rgb(0 0 0 / 6%);
	font-family: var(
		--wp--preset--font-family--outfit,
		"Outfit",
		"Noto Sans JP",
		sans-serif
	);

	*,
	*::before,
	*::after {
		box-sizing: border-box;
	}

	a {
		color: inherit;
		text-decoration: none;
	}

	img {
		display: block;
		max-width: 100%;
		height: auto;
	}
}

.kugai-site-header__brand {
	display: flex;
	align-items: center;
	justify-content: center;
	margin: 0;
	padding: 10px 22px;

	a {
		display: flex;
		align-items: center;
		justify-content: center;
	}

	img {
		width: 200px;
	}
}

.kugai-site-header__nav {
	display: flex;
	align-items: center;
	justify-content: flex-end;
	margin: 0;
	padding-right: 32px;
	font-weight: 900;
	line-height: 1.15;

	.wp-block-navigation__container {
		margin: 0;
		padding: 0;
		align-items: center;
		gap: 34px;

		> .wp-block-navigation-submenu {
			display: block;

			> .wp-block-navigation-item__content {
				grid-template-columns: auto auto;
				grid-template-rows: auto auto;
				column-gap: 8px;

				> .wp-block-navigation-item__label,
				> .kugai-site-header__nav-en {
					grid-column: 1;
				}

				&::after {
					grid-column: 2;
					grid-row: 1 / 3;
					align-self: center;
					margin-left: 0;
				}
			}
		}
	}

	.wp-block-navigation-item__content {
		display: grid;
		gap: 5px;
		place-items: center;
		font-size: 17px;
		white-space: nowrap;
	}
}

.kugai-site-header__nav-en {
	color: #9a9a9a;
	font-size: 9px;
	font-weight: 700;
	letter-spacing: 0;
	text-transform: uppercase;
}

.kugai-site-header__phone,
.kugai-site-header__contact {
	display: flex;
	gap: 10px;
	align-items: center;
	justify-content: center;
	margin: 0;
	min-height: 74px;
	font-weight: 900;

	.wp-block-button__link {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 100%;
		min-height: 74px;
		padding: 0 18px;
		border-radius: 0;
		background: transparent;
		color: inherit;
		font: inherit;
	}
}

.kugai-site-header__phone {
	background: #f8cf1f;
	color: #111;
	font-size: 22px;
}

.kugai-site-header__contact {
	background: #0d54a7;
	color: #fff;
	font-size: 16px;
}

@media (max-width: 1320px) {
	.kugai-site-header {
		grid-template-columns: 320px minmax(0, 1fr) 200px 220px;
	}

	.kugai-site-header__brand img {
		width: 180px;
	}

	.kugai-site-header__nav {
		min-width: 0;
	}

	.kugai-site-header__phone {
		font-size: 20px;
	}
}

@media (max-width: 1180px) {
	.kugai-site-header {
		grid-template-columns: 270px 1fr 190px 180px;
	}

	.kugai-site-header__nav {
		padding-right: 18px;
	}

	.kugai-site-header__nav .wp-block-navigation__container {
		gap: 18px;
	}

	.kugai-site-header__phone {
		font-size: 19px;
	}
}

@media (max-width: 900px) {
	.kugai-site-header {
		grid-template-columns: 178px minmax(0, 1fr) 150px 136px;
		min-height: 56px;
		border-bottom-width: 6px;
	}

	.kugai-site-header__brand {
		justify-content: center;
		padding: 8px 14px;
	}

	.kugai-site-header__brand img {
		width: 138px;
	}

	.kugai-site-header__nav {
		justify-content: flex-end;
		padding-right: 10px;
	}

	.kugai-site-header__nav .wp-block-navigation__container {
		gap: 13px;
	}

	.kugai-site-header__nav .wp-block-navigation-item__content {
		gap: 3px;
		font-size: 12px;
	}

	.kugai-site-header__nav-en {
		font-size: 7px;
	}

	.kugai-site-header__nav .wp-block-navigation__responsive-container-open {
		display: none;
	}

	.kugai-site-header__phone,
	.kugai-site-header__contact {
		display: flex;
		min-height: 56px;
	}

	.kugai-site-header__phone .wp-block-button__link,
	.kugai-site-header__contact .wp-block-button__link {
		min-height: 56px;
		padding: 0 8px;
	}

	.kugai-site-header__phone {
		font-size: 15px;
	}

	.kugai-site-header__contact {
		font-size: 12px;
	}
}

@media (max-width: 640px) {
	.kugai-site-header {
		grid-template-columns: 1fr auto;
		min-height: 74px;
		border-bottom-width: 8px;
	}

	.kugai-site-header__brand {
		z-index: 100001;
		justify-content: flex-start;
		padding: 10px 22px;
	}

	.kugai-site-header__nav {
		justify-content: flex-end;
		padding-right: 16px;
	}

	.kugai-site-header__nav .wp-block-navigation__responsive-container-open {
		display: flex;
		align-items: center;
		justify-content: center;
		width: 54px;
		height: 54px;
		border-radius: 50%;
		background: #f8cf1f;
		color: #111;
	}

	.kugai-site-header__phone,
	.kugai-site-header__contact {
		position: fixed;
		z-index: 100001;
		display: flex;
		left: 24px;
		bottom: calc(-80px - env(safe-area-inset-bottom));
		width: min(232px, calc(100vw - 48px));
		max-width: none;
		min-height: 52px;
		border-radius: 999px;
		box-shadow: 0 12px 26px rgb(0 0 0 / 20%);
		font-size: 15px;
		line-height: 1.1;
		opacity: 0;
		visibility: hidden;
		pointer-events: none;
		transform: translateY(10px);
		transition:
			opacity 0.28s ease,
			transform 0.28s ease,
			visibility 0s linear 0.28s;
	}

	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__phone,
	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__contact {
		opacity: 1;
		visibility: visible;
		pointer-events: auto;
		transform: translateY(0);
		transition-delay: 0s;
	}

	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__phone {
		bottom: calc(84px + env(safe-area-inset-bottom));
	}

	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__contact {
		bottom: calc(22px + env(safe-area-inset-bottom));
	}

	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__phone
		.wp-block-button__link,
	.kugai-site-header__nav:has(.onesta-drawer-toggle:checked)
		~ .kugai-site-header__contact
		.wp-block-button__link {
		min-height: 52px;
		padding: 0 12px;
		border-radius: inherit;
		white-space: nowrap;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__responsive-container-content {
		align-items: stretch;
		justify-content: flex-start;
		padding: 96px 24px 170px;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__container {
		display: flex !important;
		flex-direction: column !important;
		align-items: stretch;
		width: 100%;
		gap: 0 !important;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__container
		> .wp-block-navigation-item {
		display: block;
		width: 100%;
		border-bottom: 1px solid #cfd8e3;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		display: grid;
		place-items: center start !important;
		justify-items: start !important;
		gap: 3px;
		width: 100%;
		min-height: 58px;
		padding: 13px 4px !important;
		color: #111;
		font-size: 18px;
		font-weight: 900;
		line-height: 1.2;
		letter-spacing: 0;
		text-align: left !important;
		white-space: normal;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__container
		> .wp-block-navigation-submenu
		> .wp-block-navigation-item__content {
		padding-right: 42px !important;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.kugai-site-header__nav-en {
		color: #7d8794;
		font-size: 10px;
		line-height: 1;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-submenu {
		position: relative;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-submenu__toggle {
		position: absolute;
		top: 16px;
		right: 2px;
		display: grid;
		place-items: center;
		width: 30px;
		height: 30px;
		margin: 0;
		border: 1px solid #d9e1ea;
		border-radius: 50%;
		color: #0d54a7;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__submenu-container {
		position: static !important;
		display: block;
		visibility: hidden;
		width: 100% !important;
		height: auto;
		max-height: 0;
		min-width: 0 !important;
		margin: 0;
		padding: 0 0 0 14px;
		border: 0;
		border-left: 4px solid transparent;
		background: #f6f9fc;
		box-shadow: none;
		opacity: 0;
		overflow: hidden;
		pointer-events: none;
		transform: none !important;
		transition:
			max-height 0.28s ease,
			opacity 0.2s ease,
			margin-bottom 0.28s ease,
			border-color 0.2s ease,
			visibility 0s linear 0.28s;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation-submenu__toggle[aria-expanded="true"]
		~ .wp-block-navigation__submenu-container {
		visibility: visible;
		max-height: 240px;
		margin-bottom: 8px;
		border-top: 1px solid #cfd8e3;
		border-left-color: #0d54a7;
		opacity: 1;
		pointer-events: auto;
		transition-delay: 0s;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item {
		border-bottom: 1px solid #d6dee8;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item:last-child {
		border-bottom: 0;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container.is-menu-open
		.wp-block-navigation__submenu-container
		.wp-block-navigation-item__content {
		display: flex;
		justify-content: flex-start;
		width: 100%;
		min-height: 44px;
		padding: 10px 12px;
		color: #2f3a45;
		font-size: 15px;
		font-weight: 700;
		line-height: 1.35;
		text-align: left;
		white-space: normal;
	}
}

@media (max-width: 560px) {
	.kugai-site-header__brand img {
		width: 168px;
	}
}

.wp-site-blocks > header .kugai-site-header__contact {
	color: var(--kugai-white);
}

.wp-site-blocks > header .kugai-site-header__contact :where(a, span, svg) {
	color: inherit;
}

@media (min-width: 901px) {
	.kugai-site-header {
		grid-template-columns: 345px minmax(0, 1fr) 220px 200px;
		min-height: 60px;
		border-bottom-width: 6px;
		box-shadow: none;
	}

	.kugai-site-header__brand {
		justify-content: flex-start;
		min-height: 60px;
		padding: 8px 0 8px clamp(48px, 5.6vw, 82px);
	}

	.kugai-site-header__brand img {
		width: clamp(160px, 13vw, 186px);
	}

	.kugai-site-header__nav {
		justify-content: flex-end !important;
		min-height: 60px;
		padding-right: clamp(20px, 2vw, 30px);
	}

	.kugai-site-header__nav .wp-block-navigation__container {
		gap: clamp(22px, 2vw, 32px) !important;
	}

	.wp-block-navigation.kugai-site-header__nav.items-justified-right
		.wp-block-navigation__container
		> .wp-block-navigation-submenu.has-child {
		position: relative;
	}

	.wp-block-navigation.kugai-site-header__nav.items-justified-right
		.wp-block-navigation__container
		> .wp-block-navigation-submenu.has-child
		> .wp-block-navigation__submenu-container {
		left: 50%;
		right: auto;
		border: 0;
		background: var(--kugai-white, #fff);
		transform: translateX(-50%) translateY(8px);
	}

	.wp-block-navigation.kugai-site-header__nav.items-justified-right
		.wp-block-navigation__container
		> .wp-block-navigation-submenu.has-child:hover
		> .wp-block-navigation__submenu-container,
	.wp-block-navigation.kugai-site-header__nav.items-justified-right
		.wp-block-navigation__container
		> .wp-block-navigation-submenu.has-child
		.wp-block-navigation-submenu__toggle[aria-expanded="true"]
		~ .wp-block-navigation__submenu-container {
		width: max-content;
		min-width: 280px;
		max-width: min(360px, calc(100vw - 32px));
		padding: 14px 0;
		box-shadow: 0 12px 28px rgb(0 0 0 / 14%);
		transform: translateX(-50%) translateY(0);
	}

	.wp-block-navigation.kugai-site-header__nav.items-justified-right
		.wp-block-navigation__container
		> .wp-block-navigation-submenu.has-child
		> .wp-block-navigation__submenu-container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		display: flex;
		align-items: center;
		justify-content: flex-start;
		min-height: 48px;
		padding: 13px 24px;
		font-size: inherit;
		line-height: 1.45;
	}

	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content
		> .wp-block-navigation-item__label {
		font-weight: 400;
	}

	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		gap: 3px !important;
		font-size: 18px !important;
		line-height: 1.1;
		letter-spacing: 0.1em;
	}

	.kugai-site-header__nav-en,
	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content
		> .wp-block-navigation-item__label
		+ * {
		font-weight: 700;
	}

	.kugai-site-header__nav-en {
		font-size: 12px;
		line-height: 1;
	}

	.kugai-site-header__phone,
	.kugai-site-header__contact {
		min-height: 60px;
		font-size: 20px;
		line-height: 1.1;
	}

	.kugai-site-header__phone {
		font-size: 20px;
	}

	.kugai-site-header__phone .wp-block-button__link,
	.kugai-site-header__contact .wp-block-button__link {
		gap: 7px;
		min-height: 60px;
		padding: 0 12px;
		white-space: nowrap;
	}

	.kugai-site-header__phone .wp-block-button__link::before,
	.kugai-site-header__contact .wp-block-button__link::before {
		display: block;
		flex: 0 0 auto;
		background-repeat: no-repeat;
		background-position: center;
		background-size: contain;
		content: "";
	}

	.kugai-site-header__phone .wp-block-button__link::before {
		width: 16px;
		height: 25px;
		background-image: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-phone.svg");
	}

	.kugai-site-header__contact .wp-block-button__link::before {
		width: 28px;
		height: 19px;
		background-image: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-mail.svg");
	}
}

body[class*="onesta-drawer-"]
	.kugai-site-header
	.wp-block-navigation__responsive-container
	.wp-block-navigation__responsive-container-content
	.wp-block-navigation__container
	> .wp-block-navigation-item
	> .wp-block-navigation-item__content {
	display: grid;
	gap: 5px;
	place-items: center;
	padding: 0;
	line-height: 1.15;
	letter-spacing: 0.1em;
	text-align: center;
	white-space: nowrap;
}

@media (min-width: 901px) {
	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container
		.wp-block-navigation__responsive-container-content
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		gap: 3px;
		font-size: 18px;
		line-height: 1.1;
	}
}

@media (min-width: 901px) and (max-width: 1180px) {
	.kugai-site-header {
		grid-template-columns: 220px minmax(0, 1fr) 220px 200px;
	}

	.kugai-site-header__brand {
		padding-left: 28px;
	}

	.kugai-site-header__brand img {
		width: 150px;
	}

	.kugai-site-header__nav {
		padding-right: 8px;
	}

	.kugai-site-header__nav .wp-block-navigation__container {
		gap: 14px !important;
	}
}

@media (min-width: 901px) and (max-width: 1000px) {
	.kugai-site-header {
		grid-template-columns: 190px minmax(0, 1fr) 200px 180px;
	}

	.kugai-site-header__brand {
		padding-left: 20px;
	}

	.kugai-site-header__brand img {
		width: 138px;
	}

	.kugai-site-header__nav .wp-block-navigation__container {
		gap: 12px !important;
	}

	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		font-size: 16px !important;
		letter-spacing: 0.1em;
	}

	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content
		> .wp-block-navigation-item__label {
		font-weight: 400;
	}

	.kugai-site-header__nav-en,
	.kugai-site-header__nav
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content
		> .wp-block-navigation-item__label
		+ * {
		font-weight: 700;
	}

	.kugai-site-header__nav-en {
		font-size: 10px;
	}

	.kugai-site-header__phone,
	.kugai-site-header__contact {
		font-size: 18px;
	}

	.kugai-site-header__phone .wp-block-button__link,
	.kugai-site-header__contact .wp-block-button__link {
		gap: 6px;
		padding: 0 10px;
	}

	.kugai-site-header__phone .wp-block-button__link::before {
		width: 14px;
		height: 22px;
	}

	.kugai-site-header__contact .wp-block-button__link::before {
		width: 24px;
		height: 17px;
	}
}

body {
	font-family: var(--kugai-font-sans);
	letter-spacing: 0;
}

h1,
h2,
h3,
h4,
h5,
h6,
.wp-block-post-title,
.wp-block-query-title,
.wp-block-heading {
	font-family: var(--kugai-font-sans);
	letter-spacing: 0;
}

.wp-block-post-content > .kugai-top-page,
.entry-content > .kugai-top-page {
	width: calc(
		100% + var(--wp--style--root--padding-left, 0px) +
			var(--wp--style--root--padding-right, 0px)
	);
	max-width: none;
	margin-right: calc(
		var(--wp--style--root--padding-right, 0px) * -1
	) !important;
	margin-left: calc(
		var(--wp--style--root--padding-left, 0px) * -1
	) !important;
}

body.top .wp-site-blocks > main,
body.top .entry-content {
	max-width: none !important;
	margin: 0 !important;
	padding: 0 !important;
}

.kugai-top-page *,
.kugai-top-page *::before,
.kugai-top-page *::after {
	box-sizing: border-box;
}

.kugai-top-page :where(img) {
	display: block;
	max-width: 100%;
	height: auto;
}

.kugai-top-page :where(.wp-block-image) {
	margin: 0;
}

.kugai-top-page :where(a) {
	color: inherit;
	text-decoration: none;
}

.kugai-top-page :where(h1, h2, h3) {
	border: 0 !important;
	text-decoration: none !important;
}

.kugai-top-page :where(h1, h2, h3)::before,
.kugai-top-page :where(h1, h2, h3)::after {
	display: none !important;
	content: none !important;
}

.kugai-top-page :focus-visible {
	outline: 3px solid var(--kugai-orange);
	outline-offset: 4px;
}

.kugai-button {
	display: inline-flex;
	gap: 18px;
	align-items: center;
	justify-content: center;
	min-width: 270px;
	min-height: 64px;
	padding: 0 34px;
	border: 0;
	border-radius: 999px;
	background: var(--kugai-orange);
	color: var(--kugai-white);
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
	transition:
		transform 0.18s ease,
		filter 0.18s ease;
}

.kugai-button:hover {
	filter: brightness(1.04);
	transform: translateY(-2px);
}

.kugai-button--blue {
	background: var(--kugai-blue);
}

.kugai-button--outline {
	background: var(--kugai-white);
	color: var(--kugai-orange);
}

.wp-block-button.kugai-button,
.onesta-button-wrapper.kugai-button {
	min-width: 0;
	min-height: 0;
	padding: 0;
	background: transparent;
	transition: none;
}

.wp-block-button.kugai-button .wp-block-button__link,
.onesta-button-wrapper.kugai-button .onesta-button {
	display: inline-flex;
	gap: 18px;
	align-items: center;
	justify-content: center;
	min-width: 270px;
	min-height: 64px;
	padding: 0 34px;
	border: 0;
	border-radius: 999px;
	background: var(--kugai-orange);
	color: var(--kugai-white);
	font-size: 22px;
	font-weight: 900;
	line-height: 1.2;
	transition:
		transform 0.18s ease,
		filter 0.18s ease;
}

.wp-block-button.kugai-button--blue .wp-block-button__link,
.onesta-button-wrapper.kugai-button--blue .onesta-button {
	background: var(--kugai-blue);
}

.wp-block-button.kugai-button--outline .wp-block-button__link,
.onesta-button-wrapper.kugai-button--outline .onesta-button {
	background: var(--kugai-white);
	color: var(--kugai-orange);
}

.kugai-hero {
	position: relative;
	display: grid;
	height: auto;
	min-height: 0;
	padding-bottom: 40px;
	background: var(--kugai-yellow);
}

.kugai-hero__media {
	position: relative;
	height: 730px;
	overflow: hidden;
}

.kugai-hero__media .wp-block-image {
	height: 100%;
}

.kugai-top-page .kugai-hero__photo,
.kugai-top-page .kugai-hero__photo img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
	object-position: center;
}

.kugai-hero__content {
	position: absolute;
	right: 0;
	left: 0;
	bottom: 46px;
	z-index: 2;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(
			0,
			calc(clamp(700px, 77vw, 1100px) + clamp(24px, 4vw, 64px))
		);
	box-sizing: border-box;
	width: 100%;
	padding-right: clamp(24px, 4vw, 64px);
	color: var(--kugai-blue);
}

.kugai-hero__content::before {
	grid-column: 2;
	grid-row: 1;
	position: absolute;
	top: -24px;
	right: clamp(-64px, -4vw, -24px);
	left: -200px;
	z-index: -1;
	height: 270px;
	background: var(--kugai-yellow);
	content: "";
	clip-path: polygon(28% 0, 100% 0, 100% 100%, 0 100%);
}

.kugai-hero__ribbon {
	position: absolute;
	left: 0;
	top: -22px;
	z-index: 1;
	width: clamp(580px, calc(810px - (1800px - 100vw) * 0.333), 810px);
	margin-left: 0;
}

.kugai-hero__ribbon img {
	width: 100%;
}

.kugai-hero__copy {
	grid-column: 2;
	grid-row: 1;
	position: relative;
	z-index: 1;
	box-sizing: border-box;
	width: min(clamp(700px, 77vw, 1100px), 100%);
	padding-left: clamp(220px, 18vw, 250px);
}

.kugai-eyebrow {
	margin: 0 0 6px;
	color: var(--kugai-blue);
	font-family: var(--kugai-font-latin);
	font-size: 12px;
	font-weight: 900;
	letter-spacing: 0;
	line-height: 1.2;
	text-transform: uppercase;
}

.kugai-hero h2 {
	margin: 0 0 14px;
	color: var(--kugai-blue);
	font-size: clamp(28px, 2.45vw, 36px);
	font-weight: 900;
	line-height: 1.25;
}

.kugai-hero__copy > p:not(.kugai-eyebrow) {
	margin: 0;
	max-width: 75%;
	color: var(--kugai-text);
	font-weight: 900;
	line-height: 1.8;
}

.kugai-hero__buttons {
	display: none !important;
}

.kugai-hero__worker {
	position: absolute;
	right: clamp(18px, 4vw, 70px);
	bottom: -22px;
	z-index: 3;
	width: clamp(140px, 13vw, 195px);
}

.kugai-hero__worker img {
	width: 100%;
}

.kugai-faq {
	position: relative;
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	column-gap: 44px;
	width: 100%;
	margin: 0;
	padding: 150px max(24px, calc((100vw - 1140px) / 2)) 0;
	background: var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover);
	border-bottom: 20px solid var(--kugai-yellow);
}

.kugai-news::before {
	position: absolute;
	inset: 0 calc(50% - 50vw);
	z-index: -1;
	background:
		var(--kugai-pattern-stripes-o) center top / 180px auto repeat,
		var(--kugai-white);
	content: "";
}

.kugai-faq::after {
	position: absolute;
	top: 0;
	left: calc(50% - 50vw);
	width: 0;
	height: 0;
	border-top: 70px solid var(--kugai-yellow);
	border-right: 70px solid transparent;
	content: "";
}

.kugai-faq-card {
	position: relative;
	display: grid;
	align-content: start;
	max-width: none;
	min-height: 205px;
	margin: 0;
	padding-top: 0;
}

.kugai-faq-card dt::before {
	position: absolute;
	top: -20px;
	left: 12px;
	width: 21px;
	height: 28px;
	background: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-q.svg")
		center / contain no-repeat;
	content: "";
}

.kugai-faq-card dt {
	display: grid;
	align-items: center;
	min-height: 86px;
	margin: 0;
	padding: 18px 22px 16px 30px;
	border-radius: 8px;
	background: var(--kugai-white);
	box-shadow: 0 10px 22px rgb(0 0 0 / 8%);
	color: var(--kugai-muted);
	font-size: 18px;
	font-weight: 900;
	line-height: 1.45;
}

.kugai-faq-card dt::after {
	position: absolute;
	left: -18px;
	bottom: 18px;
	width: 28px;
	height: 20px;
	background: var(--kugai-white);
	content: "";
	clip-path: polygon(0 50%, 100% 0, 100% 100%);
}

.kugai-faq-card dd {
	position: relative;
	z-index: 1;
	width: 75%;
	min-height: 96px;
	margin: -10px 0 0;
	padding: 22px;
	border-radius: 5px;
	background: var(--kugai-blue);
	color: var(--kugai-white);
	font-size: 19px;
	font-weight: 900;
	line-height: 1.5;
}

.kugai-faq-card dd::after {
	position: absolute;
	right: -22px;
	bottom: 52px;
	width: 38px;
	height: 24px;
	background: var(--kugai-blue);
	content: "";
	clip-path: polygon(0 0, 100% 50%, 0 100%);
}

.kugai-faq-card--illustrated {
	display: grid;
}

.kugai-faq-card dd > img {
	position: absolute;
	right: -90px;
	bottom: -28px;
	width: 112px;
	margin: 0;
	filter: grayscale(1);
}

.kugai-faq-card dd > .wp-block-image {
	position: absolute;
	right: -90px;
	bottom: -28px;
	width: 112px;
	margin: 0;
	filter: grayscale(1);
}

.kugai-faq-card dd > .wp-block-image img {
	width: 100%;
}

.kugai-faq-card--illustrated dd > img {
	bottom: -8px;
}

.kugai-faq-card--illustrated dd > .wp-block-image {
	bottom: -8px;
}

.kugai-cta {
	position: relative;
	grid-column: 1 / -1;
	box-sizing: border-box;
	display: grid;
	place-items: start center;
	width: var(--wp--style--global--content-size);
	max-width: 100%;
	min-height: 265px;
	margin: auto;
	padding: 18px 24px 0;
	text-align: center;
}

.kugai-cta::after {
	display: block;
	width: 40px;
	height: 40px;
	margin: 0 auto 20px;
	background: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-arrow-down.svg")
		center / contain no-repeat;
	content: "";
	order: -1;
}

.kugai-cta__body {
	position: relative;
	z-index: 3;
}

.kugai-cta h2 {
	margin: 0 0 0;
	color: var(--kugai-muted);
	font-size: clamp(28px, 3vw, 38px);
	font-weight: 900;
	line-height: 1.25;
	position: relative;
	display: inline-block;
}

.kugai-cta h2::before,
.kugai-cta h2::after {
	position: absolute;
	top: 50%;
	width: 2.5rem;
	height: 5px;
	background: var(--kugai-muted);
	content: "";
	border-radius: 3px;
}

.kugai-cta h2::before {
	left: -0.95em;
	transform: translateY(-50%) rotate(50deg);
}

.kugai-cta h2::after {
	right: -0.95em;
	transform: translateY(-50%) rotate(-50deg);
}

.kugai-cta__actions {
	display: flex;
	justify-content: center;
}

.kugai-cta__actions .kugai-button:first-child {
	display: none;
}

.kugai-subpage-cta .kugai-cta__actions .kugai-button:first-child,
.kugai-site-cta .kugai-cta__actions .kugai-button:first-child {
	display: block;
}

.kugai-cta__actions .kugai-button--blue {
	background: var(--kugai-orange);
	color: var(--kugai-white);
	font-size: 24px;
	min-height: 70px;
	min-width: 310px;
}

.kugai-cta__actions .wp-block-button.kugai-button--blue .wp-block-button__link,
.kugai-cta__actions .onesta-button-wrapper.kugai-button--blue .onesta-button {
	background: var(--kugai-orange);
	color: var(--kugai-white);
	font-size: 24px;
	min-height: 70px;
	min-width: 310px;
}

.kugai-cta__person {
	position: absolute;
	bottom: 0;
	z-index: 1;
}

.kugai-cta__person img {
	width: 100%;
}

.kugai-cta__person--left {
	left: 0;
	bottom: -4px;
	width: 160px;
}

.kugai-cta__person--center {
	right: 10%;
	bottom: -1px;
	z-index: 2;
	width: 145px;
}

.kugai-cta__person--right {
	right: 0;
	bottom: -8px;
	width: 160px;
}

.kugai-section {
	position: relative;
	width: var(--kugai-wrap);
	margin: 0 auto;
}

.kugai-section__heading {
	display: grid;
	gap: 2px;
	place-items: center;
	margin: 0 auto var(--kugai-section-heading-margin);
	text-align: center;
}

.kugai-section__heading .kugai-eyebrow {
	margin: 0;
	color: var(--kugai-blue);
	font-size: clamp(42px, 5vw, 60px);
	font-weight: 500;
	line-height: 1;
	text-transform: uppercase;
}

.kugai-section__heading h2 {
	margin: 0;
	color: var(--kugai-text);
	font-size: 18px;
	font-weight: 900;
	line-height: 1.35;
	letter-spacing: 0;
}

.kugai-section__heading::after {
	display: block;
	width: 34px;
	height: 12px;
	margin-top: 16px;
	background: url("/wp/wp-content/plugins/onesta/assets/images/decorative/deco-title-bottom.svg")
		center / contain no-repeat;
	content: "";
}

.kugai-service {
	width: 100%;
	padding: var(--kugai-section-padding-block)
		var(--kugai-section-padding-inline) var(--kugai-section-padding-bottom);
	background: var(--kugai-cream);
}

.kugai-service .kugai-eyebrow,
.kugai-projects .kugai-eyebrow,
.kugai-recruit .kugai-eyebrow,
.kugai-news .kugai-eyebrow,
.kugai-company .kugai-eyebrow {
	margin: 0;
	color: var(--kugai-blue);
	font-size: clamp(42px, 5vw, 60px);
	font-weight: 500;
	text-transform: uppercase;
}

.kugai-service__grid {
	display: grid;
	gap: 56px;
	width: var(--kugai-wrap);
	margin: 0 auto;
}

.kugai-service-card {
	position: relative;
	--kugai-service-card-title-size: 28px;
	display: grid;
	grid-template-columns: 360px minmax(0, 1fr) 120px;
	gap: var(--kugai-layout-gap);
	align-items: center;
	min-height: 210px;
}

.kugai-service-card::before {
	position: absolute;
	top: -10px;
	left: calc((1120px - 100vw) / 2);
	z-index: 0;
	width: 60%;
	height: 210px;
	background: var(--kugai-yellow);
	content: "";
	clip-path: polygon(0 0, 100% 0, 84% 100%, 0 100%);
}

.kugai-service-card figure {
	position: relative;
	z-index: 1;
	display: flex;
	flex-direction: column-reverse;
	gap: 8px;
	width: 360px;
	margin: 0;
}

.kugai-service-card img {
	position: relative;
	z-index: 1;
	width: 100%;
	aspect-ratio: 16 / 10;
	border-radius: 14px;
	object-fit: cover;
}

.kugai-service-card div,
.kugai-service-card__body {
	position: relative;
	z-index: 1;
}

.kugai-service-card figcaption {
	color: var(--kugai-orange);
	font-size: 13px;
	font-weight: 900;
	text-transform: uppercase;
}

.kugai-service-card h3 {
	margin: 0 0 14px;
	padding: 0;
	font-size: var(--kugai-service-card-title-size);
	font-weight: 900;
	line-height: 1.25;
}

.kugai-service-card p {
	margin: 0;
	color: var(--kugai-muted);
	font-weight: 700;
	line-height: 1.65;
}

.kugai-service-card div::after {
	position: absolute;
	right: -170px;
	bottom: -48px;
	color: var(--kugai-orange);
	font-size: 14px;
	font-weight: 900;
	content: "詳細はこちら 〉";
}

.kugai-projects {
	position: relative;
	z-index: 1;
	width: 100%;
	padding: var(--kugai-section-padding-block) 0
		calc(var(--kugai-section-padding-bottom) + 10px);
	background: var(--kugai-pattern-stripes-b) var(--kugai-pattern-cover);
	color: var(--kugai-text);
}

.kugai-projects__panel {
	position: relative;
	z-index: 1;
	width: 100%;
	margin-block: var(--kugai-space-m) var(--kugai-space-l);
	padding: var(--kugai-space-m) var(--kugai-section-padding-inline);
	background: var(--kugai-blue);
	color: var(--kugai-white);
}

.kugai-projects__panel::after {
	position: absolute;
	top: -96px;
	right: -25px;
	width: 240px;
	height: 280px;
	background: url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-pole.svg")
		center / contain no-repeat;
	content: "";
}

.kugai-projects__panel::before {
	position: absolute;
	bottom: -150px;
	left: -45px;
	width: 200px;
	height: 300px;
	background: url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-helmet.svg")
		center / contain no-repeat;
	content: "";
}

.kugai-projects__list {
	position: relative;
	z-index: 1;
	width: var(--kugai-wrap);
	max-width: var(--kugai-wrap);
	padding: 0;
	margin: 0 auto;
}

.kugai-projects__list .onesta-grid__items {
	grid-template-columns: repeat(5, minmax(0, 1fr));
	gap: var(--kugai-grid-gap);
}

.kugai-projects__list .onesta-grid__item {
	display: grid;
	gap: 26px;
	place-items: center;
	color: var(--kugai-yellow);
	font-size: 17px;
	font-weight: 900;
	text-align: center;
}

.kugai-projects__list .onesta-grid__item > * {
	flex: none;
}

.kugai-projects__list .wp-block-image {
	margin: 0;
}

.kugai-projects__list .wp-block-image img {
	width: 100%;
	max-width: 206px;
	aspect-ratio: 1 / 1;
	padding: 38px;
	border-radius: 10px;
	background: var(--kugai-white);
	object-fit: contain;
}

.kugai-projects__list p {
	margin: 0;
}

.kugai-projects .kugai-projects__button {
	position: relative;
	left: 50%;
	z-index: 1;
	width: 300px;
	min-width: 0;
	margin-top: 56px;
	text-align: center;
	transform: translateX(-50%);
}

.kugai-projects .kugai-projects__button .onesta-button {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	width: 100%;
	min-height: 56px;
	background: var(--kugai-white);
	color: var(--kugai-orange);
	font-size: 17px;
}

.kugai-recruit {
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(360px, 0.92fr);
	gap: var(--kugai-layout-gap);
	align-items: center;
	width: 100%;
	padding: var(--kugai-section-padding-block)
		var(--kugai-section-padding-inline) 100px;
	background: var(--kugai-cream);
}

.kugai-recruit > .kugai-section__heading {
	grid-column: 1 / -1;
	margin-bottom: -18px;
}

.kugai-recruit > .kugai-section__heading h2 {
	color: var(--kugai-text);
	font-size: 18px;
	font-weight: 900;
}

.kugai-recruit__visual > img:first-child {
	width: 100%;
	aspect-ratio: 16 / 10;
	border-radius: 14px;
	object-fit: cover;
}

.kugai-recruit__visual > .wp-block-image:first-child img {
	width: 100%;
	aspect-ratio: 16 / 10;
	border-radius: 14px;
	object-fit: cover;
}

.kugai-recruit__body {
	position: relative;
}

.kugai-recruit__worker {
	position: absolute;
	right: -50%;
	bottom: -110px;
	width: 240px;
}

.kugai-recruit__worker img {
	width: 100%;
}

.kugai-recruit h2 {
	margin: 0 0 22px;
	color: var(--kugai-orange);
	font-size: 34px;
	font-weight: 900;
	line-height: 1.35;
}

.kugai-recruit p:not(.kugai-eyebrow) {
	margin: 0 0 28px;
	color: var(--kugai-text);
	font-size: 17px;
	font-weight: 700;
	line-height: 1.75;
}

.kugai-news {
	width: 100%;
	padding: var(--kugai-section-padding-block)
		var(--kugai-section-padding-inline) var(--kugai-section-padding-bottom);
	background: var(--kugai-white);
}

.kugai-news .onesta-post-list {
	width: var(--kugai-wrap);
	margin: 0 auto;
	padding: 0;
}

.kugai-news .onesta-post-list__grid {
	display: grid;
	width: var(--kugai-wrap);
	margin: 0 auto;
	border-top: 2px solid #777;
}

.kugai-news .onesta-post-list__card {
	display: grid;
	grid-template-columns: 150px 1fr;
	gap: 30px;
	align-items: center;
	padding: 24px 28px;
	background: transparent;
	border-bottom: 2px solid #777;
	border-radius: 0;
	box-shadow: none;
	font-size: 20px;
	font-weight: 900;
	letter-spacing: 0.08em;
	transition: color 0.18s ease;
}

.kugai-news .onesta-post-list__card:hover {
	box-shadow: none;
	color: var(--kugai-orange);
	transform: none;
}

.kugai-news .onesta-post-list__body {
	display: contents;
	padding: 0;
}

.kugai-news .onesta-post-list__date {
	color: #aaa;
	font-size: 17px;
	letter-spacing: 0.08em;
}

.kugai-news .onesta-post-list__title {
	margin: 0;
	padding: 0;
	font-family: var(--kugai-font-sans);
	font-size: 20px;
	font-weight: 900;
	line-height: 1.4;
}

.kugai-news .onesta-post-list__title a {
	color: inherit;
	text-decoration: none;
}

.kugai-news .onesta-post-list::after {
	content: none;
}

.kugai-news .kugai-news-more {
	display: block;
	justify-self: end;
	margin-top: 48px;
	color: var(--kugai-orange);
	font-size: 19px;
	font-weight: 900;
	text-decoration: none;
}

.kugai-news .kugai-news-more:hover,
.kugai-news .kugai-news-more:focus-visible {
	color: var(--kugai-orange);
	text-decoration: none;
}

.kugai-company {
	position: relative;
	display: grid;
	grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
	gap: var(--kugai-layout-gap, 70px);
	width: 100%;
	padding: var(--kugai-section-padding-block)
		var(--kugai-section-padding-inline) 120px;
	background-color: var(--kugai-gray);
	background-image: var(--kugai-company-pattern);
	background-repeat: no-repeat;
	background-position: left 20px center;
	background-size: 520px;
}

.kugai-company .kugai-section__heading {
	grid-column: 1 / -1;
	margin-bottom: 42px;
}

.kugai-company__body {
	display: grid;
	align-content: center;
	min-height: 320px;
	padding: 68px 76px;
	border-radius: 12px;
	background: rgb(255 255 255 / 82%);
}

.kugai-company__body h3 {
	margin-bottom: 1rem;
}

.kugai-company__body > .kugai-eyebrow,
.kugai-company h2 {
	display: none;
}

.kugai-company dl {
	display: grid;
	gap: 12px;
	margin: 0;
	font-size: 20px;
	font-weight: 900;
}

.kugai-company .onesta-dl {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 12px 16px;
	margin: 0;
	font-size: 20px;
	font-weight: 900;
}

.kugai-company dl > div {
	display: grid;
	grid-template-columns: auto 1fr;
	gap: 16px;
	align-items: baseline;
}

.kugai-company dt::after {
	content: "";
}

.kugai-company dd {
	margin: 0;
}

.kugai-company .onesta-dl__term,
.kugai-company .onesta-dl__desc {
	margin: 0;
	padding: 0;
	background: transparent;
	border: 0;
	color: inherit;
	font: inherit;
}

.kugai-company .onesta-dl__desc p {
	margin: 0;
}

.kugai-company .onesta-dl__term:nth-of-type(1),
.kugai-company .onesta-dl__desc:nth-of-type(1) {
	font-size: 26px;
}

.kugai-company .onesta-dl__term:nth-of-type(4),
.kugai-company .onesta-dl__desc:nth-of-type(4),
.kugai-company .onesta-dl__desc:nth-of-type(3) {
	display: none;
}

.kugai-company dl > div:nth-child(1) {
	font-size: 26px;
}

.kugai-company dl > div:nth-child(1) dt {
	margin-right: 16px;
}

.kugai-company dl > div:nth-child(4) {
	display: none;
}

.kugai-company dl > div:nth-child(3) dd {
	display: none;
}

.kugai-company__map {
	min-height: 320px;
	border-radius: 12px;
	overflow: hidden;
}

.kugai-company__map.wp-block-image {
	margin: 0;
	background: var(--kugai-white);
}

.kugai-company__map.wp-block-image img {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 320px;
	object-fit: cover;
}

.kugai-company__map iframe {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 320px;
	border: 0;
}

.kugai-company__map-frame {
	display: block;
	width: 100%;
	height: 100%;
	min-height: 320px;
	border: 0;
}

.kugai-company__map.wp-block-embed {
	margin: 0;
	background: var(--kugai-white);
}

.kugai-company__map .wp-block-embed__wrapper {
	display: grid;
	place-items: center;
	min-height: 320px;
	padding: 24px;
	font-weight: 900;
	text-align: center;
}

footer.wp-block-template-part {
	display: block;
	min-height: 0;
	margin-block-start: 0;
	padding: 0;
	border-top: 10px solid #3d3d3d;
	background: var(--kugai-yellow);
	color: var(--kugai-text);
	font-size: 13px;
	font-weight: 900;
	text-align: center;
}

footer.wp-block-template-part .kugai-site-footer {
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	width: 100%;
	margin: 0;
	padding: 8px 20px;
}

footer.wp-block-template-part .kugai-site-footer__logo,
footer.wp-block-template-part
	.kugai-site-footer
	> p:not(.kugai-site-footer__copyright),
footer.wp-block-template-part .kugai-site-footer nav,
footer.wp-block-template-part .kugai-footer__worker {
	display: none;
}

footer.wp-block-template-part .kugai-site-footer__copyright {
	margin: 0;
}

@media (prefers-reduced-motion: reduce) {
	.kugai-top-page {
		scroll-behavior: auto;
	}

	.kugai-button {
		transition: none;
	}

	.kugai-top-page.is-kugai-animated .is-kugai-animation-target {
		opacity: 1;
		transform: none;
		transition: none;
	}
}

.kugai-top-page.is-kugai-animated .is-kugai-animation-target {
	opacity: 0;
	transform: translateY(24px);
	transition:
		opacity 0.55s ease,
		transform 0.55s ease;
	will-change: opacity, transform;
}

.kugai-top-page.is-kugai-animated .is-kugai-animation-target.is-kugai-visible {
	opacity: 1;
	transform: none;
	will-change: auto;
}

@media (max-width: 1180px) {
	.kugai-hero__content {
		grid-template-columns: minmax(0, 1fr) minmax(
				0,
				calc(clamp(700px, 77vw, 1100px) + 40px)
			);
		padding-right: 40px;
	}

	.kugai-hero__content::before {
		right: -40px;
	}

	.kugai-hero__copy {
		padding-left: clamp(140px, 14vw, 180px);
	}

	.kugai-service-card {
		grid-template-columns: 350px 1fr 80px;
		gap: 42px;
	}

	.kugai-service-card figure {
		width: 350px;
	}
}

@media (min-width: 901px) {
	.kugai-hero {
		--kugai-hero-bleed: clamp(0px, calc((1800px - 100vw) * 0.55), 145px);
		overflow: clip;
	}

	.kugai-hero__content {
		right: calc(var(--kugai-hero-bleed) * -1);
		width: auto;
	}

	.kugai-hero__content::before {
		height: calc(270px + (var(--kugai-hero-bleed) * 0.25));
	}

	.kugai-hero__ribbon {
		left: calc(var(--kugai-hero-bleed) * -1);
	}

	.kugai-hero__worker {
		right: calc(clamp(18px, 4vw, 70px) - (var(--kugai-hero-bleed) * 0.25));
	}
}

@media (max-width: 900px) {
	.kugai-hero {
		height: auto;
		min-height: 0;
		padding-bottom: 30px;
	}

	.kugai-hero__media {
		height: 360px;
	}

	.kugai-hero__content {
		bottom: 30px;
		grid-template-columns: minmax(270px, 39vw) minmax(0, 1fr);
		padding-right: 0;
	}

	.kugai-hero__copy {
		width: 100%;
		padding-left: 48px;
	}

	.kugai-hero__content::before {
		display: block;
		top: -24px;
		right: 0;
		left: -34px;
		height: 190px;
	}

	.kugai-hero__ribbon {
		display: block;
		top: -19px;
		width: 45%;
		max-width: 330px;
	}

	.kugai-hero__worker {
		right: 18px;
		bottom: -10px;
		width: 130px;
	}

	.kugai-hero h2 {
		margin-bottom: 10px;
		font-size: 25px;
	}

	.kugai-hero__copy > p:not(.kugai-eyebrow) {
		max-width: 29em;
		padding-right: 118px;
		font-size: 13px;
		line-height: 1.58;
	}

	.kugai-faq {
		grid-template-columns: repeat(3, minmax(0, 1fr));
		column-gap: 18px;
		padding: 124px 24px 0;
	}

	.kugai-faq-card {
		min-height: 176px;
	}

	.kugai-faq-card dt {
		min-height: 62px;
		padding: 14px 12px 13px 22px;
		font-size: 12px;
	}

	.kugai-faq-card dd {
		width: 78%;
		min-height: 78px;
		padding: 14px;
		font-size: 12px;
	}

	.kugai-faq-card dd > img,
	.kugai-faq-card dd > .wp-block-image {
		right: -58px;
		width: 78px;
	}

	.kugai-cta {
		min-height: 218px;
		padding-top: 8px;
	}

	.kugai-cta h2 {
		font-size: 28px;
	}

	.kugai-cta__person--left,
	.kugai-cta__person--right {
		width: 145px;
	}

	.kugai-cta__person--center {
		width: 132px;
	}

	.kugai-service-card {
		grid-template-columns: 210px minmax(0, 1fr) 70px;
		gap: 28px;
		min-height: 155px;
	}

	.kugai-service-card::before {
		left: -48px;
		width: 350px;
		height: 160px;
	}

	.kugai-service-card figure {
		width: 210px;
	}

	.kugai-service-card h3 {
		--kugai-service-card-title-size: 22px;
		margin-bottom: 8px;
	}

	.kugai-service-card p {
		line-height: 1.55;
	}

	.kugai-service-card div::after {
		right: -80px;
		bottom: -30px;
		font-size: 11px;
	}

	.kugai-projects__list .onesta-grid__items {
		grid-template-columns: repeat(5, minmax(0, 1fr));
		gap: 16px;
	}

	.kugai-projects__panel {
		margin-block: var(--kugai-space-m) var(--kugai-space-l);
		padding: var(--kugai-space-m) 24px;
	}

	.kugai-projects__list .wp-block-image img {
		padding: 26px;
	}

	.kugai-projects__panel::after {
		right: -48px;
		width: 180px;
		height: 220px;
	}

	.kugai-projects__panel::before {
		left: -62px;
		width: 150px;
		height: 230px;
	}

	.kugai-recruit,
	.kugai-company {
		grid-template-columns: minmax(0, 1fr) minmax(0, 1fr);
		gap: 40px;
	}

	.kugai-recruit {
		padding-bottom: 90px;
	}

	.kugai-recruit > .kugai-section__heading {
		margin-bottom: -12px;
	}

	.kugai-recruit h2 {
		font-size: 24px;
	}

	.kugai-recruit p:not(.kugai-eyebrow) {
		font-size: 13px;
		line-height: 1.65;
	}

	.kugai-recruit__worker {
		display: block;
		right: -30%;
		bottom: -88px;
		width: 150px;
	}

	.kugai-news .onesta-post-list__card {
		grid-template-columns: 110px 1fr;
		padding: 18px;
		font-size: 16px;
	}

	.kugai-company__body {
		min-height: 260px;
		padding: 42px 36px;
	}

	.kugai-company .onesta-dl {
		gap: 8px 12px;
		font-size: 15px;
	}

	.kugai-company__map,
	.kugai-company__map iframe,
	.kugai-company__map.wp-block-image img,
	.kugai-company__map .wp-block-embed__wrapper {
		min-height: 260px;
	}
}

@media (min-width: 701px) and (max-width: 900px) {
	.kugai-hero {
		padding-bottom: 0;
	}

	.kugai-hero__content {
		display: block;
		position: relative;
		right: auto;
		left: auto;
		bottom: auto;
		width: auto;
		padding: 36px 36px 48px;
	}

	.kugai-hero__content::before,
	.kugai-hero__ribbon {
		display: none;
	}

	.kugai-hero__copy {
		width: auto;
		padding-top: 0;
		padding-left: 0;
	}

	.kugai-hero h2 {
		color: var(--kugai-blue);
	}

	.kugai-hero__copy > p:not(.kugai-eyebrow) {
		max-width: 34em;
		padding-right: 190px;
	}

	.kugai-hero__worker {
		right: 28px;
		bottom: 0;
		width: 160px;
	}
}

@media (max-width: 700px) {
	.kugai-hero {
		height: auto;
		min-height: auto;
		padding-bottom: 0;
	}

	.kugai-hero__media {
		height: 360px;
	}

	.kugai-hero__content {
		display: block;
		position: relative;
		right: auto;
		left: auto;
		bottom: auto;
		width: auto;
		padding: 30px 24px 42px;
	}

	.kugai-hero__copy {
		width: auto;
		padding-left: 0;
	}

	.kugai-hero__content::before {
		display: none;
	}

	.kugai-hero__ribbon {
		display: block;
		/* position: relative; */
		top: -63px;
		left: 0 !important;
		width: 100%;
		max-width: none;
		margin-bottom: 18px;
	}

	.kugai-hero__worker {
		right: 0;
		bottom: 0;
		width: 150px;
	}

	.kugai-hero__copy > p:not(.kugai-eyebrow) {
		padding-right: 120px;
	}

	.kugai-faq,
	.kugai-recruit,
	.kugai-company {
		grid-template-columns: 1fr;
	}

	.kugai-faq {
		row-gap: 42px;
		padding-top: 70px;
		padding-right: 24px;
		padding-left: 24px;
	}

	.kugai-faq > * {
		min-width: 0;
	}

	.kugai-faq .onesta-dl,
	.kugai-faq-card,
	.kugai-cta {
		width: 100%;
		max-width: 100%;
		min-width: 0;
		margin-right: 0;
		margin-left: 0;
	}

	.kugai-cta__body {
		width: 100%;
		max-width: 100%;
		margin-bottom: 150px;
	}

	.kugai-cta__person--center {
		right: 25%;
	}

	.kugai-service-card {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	.kugai-service-card::before {
		width: 240px;
		height: 190px;
	}

	.kugai-service-card figure {
		width: min(410px, 100%);
	}

	.kugai-service-card div::after {
		position: static;
		display: block;
		margin-top: 16px;
	}

	.kugai-projects__list .onesta-grid__items {
		grid-template-columns: repeat(2, minmax(0, 1fr));
	}

	.kugai-projects__list .onesta-grid__item:last-child {
		grid-column: 1 / -1;
		justify-self: center;
		width: min(100%, calc((100% - var(--kugai-grid-gap)) / 2));
	}

	.kugai-recruit__worker,
	.kugai-projects__panel::after,
	.kugai-projects__panel::before {
		display: none;
	}
}

@media (min-width: 700px) and (max-width: 900px) {
	body[class*="onesta-drawer-"] .kugai-site-header .onesta-drawer-open,
	body[class*="onesta-drawer-"] .kugai-site-header .onesta-drawer-close,
	body[class*="onesta-drawer-"] .kugai-site-header .onesta-drawer-overlay {
		display: none !important;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		nav
		.wp-block-navigation__responsive-container.wp-block-navigation__responsive-container {
		display: block !important;
		visibility: visible;
		position: static;
		width: auto;
		height: auto;
		padding: 0;
		background-color: transparent !important;
		clip-path: none;
		opacity: 1;
		overflow: visible;
		pointer-events: auto;
		transform: none;
		z-index: auto;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-close,
	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-dialog {
		display: block;
		height: auto;
		background: transparent;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container
		.wp-block-navigation__responsive-container-content {
		position: static !important;
		inset: auto !important;
		display: flex !important;
		flex: initial;
		flex-direction: row !important;
		align-items: center;
		justify-content: flex-end;
		width: auto;
		height: auto;
		min-height: 0;
		max-width: none;
		padding: 0;
		background: transparent;
		box-shadow: none;
		color: inherit;
		overflow: visible;
		text-align: inherit;
		transform: none;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container
		.wp-block-navigation__responsive-container-content
		.wp-block-navigation__container {
		display: flex !important;
		flex-direction: row !important;
		flex-wrap: nowrap;
		gap: 18px;
		justify-content: flex-end;
		margin-left: auto !important;
		margin-right: 0 !important;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container
		.wp-block-navigation__responsive-container-content
		> .wp-block-navigation__container
		> .wp-block-navigation-item {
		display: flex;
		flex: 0 0 auto;
		align-items: center;
		width: auto;
		opacity: 1;
		transform: none;
	}

	body[class*="onesta-drawer-"]
		.kugai-site-header
		.wp-block-navigation__responsive-container
		.wp-block-navigation__responsive-container-content
		.wp-block-navigation__container
		> .wp-block-navigation-item
		> .wp-block-navigation-item__content {
		display: grid;
		gap: 3px;
		place-items: center;
		padding: 0;
		font-size: 12px;
		overflow-wrap: normal;
		white-space: nowrap;
		word-break: normal;
	}
}

@media (max-width: 560px) {
	.kugai-hero__media {
		height: 300px;
	}

	.kugai-hero h2 {
		font-size: 30px;
	}

	.kugai-hero__copy > p:not(.kugai-eyebrow) {
		padding-right: 110px;
	}

	.kugai-faq-card--illustrated {
		grid-template-columns: 1fr;
	}

	.kugai-faq-card dt {
		min-height: 72px;
		padding: 16px 18px 15px 30px;
		font-size: 14px;
	}

	.kugai-faq-card dd {
		width: calc(100% - 68px);
		padding: 20px 18px;
		font-size: 14px;
	}

	.kugai-faq-card dd > img,
	.kugai-faq-card dd > .wp-block-image {
		right: -50px;
		width: 76px;
	}

	.kugai-faq-card--illustrated dd > img,
	.kugai-faq-card--illustrated dd > .wp-block-image {
		right: -36px;
		bottom: -10px;
		width: 82px;
	}

	.kugai-cta {
		min-height: 0;
		padding: 12px 0 34px;
	}

	.kugai-cta h2 {
		max-width: calc(100% - 44px);
		margin-right: auto;
		margin-left: auto;
		font-size: 24px;
	}

	.kugai-cta h2::before,
	.kugai-cta h2::after {
		width: 1.45rem;
		height: 4px;
	}

	.kugai-cta__actions {
		flex-direction: column;
		gap: 12px;
		align-items: center;
		width: 100%;
	}

	.kugai-cta__actions .kugai-button:first-child {
		display: block;
	}

	.kugai-cta__actions .wp-block-button.kugai-button,
	.kugai-cta__actions .onesta-button-wrapper.kugai-button {
		width: 100%;
		min-height: 0;
	}

	.kugai-cta__actions .wp-block-button.kugai-button .wp-block-button__link,
	.kugai-cta__actions .onesta-button-wrapper.kugai-button .onesta-button,
	.kugai-cta__actions
		.wp-block-button.kugai-button--blue
		.wp-block-button__link,
	.kugai-cta__actions
		.onesta-button-wrapper.kugai-button--blue
		.onesta-button {
		width: 100%;
		min-width: 0;
		min-height: 58px;
		padding: 0 22px;
		font-size: 18px;
	}

	.kugai-button {
		min-width: 0;
		width: 100%;
		font-size: 18px;
	}

	.kugai-cta__person {
		/* display: none; */
	}

	.kugai-service,
	.kugai-recruit,
	.kugai-news,
	.kugai-company {
		padding-top: var(--kugai-section-padding-block);
		padding-bottom: var(--kugai-section-padding-bottom);
	}

	.kugai-section__heading {
		margin-bottom: var(--kugai-section-heading-margin);
	}

	.kugai-service-card h3 {
		--kugai-service-card-title-size: 25px;
	}

	.kugai-projects__list .onesta-grid__items {
		gap: var(--kugai-grid-gap);
	}

	.kugai-projects {
		padding-top: var(--kugai-section-padding-block);
		padding-bottom: calc(var(--kugai-section-padding-bottom) + 20px);
	}

	.kugai-projects__panel {
		margin-block: var(--kugai-space-m) var(--kugai-space-l);
		padding: var(--kugai-space-m) 18px;
	}

	.kugai-projects__list .wp-block-image img {
		padding: 24px;
	}

	.kugai-news-item,
	.kugai-company dl > div {
		grid-template-columns: 1fr;
		gap: 4px;
	}

	.kugai-company__body {
		padding: 34px 28px;
	}
}

@media (max-width: 900px) {
	.kugai-subpage-hero {
		min-height: 275px;
	}

	.kugai-subpage-hero__band {
		min-height: 112px;
		margin-top: 18px;
		clip-path: polygon(
			0 0,
			calc(100% - 245px) 0,
			calc(100% - 118px) 100%,
			0 100%
		);
	}

	.kugai-subpage-hero::after {
		top: calc(50% - 56px);
		width: 172px;
		height: 112px;
	}

	.kugai-subpage-hero__copy {
		width: min(560px, calc(100vw - 320px));
	}

	.kugai-results {
		padding: 58px 0 74px;
		background: linear-gradient(
			var(--kugai-white) 0 145px,
			var(--kugai-gray) 145px 100%
		);
	}

	.kugai-results::before {
		height: 145px;
		margin-bottom: -145px;
	}

	.kugai-subpage-section-title {
		margin-bottom: 58px;
	}

	.kugai-results-grid,
	.kugai-news-list,
	.kugai-news-detail-card,
	.kugai-company-message,
	.kugai-company-profile,
	.kugai-contact-form {
		width: min(calc(100vw - 48px), 760px);
	}

	.kugai-results-grid {
		grid-template-columns: 1fr;
		gap: 28px;
	}

	.kugai-results-card {
		grid-template-rows: auto minmax(44px, auto) auto;
		align-self: start;
		height: auto;
		min-height: 0;
		padding: 34px 28px 30px;
	}

	.kugai-results-card:nth-child(-n + 2) {
		grid-template-rows: auto minmax(44px, auto) auto;
		height: auto;
	}

	.kugai-results-card__body {
		min-height: 0;
		font-size: 16px;
	}

	.kugai-news-list {
		grid-template-columns: repeat(2, minmax(0, 1fr));
		gap: 34px 24px;
		padding: 58px 0 86px;
	}

	.kugai-news-detail {
		padding: 50px 0 64px;
	}

	.kugai-news-detail-card {
		min-height: 0;
		padding: 44px 42px 54px;
	}

	.kugai-news-detail-card figure {
		aspect-ratio: 920 / 540;
	}

	.kugai-news-detail-card img {
		height: 100%;
	}

	.kugai-company-message {
		grid-template-columns: 1fr;
		gap: 34px;
		align-items: start;
		padding: 58px 0 64px;
	}

	.kugai-company-message__signature {
		width: 100%;
		padding-right: 76px;
	}

	.kugai-company-message__photo {
		width: min(400px, 100%);
		justify-self: center;
	}

	.kugai-company-info {
		padding: 68px 0 78px;
	}

	.kugai-company-profile__row {
		grid-template-columns: 150px minmax(0, 1fr);
		gap: 28px;
	}

	.kugai-company-office {
		grid-template-columns: minmax(0, 1fr) 220px;
		gap: 28px;
	}

	.kugai-company-office img {
		width: 220px;
		height: 122px;
	}

	.kugai-contact {
		padding: 56px 0 76px;
	}

	.kugai-contact-lead {
		width: min(calc(100vw - 48px), 700px);
	}

	.kugai-contact-form {
		padding: 48px 42px 54px;
	}
}

@media (max-width: 560px) {
	.kugai-subpage-hero {
		min-height: 230px;
	}

	.kugai-subpage-hero__band {
		min-height: 104px;
		margin-top: 12px;
		padding: 22px 18px 24px;
		clip-path: none;
	}

	.kugai-subpage-hero::after {
		display: none;
	}

	.kugai-subpage-hero__copy {
		width: 100%;
	}

	.kugai-subpage-hero__copy .kugai-eyebrow {
		font-size: 14px;
	}

	.kugai-subpage-hero__copy h1 {
		font-size: 34px;
	}

	.kugai-subpage-section-title {
		margin-bottom: 42px;
		padding-bottom: 20px;
		font-size: 27px;
	}

	.kugai-results {
		padding: 46px 0 56px;
		background: linear-gradient(
			var(--kugai-white) 0 116px,
			var(--kugai-gray) 116px 100%
		);
	}

	.kugai-results::before {
		height: 116px;
		margin-bottom: -116px;
	}

	.kugai-results-grid,
	.kugai-news-list,
	.kugai-news-detail-card,
	.kugai-company-message,
	.kugai-company-profile,
	.kugai-contact-form,
	.kugai-contact-lead {
		width: min(calc(100vw - 28px), 520px);
	}

	.kugai-results-card {
		padding: 28px 18px 22px;
	}

	.kugai-results-card__icon {
		width: 70px;
		height: 70px;
		margin-bottom: 16px;
	}

	.kugai-results-card h3 {
		margin-bottom: 18px;
		font-size: 21px;
	}

	.kugai-results-card__body {
		padding: 20px 18px;
		border-radius: 8px;
		font-size: 15px;
		line-height: 1.85;
	}

	.kugai-results-card__body ul,
	.kugai-results-card:nth-child(1) .kugai-results-card__body ul,
	.kugai-results-card:nth-child(3) .kugai-results-card__body ul,
	.kugai-results-card:nth-child(4) .kugai-results-card__body ul {
		grid-template-columns: 1fr;
	}

	.kugai-news-list {
		grid-template-columns: 1fr;
		gap: 30px;
		padding: 46px 0 64px;
	}

	.kugai-news-card__meta {
		font-size: 13px;
	}

	.kugai-news-card__title,
	.kugai-news-card__title a {
		font-size: 17px;
	}

	.kugai-news-pager {
		gap: 24px;
		margin-top: 24px;
		font-size: 21px;
	}

	.kugai-news-detail {
		padding: 38px 0 50px;
	}

	.kugai-news-detail-card {
		padding: 30px 20px 38px;
		border-radius: 10px;
	}

	.kugai-news-detail-card h2 {
		font-size: 23px;
	}

	.kugai-news-detail-card time {
		margin-bottom: 20px;
		font-size: 14px;
	}

	.kugai-news-detail-card p {
		font-size: 16px;
		line-height: 1.85;
	}

	.kugai-news-detail-back {
		margin-top: 32px;
	}

	.kugai-company-message {
		gap: 28px;
		padding: 46px 0 50px;
	}

	.kugai-company-message h2 {
		margin-bottom: 20px;
		font-size: 26px;
		line-height: 1.55;
	}

	.kugai-company-message p {
		font-size: 16px;
		line-height: 1.9;
	}

	.kugai-company-message__signature {
		display: grid;
		gap: 4px;
		width: 100%;
		margin-top: 22px;
		padding: 14px 62px 16px 22px;
		clip-path: polygon(0 0, calc(100% - 54px) 0, 100% 100%, 0 100%);
	}

	.kugai-company-message__signature span {
		font-size: 15px;
	}

	.kugai-company-message__signature strong {
		font-size: 28px;
	}

	.kugai-company-info {
		padding: 54px 0 58px;
	}

	.kugai-company-profile {
		gap: 18px;
	}

	.kugai-company-profile__row {
		grid-template-columns: 1fr;
		gap: 10px;
	}

	.kugai-company-profile dt {
		justify-items: start;
		min-height: 44px;
		font-size: 16px;
	}

	.kugai-company-profile dd {
		padding-top: 0;
		font-size: 16px;
	}

	.kugai-company-office {
		grid-template-columns: 1fr;
		gap: 18px;
		padding-bottom: 28px;
	}

	.kugai-company-office + .kugai-company-office {
		padding-top: 28px;
	}

	.kugai-company-office figure {
		justify-items: start;
	}

	.kugai-company-office img {
		width: min(260px, 100%);
		height: auto;
		aspect-ratio: 260 / 136;
	}

	.kugai-contact {
		padding: 44px 0 58px;
	}

	.kugai-contact-lead {
		margin-bottom: 34px;
		font-size: 22px;
		line-height: 1.6;
		text-align: left;
	}

	.kugai-contact-form {
		gap: 20px;
		padding: 30px 18px 38px;
		border-radius: 10px;
	}

	.kugai-contact-form__field {
		font-size: 16px;
	}

	.kugai-contact-form span::before {
		width: 22px;
		margin-right: 8px;
	}

	.kugai-contact-form small {
		padding-left: 30px;
		font-size: 12px;
	}

	.kugai-contact-form__control {
		min-height: 52px;
	}

	.kugai-contact-form__control--textarea {
		min-height: 220px;
	}

	.kugai-contact-form button {
		width: min(100%, 320px);
		min-width: 0;
		min-height: 60px;
		font-size: 21px;
	}

	.kugai-contact-form button::after {
		margin-left: 38px;
		font-size: 34px;
	}
}

.kugai-subpage--recruit .kugai-subpage-hero__media img {
	object-position: center 54%;
}

.kugai-recruit-hero {
	min-height: 455px;
}

.kugai-subpage--projects .kugai-subpage-hero {
	min-height: 455px;
}

.kugai-subpage--company .kugai-subpage-hero {
	min-height: 455px;
}

.kugai-recruit-page {
	background: var(--kugai-white);
}

.kugai-recruit-main {
	background: var(--kugai-white);
}

.kugai-recruit-wrap {
	width: var(--kugai-wrap);
	margin-inline: auto;
}

.kugai-recruit-intro {
	padding: 86px 0 42px;
	background: var(--kugai-white);

	.kugai-subpage-section-title {
		margin-bottom: 84px;
	}
}

.kugai-recruit-intro__photo {
	overflow: hidden;
	border-radius: 36px;
	background: #eef1f3;

	img {
		width: 100%;
		aspect-ratio: 1470 / 935;
		object-fit: cover;
		object-position: center top;
	}
}

.kugai-recruit-lead {
	margin-top: 52px;
	color: #555;
	font-size: inherit;
	font-weight: 400;
	line-height: 1.75;

	p + p {
		margin-top: 4px;
	}

	p:nth-child(3) {
		margin-top: 34px;
	}
}

.kugai-recruit-jobs,
.kugai-recruit-info {
	background: var(--kugai-white);
}

.kugai-recruit-jobs {
	padding: 18px 0 12px;
}

.kugai-recruit-bar,
.kugai-recruit-info__item h3 {
	display: flex;
	align-items: center;
	min-height: 92px;
	box-sizing: border-box;
	margin: 0;
	padding: 16px 46px;
	background: var(--kugai-yellow);
	color: #4b4b4b;
	font-size: clamp(22px, 1.55vw, 30px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.35;
}

.kugai-recruit-role {
	width: min(
		100%,
		calc(var(--wp--style--global--content-size, 1200px) - 92px)
	);
	margin: 46px auto 74px;
	color: #555;
	font-size: inherit;
	line-height: 1.8;

	&:last-child {
		margin-bottom: 88px;
	}

	h3 {
		margin-bottom: 22px;
		color: #555;
		font-size: clamp(22px, 1.45vw, 28px);
		font-weight: 400;
		line-height: 1.4;
	}

	> p {
		margin-left: 32px;

		+ p {
			margin-top: 20px;
		}
	}
}

.kugai-recruit-role__subhead {
	--kugai-role-tri-size: 32px;
	display: grid;
	grid-template-columns: auto minmax(0, 1fr);
	gap: 16px;
	align-items: center;
	margin: 0 0 26px 32px;
	color: #777;
	font-size: clamp(20px, 1.25vw, 25px);
	line-height: 1.4;

	&::after {
		height: 4px;
		background: var(--kugai-blue);
		content: "";
	}

	strong {
		display: inline-flex;
		gap: 16px;
		align-items: center;
		font-weight: 400;
		white-space: nowrap;

		&::before {
			display: block;
			flex: 0 0 auto;
			width: var(--kugai-role-tri-size);
			aspect-ratio: 33.66 / 30.23;
			background: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-tri.svg")
				center / contain no-repeat;
			content: "";
		}
	}
}

.kugai-recruit-business {
	position: relative;
	box-sizing: border-box;
	margin: 48px 0 38px 16px;
	padding: 56px 52px 42px;
	border-radius: 0 12px 12px 12px;
	background: #f5f5f5;
	color: #555;

	> span {
		position: absolute;
		top: 1px;
		left: 0;
		min-width: 150px;
		padding: 14px 24px;
		border-radius: 10px 10px 0 0;
		background: #f5f5f5;
		color: var(--kugai-orange);
		font-size: 18px;
		line-height: 1.2;
		text-align: center;
		transform: translateY(-100%);
	}
}

.kugai-recruit-business ul,
.kugai-recruit-info__body ul {
	display: grid;
	gap: 10px;
	padding-left: 1.1em;
}

.kugai-recruit-info {
	padding: 0 0 86px;
}

.kugai-recruit-info__item + .kugai-recruit-info__item {
	margin-top: 58px;
}

.kugai-recruit-info__body {
	padding: 40px 46px 0;
	color: #555;
	font-size: inherit;
	line-height: 1.8;

	p + p {
		margin-top: 6px;
	}
}

.kugai-recruit-info__note {
	color: #aaa;
	font-size: clamp(14px, 0.92vw, 18px);
	line-height: 1.5;
}

.kugai-recruit-faq {
	margin-top: 68px;
}

.kugai-recruit-faq__accordion.onesta-accordion {
	max-width: none;
	margin: 0;
	padding: 0;

	.onesta-accordion__inner {
		max-width: none;
	}

	.onesta-accordion__item {
		margin: 0;
		padding: 34px 42px;
		overflow: visible;
		border: 0;
		border-bottom: 1px solid #e5e5e5;
		border-radius: 0;
		background: transparent;
		box-shadow: none;
		color: #555;
		font-size: inherit;
		line-height: 1.75;
	}

	.onesta-accordion__trigger {
		display: flex;
		align-items: flex-start;
		justify-content: space-between;
		padding: 0;
		color: inherit;
		font-family: inherit;
		font-size: inherit;
		font-weight: 400;
		line-height: inherit;
	}

	.onesta-accordion__title,
	.onesta-accordion__content {
		display: grid;
		grid-template-columns: 28px minmax(0, 1fr);
		gap: 16px;
		align-items: start;
		font-size: inherit;
	}

	.onesta-accordion__title::before {
		color: var(--kugai-blue);
		content: "Q";
		font-weight: 900;
	}

	.onesta-accordion__icon {
		order: 2;
		flex-shrink: 0;
		margin-top: 2px;
	}

	.onesta-accordion__body,
	details.onesta-accordion__item > .onesta-accordion__body {
		padding: 0;
	}

	.onesta-accordion__content,
	details.onesta-accordion__item
		> .onesta-accordion__body
		> .onesta-accordion__content,
	details.onesta-accordion__item[open]
		> .onesta-accordion__body
		> .onesta-accordion__content {
		padding: 10px 0 0;
		overflow: visible;
		color: inherit;
		font-size: inherit;
		line-height: inherit;
	}

	.onesta-accordion__content::before {
		color: #e21d1d;
		content: "A";
		font-weight: 900;
	}

	.onesta-accordion__content > * {
		grid-column: 2;
		margin: 0;
	}

	.onesta-accordion__content > * + * {
		margin-top: 4px;
	}
}

.kugai-recruit-apply {
	margin: 86px auto 0;
	text-align: center;

	a {
		position: relative;
		display: inline-flex;
		align-items: center;
		justify-content: center;
		box-sizing: border-box;
		width: min(650px, 100%);
		min-height: 78px;
		padding: 14px 90px;
		border-radius: 999px;
		background: var(--kugai-orange);
		color: var(--kugai-white);
		font-size: clamp(24px, 1.7vw, 34px);
		font-weight: 400;
		line-height: 1.25;
		text-decoration: none;

		&::after {
			position: absolute;
			top: 50%;
			right: 58px;
			display: block;
			width: 16px;
			height: 28px;
			background-image: url("/wp/wp-content/plugins/onesta/assets/images/icons/icon-arrow-right-w.svg");
			background-repeat: no-repeat;
			background-position: center;
			background-size: contain;
			content: "";
			line-height: 1;
			transform: translateY(-50%);
		}

		&:hover {
			background: #c84f00;
		}
	}
}

.kugai-recruit-interviews {
	padding: 80px 0 0;
	background: var(--kugai-white);
}

.kugai-recruit-interviews__banner {
	position: relative;
	display: flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-height: 116px;
	margin: 0 0 72px;
	padding: 20px 220px 20px 40px;
	color: var(--kugai-white);
	font-size: clamp(30px, 2.25vw, 44px);
	font-weight: 400;
	isolation: isolate;
	letter-spacing: 0;
	line-height: 1.25;

	&::before {
		position: absolute;
		z-index: -1;
		inset: 0;
		background: var(--kugai-blue);
		clip-path: polygon(0 0, calc(100% - 148px) 0, 100% 100%, 0 100%);
		content: "";
	}

	&::after {
		position: absolute;
		z-index: 1;
		top: -50px;
		right: 150px;
		width: 172px;
		aspect-ratio: 261.03 / 329.18;
		background: url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-pole-2.svg.svg")
			center / contain no-repeat;
		content: "";
		pointer-events: none;
	}
}

.kugai-recruit-interview {
	margin-top: 72px;

	+ .kugai-recruit-interview {
		margin-top: 92px;
	}
}

.kugai-recruit-interview__header {
	position: relative;
	display: grid;
	justify-items: center;
	min-height: 146px;

	h3 {
		position: relative;
		margin: 44px 0 0;
		padding-bottom: 54px;
		color: #2b78d4;
		font-size: clamp(30px, 2.15vw, 42px);
		font-weight: 400;
		line-height: 1.25;
		text-align: center;

		&::after {
			position: absolute;
			bottom: -30px;
			left: 50%;
			width: 5px;
			height: 60px;
			border-radius: 5px;
			background: var(--kugai-blue);
			content: "";
			transform: translateX(-50%);
		}
	}
}

.kugai-recruit-interview__mark {
	position: absolute;
	top: 16px;
	left: calc(50% - 260px);
	display: block;
	width: 72px;
	height: auto;
	object-fit: contain;
}

.kugai-recruit-interview__worker {
	position: absolute;
	z-index: 1;
	width: 160px;
	height: auto;
	object-fit: contain;
}

.kugai-recruit-interview--middle .kugai-recruit-interview__worker {
	right: 185px;
	bottom: -8px;
	transform: scaleX(-1);
}

.kugai-recruit-interview--veteran .kugai-recruit-interview__worker {
	left: 230px;
	bottom: -6px;
}

.kugai-recruit-interview__panel {
	display: grid;
	gap: 64px;
	padding: 90px 48px 76px;
	border-radius: 18px;
	background: #f2f5f7;
}

.kugai-recruit-qa {
	display: grid;
}

.kugai-recruit-qa__question {
	display: grid;
	grid-template-columns: 100px minmax(0, 1fr);
	gap: 28px;
	align-items: center;

	p {
		position: relative;
		top: -10px;
		display: flex;
		align-items: center;
		min-height: 80px;
		box-sizing: border-box;
		padding: 18px 40px;
		border-radius: 18px;
		background: var(--kugai-yellow);
		color: #444;
		font-size: clamp(18px, 1.2vw, 24px);
		line-height: 1.5;

		&::before {
			position: absolute;
			top: 50%;
			left: -34px;
			width: 40px;
			height: 39px;
			background: url("/wp/wp-content/plugins/onesta/assets/images/decorative/bubble-tail-y.svg")
				center / contain no-repeat;
			content: "";
			transform: translateY(-50%);
		}
	}
}

.kugai-recruit-qa__icon {
	justify-self: center;
	display: block;
	width: 60px;
	height: 68px;
	object-fit: contain;
	bottom: -5px;
	position: relative;
}

.kugai-recruit-qa__answer {
	box-sizing: border-box;
	padding: 42px 54px;
	z-index: 1;
	border: 4px solid var(--kugai-blue);
	border-radius: 20px;
	background: var(--kugai-white);
	color: #555;
	font-size: inherit;
	line-height: 2;

	p + p {
		margin-top: 24px;
	}
}

.kugai-recruit-housing {
	margin-top: 112px;
	padding: 118px 0 116px;
	background: var(--kugai-cream);

	h2 {
		display: flex;
		gap: 22px;
		align-items: center;
		justify-content: center;
		margin-bottom: 42px;
		color: #ff7a18;
		font-size: clamp(34px, 2.3vw, 48px);
		font-weight: 400;
		line-height: 1.35;
		text-align: center;

		&::before,
		&::after {
			width: 5px;
			height: 56px;
			background: #ff7a18;
			content: "";
		}

		&::before {
			transform: rotate(-28deg);
		}

		&::after {
			transform: rotate(28deg);
		}
	}
}

.kugai-recruit-housing__lead {
	width: min(100%, var(--kugai-wrap));
	margin-inline: auto;
	color: #555;
	font-size: inherit;
	line-height: 1.85;
}

.kugai-recruit-housing__photos {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: 52px;
	margin-top: 58px;

	figure {
		overflow: hidden;
		background: var(--kugai-white);
	}

	img {
		width: 100%;
		aspect-ratio: 772 / 514;
		object-fit: cover;
	}
}

.kugai-recruit-final-apply {
	padding: 82px 0 76px;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);

	.kugai-recruit-apply {
		margin-top: 0;
	}
}

@media (max-width: 900px) {
	.kugai-recruit-hero {
		min-height: 310px;
	}

	.kugai-recruit-wrap {
		width: var(--kugai-wrap);
	}

	.kugai-recruit-intro {
		padding: 62px 0 30px;
	}

	.kugai-recruit-intro .kugai-subpage-section-title {
		margin-bottom: 54px;
	}

	.kugai-recruit-intro__photo {
		border-radius: 22px;
	}

	.kugai-recruit-lead {
		margin-top: 34px;
	}

	.kugai-recruit-bar,
	.kugai-recruit-info__item h3 {
		min-height: 66px;
		padding: 14px 24px;
		font-size: 22px;
	}

	.kugai-recruit-role {
		width: 100%;
		margin: 34px auto 54px;
	}

	.kugai-recruit-role:last-child {
		margin-bottom: 60px;
	}

	.kugai-recruit-role__subhead {
		--kugai-role-tri-size: 26px;
		gap: 12px;
		margin-left: 0;
	}

	.kugai-recruit-role__subhead strong {
		gap: 12px;
	}

	.kugai-recruit-role > p {
		margin-left: 0;
	}

	.kugai-recruit-business {
		margin-left: 0;
		padding: 46px 28px 32px;
	}

	.kugai-recruit-info {
		padding-bottom: 62px;
	}

	.kugai-recruit-info__item + .kugai-recruit-info__item {
		margin-top: 38px;
	}

	.kugai-recruit-info__body {
		padding: 26px 20px 0;
	}

	.kugai-recruit-faq__accordion .onesta-accordion__item {
		padding: 26px 20px;
	}

	.kugai-recruit-apply {
		margin-top: 56px;
	}

	.kugai-recruit-apply a {
		width: min(420px, 100%);
		min-height: 66px;
		padding-inline: 64px;
		font-size: 24px;
	}

	.kugai-recruit-apply a::after {
		right: 34px;
		width: 16px;
		height: 28px;
	}

	.kugai-recruit-interviews {
		padding-top: 60px;
	}

	.kugai-recruit-interviews__banner::after {
		top: -1px;
		right: 36px;
		width: 112px;
	}

	.kugai-recruit-interviews__banner {
		min-height: 88px;
		margin-bottom: 56px;
		padding-right: 150px;
		font-size: 28px;
	}

	.kugai-recruit-interviews__banner::before {
		clip-path: polygon(0 0, calc(100% - 92px) 0, 100% 100%, 0 100%);
	}

	.kugai-recruit-interview + .kugai-recruit-interview {
		margin-top: 70px;
	}

	.kugai-recruit-interview__header {
		min-height: 120px;
	}

	.kugai-recruit-interview__header h3 {
		margin-top: 34px;
		padding-bottom: 42px;
		font-size: 30px;
	}

	.kugai-recruit-interview__header h3::after {
		bottom: -30px;
		height: 60px;
	}

	.kugai-recruit-interview__mark {
		left: calc(50% - 190px);
		width: 52px;
	}

	.kugai-recruit-interview--middle .kugai-recruit-interview__worker {
		right: 30px;
		width: 112px;
	}

	.kugai-recruit-interview--veteran .kugai-recruit-interview__worker {
		left: 32px;
		width: 112px;
	}

	.kugai-recruit-interview__panel {
		gap: 46px;
		padding: 56px 24px 46px;
	}

	.kugai-recruit-qa__question {
		grid-template-columns: 62px minmax(0, 1fr);
		gap: 16px;
	}

	.kugai-recruit-qa__question p {
		min-height: 62px;
		padding: 14px 22px;
		font-size: 17px;
	}

	.kugai-recruit-qa__question p::before {
		left: -26px;
		width: 31px;
		height: 30px;
	}

	.kugai-recruit-qa__icon {
		height: 66px;
	}

	.kugai-recruit-qa__answer {
		margin-left: 62px;
		padding: 30px 28px;
		border-width: 3px;
		line-height: 1.9;
	}

	.kugai-recruit-housing {
		margin-top: 72px;
		padding: 78px 0 80px;
	}

	.kugai-recruit-housing h2 {
		margin-bottom: 30px;
		font-size: 32px;
	}

	.kugai-recruit-housing__photos {
		gap: 24px;
		margin-top: 38px;
	}

	.kugai-recruit-final-apply {
		padding: 58px 0 56px;
	}
}

@media (max-width: 560px) {
	.kugai-recruit-hero {
		min-height: 230px;
	}

	.kugai-recruit-wrap {
		width: var(--kugai-wrap);
	}

	.kugai-recruit-intro {
		padding: 44px 0 22px;
	}

	.kugai-recruit-intro .kugai-subpage-section-title {
		margin-bottom: 34px;
	}

	.kugai-recruit-intro__photo {
		border-radius: 14px;
	}

	.kugai-recruit-lead {
		margin-top: 24px;
		line-height: 1.8;
	}

	.kugai-recruit-lead p:nth-child(3) {
		margin-top: 22px;
	}

	.kugai-recruit-jobs {
		padding-top: 8px;
	}

	.kugai-recruit-bar,
	.kugai-recruit-info__item h3 {
		min-height: 54px;
		padding: 12px 16px;
		font-size: 18px;
	}

	.kugai-recruit-role {
		margin: 28px auto 42px;
		line-height: 1.75;
	}

	.kugai-recruit-role:last-child {
		margin-bottom: 46px;
	}

	.kugai-recruit-role h3 {
		font-size: 18px;
	}

	.kugai-recruit-role__subhead {
		--kugai-role-tri-size: 22px;
		grid-template-columns: auto minmax(48px, 1fr);
		gap: 8px;
		margin-bottom: 20px;
		font-size: 17px;
	}

	.kugai-recruit-role__subhead strong {
		gap: 8px;
	}

	.kugai-recruit-role__subhead::after {
		height: 3px;
	}

	.kugai-recruit-business {
		margin-top: 44px;
		padding: 36px 18px 24px;
		border-radius: 0 12px 12px 12px;
	}

	.kugai-recruit-business > span {
		left: 0;
		min-width: 112px;
		padding: 11px 16px;
		font-size: 15px;
	}

	.kugai-recruit-info__body {
		padding: 22px 6px 0;
	}

	.kugai-recruit-faq {
		margin-top: 48px;
	}

	.kugai-recruit-faq__accordion .onesta-accordion__item {
		padding: 22px 6px;
	}

	.kugai-recruit-faq__accordion .onesta-accordion__title,
	.kugai-recruit-faq__accordion .onesta-accordion__content {
		grid-template-columns: 22px minmax(0, 1fr);
		gap: 10px;
	}

	.kugai-recruit-apply a {
		min-height: 60px;
		padding-inline: 46px 58px;
		font-size: 21px;
	}

	.kugai-recruit-apply a::after {
		right: 24px;
		width: 16px;
		height: 28px;
	}

	.kugai-recruit-interviews__banner {
		justify-content: flex-start;
		min-height: 74px;
		padding: 16px 104px 16px 18px;
		font-size: 22px;
	}

	.kugai-recruit-interviews__banner::before {
		clip-path: polygon(0 0, calc(100% - 52px) 0, 100% 100%, 0 100%);
	}

	.kugai-recruit-interviews__banner::after {
		top: 7px;
		right: 14px;
		width: 80px;
	}

	.kugai-recruit-interview {
		margin-top: 52px;
	}

	.kugai-recruit-interview + .kugai-recruit-interview {
		margin-top: 54px;
	}

	.kugai-recruit-interview__header {
		min-height: 100px;
	}

	.kugai-recruit-interview__header h3 {
		margin-top: 28px;
		padding-bottom: 34px;
		font-size: 24px;
	}

	.kugai-recruit-interview__header h3::after {
		bottom: -20px;
		width: 5px;
		height: 40px;
	}

	.kugai-recruit-interview__mark {
		left: 22px;
		width: 42px;
	}

	.kugai-recruit-interview__panel {
		gap: 36px;
		padding: 32px 14px 34px;
		border-radius: 10px;
	}

	.kugai-recruit-interview--middle .kugai-recruit-interview__worker,
	.kugai-recruit-interview--veteran .kugai-recruit-interview__worker {
		bottom: 2px;
		width: 72px;
	}

	.kugai-recruit-interview--middle .kugai-recruit-interview__worker {
		right: 4px;
	}

	.kugai-recruit-interview--veteran .kugai-recruit-interview__worker {
		left: 4px;
	}

	.kugai-recruit-qa__question {
		grid-template-columns: 52px minmax(0, 1fr);
		gap: 10px;
		align-items: center;
	}

	.kugai-recruit-qa__icon {
		display: block;
		width: 44px;
		height: 52px;
		bottom: -3px;
	}

	.kugai-recruit-qa__question p {
		min-height: 68px;
		padding: 14px 16px 14px 18px;
		border-radius: 14px;
		font-size: 15px;
	}

	.kugai-recruit-qa__question p::before {
		display: block;
		left: -14px;
		width: 15px;
		height: 23px;
	}

	.kugai-recruit-qa__answer {
		margin-left: 0;
		padding: 22px 18px;
		border-width: 3px;
		border-radius: 12px;
		line-height: 1.85;
	}

	.kugai-recruit-qa__answer p + p {
		margin-top: 18px;
	}

	.kugai-recruit-housing {
		margin-top: 54px;
		padding: 54px 0 58px;
	}

	.kugai-recruit-housing h2 {
		gap: 12px;
		font-size: 25px;
	}

	.kugai-recruit-housing h2::before,
	.kugai-recruit-housing h2::after {
		height: 36px;
	}

	.kugai-recruit-housing__lead {
		line-height: 1.75;
	}

	.kugai-recruit-housing__photos {
		grid-template-columns: 1fr;
		gap: 18px;
	}
}

/* SERVICE card links */
.kugai-service-card__link {
	position: absolute;
	inset: 0;
	z-index: 4;
	border-radius: 14px;
	overflow: hidden;
	text-indent: -9999px;
}

.kugai-service-card__link:focus-visible {
	outline: 3px solid var(--kugai-blue);
	outline-offset: 6px;
}

/* News single page */
body.single-post {
	background: var(--kugai-white);
}

body.single-post .onestar-template-main--single {
	position: relative;
	box-sizing: border-box;
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	padding: 0 0 82px;
	overflow: hidden;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
	color: #333;
	font-family: var(--kugai-font-sans);
	line-height: 1.9;
}

body.single-post .onestar-template-main--single::before {
	display: block;
	width: 100%;
	height: 325px;
	background:
		linear-gradient(rgb(255 255 255 / 8%), rgb(255 255 255 / 8%)),
		url("/wp/wp-content/plugins/onesta/assets/images/secondary/news-hero.jpg")
			center 48% / cover no-repeat;
	content: "";
}

body.single-post .onestar-template-main--single::after {
	position: absolute;
	z-index: 1;
	top: 110px;
	left: 0;
	display: grid;
	place-items: center;
	width: calc(100vw - 108px);
	height: 120px;
	background: rgba(13, 84, 167, 0.88);
	clip-path: polygon(0 0, calc(100% - 125px) 0, 100% 100%, 0 100%);
	color: var(--kugai-yellow);
	content: "お知らせ";
	font-size: clamp(34px, 3vw, 45px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
	text-align: center;
}

body.single-post .onestar-template-main--single > .wp-block-post-title::before {
	position: absolute;
	z-index: 2;
	top: 132px;
	left: 0;
	width: 100%;
	color: var(--kugai-white);
	content: "NEWS";
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
	text-align: center;
}

body.single-post .onestar-template-main--single > .wp-block-post-title,
body.single-post .onestar-template-main--single > .onestar-post-meta,
body.single-post .onestar-template-main--single > .entry-content {
	box-sizing: border-box;
	width: min(1068px, calc(100vw - 48px));
	margin-right: auto;
	margin-left: auto;
	background: #eef2f4;
}

body.single-post .onestar-template-main--single > .wp-block-post-title {
	margin-top: 64px;
	margin-bottom: 0;
	padding: 56px 72px 6px;
	border-radius: 18px 18px 0 0;
	color: #666;
	font-size: clamp(26px, 2.1vw, 34px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.45;
}

body.single-post
	.onestar-template-main--single
	> .wp-block-post-featured-image {
	display: none;
}

body.single-post .onestar-template-main--single > .onestar-post-meta {
	gap: 18px;
	margin-top: 0;
	margin-bottom: 0;
	padding: 0 72px 26px;
	color: #aaa;
	font-size: 15px;
	font-weight: 700;
	letter-spacing: 0.08em;
}

body.single-post .onestar-template-main--single > .onestar-post-meta a {
	color: inherit;
	text-decoration: none;
}

body.single-post .onestar-template-main--single > .entry-content {
	margin-top: 0;
	padding: 0 72px 210px;
	border-radius: 0 0 18px 18px;
	color: #4b4b4b;
	font-size: clamp(16px, 1.35vw, 20px);
	font-weight: 400;
	letter-spacing: 0.02em;
	line-height: 1.75;
}

body.single-post .onestar-template-main--single > .entry-content > * {
	max-width: none;
	margin-right: 0;
	margin-left: 0;
}

body.single-post .onestar-template-main--single > .entry-content p {
	margin-top: 0;
	margin-bottom: 0;
}

body.single-post .onestar-template-main--single > .wp-block-post-tags,
body.single-post .onestar-template-main--single > .onestar-related-posts,
body.single-post .onestar-template-main--single > .wp-block-comments {
	display: none;
}

body.single-post .onestar-template-main--single .onesta-share {
	display: none;
}

body.single-post .onestar-template-main--single > .onestar-post-nav {
	display: flex;
	justify-content: center;
	width: min(1068px, calc(100vw - 48px));
	margin: 46px auto 0;
	padding: 0;
}

body.single-post .onestar-template-main--single > .onestar-post-nav > * {
	display: none;
}

body.single-post .onestar-template-main--single > .onestar-post-nav::before {
	color: var(--kugai-blue);
	content: "お知らせ一覧に戻る  \203A";
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.03em;
	line-height: 1;
}

body.single-post footer.wp-block-template-part {
	position: relative;
	border-top: 3px solid #333;
}

body.single-post footer.wp-block-template-part::before {
	display: grid;
	align-content: start;
	justify-items: center;
	box-sizing: border-box;
	min-height: 300px;
	padding: 54px 24px 44px;
	background:
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg")
			max(8vw, 120px) bottom / 190px auto no-repeat,
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-c.svg")
			calc(100% - max(13vw, 190px)) bottom / 170px auto no-repeat,
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
			calc(100% - max(7vw, 105px)) bottom / 160px auto no-repeat,
		var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
		var(--kugai-white);
	color: #555;
	content: "なんでも相談できる、久貝電設!";
	font-size: clamp(22px, 2.15vw, 34px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.45;
	text-align: center;
	white-space: pre;
}

body.single-post footer.wp-block-template-part::after {
	position: absolute;
	top: 150px;
	left: 50%;
	display: grid;
	place-items: center;
	width: min(430px, calc(100vw - 56px));
	height: 64px;
	background: var(--kugai-orange);
	border-radius: 999px;
	color: var(--kugai-white);
	content: "ご相談はこちら  \203A";
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1;
	transform: translateX(-50%);
}

@media (max-width: 900px) {
	body.single-post .onestar-template-main--single::before {
		height: 245px;
	}

	body.single-post .onestar-template-main--single::after {
		top: 88px;
		width: 100%;
		height: 92px;
		clip-path: polygon(0 0, calc(100% - 72px) 0, 100% 100%, 0 100%);
	}

	body.single-post
		.onestar-template-main--single
		> .wp-block-post-title::before {
		top: 106px;
		width: 100%;
	}

	body.single-post .onestar-template-main--single > .wp-block-post-title,
	body.single-post .onestar-template-main--single > .onestar-post-meta,
	body.single-post .onestar-template-main--single > .entry-content,
	body.single-post .onestar-template-main--single > .onestar-post-nav {
		width: min(720px, calc(100vw - 32px));
	}

	body.single-post .onestar-template-main--single > .wp-block-post-title {
		margin-top: 44px;
		padding: 34px 24px 4px;
		border-radius: 14px 14px 0 0;
		font-size: 23px;
	}

	body.single-post .onestar-template-main--single > .onestar-post-meta {
		padding: 0 24px 20px;
		font-size: 13px;
	}

	body.single-post .onestar-template-main--single > .entry-content {
		padding: 0 24px 118px;
		border-radius: 0 0 14px 14px;
		font-size: 16px;
		line-height: 1.85;
	}

	body.single-post footer.wp-block-template-part::before {
		min-height: 250px;
		padding: 38px 22px 34px;
		background:
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg")
				12px bottom / 105px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-c.svg")
				calc(100% - 82px) bottom / 95px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
				calc(100% - 18px) bottom / 92px auto no-repeat,
			var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
			var(--kugai-white);
		font-size: 21px;
	}

	body.single-post footer.wp-block-template-part::after {
		top: 128px;
		width: min(360px, calc(100vw - 72px));
		height: 56px;
		font-size: 18px;
	}
}

@media (max-width: 560px) {
	body.single-post .onestar-template-main--single {
		padding-bottom: 58px;
	}

	body.single-post .onestar-template-main--single::before {
		height: 205px;
	}

	body.single-post .onestar-template-main--single::after {
		top: 72px;
		height: 82px;
		font-size: 30px;
	}

	body.single-post
		.onestar-template-main--single
		> .wp-block-post-title::before {
		top: 88px;
		font-size: 13px;
	}

	body.single-post .onestar-template-main--single > .wp-block-post-title,
	body.single-post .onestar-template-main--single > .onestar-post-meta,
	body.single-post .onestar-template-main--single > .entry-content,
	body.single-post .onestar-template-main--single > .onestar-post-nav {
		width: calc(100vw - 28px);
	}

	body.single-post .onestar-template-main--single > .wp-block-post-title {
		margin-top: 28px;
		padding: 28px 18px 4px;
		font-size: 21px;
	}

	body.single-post .onestar-template-main--single > .onestar-post-meta {
		padding: 0 18px 18px;
	}

	body.single-post .onestar-template-main--single > .entry-content {
		padding: 0 18px 92px;
		font-size: 15px;
	}

	body.single-post .onestar-template-main--single > .onestar-post-nav {
		margin-top: 34px;
	}

	body.single-post footer.wp-block-template-part::before {
		min-height: 220px;
		background:
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg") -8px
				bottom / 86px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
				calc(100% + 6px) bottom / 82px auto no-repeat,
			var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
			var(--kugai-white);
		font-size: 18px;
	}

	body.single-post footer.wp-block-template-part::after {
		top: 116px;
		width: min(290px, calc(100vw - 76px));
		height: 50px;
		font-size: 16px;
	}
}

/* News single template elements */
body.single-post .onestar-template-main--single::before,
body.single-post .onestar-template-main--single::after,
body.single-post .onestar-template-main--single > .wp-block-post-title::before,
body.single-post footer.wp-block-template-part::before,
body.single-post footer.wp-block-template-part::after {
	display: none;
	content: none;
}

body.single-post .kugai-news-hero {
	position: relative;
	display: grid;
	align-items: center;
	min-height: 325px;
	overflow: hidden;
	background:
		linear-gradient(rgb(255 255 255 / 8%), rgb(255 255 255 / 8%)),
		url("/wp/wp-content/plugins/onesta/assets/images/secondary/news-hero.jpg")
			center 48% / cover no-repeat;
}

body.single-post .kugai-news-hero__band {
	position: relative;
	display: grid;
	z-index: 1;
	place-items: center;
	box-sizing: border-box;
	width: calc(100vw - 108px);
	min-height: 120px;
	padding: 26px 24px 28px;
	background: rgba(13, 84, 167, 0.88);
	clip-path: polygon(0 0, calc(100% - 125px) 0, 100% 100%, 0 100%);
}

body.single-post .kugai-news-hero__eyebrow,
body.single-post .kugai-news-hero__label {
	margin: 0;
	text-align: center;
}

body.single-post .kugai-news-hero__eyebrow {
	color: var(--kugai-white);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0;
	line-height: 1;
}

body.single-post .kugai-news-hero__label {
	margin-top: 8px;
	color: var(--kugai-yellow);
	font-size: clamp(34px, 3vw, 45px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1;
}

body.single-post .onestar-template-main--single > .onestar-related-posts {
	display: block;
	box-sizing: border-box;
	width: min(1068px, calc(100vw - 48px));
	margin: 54px auto 0;
	padding: 0;
	background: transparent;
	color: #333;
}

body.single-post .onestar-related-posts > .wp-block-heading {
	position: relative;
	margin: 0 0 28px;
	padding-bottom: 18px;
	color: #333;
	font-size: clamp(26px, 2vw, 34px);
	font-weight: 500;
	letter-spacing: 0;
	line-height: 1.35;
	text-align: center;
}

body.single-post .onestar-related-posts > .wp-block-heading::after {
	position: absolute;
	bottom: 0;
	left: 50%;
	width: 64px;
	height: 4px;
	background: var(--kugai-blue);
	border-radius: 3px;
	content: "";
	transform: translateX(-50%);
}

body.single-post .onestar-related-posts .wp-block-post-template {
	display: grid;
	grid-template-columns: repeat(3, minmax(0, 1fr));
	gap: 24px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.single-post .onestar-related-posts .wp-block-post {
	overflow: hidden;
	background: var(--kugai-white);
	border-radius: 12px;
	box-shadow: 0 10px 30px rgb(0 0 0 / 8%);
}

body.single-post .onestar-related-posts .wp-block-post-featured-image {
	margin: 0;
}

body.single-post .onestar-related-posts .wp-block-post-featured-image img {
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

body.single-post .onestar-related-posts .wp-block-post-title {
	margin: 0;
	padding: 18px 18px 6px;
	font-size: 18px;
	font-weight: 700;
	line-height: 1.55;
}

body.single-post .onestar-related-posts .wp-block-post-title a {
	color: var(--kugai-blue);
	text-decoration: none;
}

body.single-post .onestar-related-posts .wp-block-post-title a:hover {
	text-decoration: underline;
	text-underline-offset: 4px;
}

body.single-post .onestar-related-posts .wp-block-post-date {
	padding: 0 18px 18px;
	color: #999;
	font-size: 13px;
	font-weight: 700;
	letter-spacing: 0.06em;
}

body.single-post .kugai-news-related__empty {
	box-sizing: border-box;
	width: min(520px, 100%);
	margin: 0 auto;
	padding: 22px 24px;
	background: rgb(255 255 255 / 74%);
	border-radius: 12px;
	color: #666;
	text-align: center;
}

body.single-post .kugai-news-back-link {
	width: min(1068px, calc(100vw - 48px));
	margin: 46px auto 0;
	text-align: center;
}

body.single-post .kugai-news-back-link a {
	color: var(--kugai-blue);
	font-size: 16px;
	font-weight: 700;
	letter-spacing: 0.03em;
	text-decoration: none;
}

body.single-post .kugai-news-back-link a::after {
	margin-left: 8px;
	content: "\203A";
}

body.single-post .kugai-news-cta {
	position: relative;
	display: grid;
	align-content: start;
	justify-items: center;
	box-sizing: border-box;
	min-height: 300px;
	padding: 54px 24px 44px;
	overflow: hidden;
	background:
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg")
			max(8vw, 120px) bottom / 190px auto no-repeat,
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-c.svg")
			calc(100% - max(13vw, 190px)) bottom / 170px auto no-repeat,
		url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
			calc(100% - max(7vw, 105px)) bottom / 160px auto no-repeat,
		var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
		var(--kugai-white);
	border-top: 3px solid #333;
	color: #555;
	text-align: center;
}

body.single-post .kugai-news-cta__lead {
	margin: 0 0 32px;
	font-size: clamp(22px, 2.15vw, 34px);
	font-weight: 400;
	letter-spacing: 0;
	line-height: 1.45;
}

body.single-post .kugai-news-cta__actions {
	margin: 0;
}

body.single-post .kugai-news-cta__button .wp-block-button__link {
	display: inline-flex;
	align-items: center;
	justify-content: center;
	box-sizing: border-box;
	min-width: min(430px, calc(100vw - 56px));
	min-height: 64px;
	padding: 16px 42px;
	background: var(--kugai-orange);
	border-radius: 999px;
	color: var(--kugai-white);
	font-size: 22px;
	font-weight: 500;
	letter-spacing: 0.04em;
	line-height: 1;
	text-decoration: none;
}

body.single-post .kugai-news-cta__button .wp-block-button__link::after {
	margin-left: 12px;
	content: "\203A";
}

@media (max-width: 900px) {
	body.single-post .kugai-news-hero {
		min-height: 245px;
	}

	body.single-post .kugai-news-hero__band {
		width: 100%;
		min-height: 92px;
		clip-path: polygon(0 0, calc(100% - 72px) 0, 100% 100%, 0 100%);
	}

	body.single-post .onestar-template-main--single > .onestar-related-posts,
	body.single-post .kugai-news-back-link {
		width: min(720px, calc(100vw - 32px));
	}

	body.single-post .onestar-related-posts .wp-block-post-template {
		grid-template-columns: 1fr;
		gap: 18px;
	}

	body.single-post .kugai-news-cta {
		min-height: 250px;
		padding: 38px 22px 34px;
		background:
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg")
				12px bottom / 105px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-c.svg")
				calc(100% - 82px) bottom / 95px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
				calc(100% - 18px) bottom / 92px auto no-repeat,
			var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
			var(--kugai-white);
	}

	body.single-post .kugai-news-cta__lead {
		margin-bottom: 28px;
		font-size: 21px;
	}

	body.single-post .kugai-news-cta__button .wp-block-button__link {
		min-width: min(360px, calc(100vw - 72px));
		min-height: 56px;
		font-size: 18px;
	}
}

@media (max-width: 560px) {
	body.single-post .kugai-news-hero {
		min-height: 205px;
	}

	body.single-post .kugai-news-hero__band {
		min-height: 82px;
	}

	body.single-post .kugai-news-hero__eyebrow {
		font-size: 13px;
	}

	body.single-post .kugai-news-hero__label {
		margin-top: 5px;
		font-size: 30px;
	}

	body.single-post .onestar-template-main--single > .onestar-related-posts,
	body.single-post .kugai-news-back-link {
		width: calc(100vw - 28px);
	}

	body.single-post .onestar-related-posts > .wp-block-heading {
		font-size: 24px;
	}

	body.single-post .kugai-news-cta {
		min-height: 220px;
		background:
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-l.svg") -8px
				bottom / 86px auto no-repeat,
			url("/wp/wp-content/plugins/onesta/assets/images/illustrations/worker-consultation-r.svg")
				calc(100% + 6px) bottom / 82px auto no-repeat,
			var(--kugai-pattern-stripes-o) var(--kugai-pattern-cover),
			var(--kugai-white);
	}

	body.single-post .kugai-news-cta__lead {
		font-size: 18px;
	}

	body.single-post .kugai-news-cta__button .wp-block-button__link {
		min-width: min(290px, calc(100vw - 76px));
		min-height: 50px;
		font-size: 16px;
	}
}

/* News pages reuse the same hero structure as kugai subpages. */
.kugai-subpage--news .kugai-subpage-hero {
	min-height: 455px;
}

.kugai-subpage--news .kugai-subpage-hero__media img {
	object-position: center 48%;
}

@media (min-width: 901px) {
	.kugai-subpage--news .kugai-subpage-hero__band {
		min-height: 180px;
		margin-top: 18px;
		padding: 34px 24px 40px;
		clip-path: polygon(
			0 0,
			calc(100% - 345px) 0,
			calc(100% - 168px) 100%,
			0 100%
		);
	}
}

body.archive .onestar-template-main--archive {
	width: 100vw;
	max-width: none;
	margin-right: calc(50% - 50vw);
	margin-left: calc(50% - 50vw);
	overflow: hidden;
	background: var(--kugai-white) var(--kugai-pattern-stripes-o)
		var(--kugai-pattern-cover);
	color: var(--kugai-text);
	font-family: var(--kugai-font-sans);
}

body.archive .kugai-news-archive__body {
	box-sizing: border-box;
	width: min(1068px, calc(100vw - 48px));
	margin: 64px auto 96px;
	padding: 0;
}

body.archive .kugai-news-archive__description {
	margin: 0 0 30px;
	color: #555;
	font-size: 16px;
	line-height: 1.8;
	text-align: center;
}

body.archive .onestar-archive-list {
	margin: 0;
}

body.archive .onestar-archive-list .wp-block-post-template {
	display: grid;
	gap: 22px;
	margin: 0;
	padding: 0;
	list-style: none;
}

body.archive .onestar-archive-card {
	box-sizing: border-box;
	margin: 0;
	padding: 34px 40px;
	background: #eef2f4;
	border-radius: 16px;
}

body.archive .onestar-archive-card .wp-block-post-title {
	margin: 0 0 14px;
	font-size: clamp(24px, 2vw, 32px);
	font-weight: 500;
	line-height: 1.45;
}

body.archive .onestar-archive-card .wp-block-post-title a {
	color: var(--kugai-blue);
	text-decoration: none;
}

body.archive .onestar-archive-card .wp-block-post-title a:hover {
	text-decoration: underline;
	text-underline-offset: 5px;
}

body.archive .onestar-archive-card .onestar-post-meta {
	gap: 18px;
	margin: 0 0 18px;
	color: #999;
	font-size: 14px;
	font-weight: 700;
	letter-spacing: 0.06em;
}

body.archive .onestar-archive-card .wp-block-post-excerpt {
	margin: 0;
	color: #444;
	font-size: 16px;
	line-height: 1.8;
}

body.archive .onestar-archive-card .wp-block-post-excerpt__more-link {
	display: inline-flex;
	align-items: center;
	margin-top: 18px;
	color: var(--kugai-blue);
	font-weight: 700;
	text-decoration: none;
}

body.archive .onestar-archive-card .wp-block-post-excerpt__more-link::after {
	margin-left: 8px;
	content: "\203A";
}

body.archive .wp-block-query-pagination {
	display: flex;
	justify-content: center;
	gap: 18px;
	margin-top: 42px;
	color: var(--kugai-blue);
	font-weight: 700;
}

@media (max-width: 900px) {
	.kugai-subpage--news .kugai-subpage-hero {
		min-height: 275px;
	}

	body.archive .kugai-news-archive__body {
		width: min(720px, calc(100vw - 32px));
		margin-top: 44px;
		margin-bottom: 72px;
	}

	body.archive .onestar-archive-card {
		padding: 28px 24px;
	}
}

@media (max-width: 560px) {
	.kugai-subpage--news .kugai-subpage-hero {
		min-height: 230px;
	}

	body.archive .kugai-news-archive__body {
		width: calc(100vw - 28px);
		margin-top: 32px;
		margin-bottom: 58px;
	}

	body.archive .onestar-archive-card {
		padding: 24px 18px;
		border-radius: 14px;
	}

	body.archive .onestar-archive-card .wp-block-post-title {
		font-size: 22px;
	}
}

.onesta-featured-image-wrap {
	border-radius: 18px;
	margin-bottom: var(--kugai-space-r);
	overflow: hidden;
	aspect-ratio: 16 / 9;
}

.gmap {
	position: relative;
	overflow: hidden;
	border-radius: 12px;
}
