/**
 * みつピタジョブ紹介ページ
 * 求職者・企業の2つの入口
 */

.lilac-mitsupita-job-entrances {
	width: 100%;
	margin: 0;
	padding: clamp(72px, 9vw, 120px) 20px;
	background:
		linear-gradient(
			135deg,
			#f9f7ff 0%,
			#ffffff 50%,
			#f4f9ff 100%
		);
}

.lilac-mitsupita-job-entrances__inner {
	width: min(100%, 1180px);
	margin: 0 auto;
}

.lilac-mitsupita-job-entrances__header {
	max-width: 800px;
	margin: 0 auto clamp(44px, 6vw, 72px);
	text-align: center;
}

.lilac-mitsupita-job-entrances__label {
	margin: 0 0 12px;
	color: #7757c7;
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.16em;
}

.lilac-mitsupita-job-entrances__title {
	margin: 0;
	color: #2f2935;
	font-size: clamp(30px, 4.4vw, 46px);
	font-weight: 700;
	line-height: 1.35;
	letter-spacing: 0.02em;
}

.lilac-mitsupita-job-entrances__description {
	margin: 20px 0 0;
	color: #686170;
	font-size: clamp(15px, 1.7vw, 18px);
	line-height: 2;
}

.lilac-mitsupita-job-entrances__grid {
	display: grid;
	grid-template-columns: repeat(2, minmax(0, 1fr));
	gap: clamp(24px, 4vw, 44px);
	align-items: stretch;
}

.lilac-mitsupita-job-entrance {
	position: relative;
	display: flex;
	flex-direction: column;
	min-width: 0;
	padding: clamp(32px, 4vw, 52px);
	border: 1px solid rgba(119, 87, 199, 0.14);
	border-radius: 28px;
	background: rgba(255, 255, 255, 0.96);
	box-shadow:
		0 20px 50px rgba(77, 57, 118, 0.08);
	overflow: hidden;
}

.lilac-mitsupita-job-entrance::before {
	position: absolute;
	top: 0;
	right: 0;
	width: 150px;
	height: 150px;
	border-radius: 0 0 0 100%;
	content: "";
	pointer-events: none;
}

.lilac-mitsupita-job-entrance--jobseeker::before {
	background:
		linear-gradient(
			135deg,
			rgba(125, 98, 211, 0.15),
			rgba(157, 200, 255, 0.06)
		);
}

.lilac-mitsupita-job-entrance--employer::before {
	background:
		linear-gradient(
			135deg,
			rgba(74, 136, 225, 0.14),
			rgba(130, 99, 202, 0.06)
		);
}

.lilac-mitsupita-job-entrance__number {
	position: relative;
	z-index: 1;
	margin: 0 0 22px;
	color: #8b70d4;
	font-size: 13px;
	font-weight: 700;
	line-height: 1;
	letter-spacing: 0.18em;
}

.lilac-mitsupita-job-entrance__icon {
	position: relative;
	z-index: 1;
	display: grid;
	width: 64px;
	height: 64px;
	margin: 0 0 26px;
	border-radius: 20px;
	place-items: center;
	font-size: 30px;
	line-height: 1;
}

.lilac-mitsupita-job-entrance--jobseeker
	.lilac-mitsupita-job-entrance__icon {
	background: #f0ebff;
}

.lilac-mitsupita-job-entrance--employer
	.lilac-mitsupita-job-entrance__icon {
	background: #eaf3ff;
}

.lilac-mitsupita-job-entrance__title {
	position: relative;
	z-index: 1;
	margin: 0;
	color: #302a38;
	font-size: clamp(24px, 2.8vw, 32px);
	font-weight: 700;
	line-height: 1.45;
}

.lilac-mitsupita-job-entrance__text {
	position: relative;
	z-index: 1;
	margin: 18px 0 0;
	color: #686170;
	font-size: 16px;
	line-height: 1.9;
}

.lilac-mitsupita-job-entrance__list {
	position: relative;
	z-index: 1;
	display: grid;
	gap: 12px;
	margin: 28px 0 32px;
	padding: 0;
	list-style: none;
}

.lilac-mitsupita-job-entrance__list li {
	position: relative;
	margin: 0;
	padding: 0 0 0 28px;
	color: #4f4857;
	font-size: 15px;
	font-weight: 600;
	line-height: 1.7;
}

.lilac-mitsupita-job-entrance__list li::before {
	position: absolute;
	top: 0.38em;
	left: 0;
	display: grid;
	width: 18px;
	height: 18px;
	border-radius: 50%;
	background: #efe9ff;
	color: #7353c1;
	content: "✓";
	font-size: 11px;
	font-weight: 700;
	line-height: 1;
	place-items: center;
}

.lilac-mitsupita-job-entrance__button {
	position: relative;
	z-index: 1;
	display: flex;
	width: 100%;
	min-height: 58px;
	margin-top: auto;
	padding: 14px 22px;
	border-radius: 16px;
	align-items: center;
	justify-content: space-between;
	gap: 16px;
	color: #ffffff;
	font-size: 16px;
	font-weight: 700;
	line-height: 1.5;
	text-decoration: none;
	transition:
		transform 0.2s ease,
		box-shadow 0.2s ease,
		opacity 0.2s ease;
}

.lilac-mitsupita-job-entrance__button--jobseeker {
	background:
		linear-gradient(
			135deg,
			#7654c5 0%,
			#8e74dc 100%
		);
	box-shadow:
		0 12px 26px rgba(118, 84, 197, 0.22);
}

.lilac-mitsupita-job-entrance__button--employer {
	background:
		linear-gradient(
			135deg,
			#416fae 0%,
			#628fd0 100%
		);
	box-shadow:
		0 12px 26px rgba(65, 111, 174, 0.22);
}

.lilac-mitsupita-job-entrance__button:hover,
.lilac-mitsupita-job-entrance__button:focus-visible {
	color: #ffffff;
	text-decoration: none;
	transform: translateY(-2px);
}

.lilac-mitsupita-job-entrance__button:focus-visible {
	outline: 3px solid rgba(118, 84, 197, 0.24);
	outline-offset: 4px;
}

/**
 * タブレット以下
 */
@media (max-width: 900px) {

	.lilac-mitsupita-job-entrances__grid {
		grid-template-columns: 1fr;
	}

}

/**
 * スマートフォン
 */
@media (max-width: 767px) {

	.lilac-mitsupita-job-entrances {
		padding:
			clamp(56px, 16vw, 76px)
			16px;
	}

	.lilac-mitsupita-job-entrances__header {
		margin-bottom: 36px;
		text-align: left;
	}

	.lilac-mitsupita-job-entrances__description {
		line-height: 1.85;
	}

	.lilac-mitsupita-job-entrance {
		padding: 28px 22px;
		border-radius: 22px;
	}

	.lilac-mitsupita-job-entrance::before {
		width: 110px;
		height: 110px;
	}

	.lilac-mitsupita-job-entrance__icon {
		width: 56px;
		height: 56px;
		margin-bottom: 22px;
		border-radius: 17px;
		font-size: 26px;
	}

	.lilac-mitsupita-job-entrance__text {
		font-size: 15px;
	}

	.lilac-mitsupita-job-entrance__list {
		margin:
			24px 0
			28px;
	}

	.lilac-mitsupita-job-entrance__button {
		min-height: 56px;
		font-size: 15px;
	}

}