.loading-screen{background:#0c1b1b;isolation:isolate}.loading-screen:before,.loading-screen:after{display:none}.intro-preload{display:none}.intro-montage{position:absolute;inset:0;z-index:-1}.intro-scene{position:absolute;inset:0;opacity:0;overflow:hidden;animation:cityBeat .86s calc(var(--beat)*.72s) both}.intro-scene-photo{position:absolute;inset:0;background-image:linear-gradient(0deg,#00171caa,transparent 70%),url('assets/sapporo-intro.jpg');background-size:cover,200% 300%;background-position:center,calc(var(--x)*100%) calc(var(--y)*50%);transform:scale(1.08);animation:cityZoom .9s calc(var(--beat)*.72s) both}.intro-letter{position:absolute;left:8%;top:50%;transform:translateY(-50%);font:clamp(200px,35vw,500px)/1 Georgia;color:#fff2ce;text-shadow:0 0 60px #0004}.intro-scene small{position:absolute;right:8%;bottom:18%;font:20px 'Yu Mincho',serif;letter-spacing:.2em;color:#fff}.intro-spelling{position:absolute;left:9%;bottom:8%;display:flex;gap:20px;color:#fff1c3;font:20px Georgia;letter-spacing:.15em}.intro-spelling span{opacity:0;animation:spellOn .35s calc(var(--beat)*.72s) forwards}.intro-finale{text-align:center;opacity:0;animation:finalCrown 1s 5.15s both;position:relative}.intro-finale:before{content:'';position:absolute;inset:-200%;z-index:-1;background:radial-gradient(ellipse,#193c39ed,#0b1d20c9 55%,transparent)}.intro-finale>p{font:9px Arial;letter-spacing:.4em;color:#e6ce98}.intro-finale strong{font:clamp(42px,8vw,110px) 'Yu Mincho',serif;letter-spacing:.1em;color:#ffe8ab;text-shadow:0 0 50px #dfb85d44;display:block;margin:20px 0}.intro-finale small{font-size:12px;color:#dfd7bf;letter-spacing:.15em}#intro-skip{position:absolute;top:35px;right:5%;border:0;border-bottom:1px solid #f4dc9b66;background:transparent;color:#f3e5be;padding:12px 0;font:9px Arial;letter-spacing:.16em}.intro-complete .hero .launch-announcement{animation:revealSummit 1.2s .15s both}.intro-complete .hero-declaration{animation:revealSummit 1.2s both}
.records .section-head{align-items:center;gap:50px}.records .section-head>p{padding:25px 30px;border:1px solid #8f662766;background:linear-gradient(120deg,#fff4cc99,#e6c27888);box-shadow:0 10px 35px #77502022;max-width:450px;min-width:350px}.proof-kicker{font:8px Arial;letter-spacing:.15em;display:block;color:#99712e}.records .section-head>p strong{display:block;font:clamp(22px,2.3vw,34px)/1.7 'Yu Mincho',serif;color:#65400d;margin:12px 0}.records .section-head>p>span:last-child{font-size:11px;line-height:2;color:#71501f}.mission .mission-logo.visible{animation:sealReveal 1.1s ease both}.mission .mission-line{position:relative}.mission .mission-line:after{content:'';display:block;height:1px;width:0;background:linear-gradient(90deg,#b68c35,transparent);transition:width 1.8s .5s}.mission .visible .mission-line:after{width:100%}.vision .vision-background{animation:stationDrift 35s ease-in-out infinite alternate;transform-origin:65% 50%}.vision .vision-content.visible h2{animation:revealSummit 1.1s both}.values{background:radial-gradient(ellipse at 0 0,#223e36,#101f1c 75%)}
.service-showcase[data-auto] .service-track{scroll-snap-type:none;gap:0}.service-showcase[data-auto] .service-panel{flex:0 0 76%;min-height:760px;padding:60px 5%;border-right:22px solid #f5f1e7;display:flex;align-items:flex-end}.service-panel-photo{background-image:linear-gradient(0deg,#f9f4e8f2,#f9f4e8a6 44%,#f9f4e800 78%),var(--service-image);background-size:cover;background-position:center}.service-panel-copy{opacity:1!important;transform:none!important;max-width:900px}.service-panel-copy h3{font-size:clamp(48px,5.4vw,80px);line-height:1.5;margin:15px 0;letter-spacing:.04em}.support-title{font-size:clamp(28px,3.2vw,46px);margin-top:8px}.service-panel-copy .eyebrow{font-size:10px}.service-panel-copy>p:not(.eyebrow){font-size:14px;line-height:2;max-width:600px}.service-showcase[data-auto] .service-page-link{margin-top:15px;padding:13px 0;font-size:13px}.service-watermark{right:4%;bottom:auto;top:15px;font-size:180px;color:#fff6}.service-panel-photo{animation:none!important;transform:scale(1.015)!important}.service-panel:hover .service-panel-photo{transform:scale(1.05)!important}.showcase-tabs{background:#eee7d8}.service-showcase[data-auto] .showcase-top h2{font-size:clamp(40px,5.6vw,80px);line-height:1.5}.mission h2{font-size:clamp(35px,4.1vw,63px)}.vision h2{font-size:clamp(43px,5.8vw,87px)}.values .section-head h2{font-size:clamp(40px,5.2vw,76px)}.values .value-card h3{font-size:clamp(28px,2.8vw,42px)}
.company-table{margin-left:0;max-width:none;padding:10px 35px}.company-table>div{grid-template-columns:180px 1fr;padding:28px 5px;gap:30px}.company-table dt{font:16px 'Yu Mincho',serif;color:#9d7a38}.company-table dd{font-size:15px;line-height:2}.company-table a{border-bottom:1px solid #b49a6244}.crown-ambition{text-align:center;background:#e9e0cb;padding:100px 7%;border-top:1px solid #b19a6355;color:#6f5b34}.crown-ambition>p{font:9px Arial;letter-spacing:.3em;color:#a17a3e}.crown-ambition strong{font:clamp(28px,4.5vw,66px)/1.8 'Yu Mincho',serif;display:block;margin:20px 0}.crown-ambition>span{font-size:12px}.contact{background:radial-gradient(ellipse at 0 0,#fffefa,#f1eddf 70%);color:#4a5b4e;border-top:1px solid #c5ae7355}.contact h2{color:#4c624e;font-size:clamp(35px,4.4vw,65px)}.contact>div>p:not(.eyebrow):not(.fine){color:#74806d}.contact .eyebrow{color:#9c7b3b}.contact .phone{color:#9d7937}.contact form{padding:35px;border:1px solid #c2af7b44;background:#ffffff77;box-shadow:0 20px 70px #9c86441a}.contact label{color:#6b775f}.contact input,.contact textarea,.contact select{background:#fffdf7;color:#3b5245;border-color:#bca87888}.contact input::placeholder,.contact textarea::placeholder{color:#9ca28f}.contact .fine{color:#93957f}.contact .mail-fallback{color:#98783e}#form-status{color:#657a50}
@keyframes cityBeat{0%{opacity:0;clip-path:inset(0 100% 0 0)}18%{opacity:1;clip-path:inset(0 0 0 0)}85%{opacity:1}100%{opacity:0}}@keyframes cityZoom{from{transform:scale(1.13)}to{transform:scale(1)}}@keyframes spellOn{to{opacity:1}}@keyframes finalCrown{from{opacity:0;transform:translateY(30px) scale(1.1);filter:blur(15px)}to{opacity:1;transform:none;filter:blur(0)}}@keyframes sealReveal{from{opacity:0;transform:scale(.88) rotate(-5deg)}to{opacity:1;transform:none}}@keyframes stationDrift{from{transform:scale(1)}to{transform:scale(1.09)}}
@media(max-width:900px){.intro-spelling{gap:13px;font-size:15px}.intro-letter{font-size:230px}.intro-scene small{font-size:15px}.records .section-head>p{min-width:0;max-width:none;padding:20px}.records .section-head>p strong{font-size:25px}.service-showcase[data-auto] .service-panel{flex-basis:92%;min-height:680px;padding:35px 6%;border-right-width:10px}.service-panel-copy h3{font-size:36px}.support-title{font-size:28px}.service-panel-photo{background-image:linear-gradient(0deg,#faf5e9f5,#faf5e9cc 50%,#faf5e933),var(--service-image)}.company-table{padding:10px 15px}.company-table>div{grid-template-columns:1fr;gap:8px;padding:22px 0}.company-table dd{font-size:13px}.company-table dt{font-size:14px}.contact form{padding:22px 18px}.crown-ambition{padding:60px 7%}.service-showcase[data-auto] .showcase-top h2{font-size:38px}.mission h2{font-size:32px}.vision h2{font-size:37px}.values .section-head h2{font-size:40px}.values .value-card h3{font-size:30px}}
@media(prefers-reduced-motion:reduce){.intro-montage,.intro-spelling{display:none}.intro-finale{opacity:1;animation:none}.vision .vision-background,.vision .vision-content.visible h2,.mission .mission-logo.visible,.intro-complete .hero .launch-announcement{animation:none!important}.mission .mission-line:after{transition:none}}

.service-showcase[data-auto] .showcase-top h2 br{display:block}.service-showcase[data-auto] .showcase-top h2{line-height:1.4}.service-showcase[data-auto] .showcase-top{padding-top:65px;padding-bottom:35px}


@media(max-width:900px){.contact h2{font-size:26px;line-height:1.9;letter-spacing:.01em}}

