@charset "utf-8";

/* ==================================================
   RECRUITページ専用スタイル
================================================== */

/* --- メッセージエリア --- */
.low_recruit-mvv {
	max-width: 800px;
	margin: 0 auto;
	padding: calc(var(--space-xl) * 1.5) 0;
}

.low_recruit-mvv-block {
	margin-bottom: calc(var(--space-xl) * 1.5);
	padding-bottom: var(--space-xl);
	border-bottom: 1px solid var(--color-gray-light);
}
.low_recruit-mvv-block:last-child {
	margin-bottom: 0;
	padding-bottom: 0;
	border-bottom: none;
}

.low_recruit-mvv-title {
	font-size: var(--font-size-sm);
	font-weight: 700;
	letter-spacing: 0.1em;
	color: #999999;
	margin-bottom: var(--space-md);
}

.low_recruit-mvv-text {
	font-size: 28px; /* 文字を少し大きくしてインパクトを出す */
	font-weight: 700;
	line-height: 1.8;
	color: var(--color-black);
}

.low_recruit-mvv-list {
	list-style: none;
	padding: 0;
	margin: 0;
}

.low_recruit-mvv-list li {
	font-size: var(--font-size-md);
	line-height: 1.8;
	margin-bottom: var(--space-md);
	padding-left: calc(var(--space-md) + 4px); /* 黒ポチとの隙間を調整 */
	position: relative;
}
.low_recruit-mvv-list li::before {
	content: '';
	position: absolute;
	left: 0;
	top: 12px;
	width: 6px; /* 黒ポチを少し四角く強調 */
	height: 6px;
	background-color: var(--color-black);
}

/* --- 募集要項エリア --- */
.low_recruit-jobs {
	margin-bottom: calc(var(--space-xl) * 2);
}

.low_recruit-loading {
	text-align: center;
	font-size: var(--font-size-sm);
	color: #999;
	padding: var(--space-xl) 0;
}

.low_recruit-card {
	background-color: var(--color-white);
	border: 1px solid var(--color-black);
	padding: calc(var(--space-xl) * 1.2);
	margin-bottom: var(--space-lg);
	transition:
		transform var(--transition-speed) ease,
		box-shadow var(--transition-speed) ease;
}

.low_recruit-card:hover {
	transform: translateY(-4px);
	box-shadow: 0 8px 24px rgba(0, 0, 0, 0.05);
}

.low_recruit-card-title {
	font-size: var(--font-size-lg);
	font-weight: 700;
	margin-bottom: var(--space-md);
	border-bottom: 2px solid var(--color-black);
	padding-bottom: var(--space-sm);
}

.low_recruit-empty {
	text-align: center;
	padding: calc(var(--space-xl) * 2) 20px; /* 横幅が狭い時用に左右padding追加 */
	background-color: var(--color-white);
	border: 1px dashed #cccccc;
}
.low_recruit-empty-text {
	font-size: var(--font-size-md);
	font-weight: 700;
	color: #666666;
	line-height: 1.8;
}

/* --- 採用お問い合わせへの導線 --- */
.low_recruit-contact {
	text-align: center;
	padding-top: var(--space-xl);
	border-top: 1px solid #dddddd;
}
.low_recruit-contact p {
	font-size: var(--font-size-sm);
	margin-bottom: var(--space-lg);
	line-height: 1.8;
}

/* ★ 画像1の縦潰れ修正！ */
.low_recruit-contact .cm_btn {
	display: inline-flex;
	justify-content: center;
	align-items: center;
	width: 100%;
	max-width: 320px;
	min-height: 60px; /* paddingではなく高さで確保 */
	margin: 0 auto;
	box-sizing: border-box;
	white-space: nowrap; /* ★ 改行を絶対禁止にする魔法 */
	text-decoration: none;
	padding: 0 20px;
}
/* ------------------------------
   ▼ SPサイズ（767px以下）の上書き ▼
------------------------------ */
@media (max-width: 767px) {
	/* MVVの余白と文字サイズをスマホ最適化 */
	.low_recruit-mvv {
		padding: var(--space-xl) 0;
	}
	.low_recruit-mvv-block {
		margin-bottom: var(--space-xl);
		padding-bottom: var(--space-lg);
	}
	.low_recruit-mvv-text {
		font-size: 20px; /* スマホでも読みやすいサイズに */
		line-height: 1.6;
	}
	.low_recruit-mvv-list li {
		font-size: 14px; /* 少し小さくしてスッキリさせる */
		margin-bottom: var(--space-sm);
	}
	.low_recruit-mvv-list li::before {
		top: 8px; /* 文字サイズに合わせて黒ポチの位置を微調整 */
	}

	/* カードの余白を少し詰める */
	.low_recruit-card {
		padding: var(--space-lg);
	}
	.low_recruit-card-title {
		font-size: 18px;
	}

	/* 空表示の余白調整 */
	.low_recruit-empty {
		padding: var(--space-xl) 16px;
	}
	.low_recruit-empty-text {
		font-size: 14px;
	}

	/* ボタン導線のテキストサイズ */
	.low_recruit-contact p {
		font-size: 13px;
	}
}
