.affiliate-lp-job-support {
	--lp-green: #178c3a;
	--lp-green-light: #2fa84f;
	--lp-orange: #f26a21;
	--lp-coral: #f07855;
	--lp-ink: #1d3325;
	--lp-muted: #5f6f63;
	--lp-bg: #f8fbf7;
	--lp-white: #ffffff;
	--lp-shadow-button: 0 10px 24px rgba(23, 140, 58, 0.22);
	overflow-x: hidden;
	width: 100vw;
	max-width: 100vw;
	margin: 0 calc(50% - 50vw);
	padding: 0 0 36px;
	background: linear-gradient(180deg, #f8fbf7 0%, #ffffff 38%, #f8fbf7 100%);
	color: var(--lp-ink);
	font-family: -apple-system, BlinkMacSystemFont, "Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic", Meiryo, sans-serif;
	line-height: 1.8;
}

.affiliate-lp-job-support,
.affiliate-lp-job-support * {
	box-sizing: border-box;
}

.affiliate-lp-job-support .visually-hidden {
	position: absolute !important;
	width: 1px !important;
	height: 1px !important;
	padding: 0 !important;
	margin: -1px !important;
	overflow: hidden !important;
	clip: rect(0, 0, 0, 0) !important;
	white-space: nowrap !important;
	border: 0 !important;
}

.affiliate-lp-job-support .lp-image-section,
.affiliate-lp-job-support .lp-service-image-card {
	display: block;
	width: min(100% - 24px, 1100px);
	max-width: 1100px;
	margin: 0 auto;
	padding: 0;
	background: var(--lp-white);
	border: 0;
	box-shadow: none;
}

.affiliate-lp-job-support .lp-image-section {
	padding-top: 24px;
	margin-bottom: 24px;
}

.affiliate-lp-job-support .lp-image-section--first-view {
	padding-top: 24px;
}

.affiliate-lp-job-support .lp-service-image-card + .lp-service-image-card {
	margin-top: 30px;
}

.affiliate-lp-job-support .lp-section-image {
	display: block;
	width: 100%;
	max-width: 1100px;
	height: auto;
	margin: 0 auto;
	border: 0;
	border-radius: 0;
	box-shadow: none;
	object-fit: contain;
}

.affiliate-lp-job-support .lp-picture {
	display: block;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	background: var(--lp-white);
}

.affiliate-lp-job-support .lp-clickable-image {
	position: relative;
	display: block;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	background: var(--lp-white);
}

.affiliate-lp-job-support .lp-fv-images {
	display: block;
	width: 100%;
	max-width: 1100px;
	margin: 0 auto;
	background: var(--lp-white);
}

.affiliate-lp-job-support .lp-fv-img--sp {
	display: none;
}

.affiliate-lp-job-support .lp-service-card--cocorport,
.affiliate-lp-job-support .lp-service-card--cocorport .lp-section-image {
	background: var(--lp-white);
}

.affiliate-lp-job-support .lp-hotspot {
	position: absolute;
	z-index: 2;
	display: block;
	margin: 0;
	padding: 0;
	background: rgba(255, 255, 255, 0);
	border: 0;
	text-decoration: none;
	cursor: pointer;
	transform: translateZ(0);
	transform-origin: center;
	transition: transform 0.18s ease, filter 0.18s ease, opacity 0.18s ease;
	will-change: transform;
}

.affiliate-lp-job-support .lp-hotspot::before {
	position: absolute;
	display: block;
	content: "";
	pointer-events: none;
}

.affiliate-lp-job-support .lp-hotspot::before {
	inset: -4%;
	border-radius: 999px;
	background:
		linear-gradient(112deg, rgba(255, 255, 255, 0) 0%, rgba(255, 255, 255, 0) 34%, rgba(255, 255, 255, 0.34) 47%, rgba(227, 255, 181, 0.22) 54%, rgba(255, 255, 255, 0) 68%, rgba(255, 255, 255, 0) 100%),
		rgba(255, 255, 255, 0.04);
	background-position: -140% 0;
	background-size: 240% 100%;
	box-shadow: 0 0 0 rgba(255, 255, 255, 0), 0 0 0 rgba(47, 168, 79, 0);
	mix-blend-mode: screen;
	opacity: 0.52;
	animation: lp-hotspot-glow 2.8s ease-in-out infinite;
}

.affiliate-lp-job-support .lp-hotspot:hover,
.affiliate-lp-job-support .lp-hotspot:focus-visible {
	transform: scale(1.025);
	filter: brightness(1.04) saturate(1.03);
}

.affiliate-lp-job-support .lp-hotspot:hover::before,
.affiliate-lp-job-support .lp-hotspot:focus-visible::before {
	opacity: 0.74;
}

.affiliate-lp-job-support .lp-hotspot:active {
	transform: scale(0.985);
	filter: brightness(0.98) saturate(0.98);
}

.affiliate-lp-job-support .lp-hotspot:focus-visible {
	outline: 3px solid rgba(242, 106, 33, 0.34);
	outline-offset: 4px;
	border-radius: 999px;
}

.affiliate-lp-job-support .lp-hotspot--fv {
	left: 14%;
	right: 14%;
	bottom: 11%;
	height: 14%;
}

.affiliate-lp-job-support .lp-hotspot--service {
	left: 50%;
	right: 5%;
	bottom: 7%;
	height: 10%;
}

.affiliate-lp-job-support .lp-hotspot--miratore {
	left: 55.5%;
	right: 5%;
	bottom: 6.5%;
	height: 9.5%;
}

.affiliate-lp-job-support .lp-hotspot--cocorport {
	left: 52.5%;
	right: 5%;
	bottom: 12%;
	height: 10.5%;
}

.affiliate-lp-job-support .lp-hotspot--atgp {
	left: 43.5%;
	right: 8.5%;
	bottom: 7.5%;
	height: 10.5%;
}

.affiliate-lp-job-support .lp-hotspot--bottom-miratore,
.affiliate-lp-job-support .lp-hotspot--bottom-cocorport,
.affiliate-lp-job-support .lp-hotspot--bottom-atgp {
	top: 82.5%;
	width: 27.8%;
	height: 8.5%;
}

.affiliate-lp-job-support .lp-hotspot--bottom-miratore {
	left: 7.4%;
}

.affiliate-lp-job-support .lp-hotspot--bottom-cocorport {
	left: 36%;
}

.affiliate-lp-job-support .lp-hotspot--bottom-atgp {
	left: 64.3%;
}

.affiliate-lp-job-support .lp-disclaimer {
	width: min(100% - 24px, 1100px);
	max-width: 1100px;
	margin: 30px auto 0;
	padding: 18px 20px;
	border-radius: 12px;
	background: #f0f6ef;
}

.affiliate-lp-job-support .lp-disclaimer p {
	margin: 0;
	color: var(--lp-muted);
	font-size: 0.82rem;
	line-height: 1.8;
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal {
	opacity: 0;
	transform: translateY(24px);
	transition: opacity 0.7s ease, transform 0.7s ease;
	will-change: opacity, transform;
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal.is-visible {
	opacity: 1;
	transform: translateY(0);
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal--miratore {
	transition-delay: 0s;
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal--cocorport {
	transition-delay: 0.1s;
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal--atgp {
	transition-delay: 0.18s;
}

.affiliate-lp-job-support.lp-motion-ready .lp-reveal--bottom {
	transition-delay: 0.08s;
}

.affiliate-lp-job-support .affiliate-tracking-pixels {
	position: absolute;
	width: 1px;
	height: 1px;
	overflow: hidden;
	opacity: 0;
	pointer-events: none;
}

.affiliate-lp-job-support ul,
.affiliate-lp-job-support ol,
.affiliate-lp-job-support li,
.affiliate-lp-job-support h1,
.affiliate-lp-job-support h2,
.affiliate-lp-job-support h3,
.affiliate-lp-job-support p,
.affiliate-lp-job-support figure {
	margin-top: 0;
	margin-bottom: 0;
	padding-top: 0;
	padding-bottom: 0;
	background: transparent;
	border: 0;
}

.affiliate-lp-job-support ul,
.affiliate-lp-job-support ol {
	list-style: none;
}

.affiliate-lp-job-support h1::before,
.affiliate-lp-job-support h1::after,
.affiliate-lp-job-support h2::before,
.affiliate-lp-job-support h2::after,
.affiliate-lp-job-support h3::before,
.affiliate-lp-job-support h3::after,
.affiliate-lp-job-support li::before,
.affiliate-lp-job-support li::after {
	display: none !important;
	content: none !important;
}

@keyframes lp-hotspot-glow {
	0%,
	100% {
		box-shadow: 0 0 0 rgba(255, 255, 255, 0), 0 0 0 rgba(47, 168, 79, 0);
		background-position: -140% 0;
		opacity: 0.34;
	}

	46% {
		box-shadow: 0 0 18px rgba(255, 255, 255, 0.7), 0 0 26px rgba(47, 168, 79, 0.28), 0 0 16px rgba(242, 106, 33, 0.12);
		background-position: 170% 0;
		opacity: 0.78;
	}
}

@media (min-width: 768px) {
	.affiliate-lp-job-support {
		padding-bottom: 48px;
	}

	.affiliate-lp-job-support .lp-image-section {
		width: min(100% - 48px, 1100px);
		padding-top: 40px;
		margin-bottom: 40px;
	}

	.affiliate-lp-job-support .lp-image-section--first-view {
		padding-top: 36px;
	}

	.affiliate-lp-job-support .lp-service-image-card + .lp-service-image-card {
		margin-top: 44px;
	}

	.affiliate-lp-job-support .lp-disclaimer {
		width: min(100% - 48px, 1100px);
		margin-top: 40px;
		padding: 20px 24px;
	}
}

@media (max-width: 767px) {
	.affiliate-lp-job-support {
		padding-bottom: 32px;
	}

	.affiliate-lp-job-support .lp-image-section,
	.affiliate-lp-job-support .lp-disclaimer {
		width: min(100% - 18px, 1100px);
	}

	.affiliate-lp-job-support .lp-image-section {
		padding-top: 18px;
		margin-bottom: 20px;
	}

	.affiliate-lp-job-support .lp-image-section--first-view {
		padding-top: 18px;
	}

	.affiliate-lp-job-support .lp-service-image-card + .lp-service-image-card {
		margin-top: 22px;
	}

	.affiliate-lp-job-support .lp-hotspot--fv {
		left: 4.5%;
		right: 4.5%;
		bottom: 10%;
		height: 12.5%;
	}

	.affiliate-lp-job-support .lp-fv-img--pc {
		display: none;
	}

	.affiliate-lp-job-support .lp-fv-img--sp {
		display: block;
	}

	.affiliate-lp-job-support .lp-hotspot--miratore {
		left: 4%;
		right: 4%;
		bottom: 3.5%;
		height: 10.5%;
	}

	.affiliate-lp-job-support .lp-hotspot--cocorport,
	.affiliate-lp-job-support .lp-hotspot--atgp {
		left: 4.5%;
		right: 4.5%;
		bottom: 4%;
		height: 10%;
	}

	.affiliate-lp-job-support .lp-hotspot--bottom-miratore,
	.affiliate-lp-job-support .lp-hotspot--bottom-cocorport,
	.affiliate-lp-job-support .lp-hotspot--bottom-atgp {
		left: 12%;
		width: 76%;
		height: 6.8%;
	}

	.affiliate-lp-job-support .lp-hotspot--bottom-miratore {
		top: 67.4%;
	}

	.affiliate-lp-job-support .lp-hotspot--bottom-cocorport {
		top: 75.3%;
	}

	.affiliate-lp-job-support .lp-hotspot--bottom-atgp {
		top: 83.2%;
	}

	.affiliate-lp-job-support .lp-disclaimer {
		margin-top: 24px;
	}
}

@media (max-width: 420px) {
	.affiliate-lp-job-support .lp-image-section,
	.affiliate-lp-job-support .lp-disclaimer {
		width: min(100% - 18px, 1100px);
	}

	.affiliate-lp-job-support .lp-image-section {
		padding-top: 18px;
		margin-bottom: 20px;
	}

	.affiliate-lp-job-support .lp-service-image-card + .lp-service-image-card {
		margin-top: 22px;
	}
}

@media (prefers-reduced-motion: reduce) {
	.affiliate-lp-job-support .lp-hotspot,
	.affiliate-lp-job-support .lp-hotspot::before,
	.affiliate-lp-job-support.lp-motion-ready .lp-reveal {
		animation: none;
		transition-duration: 0.01ms;
	}

	.affiliate-lp-job-support .lp-hotspot:hover,
	.affiliate-lp-job-support .lp-hotspot:focus-visible,
	.affiliate-lp-job-support .lp-hotspot:active,
	.affiliate-lp-job-support.lp-motion-ready .lp-reveal {
		transform: none;
	}

	.affiliate-lp-job-support.lp-motion-ready .lp-reveal {
		opacity: 1;
	}
}

/* FV image switch: keep this at the end so it wins over shared image styles and theme CSS. */
.affiliate-lp-job-support .lp-fv-images .lp-fv-img--pc {
	display: block !important;
}

.affiliate-lp-job-support .lp-fv-images .lp-fv-img--sp {
	display: none !important;
}

@media (max-width: 767px) {
	.affiliate-lp-job-support .lp-fv-images .lp-fv-img--pc {
		display: none !important;
	}

	.affiliate-lp-job-support .lp-fv-images .lp-fv-img--sp {
		display: block !important;
	}
}

@media (min-width: 768px) {
	.affiliate-lp-job-support .lp-fv-images .lp-fv-img--pc {
		display: block !important;
	}

	.affiliate-lp-job-support .lp-fv-images .lp-fv-img--sp {
		display: none !important;
	}
}
