/**
 * 企業紹介ページ制作・運営プラン
 * CTA
 */

.lilac-company-profile-cta {
	position: relative;
	width: 100%;
	margin: 0;
	padding: clamp(72px, 9vw, 112px) 20px;
	background:
		linear-gradient(
			135deg,
			#5f3d89 0%,
			#7957a5 48%,
			#9b7fc0 100%
		);
	overflow: hidden;
}

.lilac-company-profile-cta::before,
.lilac-company-profile-cta::after {
	position: absolute;
	border-radius: 50%;
	background: rgba(255, 255, 255, 0.08);
	content: "";
	pointer-events: none;
}

.lilac-company-profile-cta::before {
	top: -140px;
	left: -90px;
	width: 360px;
	height: 360px;
}

.lilac-company-profile-cta::after {
	right: -120px;
	bottom: -180px;
	width: 420px;
	height: 420px;
}

.lilac-company-profile-cta__inner {
	position: relative;
	z-index: 1;
	width: min(100%, 1080px);
	margin: 0 auto;
	display: grid;
	grid-template-columns:
		minmax(0, 1fr)
		minmax(280px, 0.55fr);
	gap: clamp(36px, 6vw, 72px);
	align-items: center;
}

.lilac-company-profile-cta__content {
	min-width: 0;
}

.lilac-company-profile-cta__label {
	margin: 0 0 12px;
	color: rgba(255, 255, 255, 0.72);
	font-size: 13px;
	font-weight: 700;
	line-height: 1.5;
	letter-spacing: 0.18em;
}

.lilac-company-profile-cta__title {
	margin: 0;
	color: #ffffff;
	font-size: clamp(32px, 4.5vw, 50px);
	font-weight: 700;
	line-height: 1.4;
	letter-spacing: 0.02em;
}

.lilac-company-profile-cta__text {
	margin: clamp(22px, 3vw, 30px) 0 0;
	color: rgba(255, 255, 255, 0.9);
	font-size: clamp(15px, 1.8vw, 18px);
	line-height: 2;
}

.lilac-company-profile-cta__subtext {
	margin: 12px 0 0;
	color: rgba(255, 255, 255, 0.72);
	font-size: 14px;
	line-height: 1.8;
}

.lilac-company-profile-cta__actions {
	display: grid;
	gap: 14px;
	min-width: 0;
}

.lilac-company-profile-cta__button {
	display: inline-flex;
	width: 100%;
	min-height: 58px;
	padding: 15px 26px;
	justify-content: center;
	align-items: center;
	border: 1px solid transparent;
	border-radius: 999px;
	font-size: 15px;
	font-weight: 700;
	line-height: 1.5;
	text-align: center;
	text-decoration: none;
	transition:
		transform 0.25s ease,
		background-color 0.25s ease,
		border-color 0.25s ease,
		color 0.25s ease,
		box-shadow 0.25s ease;
}

.lilac-company-profile-cta__button--primary {
	color: #6b4695;
	background: #ffffff;
	box-shadow:
		0 16px 34px
		rgba(44, 24, 65, 0.22);
}

.lilac-company-profile-cta__button--primary:hover,
.lilac-company-profile-cta__button--primary:focus-visible {
	color: #5b3783;
	background: #faf7fd;
	box-shadow:
		0 20px 42px
		rgba(44, 24, 65, 0.28);
	transform: translateY(-2px);
}

.lilac-company-profile-cta__button--secondary {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.08);
	border-color: rgba(255, 255, 255, 0.55);
}

.lilac-company-profile-cta__button--secondary:hover,
.lilac-company-profile-cta__button--secondary:focus-visible {
	color: #ffffff;
	background: rgba(255, 255, 255, 0.16);
	border-color: rgba(255, 255, 255, 0.86);
	transform: translateY(-2px);
}

.lilac-company-profile-cta__button:focus-visible {
	outline: 3px solid rgba(255, 255, 255, 0.34);
	outline-offset: 4px;
}

@media screen and (max-width: 820px) {

	.lilac-company-profile-cta__inner {
		grid-template-columns: 1fr;
		max-width: 720px;
		text-align: center;
	}

	.lilac-company-profile-cta__actions {
		width: min(100%, 460px);
		margin: 0 auto;
	}
}

@media screen and (max-width: 767px) {

	.lilac-company-profile-cta {
		padding:
			clamp(56px, 14vw, 80px)
			16px;
	}

	.lilac-company-profile-cta__inner {
		gap: 30px;
		text-align: left;
	}

	.lilac-company-profile-cta__title br {
		display: none;
	}

	.lilac-company-profile-cta__actions {
		width: 100%;
	}

	.lilac-company-profile-cta__button {
		min-height: 54px;
		padding: 14px 20px;
		font-size: 14px;
	}
}

@media (prefers-reduced-motion: reduce) {

	.lilac-company-profile-cta__button {
		transition: none;
	}
}