/******* Do not edit this file *******
Simple Custom CSS and JS - by Silkypress.com
Saved: Apr 30 2026 | 02:16:18 */
@charset "UTF-8";

/* =========================================================
   front-page-animation.css
   - current front-page.php / current front-page-animation.js 対応
   - SPでも orb を確実に表示
   - reveal は維持
========================================================= */

/* -----------------------------------------
   motion base
----------------------------------------- */
.top-page-v2,
.top-page-v2 * {
	-webkit-backface-visibility: hidden;
	backface-visibility: hidden;
}

.top-page-v2 {
	--tp-anim-ease: cubic-bezier(.22, 1, .36, 1);
	--tp-anim-ease-soft: cubic-bezier(.25, .46, .45, .94);
	--tp-anim-duration-fast: 720ms;
	--tp-anim-duration: 1000ms;
	--tp-anim-duration-slow: 1300ms;
}

/* -----------------------------------------
   header / footer transition base
----------------------------------------- */
header.site-header,
.site-header,
.header,
#header {
	transition:
		border-color 420ms ease,
		box-shadow 420ms ease,
		backdrop-filter 420ms ease,
		-webkit-backdrop-filter 420ms ease;
	will-change: box-shadow, border-color;
}

footer.site-footer,
.site-footer,
.footer,
#footer {
	transition:
		border-color 520ms ease,
		box-shadow 520ms ease,
		filter 520ms ease;
	will-change: box-shadow, border-color;
}

/* scroll state */
header.site-header.is-scrolled,
.site-header.is-scrolled,
.header.is-scrolled,
#header.is-scrolled {
	box-shadow:
		0 18px 44px rgba(4, 10, 24, .38),
		inset 0 1px 0 rgba(255, 255, 255, .10),
		inset 0 0 24px rgba(120, 145, 255, .08);
	border-color: rgba(142, 208, 255, .18);
}

footer.site-footer.is-footer-inview,
.site-footer.is-footer-inview,
.footer.is-footer-inview,
#footer.is-footer-inview {
	box-shadow: 0 -16px 40px rgba(0, 0, 0, .12);
	filter: saturate(1.03);
}

/* -----------------------------------------
   MV text line base
----------------------------------------- */
.top-page-v2__mv-title {
	text-rendering: optimizeLegibility;
	-webkit-font-smoothing: antialiased;
}

.top-page-v2__mv-line {
	display: block;
	white-space: nowrap;
}

/* fallback line delays */
.top-page-v2__mv-line:nth-child(1) { --mv-line-delay: .18s; }
.top-page-v2__mv-line:nth-child(2) { --mv-line-delay: .30s; }
.top-page-v2__mv-line:nth-child(3) { --mv-line-delay: .42s; }
.top-page-v2__mv-line:nth-child(4) { --mv-line-delay: .54s; }

/* -----------------------------------------
   MV initial state
----------------------------------------- */
.top-page-v2.is-anim-enabled .top-page-v2__mv-label,
.top-page-v2.is-anim-enabled .top-page-v2__mv-line,
.top-page-v2.is-anim-enabled .top-page-v2__mv-lead {
	opacity: 0;
	transform: translate3d(0, 22px, 0);
	filter: blur(8px);
	will-change: opacity, transform, filter;
}

/* -----------------------------------------
   ORB
   - orb は animation CSS 側では隠さない
   - SPでも確実に表示
----------------------------------------- */
.top-page-v2__mv-orb {
	display: block;
	visibility: visible;
	opacity: 1;
	filter: blur(0);
	will-change: transform, opacity, filter;
	transition:
		transform 900ms var(--tp-anim-ease),
		filter 900ms var(--tp-anim-ease);
}

.top-page-v2__mv-orb-img {
	display: block;
	visibility: visible;
	opacity: 1;
	filter: blur(0);
	will-change: transform, filter;
}

.top-page-v2.is-anim-enabled .top-page-v2__mv-orb,
.top-page-v2.is-anim-enabled .top-page-v2__mv-orb-img {
	display: block;
	visibility: visible;
	opacity: 1;
	filter: blur(0);
}

/* -----------------------------------------
   MV active state
----------------------------------------- */
.top-page-v2.is-anim-enabled .top-page-v2__mv.is-mv-ready .top-page-v2__mv-label {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	filter: blur(0);
	transition:
		opacity 900ms var(--tp-anim-ease),
		transform 1100ms var(--tp-anim-ease),
		filter 900ms var(--tp-anim-ease);
	transition-delay: .06s;
}

.top-page-v2.is-anim-enabled .top-page-v2__mv.is-mv-ready .top-page-v2__mv-line {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	filter: blur(0);
	transition:
		opacity 900ms var(--tp-anim-ease),
		transform 1100ms var(--tp-anim-ease),
		filter 900ms var(--tp-anim-ease);
	transition-delay: var(--mv-line-delay, .18s);
}

.top-page-v2.is-anim-enabled .top-page-v2__mv.is-mv-ready .top-page-v2__mv-lead {
	opacity: 1;
	transform: translate3d(0, 0, 0);
	filter: blur(0);
	transition:
		opacity 1000ms var(--tp-anim-ease),
		transform 1200ms var(--tp-anim-ease),
		filter 1000ms var(--tp-anim-ease);
	transition-delay: .58s;
}

/* -----------------------------------------
   reveal targets initial state
----------------------------------------- */
.top-page-v2.is-anim-enabled .js-reveal,
.top-page-v2.is-anim-enabled .top-page-v2__news-card,
.top-page-v2.is-anim-enabled .top-page-v2__news-empty,
.top-page-v2.is-anim-enabled .top-page-v2__about-panel,
.top-page-v2.is-anim-enabled .top-page-v2__about-card,
.top-page-v2.is-anim-enabled .top-page-v2__about-visual,
.top-page-v2.is-anim-enabled .top-page-v2__technology-card,
.top-page-v2.is-anim-enabled .top-page-v2__group-visual,
.top-page-v2.is-anim-enabled .top-page-v2__group-body,
.top-page-v2.is-anim-enabled .top-page-v2__section-footer,
.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news,
.top-page-v2.is-anim-enabled .top-page-v2__group-actions,
.top-page-v2.is-anim-enabled .top-page-v2__actions {
	opacity: 0;
	transform: translate3d(0, 28px, 0) scale(.985);
	filter: blur(8px);
	will-change: opacity, transform, filter;
}

.top-page-v2.is-anim-enabled .top-page-v2__about-panel,
.top-page-v2.is-anim-enabled .top-page-v2__about-visual,
.top-page-v2.is-anim-enabled .top-page-v2__group-visual {
	transform: translate3d(0, 34px, 0) scale(.99);
}

.top-page-v2.is-anim-enabled .top-page-v2__group-body {
	transform: translate3d(0, 30px, 0) scale(.986);
}

.top-page-v2.is-anim-enabled .top-page-v2__section-footer,
.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news,
.top-page-v2.is-anim-enabled .top-page-v2__group-actions,
.top-page-v2.is-anim-enabled .top-page-v2__actions {
	transform: translate3d(0, 20px, 0);
	filter: blur(6px);
}

/* -----------------------------------------
   reveal active state
----------------------------------------- */
.top-page-v2.is-anim-enabled .js-reveal.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__news-card.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__news-empty.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__about-panel.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__about-card.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__about-visual.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__technology-card.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__group-visual.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__group-body.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__section-footer.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__group-actions.is-inview,
.top-page-v2.is-anim-enabled .top-page-v2__actions.is-inview {
	opacity: 1;
	transform: translate3d(0, 0, 0) scale(1);
	filter: blur(0);
	transition:
		opacity 880ms var(--tp-anim-ease),
		transform 1080ms var(--tp-anim-ease),
		filter 880ms var(--tp-anim-ease);
	transition-delay: var(--reveal-delay, 0s);
}

/* -----------------------------------------
   child polish after reveal
----------------------------------------- */
.top-page-v2__news-card,
.top-page-v2__about-panel,
.top-page-v2__about-card,
.top-page-v2__about-visual,
.top-page-v2__technology-card,
.top-page-v2__group-visual,
.top-page-v2__group-body,
.top-page-v2__section-footer,
.top-page-v2__section-footer--news,
.top-page-v2__group-actions,
.top-page-v2__actions {
	transform-origin: center bottom;
}

/* -----------------------------------------
   subtle text polish
----------------------------------------- */
.top-page-v2__mv-label,
.top-page-v2__section-label,
.top-page-v2__section-title,
.top-page-v2__section-text,
.top-page-v2__news-title,
.top-page-v2__about-title,
.top-page-v2__technology-title,
.top-page-v2__group-title {
	transform: translateZ(0);
}

/* -----------------------------------------
   button / link motion polish
----------------------------------------- */
.top-page-v2__btn,
.top-page-v2__text-link,
.top-page-v2__news-link {
	transition:
		transform 320ms var(--tp-anim-ease-soft),
		box-shadow 320ms var(--tp-anim-ease-soft),
		border-color 320ms var(--tp-anim-ease-soft),
		background-color 320ms var(--tp-anim-ease-soft),
		color 320ms var(--tp-anim-ease-soft),
		opacity 320ms var(--tp-anim-ease-soft);
	will-change: transform, box-shadow;
}

.top-page-v2__btn:hover,
.top-page-v2__text-link:hover,
.top-page-v2__news-link:hover {
	transform: translate3d(0, -2px, 0);
}

.top-page-v2__btn:active,
.top-page-v2__text-link:active,
.top-page-v2__news-link:active {
	transform: translate3d(0, 0, 0);
}

/* -----------------------------------------
   stagger fallback
----------------------------------------- */
.top-page-v2__news-card:nth-child(1) { --reveal-delay: .02s; }
.top-page-v2__news-card:nth-child(2) { --reveal-delay: .08s; }
.top-page-v2__news-card:nth-child(3) { --reveal-delay: .14s; }
.top-page-v2__news-card:nth-child(4) { --reveal-delay: .20s; }

.top-page-v2__about-panel:nth-child(1),
.top-page-v2__about-card:nth-child(1) { --reveal-delay: .04s; }

.top-page-v2__about-panel:nth-child(2),
.top-page-v2__about-card:nth-child(2) { --reveal-delay: .10s; }

.top-page-v2__about-card:nth-child(3) { --reveal-delay: .16s; }

.top-page-v2__technology-card:nth-child(1) { --reveal-delay: .04s; }
.top-page-v2__technology-card:nth-child(2) { --reveal-delay: .10s; }
.top-page-v2__technology-card:nth-child(3) { --reveal-delay: .16s; }
.top-page-v2__technology-card:nth-child(4) { --reveal-delay: .22s; }

/* -----------------------------------------
   mobile tuning
----------------------------------------- */
@media screen and (max-width: 710px) {
	.top-page-v2.is-anim-enabled .top-page-v2__mv-label,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-line,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-lead {
		transform: translate3d(0, 16px, 0);
		filter: blur(6px);
	}

	.top-page-v2.is-anim-enabled .js-reveal,
	.top-page-v2.is-anim-enabled .top-page-v2__news-card,
	.top-page-v2.is-anim-enabled .top-page-v2__news-empty,
	.top-page-v2.is-anim-enabled .top-page-v2__about-panel,
	.top-page-v2.is-anim-enabled .top-page-v2__about-card,
	.top-page-v2.is-anim-enabled .top-page-v2__about-visual,
	.top-page-v2.is-anim-enabled .top-page-v2__technology-card,
	.top-page-v2.is-anim-enabled .top-page-v2__group-visual,
	.top-page-v2.is-anim-enabled .top-page-v2__group-body,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news,
	.top-page-v2.is-anim-enabled .top-page-v2__group-actions,
	.top-page-v2.is-anim-enabled .top-page-v2__actions {
		transform: translate3d(0, 20px, 0) scale(.99);
		filter: blur(6px);
	}

	.top-page-v2.is-anim-enabled .js-reveal.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__news-card.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__news-empty.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__about-panel.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__about-card.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__about-visual.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__technology-card.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__group-visual.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__group-body.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__group-actions.is-inview,
	.top-page-v2.is-anim-enabled .top-page-v2__actions.is-inview {
		transition:
			opacity 760ms var(--tp-anim-ease),
			transform 920ms var(--tp-anim-ease),
			filter 760ms var(--tp-anim-ease);
	}

	/* SPでも orb を確実に表示 */
	.top-page-v2__mv-orb,
	.top-page-v2__mv-orb-img,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-orb,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-orb-img {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		filter: none !important;
	}
}

/* -----------------------------------------
   low power / reduced motion
----------------------------------------- */
@media (prefers-reduced-motion: reduce) {
	.top-page-v2,
	.top-page-v2 *,
	header.site-header,
	.site-header,
	.header,
	#header,
	footer.site-footer,
	.site-footer,
	.footer,
	#footer {
		scroll-behavior: auto !important;
	}

	.top-page-v2.is-anim-enabled .top-page-v2__mv-label,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-line,
	.top-page-v2.is-anim-enabled .top-page-v2__mv-lead,
	.top-page-v2.is-anim-enabled .js-reveal,
	.top-page-v2.is-anim-enabled .top-page-v2__news-card,
	.top-page-v2.is-anim-enabled .top-page-v2__news-empty,
	.top-page-v2.is-anim-enabled .top-page-v2__about-panel,
	.top-page-v2.is-anim-enabled .top-page-v2__about-card,
	.top-page-v2.is-anim-enabled .top-page-v2__about-visual,
	.top-page-v2.is-anim-enabled .top-page-v2__technology-card,
	.top-page-v2.is-anim-enabled .top-page-v2__group-visual,
	.top-page-v2.is-anim-enabled .top-page-v2__group-body,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer,
	.top-page-v2.is-anim-enabled .top-page-v2__section-footer--news,
	.top-page-v2.is-anim-enabled .top-page-v2__group-actions,
	.top-page-v2.is-anim-enabled .top-page-v2__actions,
	header.site-header,
	.site-header,
	.header,
	#header,
	footer.site-footer,
	.site-footer,
	.footer,
	#footer,
	.top-page-v2__btn,
	.top-page-v2__text-link,
	.top-page-v2__news-link {
		opacity: 1 !important;
		transform: none !important;
		filter: none !important;
		animation: none !important;
		transition: none !important;
	}

	.top-page-v2__mv-orb,
	.top-page-v2__mv-orb-img {
		display: block !important;
		visibility: visible !important;
		opacity: 1 !important;
		filter: none !important;
		transform: none !important;
		transition: none !important;
	}
}
