.hero-band{background:linear-gradient(160deg,#f6f8fb 0%,#e9eef7 100%)}.hero{background:linear-gradient(160deg,#f6f8fb 0%,#e9eef7 100%);grid-template-columns:1fr;max-width:1800px;margin-inline:auto;display:grid;position:relative;overflow:hidden}.hero .ghost-char{font-size:clamp(320px,55vw,760px);bottom:-230px;left:-120px}.hero-copy{z-index:1;padding:clamp(56px, 8vw, 96px) var(--gutter) 40px;flex-direction:column;gap:26px;min-width:0;max-width:700px;display:flex;position:relative}.hero>*{min-width:0}.hero-title,.hero-title [data-typing]{white-space:normal;overflow-wrap:anywhere}.hero-title{letter-spacing:.02em;font-size:clamp(38px,5vw,68px);line-height:1.32}.hero-lede{color:var(--color-muted);max-width:440px;font-size:14.5px;line-height:2.3}.hero-actions{flex-wrap:wrap;gap:16px;display:flex}.hero-media{aspect-ratio:4/3;width:100%;min-height:0;position:relative}.hero-media .photo{position:absolute;inset:0}.vision-tag{background:var(--color-ink);color:var(--color-on-dark);z-index:2;flex-direction:column;gap:4px;padding:18px 28px;display:flex;position:absolute;bottom:52px;left:8%}.vision-tag .label{letter-spacing:.3em;color:var(--color-gold);font-size:9.5px;font-weight:600}.vision-tag strong{font-family:var(--font-display);font-size:20px;font-weight:800}.hero-copy>*{opacity:0;animation:hero-in 1s var(--ease) forwards;transform:translateY(26px)}.hero-copy>:first-child{animation-delay:.15s}.hero-copy>.hero-title{opacity:1;animation:none;transform:none}.hero-copy>:nth-child(3){animation-delay:2s}.hero-copy>:nth-child(4){animation-delay:2.25s}@keyframes hero-in{to{opacity:1;transform:none}}.hero-media .photo{animation:hero-photo 1.4s var(--ease) .2s both}.hero-media .photo img{animation:hero-photo-zoom 2.4s var(--ease) .2s both}@keyframes hero-photo{0%{clip-path:polygon(100% 0,100% 0,100% 100%,100% 100%)}to{clip-path:polygon(14% 0,100% 0,100% 100%,0 100%)}}@keyframes hero-photo-zoom{0%{transform:scale(1.12)}to{transform:scale(1)}}.vision-tag{opacity:0;animation:drift 6s ease-in-out 1.3s infinite, hero-in .9s var(--ease) 1.1s forwards}@keyframes drift{0%,to{transform:translateY(0)}50%{transform:translateY(-14px)}}.js [data-typing]{opacity:0}.js [data-typing].is-ready{opacity:1}.typed-cursor{color:var(--color-blue);transition:opacity .6s var(--ease);margin-left:.04em;font-weight:200}.typed-cursor.is-fading{opacity:0!important}@media (width>=960px){.hero{grid-template-columns:52% 48%;height:720px}.hero-copy{padding:0 0 0 var(--edge);justify-content:center}.hero-media{aspect-ratio:auto;min-height:0}}@media (width<=959px){.hero-media .photo{clip-path:none;animation:none}.hero-title{font-size:clamp(30px,7.6vw,44px)}}.name-section{position:relative;overflow:hidden}.name-section .ghost-char{transform:translate(-50%, -50%) translateY(var(--py,0px));font-size:clamp(320px,50vw,640px);top:50%;left:50%}.name-inner{z-index:1;flex-direction:column;gap:32px;padding-block:clamp(90px,12vw,160px) clamp(90px,12vw,170px);display:flex;position:relative}.name-inner h2{text-wrap:pretty;font-size:clamp(34px,5vw,72px);line-height:1.5}.name-inner .accent-line{background:linear-gradient(90deg, var(--color-blue), #1e5bd600);width:min(340px,60%);height:2px}.name-inner p{color:var(--color-on-dark-muted);max-width:580px;font-size:14.5px;line-height:2.4}.companies-note{border-left:3px solid var(--color-gold);color:var(--color-on-dark-soft);max-width:720px;margin-top:8px;padding-left:22px;font-size:14.5px;line-height:2.2}.companies-note strong{color:var(--color-on-dark);font-weight:800}.philosophy-head{padding-block:clamp(80px,10vw,130px) 40px}.philosophy-mission{margin-top:60px}.philosophy-vision{position:relative;overflow:hidden}.philosophy-vision .ghost-char{color:#1e5bd61a;font-size:clamp(220px,32vw,440px);top:-90px;right:-50px}.philosophy-vision-inner{z-index:1;flex-direction:column;gap:24px;padding-block:clamp(80px,10vw,120px);display:flex;position:relative}.vision-full{font-family:var(--font-display);color:var(--color-on-dark-soft);max-width:760px;font-size:clamp(17px,1.9vw,24px);font-weight:700;line-height:1.9}.philosophy-vision h3{font-size:clamp(38px,6vw,84px);line-height:1.35}.philosophy-vision p{color:var(--color-on-dark-muted);max-width:560px;font-size:14px;line-height:2.3}.philosophy-purpose{align-items:center;min-height:620px;display:flex;position:relative;overflow:hidden}.philosophy-purpose .photo{position:absolute;inset:0}.philosophy-purpose .overlay{background:linear-gradient(90deg,#081020eb 0%,#0810208c 50%,#0810200d 82%);position:absolute;inset:0}.philosophy-purpose-inner{z-index:1;padding:80px var(--gutter) 80px var(--edge-full);max-width:none;color:var(--color-on-dark);flex-direction:column;gap:22px;display:flex;position:relative}.philosophy-purpose h3{max-width:820px;font-size:clamp(28px,3.4vw,50px);line-height:1.55}.philosophy-purpose p{color:var(--color-on-dark-soft);max-width:480px;font-size:14px;line-height:2.3}@media (width<=959px){.philosophy-purpose .overlay{background:#081020c7}}.value-section{border-top:1px solid var(--color-line)}.value-inner{padding-block:clamp(70px,9vw,110px) clamp(70px,9vw,120px)}.value-grid{border-top:1px solid #101c3329;grid-template-columns:1fr;margin-top:40px;display:grid}.value-row{transition:background .3s var(--ease);border-bottom:1px solid #101c331f;align-items:flex-start;gap:26px;padding:32px 6px;display:flex}.value-row:hover{background:#ffffffb3}.value-num{flex-direction:column;flex:none;align-items:center;gap:7px;width:46px;display:flex}.value-num .kanji{font-family:var(--font-display);color:var(--color-ink);font-size:31px;font-weight:800;line-height:1}.value-num .tick{background:#101c3333;width:1px;height:24px}.value-num .idx{font-family:var(--font-label);color:var(--color-muted-2);font-size:10px;font-weight:700}.value-body{flex-direction:column;gap:8px;padding-top:3px;display:flex}.value-title{flex-wrap:wrap;align-items:center;gap:12px;display:flex}.value-title h3{font-size:24px;line-height:1.4}.value-body p{color:var(--color-muted);font-size:12px;line-height:2}.value-tail{border-bottom:1px solid #101c331f;justify-content:flex-end;align-items:center;padding:30px 6px;display:flex}.value-tail span{writing-mode:vertical-rl;font-family:var(--font-display);color:var(--color-muted-2);letter-spacing:.5em;height:110px;font-size:15px}@media (width>=900px){.value-grid{grid-template-columns:1fr 1fr;column-gap:96px}}.future-section{position:relative;overflow:hidden}.future-inner{z-index:1;flex-direction:column;gap:14px;padding-block:clamp(90px,12vw,140px) clamp(80px,11vw,130px);display:flex;position:relative}.future-lead{font-family:var(--font-display);margin-top:14px;font-size:clamp(24px,3vw,34px);font-weight:700}.future-lead #future-years{min-width:.7em;color:var(--color-gold);font-variant-numeric:tabular-nums;display:inline-block}.future-figure{font-family:var(--font-display);flex-wrap:wrap;align-items:baseline;gap:6px;font-weight:800;line-height:1;display:flex}.future-figure .unit-a{font-size:clamp(32px,5vw,64px)}.future-figure .counter{font-family:var(--font-label);letter-spacing:-.02em;color:var(--color-gold);font-variant-numeric:tabular-nums;text-align:center;min-width:1.7em;transform:scale(var(--scale,1));transform-origin:bottom;will-change:transform;font-size:clamp(110px,18vw,250px);line-height:.9;display:inline-block}.future-figure .counter.is-reached{animation:reach-pop .7s var(--ease)}@keyframes reach-pop{0%{transform:scale(1)}40%{transform:scale(1.08)}to{transform:scale(1)}}.future-figure .unit-b{font-size:clamp(48px,8vw,110px)}.future-figure .unit-c{color:var(--color-on-dark-muted);font-size:clamp(22px,3.2vw,44px)}.history{flex-direction:column;gap:44px;margin-top:70px;display:flex}.history-head{align-items:baseline;gap:20px;display:flex}.history-head h3{letter-spacing:.06em;white-space:nowrap;font-size:clamp(22px,2.4vw,30px)}.history-head .rule{background:var(--color-line-dark);transform-origin:0;height:1px;transition:transform 1.4s var(--ease) .3s;flex:1;transform:scaleX(0)}.history-head.reveal.is-visible .rule{transform:scaleX(1)}.history-grid{grid-template-columns:1fr;gap:32px 64px;display:grid}.milestone{flex-direction:column;gap:8px;display:flex}.milestone-title{align-items:center;gap:12px;font-size:16.5px;font-weight:800;line-height:1.6;display:flex}.milestone-title:before{content:"";background:var(--dot,var(--color-gold));border-radius:50%;flex:none;width:8px;height:8px}.milestone p{color:var(--color-on-dark-faint);padding-left:20px;font-size:11.5px;line-height:1.9}.history-close{font-family:var(--font-display);margin-top:44px;font-size:clamp(20px,2.2vw,27px);font-weight:800;line-height:1.9}@media (width>=700px){.history-grid{grid-template-columns:repeat(2,1fr)}}@media (width>=1000px){.history-grid{grid-template-columns:repeat(3,1fr);gap:44px 64px}}.business-head{padding-block:clamp(80px,10vw,130px) 40px}.business-block-1{margin-top:50px}.business-block-2{margin-top:70px}.business-block .split-body h3{font-size:clamp(32px,4vw,52px)}.business-block-2 .split-body h3{font-size:clamp(28px,3.4vw,44px)}.strength-section{position:relative;overflow:hidden}.strength-deco{pointer-events:none;animation:9s ease-in-out infinite alternate deco-float;position:absolute}.strength-deco-2{animation-duration:11s;animation-delay:-3s}.strength-deco-3{animation-duration:13s;animation-delay:-6s}.strength-deco-4{animation-duration:8s;animation-delay:-2s}.strength-deco-5{animation-duration:7s;animation-delay:-4s}@keyframes deco-float{0%{translate:0}to{translate:0 -18px}}@media (prefers-reduced-motion:reduce){.strength-deco{animation:none}}.strength-deco-1{border:1.5px solid #101c331a;border-radius:50%;width:380px;height:380px;top:80px;left:-120px}.strength-deco-2{background:#1e5bd614;border-radius:50%;width:200px;height:200px;top:260px;left:60px}.strength-deco-3{background:var(--color-ink);opacity:.06;width:340px;height:340px;top:-80px;right:-80px;transform:rotate(18deg)}.strength-deco-4{border:1.5px solid #1e5bd659;width:120px;height:120px;top:150px;right:14%;transform:rotate(45deg)}.strength-deco-5{background:var(--color-blue);border-radius:50%;width:14px;height:14px;top:60px;left:38%}.strength-intro{z-index:1;text-align:center;flex-direction:column;align-items:center;gap:26px;padding-block:clamp(90px,11vw,150px) 60px;display:flex;position:relative}.strength-intro .label{letter-spacing:.3em;font-size:13px}.strength-intro .setup{font-family:var(--font-display);color:var(--color-ink-2);font-size:clamp(17px,2vw,26px);font-weight:700;line-height:2}.strength-intro h2{letter-spacing:.02em;font-size:clamp(48px,9vw,130px);line-height:1.25}.strength-intro p{color:var(--color-muted);max-width:520px;font-size:13px;line-height:2.2}.strength-block{margin-top:60px}.strength-block .split-body h3{font-size:clamp(28px,3.4vw,44px)}.strength-section .spacer{height:90px}@media (width>=960px){.strength-block.split{min-height:460px}.strength-block.split:not(.split-media-left){grid-template-columns:56% 44%}.strength-block.split-media-left{grid-template-columns:44% 56%}}@media (width<=700px){.strength-intro .setup br{display:none}}.recruit-section{position:relative;overflow:hidden}.recruit-section .ghost-char{color:#f6f8fb0a;font-size:clamp(260px,40vw,520px);bottom:-140px;right:-80px}.recruit-visual{justify-content:center;align-items:center;min-height:580px;display:flex;position:relative;overflow:hidden}.recruit-visual .photo{position:absolute;inset:0}.recruit-visual .overlay{background:#081020bd;position:absolute;inset:0}.recruit-copy{z-index:1;text-align:center;padding:80px var(--gutter);flex-direction:column;align-items:center;gap:24px;display:flex;position:relative}.recruit-copy .label{letter-spacing:.4em;font-size:14px;font-weight:800}.recruit-copy h2{font-size:clamp(30px,5vw,70px);line-height:1.5}.recruit-copy p{color:var(--color-on-dark-soft);max-width:640px;font-size:13.5px;line-height:2.3}.recruit-copy .actions{flex-wrap:wrap;justify-content:center;gap:16px;margin-top:8px;display:flex}.recruit-section .spacer{height:60px}@media (width<=480px){.name-inner h2,.philosophy-vision h3{font-size:30px}.vision-full{font-size:16px}.philosophy-purpose h3{font-size:26px}.business-block .split-body h3,.business-block-2 .split-body h3{font-size:27px}.strength-intro h2{font-size:40px}.strength-intro .setup{font-size:16px}.strength-block .split-body h3{font-size:27px}.recruit-copy h2{font-size:24px}.history-close{font-size:19px}.value-title h3{font-size:21px}}
