.front-loading{display:none}@media (max-width:768px){.front-loading{display:flex;position:fixed;inset:0;z-index:9999;align-items:center;justify-content:center;overflow:hidden;background:radial-gradient(ellipse 90% 55% at 50% 38%, rgba(255, 176, 137, 0.4) 0%, transparent 68%), linear-gradient(165deg, #f5d0d0 0%, #ffb089 22%, #fff8f4 58%, #ffffff 100%);pointer-events:all;transition:opacity 1.2s ease}.front-loading.is-hiding{opacity:0;pointer-events:none}}.front-loading__glow{position:absolute;top:18%;left:50%;width:72vw;max-width:320px;aspect-ratio:1;transform:translateX(-50%);border-radius:50%;background:radial-gradient(circle, rgba(213, 41, 40, 0.14) 0%, transparent 68%);filter:blur(24px);pointer-events:none;animation:frontLoadingGlow 2.8s ease-in-out infinite}.front-loading__inner{position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;gap:28px;width:min(280px, 72vw);animation:frontLoadingIn 0.65s cubic-bezier(0.22, 1, 0.36, 1) both}.front-loading__logo{width:160px;height:auto;display:block}.front-loading__bar{width:100%;height:2px;background:rgba(0, 0, 0, 0.08);border-radius:2px;overflow:hidden}.front-loading__bar-fill{display:block;height:100%;width:0;border-radius:2px;background:linear-gradient(90deg, #E8570F 0%, #D52928 100%);animation:frontLoadingBar 3.6s cubic-bezier(0.4, 0, 0.2, 1) forwards}.front-loading__text{margin:0;font-family:"Inter", sans-serif;font-size:11px;font-weight:600;letter-spacing:0.24em;text-transform:uppercase;color:rgba(0, 0, 0, 0.42);animation:frontLoadingPulse 1.5s ease-in-out infinite}@media (prefers-reduced-motion:reduce) and (max-width:768px){.front-loading__glow,.front-loading__inner,.front-loading__bar-fill,.front-loading__text{animation:none}.front-loading__bar-fill{width:100%}}@keyframes frontLoadingIn{from{opacity:0;transform:translateY(14px)}to{opacity:1;transform:translateY(0)}}@keyframes frontLoadingBar{to{width:100%}}@keyframes frontLoadingPulse{0%,100%{opacity:0.42}50%{opacity:0.78}}@keyframes frontLoadingGlow{0%,100%{opacity:0.55;transform:translateX(-50%) scale(0.96)}50%{opacity:1;transform:translateX(-50%) scale(1.04)}}body{opacity:1;transition:opacity 0.25s ease;transition-delay:0.45s}body.is-page-leaving{overflow:hidden;cursor:wait;opacity:0}body.is-page-leaving .header-host,body.is-page-leaving .page>.hero,body.is-page-leaving .page>section,body.is-page-leaving .page>.bg-base,body.is-page-leaving .page>.bg-white-top,body.is-page-leaving .page>.bg-gradient-service,body.is-page-leaving .page>.bg-white-works{opacity:0;transition:opacity 0.1s ease;pointer-events:none}.page{width:100vw;display:flex;flex-direction:column}.page .hero{width:100%;height:calc(100vh - 64px);position:relative;overflow:hidden;background:transparent !important}.page .hero-text{position:fixed;inset:0;display:flex;flex-direction:column;align-items:center;justify-content:center;z-index:5;pointer-events:none;transition:opacity 0.1s linear}.page .bg-base,.page .bg-white-top,.page .bg-gradient-service,.page .bg-white-works{position:fixed;inset:0;z-index:-1;pointer-events:none}.page .bg-white-works{background:#ffffff;transition:opacity 0.3s ease}.page .bg-base{background:radial-gradient(ellipse 70% 50% at 75% 25%, rgba(232, 87, 15, 0.55) 0%, transparent 65%), linear-gradient(170deg, #f5d0d0 0%, #ffb089 18%, #E8570F 30%, #D52928 50%, #8b0000 75%, #150000 100%);transition:opacity 0.3s ease}.page .bg-white-top{background:radial-gradient(ellipse 100% 50% at 50% 10%, #ffffff 0%, transparent 60%);transition:opacity 0.4s ease}.page .bg-gradient-service{background:linear-gradient(170deg, #150000 0%, #6b0000 30%, #D52928 65%, #ff6b55 100%);transition:opacity 0.5s ease}@keyframes gradientDrift{0%{transform:translate(0%, 0%) scale(1)}25%{transform:translate(4%, -3%) scale(1.03)}50%{transform:translate(-3%, 5%) scale(1.05)}75%{transform:translate(-5%, -2%) scale(1.02)}100%{transform:translate(0%, 0%) scale(1)}}.page .about{position:relative;z-index:5;width:100%;padding:120px 40px 140px;background:transparent}@media (max-width:640px){.page .about{padding:80px 24px 100px}}.page .about::before{content:"";position:absolute;inset:0;background:radial-gradient(ellipse 80% 75% at 50% 50%, rgba(80, 0, 0, 0.55) 0%, transparent 72%);filter:blur(60px);pointer-events:none;z-index:0}.page .about::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.22) 18%, rgba(0, 0, 0, 0.22) 82%, rgba(0, 0, 0, 0) 100%);filter:blur(60px);pointer-events:none;z-index:0}.page .about-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1.35fr 1fr;gap:72px;align-items:start}@media (max-width:960px){.page .about-inner{grid-template-columns:1fr;gap:48px}}.page .about-left,.page .about-right{min-width:0}.page .about-right{align-self:end}@media (max-width:960px){.page .about-right{align-self:stretch}}.page .about-label{font-family:"Inter", sans-serif;font-size:13px;font-weight:600;letter-spacing:0.05em;color:#ffffff;margin:0 0 40px;text-shadow:0 1px 8px rgba(0, 0, 0, 0.4)}.page .about h2{font-family:"Noto Sans JP", sans-serif;font-size:clamp(32px, 3.8vw, 54px);font-weight:700;color:#ffffff;line-height:1.4;margin:0 0 56px;text-shadow:0 2px 24px rgba(60, 0, 0, 0.7), 0 1px 4px rgba(0, 0, 0, 0.4)}.page .about-body{font-family:"Noto Sans JP", sans-serif;font-size:18px;font-weight:500;color:#ffffff;line-height:2;max-width:720px;margin:0 0 32px;text-shadow:0 1px 12px rgba(60, 0, 0, 0.8), 0 1px 3px rgba(0, 0, 0, 0.5)}.page .about-credo{font-family:"Noto Sans JP", sans-serif;font-size:20px;font-weight:700;color:#ffffff;line-height:1.7;margin:0;text-shadow:0 1px 12px rgba(60, 0, 0, 0.8), 0 1px 3px rgba(0, 0, 0, 0.5)}.page .about-credo .en{font-family:"Inter", sans-serif;font-weight:700;letter-spacing:0.02em;display:inline-block;margin-top:8px}.page .about-links{list-style:none;padding:0;margin:0;width:100%;display:flex;flex-direction:column;gap:4px}.page .about-links li{width:100%}.page .about-links a{display:flex;align-items:center;justify-content:space-between;padding:16px 8px;color:#ffffff;text-decoration:none;border-bottom:1px solid rgba(255, 255, 255, 0.32);transition:border-color 0.2s, transform 0.2s;font-family:"Noto Sans JP", "Inter", sans-serif;font-size:16px;font-weight:600}.page .about-links a:hover{border-bottom-color:#ffffff;transform:translateX(4px)}.page .about-links .en-label{font-family:"Inter", sans-serif;letter-spacing:0.05em}.page .about-links .ja-label{font-family:"Noto Sans JP", sans-serif}.page .about-links .arrow{font-family:"Inter", sans-serif;font-weight:600}.page .pickup{position:relative;z-index:5;width:100%;padding:80px 60px 40px}@media (max-width:640px){.page .pickup{padding:70px 24px}}.page .pickup-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 2.6fr;gap:72px;align-items:start}@media (max-width:960px){.page .pickup-inner{grid-template-columns:1fr;gap:32px}}.page .pickup-head{min-width:0}.page .pickup-label{font-family:"Inter", sans-serif;font-size:clamp(40px, 5.5vw, 80px);font-weight:700;line-height:0.95;letter-spacing:-0.01em;color:#D52928;margin:0}.page .pickup-title{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.05em;color:#000000;margin:8px 0 0}.page .pickup-list{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:16px}.page .pickup-banner{display:block;width:100%;text-decoration:none;color:#000000;border-radius:6px;overflow:hidden;background:#d9d9d9;border:1px solid rgba(0, 0, 0, 0.08);transition:transform 0.25s, border-color 0.25s, box-shadow 0.25s}.page .pickup-banner--placeholder{aspect-ratio:6}@media (max-width:960px){.page .pickup-banner--placeholder{aspect-ratio:4}}.page .pickup-banner:hover{transform:translateY(-2px);border-color:rgba(213, 41, 40, 0.4);box-shadow:0 12px 32px rgba(0, 0, 0, 0.12)}.page .pickup-image{display:block;width:100%;height:auto}.page .pickup-meta{display:none}.page .news{position:relative;z-index:5;width:100%;padding:100px 60px}@media (max-width:640px){.page .news{padding:70px 24px}}.page .news-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.6fr;gap:72px;align-items:start}@media (max-width:960px){.page .news-inner{grid-template-columns:1fr;gap:32px}}.page .news-head{min-width:0}.page .news-body{min-width:0;text-align:right}@media (max-width:960px){.page .news-body{text-align:left}}.page .news-label{font-family:"Inter", sans-serif;font-size:clamp(40px, 5.5vw, 80px);font-weight:700;line-height:0.95;letter-spacing:-0.01em;color:#D52928;margin:0}.page .news-title{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.05em;color:#000000;margin:8px 0 0}.page .news-list{list-style:none;padding:0;margin:0 0 32px;text-align:left}.page .news-item{display:grid;grid-template-columns:100px 96px 1fr;align-items:center;gap:16px;padding:20px 8px;border-bottom:1px solid rgba(0, 0, 0, 0.12);color:#000000}@media (max-width:640px){.page .news-item{grid-template-columns:88px 1fr;grid-template-rows:auto auto;gap:8px 12px}}.page .news-date{font-family:"Inter", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.02em}.page .news-cat{display:inline-block;min-width:7em;font-family:"Noto Sans JP", sans-serif;font-size:12px;font-weight:600;text-align:center;padding:4px 3px;color:#D52928;border:1px solid rgba(213, 41, 40, 0.4);border-radius:6px}@media (max-width:640px){.page .news-cat{grid-row:1;grid-column:2;justify-self:start}}.page .news-headline{font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:500;line-height:1.6;color:inherit;text-decoration:none;transition:color 0.2s}.page .news-headline:hover{color:#D52928}@media (max-width:640px){.page .news-headline{grid-column:1 / span 2;grid-row:2}}.page .news-link{display:inline-flex;align-items:center;gap:8px;font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#000000;text-decoration:none;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:8px 4px;transition:border-color 0.2s, color 0.2s, transform 0.2s}.page .news-link:hover{border-bottom-color:#D52928;color:#D52928;transform:translateX(4px)}.page .arrow{font-family:"Inter", sans-serif}.page .service{position:relative;z-index:5;width:100%;padding:clamp(96px, 12vh, 132px) 60px clamp(40px, 5vh, 64px);display:flex;align-items:flex-start;box-sizing:border-box;overflow:visible}@media (max-width:640px){.page .service{padding:80px 24px 64px;align-items:stretch}}.page .service::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg, rgba(0, 0, 0, 0) 0%, rgba(0, 0, 0, 0.22) 18%, rgba(0, 0, 0, 0.22) 82%, rgba(0, 0, 0, 0) 100%);filter:blur(60px);opacity:var(--service-overlay-opacity, 0);pointer-events:none;z-index:0}.page .service-grid{position:relative;z-index:1;width:100%;max-width:1280px;margin:0 auto;display:grid;grid-template-columns:72px 1fr 72px;grid-template-areas:"header header header" "left   stage  right" "footer footer footer";column-gap:24px;row-gap:clamp(12px, 2vh, 24px);align-items:center}@media (max-width:640px){.page .service-grid{grid-template-columns:auto 1fr auto;grid-template-areas:"header header header" "stage  stage  stage" "left   label  right" "card   card   card" "footer footer footer";row-gap:24px;column-gap:16px;align-items:center}}.page .service-header{grid-area:header;align-self:start;margin-top:0}@media (max-width:640px){.page .service-header{margin-top:0}}.page .service-side{grid-area:left;display:flex;align-items:center;justify-content:center;align-self:center}@media (max-width:640px){.page .service-side{grid-area:left;justify-self:start;align-self:auto}}.page .service-side-right{grid-area:right;align-self:center}@media (max-width:640px){.page .service-side-right{grid-area:right;justify-self:end;align-self:auto}}.page .service-stage{grid-area:stage}.page .service-footer{grid-area:footer;display:flex;flex-direction:column;align-items:flex-start;gap:16px;margin-top:8px;max-width:50%}@media (max-width:640px){.page .service-footer{max-width:100%}.page .service-footer .service-nav{display:none}}.page .service-header{color:#ffffff}.page .service-en{font-family:"Inter", sans-serif;font-size:clamp(40px, 5.5vw, 80px);font-weight:700;line-height:0.95;letter-spacing:-0.01em;margin:0;color:#ffffff}.page .service-ja{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;color:rgba(255, 255, 255, 0.9);letter-spacing:0.05em;margin:8px 0 16px}.page .service-tagline{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.6vw, 22px);font-weight:400;color:#ffffff;line-height:1.8;margin:0;max-width:32em}.page .service-stage{position:relative;width:100%;height:320px}@media (max-width:640px){.page .service-stage{position:relative;height:auto;min-height:0;aspect-ratio:1;width:100%;max-width:320px;margin:0 auto;justify-self:center;border-radius:50%;overflow:hidden;flex-direction:column}}.page .stage-photo-mobile{display:none}@media (max-width:640px){.page .stage-photo-mobile{display:block;position:absolute;inset:0;background-color:#d9d9d9}}.page .service-mobile-label{display:none}@media (max-width:640px){.page .service-mobile-label{grid-area:label;display:flex;flex-direction:column;align-items:center;text-align:center;gap:4px}.page .service-mobile-label .label-num{font-family:"Inter", sans-serif;font-size:13px;font-weight:600;color:rgba(255, 255, 255, 0.85);letter-spacing:0.05em}.page .service-mobile-label .label-title{font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:700;color:#ffffff;line-height:1.3}}.page .stage-circle-floating{position:absolute;top:50%;left:50%;transform:translate(-50%, -50%);width:640px;aspect-ratio:1;z-index:0;border-radius:50%;background:transparent;border:0;overflow:hidden}@media (max-width:640px){.page .stage-circle-floating{display:none}}.page .service-header{position:relative;z-index:3}.page .stage-photo{width:100%;height:100%;border-radius:50%;background:#d9d9d9}.page .stage-image{display:flex;flex-direction:column;align-items:center;gap:20px;color:#ffffff;text-align:center}.page .stage-num{font-family:"Inter", sans-serif;font-size:clamp(56px, 7vw, 110px);font-weight:700;line-height:1;letter-spacing:-0.02em}.page .stage-en{font-family:"Inter", sans-serif;font-size:clamp(18px, 2vw, 26px);font-weight:600;letter-spacing:0.04em}.page .stage-orb-a,.page .stage-orb-b{position:absolute;border-radius:50%;pointer-events:none;filter:blur(40px);opacity:0.6}.page .stage-orb-a{top:-8%;right:-14%;width:30%;aspect-ratio:1;background:radial-gradient(circle, rgba(255, 176, 137, 0.7) 0%, transparent 70%)}.page .stage-orb-b{bottom:-10%;left:-12%;width:26%;aspect-ratio:1;background:radial-gradient(circle, rgba(213, 41, 40, 0.55) 0%, transparent 70%)}.page .stage-card{position:absolute;right:0;bottom:0;z-index:3;width:min(440px, 44%);background:#ffffff;border-radius:6px;padding:28px 32px;box-shadow:0 20px 56px rgba(0, 0, 0, 0.22);display:flex;flex-direction:column;gap:10px}@media (max-width:640px){.page .stage-card{grid-area:card;position:static;width:100%;max-width:100%;margin-top:24px;padding:28px 24px}}.page .stage-card-body{-webkit-line-clamp:4;display:-webkit-box;-webkit-box-orient:vertical;overflow:hidden}.page .stage-card-label{font-family:"Inter", sans-serif;font-size:13px;font-weight:600;color:#D52928;letter-spacing:0.04em;margin:0}.page .stage-card-title{font-family:"Noto Sans JP", sans-serif;font-size:clamp(22px, 2vw, 28px);font-weight:700;color:#000000;margin:0;line-height:1.3}.page .stage-card-tagline{font-family:"Noto Sans JP", sans-serif;font-size:15px;font-weight:600;color:#000000;line-height:1.6;margin:0}.page .stage-card-body{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:400;color:#000000;line-height:1.7;margin:0}.page .stage-card-link{align-self:flex-start;font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;color:#D52928;text-decoration:none;margin-top:4px}.page .stage-card-link:hover{text-decoration:underline}.page .nav-btn{width:56px;height:56px;border-radius:50%;background:radial-gradient(circle at 50% 50%, rgba(255, 255, 255, 0.16) 0%, rgba(255, 255, 255, 0.04) 60%, transparent 75%);border:1px solid rgba(255, 255, 255, 0.4);color:#ffffff;cursor:pointer;display:flex;align-items:center;justify-content:center;backdrop-filter:blur(8px);-webkit-backdrop-filter:blur(8px);transition:background 0.25s, border-color 0.25s, transform 0.25s}@media (max-width:640px){.page .nav-btn{width:48px;height:48px}}.page .nav-btn:hover{border-color:rgba(255, 255, 255, 0.7);transform:scale(1.06)}.page .nav-arrow{font-family:"Inter", sans-serif;font-size:22px;font-weight:600;line-height:1}.page .service-nav{list-style:none;padding:0;margin:0;display:flex;flex-direction:column;gap:8px;max-width:320px}.page .service-nav-item button{position:relative;display:grid;grid-template-columns:24px 32px 1fr;align-items:center;gap:10px;width:100%;padding:4px 0;background:transparent;border:0;cursor:pointer;color:rgba(255, 255, 255, 0.55);text-align:left;transition:color 0.35s ease}.page .service-nav-item button:hover{color:rgba(255, 255, 255, 0.85)}.page .service-nav-item.active button{color:#ffffff}.page .nav-bullet{width:10px;height:10px;border-radius:50%;border:1px solid rgba(255, 255, 255, 0.6);background:transparent;justify-self:center;transition:background 0.35s ease, border-color 0.35s ease, box-shadow 0.35s ease}.page .service-nav-item.active .nav-bullet{background:#ffffff;border-color:#ffffff;box-shadow:0 0 12px rgba(255, 255, 255, 0.7)}.page .nav-num{font-family:"Inter", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.04em}.page .nav-title{font-family:"Noto Sans JP", sans-serif;font-size:15px;font-weight:700;position:relative;z-index:1}.page .service-nav-item.active .nav-title::before{content:"";position:absolute;inset:-4px -12px;background:radial-gradient(ellipse 70% 100% at 50% 50%, rgba(255, 255, 255, 0.18) 0%, rgba(255, 255, 255, 0) 75%);filter:blur(8px);z-index:-1;pointer-events:none;animation:navGlow 0.5s ease forwards}@keyframes navGlow{from{opacity:0;transform:scale(0.9)}to{opacity:1;transform:scale(1)}}.page .service-link{display:inline-flex;align-items:center;gap:8px;font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#ffffff;text-decoration:none;border-bottom:1px solid rgba(255, 255, 255, 0.7);padding:8px 4px;transition:border-color 0.2s, transform 0.2s}.page .service-link:hover{border-bottom-color:#ffffff;transform:translateX(4px)}.page .service.on-light-bg .service-nav-item button{color:rgba(0, 0, 0, 0.55)}.page .service.on-light-bg .service-nav-item button:hover{color:rgba(0, 0, 0, 0.85)}.page .service.on-light-bg .service-nav-item.active button{color:#000000}.page .service.on-light-bg .service-nav-item.active .nav-bullet{background:#000000;border-color:#000000;box-shadow:0 0 12px rgba(0, 0, 0, 0.25)}.page .service.on-light-bg .service-nav-item.active .nav-title::before{background:radial-gradient(ellipse 70% 100% at 50% 50%, rgba(0, 0, 0, 0.08) 0%, rgba(0, 0, 0, 0) 75%)}.page .service.on-light-bg .nav-bullet{border-color:rgba(0, 0, 0, 0.45)}.page .service.on-light-bg .service-link{color:#000000;border-bottom-color:rgba(0, 0, 0, 0.35)}.page .service.on-light-bg .service-link:hover{border-bottom-color:#D52928;color:#D52928}.page .stage-fade{animation:stageFade 0.5s cubic-bezier(0.2, 0.8, 0.2, 1)}@keyframes stageFade{0%{opacity:0;transform:translateY(8px) scale(0.985)}100%{opacity:1;transform:translateY(0) scale(1)}}.page .works{position:relative;z-index:5;width:100%;max-width:1200px;margin:0 auto;padding:140px 60px 160px;text-align:left;background:transparent}@media (max-width:640px){.page .works{padding:90px 24px 110px}}.page .works>*{position:relative;z-index:1}.page .works-label{font-family:"Inter", sans-serif;font-size:clamp(40px, 5.5vw, 80px);font-weight:700;line-height:0.95;letter-spacing:-0.01em;color:#D52928;margin:0}.page .works-title{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.05em;color:#000000;margin:8px 0 24px;text-shadow:none}.page .works-sub{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.6vw, 22px);font-weight:400;color:#000000;margin:0 0 56px;max-width:32em;line-height:1.8}.page .logo-marquee{width:100vw;margin:0 0 80px;margin-left:calc(50% - 50vw);display:flex;flex-direction:column;gap:16px;overflow:hidden;-webkit-mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent);mask-image:linear-gradient(90deg, transparent, #000 8%, #000 92%, transparent)}.page .logo-row{width:100%;overflow:hidden}.page .logo-track{display:flex;gap:24px;width:max-content;will-change:transform}.page .logo-row-ltr .logo-track{animation:logoScrollLtr calc(var(--logo-n, 8) * 4s) linear infinite}.page .logo-row-rtl .logo-track{transform:translateX(-50%);animation:logoScrollRtl calc(var(--logo-n, 8) * 4s) linear infinite}.page .logo-cell{flex:0 0 auto;width:180px;height:80px;padding:10px 14px;border:1px solid rgba(0, 0, 0, 0.08);border-radius:6px;background:#ffffff;display:flex;align-items:center;justify-content:center;box-shadow:0 2px 10px rgba(0, 0, 0, 0.04);box-sizing:border-box}.page .logo-cell img{display:block;width:100%;height:100%;object-fit:contain}@keyframes logoScrollLtr{from{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes logoScrollRtl{from{transform:translateX(-50%)}to{transform:translateX(0)}}@media (prefers-reduced-motion:reduce){.page .logo-row-ltr .logo-track,.page .logo-row-rtl .logo-track{animation:none}}.page .case-list{display:grid;grid-template-columns:repeat(4, 1fr);gap:20px;max-width:1180px;margin:0 auto 64px;text-align:left}@media (max-width:640px){.page .case-list{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-y:contain;scroll-snap-type:x mandatory;padding:0 24px 8px;margin:0 -24px 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:none}.page .case-list::-webkit-scrollbar{display:none}.page .case-list>.case{min-width:82%;flex:0 0 82%;scroll-snap-align:center}}.page .case{background:#fff;border:1px solid rgba(0, 0, 0, 0.08);border-radius:6px;padding:0;overflow:hidden;display:flex;flex-direction:column;box-shadow:0 4px 16px rgba(0, 0, 0, 0.04);transition:transform 0.25s, border-color 0.25s, box-shadow 0.25s}.page .case-link{display:flex;flex-direction:column;flex:1;height:100%;color:inherit;text-decoration:none}.page .case-thumb{width:100%;aspect-ratio:1.3333333333;background:#d9d9d9}.page .case-body{padding:20px 22px 24px;display:flex;flex-direction:column;gap:12px;flex:1}.page .case:hover{transform:translateY(-4px);border-color:rgba(213, 41, 40, 0.4);box-shadow:0 12px 32px rgba(0, 0, 0, 0.08)}.page .case-tag{display:inline-block;align-self:flex-start;font-family:"Inter", "Noto Sans JP", sans-serif;font-size:11px;font-weight:600;letter-spacing:0.05em;color:#000000;padding:6px 12px;border:1px solid rgba(0, 0, 0, 0.18);border-radius:6px}.page .case h3{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.2vw, 19px);font-weight:700;color:#000000;margin:0;line-height:1.5;transition:color 0.2s ease}.page .case:hover h3{color:#D52928}.page .case-client{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:500;color:#000000;margin:0}.page .case-meta{font-family:"Inter", "Noto Sans JP", sans-serif;font-size:12px;color:#999999;letter-spacing:0.04em;margin-top:auto}.page .works-link{display:inline-flex;align-items:center;gap:8px;font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#000000;text-decoration:none;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:8px 4px;transition:border-color 0.2s, transform 0.2s}.page .works-link:hover{border-bottom-color:#D52928;color:#D52928;transform:translateX(4px)}.page .members{position:relative;z-index:5;width:100%;padding:100px 60px 120px;background:transparent}@media (max-width:640px){.page .members{padding:70px 24px 90px}}.page .members-inner{position:relative;z-index:1;max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:64px;align-items:center}@media (max-width:960px){.page .members-inner{grid-template-columns:1fr;gap:48px}}.page .members-left{min-width:0;text-align:left}.page .members-right{min-width:0}.page .members-label{font-family:"Inter", sans-serif;font-size:clamp(40px, 5.5vw, 80px);font-weight:700;line-height:0.95;letter-spacing:-0.01em;color:#D52928;margin:0}.page .members-title{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;letter-spacing:0.05em;color:#000000;margin:8px 0 32px;text-shadow:none}.page .members-body{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.6vw, 22px);font-weight:400;color:#000000;margin:0 0 40px;max-width:32em;line-height:1.8}.page .members-link{display:inline-flex;align-items:center;gap:8px;font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#000000;text-decoration:none;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:8px 4px;transition:border-color 0.2s, transform 0.2s}.page .members-link:hover{border-bottom-color:#D52928;color:#D52928;transform:translateX(4px)}.page .members-photos{position:relative;width:100%;aspect-ratio:1}@media (max-width:960px){.page .members-photos{max-width:520px;margin:0 auto}}.page .member-photo{position:absolute;border-radius:6px;background:#d9d9d9;box-shadow:0 18px 48px rgba(0, 0, 0, 0.18);border:1px solid rgba(255, 255, 255, 0.6)}.page .photo-1{top:4%;left:6%;width:44%;aspect-ratio:0.75;z-index:2}.page .photo-2{top:0;right:0;width:50%;aspect-ratio:1.3333333333;z-index:1}.page .photo-3{bottom:0;right:6%;width:64%;aspect-ratio:1.3333333333;z-index:3}.page .seminar{position:relative;z-index:5;width:100%;padding:120px 60px;background:transparent}@media (max-width:640px){.page .seminar{padding:80px 24px}}.page .glass-area{position:relative;z-index:5;width:calc(100% - 40px);margin:0 20px 80px;padding:40px 0;background:rgba(255, 255, 255, 0.6);border:1px solid rgba(255, 255, 255, 0.9);border-radius:6px;backdrop-filter:blur(28px) saturate(200%);-webkit-backdrop-filter:blur(28px) saturate(200%);box-shadow:0 12px 40px rgba(0, 0, 0, 0.1), inset 0 1.5px 0 rgba(255, 255, 255, 0.95), inset 0 -1px 0 rgba(255, 255, 255, 0.4)}@media (max-width:640px){.page .glass-area{width:calc(100% - 32px);margin:0 16px;border-radius:6px;padding:24px 0}}.page .seminar-head{text-align:center;max-width:720px;margin:0 auto 56px}.page .seminar-title{font-family:"Noto Sans JP", sans-serif;font-size:clamp(28px, 3.6vw, 44px);font-weight:700;color:#000000;margin:0 0 20px}.page .seminar-sub{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.6vw, 22px);font-weight:400;color:#000000;line-height:1.8;margin:0 0 32px}.page .seminar-list{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:repeat(4, 1fr);gap:20px}@media (max-width:960px){.page .seminar-list{grid-template-columns:repeat(2, 1fr)}}@media (max-width:640px){.page .seminar-list{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-y:contain;scroll-snap-type:x mandatory;padding:0 24px 8px;margin:0 -24px 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:none}.page .seminar-list::-webkit-scrollbar{display:none}.page .seminar-list>.seminar-card{min-width:82%;flex:0 0 82%;scroll-snap-align:center}}.page .seminar-card{display:flex;flex-direction:column;gap:12px;text-decoration:none;color:inherit}.page .seminar-thumb{width:100%;aspect-ratio:1.7846320346;border-radius:6px;background:#d9d9d9;border:1px solid rgba(0, 0, 0, 0.08)}.page .seminar-meta{display:flex;align-items:center;gap:12px;flex-wrap:wrap}.page .seminar-date{font-family:"Inter", sans-serif;font-size:13px;font-weight:600;color:#000000;letter-spacing:0.02em}.page .seminar-wd{font-size:80%;margin:0 2px}.page .seminar-name{font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#000000;margin:0;line-height:1.6}.page .seminar-link{display:flex;align-items:center;gap:8px;width:fit-content;margin:50px auto 0;font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:600;color:#000000;text-decoration:none;border-bottom:1px solid rgba(0, 0, 0, 0.3);padding:8px 4px;transition:border-color 0.2s, color 0.2s, transform 0.2s}.page .seminar-link:hover{border-bottom-color:#D52928;color:#D52928;transform:translateX(4px)}.page .insight{position:relative;z-index:5;width:100%;height:100vh;min-height:720px;padding:clamp(48px, 6vh, 80px) 60px;background:transparent;display:flex;flex-direction:column;justify-content:center;box-sizing:border-box;overflow:hidden}@media (max-width:640px){.page .insight{height:auto;min-height:0;padding:80px 24px;display:block}}.page .insight-head{text-align:center;max-width:720px;margin:0 auto clamp(20px, 3vh, 40px)}.page .insight-title{font-family:"Noto Sans JP", sans-serif;font-size:clamp(28px, 3.6vw, 44px);font-weight:700;color:#000000;margin:0 0 20px}.page .insight-sub{font-family:"Noto Sans JP", sans-serif;font-size:clamp(16px, 1.6vw, 22px);font-weight:400;color:#000000;line-height:1.8;margin:0}.page .insight-list{max-width:1100px;margin:0 auto;display:grid;grid-template-columns:1fr 1fr;gap:32px}@media (max-width:960px){.page .insight-list{grid-template-columns:1fr}}@media (max-width:640px){.page .insight-list{display:flex;grid-template-columns:none;gap:16px;overflow-x:auto;overflow-y:hidden;overscroll-behavior-y:contain;scroll-snap-type:x mandatory;padding:0 24px 8px;margin:0 -24px 16px;scrollbar-width:none;-webkit-overflow-scrolling:touch;max-width:none}.page .insight-list::-webkit-scrollbar{display:none}.page .insight-list>.insight-card{min-width:82%;flex:0 0 82%;scroll-snap-align:center}}.page .insight-card{display:flex;flex-direction:column;gap:clamp(12px, 1.6vh, 20px)}.page .insight-visual{position:relative;display:block;width:100%;aspect-ratio:1.6;max-height:44vh;border-radius:6px;overflow:hidden;text-decoration:none;color:#000000}@media (max-width:640px){.page .insight-visual{aspect-ratio:1.6;max-height:none}}.page .insight-thumb{position:absolute;inset:0;background:#d9d9d9;transition:transform 0.4s ease}.page .insight-visual:hover .insight-thumb{transform:scale(1.02)}.page .insight-pill{position:absolute;left:24px;right:24px;bottom:24px;display:grid;grid-template-columns:auto 1fr auto;align-items:center;gap:16px;background:rgba(255, 255, 255, 0.6);border:1px solid rgba(255, 255, 255, 0.9);border-radius:6px;padding:16px 24px;backdrop-filter:blur(20px) saturate(200%);-webkit-backdrop-filter:blur(20px) saturate(200%);box-shadow:0 6px 18px rgba(0, 0, 0, 0.08), inset 0 1.5px 0 rgba(255, 255, 255, 0.95), inset 0 -1px 0 rgba(255, 255, 255, 0.4);z-index:2}.page .insight-en{font-family:"Inter", sans-serif;font-size:16px;font-weight:700;letter-spacing:0.01em;background:linear-gradient(135deg, #FFB089 0%, #E8570F 50%, #D52928 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent;color:transparent}.page .insight-ja{font-family:"Noto Sans JP", sans-serif;font-size:14px;font-weight:600;color:#000000}.page .insight-arrow{font-family:"Inter", sans-serif;font-size:18px;font-weight:600;color:#000000;transition:transform 0.25s ease}.page .insight-visual:hover .insight-arrow{transform:translateX(4px)}.page .insight-body{font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:500;color:#000000;line-height:1.7;margin:0}.page .recruit{position:relative;z-index:5;width:100%;padding:80px 60px 120px;background:transparent}@media (max-width:640px){.page .recruit{padding:60px 24px 90px}}.page .recruit-inner{max-width:1200px;margin:0 auto;display:grid;grid-template-columns:1fr 1.1fr;gap:64px;align-items:center}@media (max-width:960px){.page .recruit-inner{grid-template-columns:1fr;gap:40px}}.page .recruit-left{text-align:center}.page .recruit-title{font-family:"Noto Sans JP", sans-serif;font-size:clamp(28px, 3.6vw, 44px);font-weight:700;color:#000000;margin:0 0 24px}.page .recruit-body{font-family:"Noto Sans JP", sans-serif;font-size:16px;font-weight:500;color:#000000;line-height:2;margin:0 0 40px}.page .recruit-actions{display:flex;gap:16px;justify-content:center;flex-wrap:wrap}.page .recruit-btn{display:inline-flex;align-items:center;gap:8px;padding:14px 28px;border:1px solid rgba(0, 0, 0, 0.2);border-radius:6px;font-family:"Noto Sans JP", sans-serif;font-size:15px;font-weight:600;color:#000000;text-decoration:none;transition:border-color 0.2s, color 0.2s, transform 0.2s}.page .recruit-btn:hover{border-color:#D52928;color:#D52928;transform:translateX(2px)}.page .recruit-image{width:100%;aspect-ratio:1.3333333333;border-radius:6px;background:#d9d9d9}.page .carousel-dots{display:none;justify-content:center;gap:8px;margin:4px 0 32px}@media (max-width:640px){.page .carousel-dots{display:flex}}.page .carousel-dot{width:8px;height:8px;padding:0;border:0;border-radius:50%;background:rgba(0, 0, 0, 0.18);cursor:pointer;transition:width 0.25s ease, background 0.25s ease, border-radius 0.25s ease}.page .works .carousel-dot{background:rgba(0, 0, 0, 0.18)}.page .seminar .carousel-dot,.page .insight .carousel-dot{background:rgba(0, 0, 0, 0.22)}.page .carousel-dot.active{width:24px;border-radius:6px;background:#D52928}