.pg-recruit {
	--rc-content-width: var(--lower-max-width);
	--rc-section-gap: clamp(3.2rem, 7.6vw, 5.8rem);
}

.pg-recruit .ly-lower {
	padding: 0 0 var(--rc-section-gap);
	background: #ececec;
	overflow: hidden;
}






.rc-content {
	width: var(--rc-content-width);
	margin: var(--rc-section-gap) auto 0;
}

.rc-content__heading {
	margin: 0;
	display: block;
	width: 100%;
	padding: clamp(0.8rem, 2vw, 1.2rem) clamp(1.2rem, 2.8vw, 1.9rem);
	background: var(--color-base-red);
	border-radius: clamp(0.8rem, 1.9vw, 1.2rem);
	font-family: var(--lower-font-corporate-bold);
	font-size: 1.5rem;
	font-weight: 700;
	line-height: 1.2;
	color: #fff;
	text-align: left;
	box-shadow: clamp(0.22rem, 0.7vw, 0.36rem) clamp(0.22rem, 0.7vw, 0.36rem) 0 #f2b328;
}

.rc-content__heading::after {
	content: none;
}

.rc-spec {
	margin-top: clamp(2.1rem, 4.3vw, 3.15rem);
	padding: 0;
}

.rc-spec__title {
	position: relative;
	margin: 0;
	padding-left: clamp(1rem, 2vw, 1.4rem);
	font-family: var(--lower-font-corporate-bold);
	font-size: clamp(1.25rem, 2.5vw, 1.95rem);
	font-weight: 700;
	line-height: 1.22;
	color: #231815;
}

.rc-spec__title::before {
	content: '';
	position: absolute;
	left: 0;
	top: clamp(0.22rem, 0.65vw, 0.45rem);
	width: clamp(0.42rem, 0.85vw, 0.6rem);
	height: clamp(1.95rem, 4vw, 2.9rem);
	background: #efbd35;
}

.rc-spec__list {
	margin: clamp(1.25rem, 2.4vw, 1.8rem) 0 0;
	padding: 0;
	border: 1px solid #bebebe;
	background: #ececec;
}

.rc-spec__row {
	display: grid;
	grid-template-columns: minmax(10rem, 28.5%) minmax(0, 1fr);
	align-items: stretch;
	min-height: clamp(5rem, 8.7vw, 7.2rem);
}

.rc-spec__row + .rc-spec__row {
	border-top: 1px solid #b3b3b3;
}

.rc-spec__row:last-child {
	border-bottom: 0;
}

.rc-spec__row dt {
	position: relative;
	margin: 0;
	background: #c8c9ca;
	display: flex;
	align-items: center;
	justify-content: center;
	padding: clamp(0.7rem, 1.4vw, 1.05rem);
	font-size: clamp(1.16rem, 1.85vw, 1.72rem);
	font-family: var(--lower-font-corporate-bold);
	font-weight: 700;
	line-height: 1.3;
	letter-spacing: 0.02em;
	color: #231815;
}

.rc-spec__row dt::after {
	content: '';
	position: absolute;
	left: clamp(0.8rem, 1.6vw, 1.4rem);
	right: clamp(0.8rem, 1.6vw, 1.4rem);
	bottom: 0;
	border-bottom: 1px solid #adadad;
}

.rc-spec__row dd {
	margin: 0;
	display: flex;
	align-items: center;
	padding: clamp(0.7rem, 1.4vw, 1.05rem) clamp(0.65rem, 1.45vw, 1.15rem);
	font-size: clamp(1.02rem, 1.5vw, 1.35rem);
	font-family: var(--lower-font-noto);
	font-weight: 700;
	line-height: 1.35;
	color: #231815;
	border-left: 1px solid #bdbdbd;
}

.rc-spec__row:last-child dt::after {
	content: none;
}

.rc-page-top {
	position: fixed;
	right: clamp(0.6rem, 1.8vw, 1.4rem);
	bottom: clamp(0.6rem, 1.8vw, 1.4rem);
	width: clamp(3.6rem, 6.2vw, 5.2rem);
	line-height: 0;
	z-index: 60;
}

.rc-page-top img {
	width: 100%;
	height: auto;
	display: block;
}

@media (max-width: 768px) {
	.pg-recruit {
		--rc-content-width: min(100%, calc(100% - 1.6rem));
		--rc-section-gap: clamp(2.2rem, 8.2vw, 3.4rem);
	}




	.rc-content__heading {
		padding-inline: clamp(0.95rem, 3.6vw, 1.25rem);
	}

	.rc-spec {
		margin-top: clamp(1.5rem, 5.8vw, 2.2rem);
	}

	.rc-spec__title {
		font-size: clamp(1.22rem, 5vw, 1.72rem);
		padding-left: clamp(0.75rem, 3vw, 1rem);
	}

	.rc-spec__title::before {
		top: clamp(0.12rem, 0.6vw, 0.22rem);
		width: clamp(0.28rem, 1.1vw, 0.36rem);
		height: clamp(1.45rem, 5.7vw, 2.05rem);
	}

	.rc-spec__row {
		grid-template-columns: 1fr;
		min-height: 0;
	}

	.rc-spec__row dt {
		justify-content: flex-start;
		font-size: clamp(0.92rem, 4.2vw, 1.14rem);
		padding: clamp(0.54rem, 2.5vw, 0.72rem) clamp(0.75rem, 3.1vw, 0.92rem);
	}

	.rc-spec__row dt::after {
		content: none;
	}

	.rc-spec__row dd {
		font-size: clamp(0.86rem, 3.5vw, 0.98rem);
		font-weight: 600;
		padding: clamp(0.58rem, 2.5vw, 0.75rem) clamp(0.75rem, 3.1vw, 0.92rem);
		border-left: 0;
		border-top: 1px solid #bdbdbd;
	}

	.rc-page-top {
		width: clamp(3.2rem, 16vw, 4.2rem);
		right: clamp(0.5rem, 2.6vw, 0.9rem);
		bottom: clamp(0.5rem, 2.6vw, 0.9rem);
	}
}
