:root{--green:#0E9F5E;--green-bright:#20D483;--bg:#FCFCFA;--surface:#F2F4F1;--border:#C9EEDC;--border-input:#9FDDBE;--pad:48px;--sp-80:clamp(44px,10vw,80px);--sp-90:clamp(48px,11vw,90px);--sp-100:clamp(52px,12vw,100px);--sp-110:clamp(54px,12vw,110px);--sp-120:clamp(56px,12vw,120px);--sp-130:clamp(60px,13vw,130px);--sp-150:clamp(64px,14vw,150px);--sp-160:clamp(64px,14vw,160px);--cols-2:1fr 1fr;--cols-02:220px 1fr;--cols-label:180px 1fr;--cols-why:110px 1fr;--cols-hero-about:1fr 440px;--cols-project:160px 1fr 320px}@media (max-width:860px){:root{--cols-2:1fr;--cols-02:1fr;--cols-label:1fr;--cols-why:56px 1fr;--cols-hero-about:1fr;--cols-project:1fr}}@media (max-width:768px){:root{--pad:24px}}@media (max-width:420px){:root{--pad:18px}}*{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{margin:0;background:var(--bg);color:var(--green);font-family:Yu Gothic Medium,YuGothic,Yu Gothic,Hiragino Kaku Gothic ProN,Noto Sans JP,sans-serif;-webkit-font-smoothing:antialiased;overflow-x:hidden}a{color:inherit}img{max-width:100%}@keyframes marquee2a{0%{transform:translateX(0)}to{transform:translateX(-50%)}}@keyframes bounceDown2a{0%,to{transform:translateY(0)}50%{transform:translateY(14px)}}@keyframes charIn2a{0%{opacity:0;transform:translateY(30px) rotate(9deg)}55%{opacity:1;transform:translateY(-6px) rotate(-3deg)}to{opacity:1;transform:translateY(0) rotate(0)}}@keyframes fadeUp2a{0%{opacity:0;transform:translateY(22px)}to{opacity:1;transform:translateY(0)}}.fadeup{opacity:0;animation:fadeUp2a .8s ease forwards}.arrow{display:inline-block;transform:translateX(var(--ax2a,0));transition:transform .3s ease}.navlink{text-decoration:none;transition:color .3s ease}.navlink:hover{color:var(--green-bright)}.do-row{display:grid;grid-template-columns:auto 1fr auto;grid-gap:clamp(20px,3.5vw,40px);gap:clamp(20px,3.5vw,40px);align-items:center;padding:clamp(38px,5vw,52px) var(--pad);border-top:1px solid var(--border);text-decoration:none;color:inherit;cursor:pointer;transition:background .35s ease,color .35s ease}.do-row:hover{background:var(--green);color:var(--bg);--ax2a:14px}.do-icon{width:clamp(38px,6vw,52px);color:var(--green-bright);display:flex;transition:color .35s ease}.do-icon svg{width:100%;height:auto;display:block}.do-row:hover .do-icon{color:var(--bg)}.biz-icon{width:clamp(40px,5vw,48px);color:var(--green-bright);display:flex}.biz-icon svg{width:100%;height:auto;display:block}@media (max-width:860px){.do-row{gap:clamp(16px,4vw,40px);padding:clamp(34px,7vw,52px) var(--pad)}}.banner{background:rgba(14,159,94,.045);transition:border-color .3s ease,background .3s ease}.banner:hover{border-color:var(--green-bright);background:rgba(14,159,94,.075);--ax2a:10px}.wayin{transition:color .35s ease}.wayin:hover{color:var(--green-bright);--ax2a:14px}.cta-link{transition:color .3s ease;text-decoration:none}.cta-link:hover{color:var(--green-bright);--ax2a:12px}.inv-cta{text-decoration:none}.inv-cta:hover{--ax2a:12px}.project-row{transition:background .35s ease;text-decoration:none;color:inherit}.project-row:hover{background:rgba(14,159,94,.05)}.submit-btn{transition:color .3s ease}.submit-btn:hover{color:var(--green-bright)}.about-split{display:grid;grid-template-columns:1fr 340px;grid-gap:56px;gap:56px;align-items:start}.about-split .about-split-photo{margin-top:130px}@media (max-width:860px){.about-split{grid-template-columns:1fr;gap:clamp(24px,6vw,56px)}.about-split .about-split-photo{margin-top:0}}.nav-burger{display:none;position:relative;width:28px;height:18px;padding:0;background:none;border:none;cursor:pointer;z-index:60}.nav-burger span{position:absolute;left:0;width:28px;height:1.5px;background:var(--green);transition:transform .3s ease,top .3s ease,background .2s ease}.nav-burger span:first-child{top:5px}.nav-burger span:nth-child(2){top:12px}.nav-burger:hover span{background:var(--green-bright)}.nav-burger.is-open{position:fixed;top:clamp(20px,4vw,30px);right:var(--pad)}.nav-burger.is-open span:first-child{top:8px;transform:rotate(45deg)}.nav-burger.is-open span:nth-child(2){top:8px;transform:rotate(-45deg)}.nav-sticky{position:fixed;top:0;left:0;right:0;z-index:40;background:var(--bg);border-bottom:1px solid var(--border);transform:translateY(-100%);visibility:hidden;transition:transform .35s ease,visibility 0s .35s;will-change:transform}.nav-sticky.is-visible{transform:translateY(0);visibility:visible;transition:transform .35s ease,visibility 0s 0s}.nav-sticky-inner{display:flex;justify-content:space-between;align-items:center;gap:14px;padding:11px var(--pad)}.nav-overlay{position:fixed;inset:0;z-index:50;background:var(--bg);animation:fadeUp2a .3s ease forwards;overflow-y:auto}.nav-overlay-list{padding:clamp(28px,8vw,48px) var(--pad) 0}.nav-overlay-link{display:flex;align-items:baseline;gap:16px;padding:clamp(15px,4vw,19px) 0;border-top:1px solid var(--border);text-decoration:none;color:inherit;transition:color .3s ease}.nav-overlay-link:last-of-type{border-bottom:1px solid var(--border)}.nav-overlay-link:hover{color:var(--green-bright);--ax2a:10px}.nav-overlay-en{flex:0 0 auto;width:84px;font-family:ui-monospace,Menlo,monospace;font-size:10px;letter-spacing:.16em;opacity:.5}.nav-overlay-jp{flex:1 1 auto;font-size:clamp(19px,5vw,22px);font-weight:600;letter-spacing:.04em}.nav-overlay-link .arrow{font-size:17px}.nav-overlay-foot{margin-top:clamp(36px,10vw,56px);padding:0 var(--pad) clamp(28px,7vw,40px);font-family:ui-monospace,Menlo,monospace;font-size:10px;letter-spacing:.06em;opacity:.5}@media (max-width:720px){.nav-links-desktop{display:none!important}.nav-burger{display:block}}@media (prefers-reduced-motion:reduce){*,:after,:before{animation-duration:.001ms!important;animation-iteration-count:1!important}.fadeup{opacity:1}.charin>span{opacity:1!important;transform:none!important}}