.sub-hero{grid-template-columns:1fr;max-width:1800px;margin-inline:auto;display:grid;position:relative;overflow:hidden}.sub-hero .ghost-char{font-size:clamp(300px,46vw,640px);bottom:-220px}.sub-hero-ghost-left{left:-100px}.sub-hero-ghost-right{right:-80px}.sub-hero-copy{z-index:1;padding:clamp(56px, 8vw, 90px) var(--gutter) 48px;flex-direction:column;gap:24px;max-width:620px;display:flex;position:relative}.sub-hero-copy h1{font-size:clamp(34px,4.6vw,64px);line-height:1.4}.sub-hero-copy .tagline{font-family:var(--font-display);font-size:clamp(18px,2vw,24px);font-weight:700;line-height:1.8}.sub-hero-copy p{color:var(--color-on-dark-muted);font-size:13.5px;line-height:2.3}.sub-hero-media{aspect-ratio:16/10;width:100%;min-height:0;position:relative}.sub-hero-media .photo{position:absolute;inset:0}@media (width>=960px){.sub-hero{grid-template-columns:48% 52%;height:600px}.sub-hero-media-left{grid-template-columns:52% 48%}.sub-hero-media-left .sub-hero-media{order:-1}.sub-hero-copy{padding:0 40px 0 var(--edge);justify-content:center;max-width:none}.sub-hero-copy>*{max-width:560px}.sub-hero-media-left .sub-hero-copy{padding:0 var(--edge) 0 40px}.sub-hero-media{aspect-ratio:auto;min-height:0}}@media (width<=959px){.sub-hero-media .photo{clip-path:none}}.sub-block{margin-top:clamp(70px,9vw,110px)}.sub-block .split-body h3{font-size:clamp(30px,3.4vw,46px)}.sub-block .split-body .lead{font-size:14.5px}.dark-feature{margin-top:clamp(70px,9vw,110px);position:relative;overflow:hidden}.dark-feature .ghost-char{color:#1e5bd617;font-size:clamp(200px,30vw,400px);top:-100px;right:-60px}.dark-feature-inner{z-index:1;flex-direction:column;gap:22px;padding-block:clamp(80px,10vw,120px);display:flex;position:relative}.dark-feature h2{font-size:clamp(30px,3.8vw,52px);line-height:1.5}.dark-feature h2 small{color:var(--color-on-dark-faint);font-size:clamp(14px,1.5vw,20px);font-weight:700}.dark-feature p{color:var(--color-on-dark-muted);max-width:620px;font-size:13.5px;line-height:2.4}.dark-feature-split{grid-template-columns:1fr;align-items:center;gap:40px;display:grid}.dark-feature-split .photo{aspect-ratio:440/320;width:100%}@media (width>=960px){.dark-feature-split{grid-template-columns:440px 1fr;gap:70px}.dark-feature-split .photo{height:320px}}.dark-feature h2.wide{font-size:clamp(28px,3.2vw,42px);line-height:1.6}.trio-section{flex-direction:column;gap:48px;padding-block:clamp(80px,10vw,120px);display:flex}.trio-vertical{writing-mode:vertical-rl;font-family:var(--font-display);letter-spacing:.3em;flex:none;height:260px;font-size:28px;font-weight:800}.trio-grid{grid-template-columns:1fr;gap:40px;display:grid}.trio-item{flex-direction:column;gap:12px;display:flex}.trio-item .kanji{font-family:var(--font-display);color:var(--color-blue);font-size:26px;font-weight:800}.trio-item h3{font-family:var(--font-body);font-size:16px;font-weight:800;line-height:1.6}.trio-item h3.display{font-family:var(--font-display);font-size:24px}.trio-item p{color:var(--color-muted);font-size:12px;line-height:2.1}.trio-item .outline-num{font-size:60px}@media (width>=900px){.trio-section{flex-direction:row;align-items:flex-start;gap:80px}.trio-grid{flex:1;grid-template-columns:repeat(3,1fr);gap:60px}.trio-section.trio-no-vertical{flex-direction:column}.trio-section.trio-no-vertical .trio-grid{gap:70px}}.recruit-hero{justify-content:center;align-items:center;min-height:640px;display:flex;position:relative;overflow:hidden}.recruit-hero .photo{position:absolute;inset:0}.recruit-hero .overlay{background:#0b0e14bd;position:absolute;inset:0}.recruit-hero-copy{z-index:1;text-align:center;padding:80px var(--gutter);color:var(--color-on-dark);flex-direction:column;align-items:center;gap:26px;display:flex;position:relative}.recruit-hero-copy .label{letter-spacing:.4em;font-size:14px;font-weight:800}.recruit-hero-copy h1{font-size:clamp(34px,5.5vw,76px);line-height:1.5}.recruit-hero-copy p{color:var(--color-on-dark-soft);max-width:640px;font-size:14px;line-height:2.3}.wanted-section{grid-template-columns:1fr;gap:50px;padding-block:clamp(80px,10vw,110px);display:grid}.wanted-main{flex-direction:column;gap:24px;display:flex}.wanted-main h2{color:var(--color-gold);font-size:32px}.wanted-list li{border-top:1px solid var(--color-line-dark);align-items:baseline;gap:20px;padding:22px 4px;display:flex}.wanted-list li:last-child{border-bottom:1px solid var(--color-line-dark)}.wanted-list .idx{font-family:var(--font-label);color:var(--color-gold);font-size:14px;font-weight:800}.wanted-list .text{font-family:var(--font-display);font-size:19px;font-weight:700;line-height:1.8}.wanted-divider{display:none}.wanted-side{flex-direction:column;gap:24px;display:flex}.wanted-side h2{color:var(--color-on-dark-faint);font-size:24px}.wanted-side ul{font-family:var(--font-display);color:var(--color-on-dark-muted);flex-direction:column;gap:14px;font-size:16px;font-weight:700;line-height:1.9;display:flex}.wanted-side .note{color:var(--color-muted);font-size:11.5px;line-height:2}@media (width>=960px){.wanted-section{grid-template-columns:1fr 1px 380px;gap:90px}.wanted-divider{background:#f6f8fb1f;width:1px;display:block}}.position-section{padding-block:clamp(80px,10vw,110px)}.position-card{background:#fff;border:1px solid #101c331a;flex-wrap:wrap;align-items:center;gap:24px 50px;margin-top:50px;padding:clamp(28px,4vw,44px) clamp(24px,4vw,48px);display:flex;box-shadow:0 4px 20px #101c330d}.position-card h3{flex:none;font-size:34px}.position-card p{color:var(--color-muted);flex:320px;font-size:13px;line-height:2.2}.sub-hero-copy>*{opacity:0;animation:sub-hero-in 1s var(--ease) forwards;transform:translateY(24px)}.sub-hero-copy>:first-child{animation-delay:.15s}.sub-hero-copy>:nth-child(2){animation-delay:.3s}.sub-hero-copy>:nth-child(3){animation-delay:.5s}.sub-hero-copy>:nth-child(4){animation-delay:.65s}.sub-hero-copy>:nth-child(5){animation-delay:.8s}@keyframes sub-hero-in{to{opacity:1;transform:none}}.sub-hero-copy .hero-actions{flex-wrap:wrap;gap:14px;display:flex}.sub-hero-title-long{font-size:clamp(28px,3.4vw,42px)!important}.brand-main-long{letter-spacing:.03em;font-size:17px}.feature-list{flex-direction:column;gap:8px;margin-top:4px;display:flex}.feature-list li{color:var(--color-ink-2);opacity:0;transition:opacity .7s var(--ease) var(--delay,0s), transform .7s var(--ease) var(--delay,0s);padding-left:22px;font-size:13px;line-height:1.9;position:relative;transform:translate(-12px)}.feature-list li:before{content:"";background:var(--color-blue);width:10px;height:2px;position:absolute;top:.75em;left:0}.reveal.is-visible .feature-list li{opacity:1;transform:none}.pain-section{flex-direction:column;gap:40px;padding-block:clamp(80px,10vw,120px) 0;display:flex}.pain-list{grid-template-columns:1fr;gap:14px;display:grid}.pain-item{border:1px solid var(--color-line);transition:transform .4s var(--ease), box-shadow .4s var(--ease), border-color .4s var(--ease);background:#fff;align-items:flex-start;gap:18px;padding:22px 24px;display:flex}.pain-item:hover{border-color:#1e5bd659;transform:translateY(-4px);box-shadow:0 12px 30px #101c3314}.pain-mark{font-family:var(--font-label);color:var(--color-blue);flex:none;padding-top:4px;font-size:13px;font-weight:800}.pain-item p{font-family:var(--font-display);font-size:15.5px;font-weight:700;line-height:1.8}.pain-close{font-family:var(--font-display);text-align:center;font-size:clamp(18px,2vw,24px);font-weight:800;line-height:1.8}@media (width>=800px){.pain-list{grid-template-columns:1fr 1fr;gap:18px}}.services-head{padding-top:clamp(80px,10vw,120px)}.why-grid{grid-template-columns:1fr;gap:24px;margin-top:28px;display:grid}.why-item{border-top:1px solid var(--color-line-dark);flex-direction:column;gap:8px;padding-top:20px;display:flex}.why-item .kanji{font-family:var(--font-display);color:var(--color-blue-soft);font-size:26px;font-weight:800}.why-item h3{font-family:var(--font-body);font-size:16px;font-weight:800}.why-item p{color:var(--color-on-dark-muted);max-width:none;font-size:12.5px;line-height:2}@media (width>=800px){.why-grid{grid-template-columns:repeat(3,1fr);gap:40px}}.flow-section{flex-direction:column;gap:48px;padding-block:clamp(80px,10vw,120px);display:flex}.flow-steps{counter-reset:flow;grid-template-columns:1fr;gap:18px;margin:0;padding:0;list-style:none;display:grid}.flow-step{border:1px solid var(--color-line);transition:transform .4s var(--ease), box-shadow .4s var(--ease);background:#fff;flex-direction:column;gap:10px;padding:28px 26px 30px;display:flex;position:relative}.flow-step:hover{transform:translateY(-6px);box-shadow:0 16px 36px #101c331a}.flow-step:after{content:"";background:var(--color-blue);transform-origin:0;width:100%;height:3px;transition:transform 1s var(--ease) calc(var(--delay,0s) + .4s);position:absolute;bottom:0;left:0;transform:scaleX(0)}.flow-step.is-visible:after{transform:scaleX(1)}.flow-num{font-family:var(--font-label);color:#0000;-webkit-text-stroke:1.5px #101c3340;font-size:40px;font-weight:800;line-height:1}.flow-step h3{font-size:22px;line-height:1.4}.flow-step p{color:var(--color-muted);font-size:12.5px;line-height:2}@media (width>=900px){.flow-steps{grid-template-columns:repeat(4,1fr);gap:20px}}.mvv-section{margin-top:clamp(70px,9vw,110px)}.mvv-inner{flex-direction:column;gap:48px;padding-block:clamp(80px,10vw,120px);display:flex}.mvv-head h2{color:var(--color-on-dark)}.mvv-head .rule{background:var(--color-line-dark)}.mvv-grid{grid-template-columns:1fr;gap:40px;display:grid}.mvv-item{border-top:1px solid var(--color-line-dark);flex-direction:column;gap:14px;padding-top:26px;display:flex}.mvv-item dt{align-items:baseline;gap:14px;display:flex}.mvv-item dt .outline-num{font-size:44px}.mvv-item dt .jp{font-family:var(--font-display);color:var(--color-on-dark-muted);letter-spacing:.2em;font-size:13px;font-weight:700}.mvv-big{font-family:var(--font-display);font-size:clamp(20px,2vw,26px);font-weight:800;line-height:1.8}.mvv-values{flex-direction:column;gap:10px;display:flex}.mvv-values li{font-family:var(--font-display);align-items:baseline;gap:12px;font-size:16px;font-weight:700;line-height:1.7;display:flex}.mvv-values .kanji{color:var(--color-gold);flex:none;width:1.4em;font-size:18px}@media (width>=960px){.mvv-grid{grid-template-columns:1fr 1.2fr 1fr;gap:50px}}@media (width<=480px){.sub-hero-copy h1{font-size:32px}.sub-hero-title-long{font-size:27px!important}.sub-hero-copy .tagline{font-size:17px}.dark-feature h2{font-size:26px}.dark-feature h2.wide{font-size:24px}.pain-item p{font-size:14.5px}.pain-close{font-size:17px}.mvv-big{font-size:19px}.recruit-hero-copy h1{font-size:32px}.wanted-list .text{font-size:17px}.position-card h3{font-size:28px}.flow-step h3{font-size:20px}}
