@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&family=Space+Grotesk:wght@400;500;600;700&display=swap');
:root{--lime:#3aafb5;--ink:#293f42;--muted:#667b7e;--line:#dce9ea;--off:#f4f9f9}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:#fff;color:var(--ink);font-family:'Space Grotesk','Noto Sans JP',sans-serif}a{color:inherit;text-decoration:none}button{font:inherit}header{height:94px;display:flex;align-items:center;justify-content:space-between;padding:0 4.5%;border-bottom:1px solid var(--line);background:#fff;position:sticky;top:0;z-index:10}.brand{display:block;width:184px}.brand img{width:100%;display:block}nav{display:flex;align-items:center;gap:30px;font-size:12px;font-weight:600}.nav-contact{background:var(--lime);padding:16px 22px;border-radius:4px}.nav-contact span{margin-left:25px}.menu{display:none}.hero{position:relative;overflow:hidden;padding:28px 5% 0;min-height:710px}.hero-top,.hero-foot{display:flex;justify-content:space-between;font-size:10px;letter-spacing:1.1px}.hero-copy{position:relative;z-index:2;width:65%;padding-top:64px}.eyebrow{font-size:14px;font-weight:600;letter-spacing:2px}h1{font-size:clamp(55px,6.5vw,101px);letter-spacing:-.07em;line-height:1.32;margin:23px 0 24px;font-weight:800}.highlight{background:linear-gradient(transparent 62%,var(--lime) 62%)}h1 i{font-family:Arial,sans-serif;font-size:95px;font-style:normal;color:#247b82;margin-left:25px}.hero-bottom{display:flex;align-items:center;gap:55px}.hero-bottom p{font-size:13px;line-height:2.1}.circle-link{font-size:9px;width:95px;height:95px;border:1px solid #9dc7ca;border-radius:50%;display:grid;place-content:center;text-align:center;gap:8px}.circle-link b{font-size:24px}.hero-art{position:absolute;right:-4%;top:70px;width:48%;height:570px;background:radial-gradient(ellipse at center,#d6f0f1 0%,#f3fbfb 45%,#fff 70%);display:flex;align-items:center;justify-content:center}.orbit{width:390px;height:390px;border:1px solid #82c5c9;border-radius:50%;position:absolute;transform:rotate(-32deg) scaleX(.58)}.orbit.two{transform:rotate(32deg) scaleX(.58)}.orbit.three{transform:rotate(90deg) scaleX(.58)}.art-word{position:relative;font-size:62px;font-weight:700;line-height:.98;letter-spacing:-4px;transform:rotate(-8deg);color:#318f96}.art-word em{font-style:normal;color:#78c8cd}.art-caption{position:absolute;bottom:50px;font-size:10px;letter-spacing:3px}.hero-foot{position:relative;z-index:2;border-top:1px solid var(--line);padding:22px 0;margin-top:45px}.ticker{white-space:nowrap;overflow:hidden;background:var(--lime);padding:21px 0;font-size:26px;letter-spacing:1px;font-weight:600}.ticker span{padding:0 38px}.section{padding:100px 6%;scroll-margin-top:10px}.label{font-size:11px;font-weight:600;letter-spacing:1.5px;margin-bottom:30px}.about,.flow,.company{display:grid;grid-template-columns:1fr 1.6fr;gap:70px}h2{font-size:clamp(28px,3.1vw,45px);letter-spacing:-.04em;line-height:1.6;margin:0 0 28px;font-weight:700}.body-copy{font-size:14px;line-height:2.25;margin:25px 0;color:#5c7376}.services{background:var(--off)}.section-heading{display:flex;align-items:end;justify-content:space-between;margin-bottom:35px}.section-heading p{font-size:13px;line-height:2}.service{display:grid;grid-template-columns:65px 1fr 220px;gap:30px;padding:38px 0;border-top:1px solid #d3e5e6}.num{font-size:15px;color:#50868b;padding-top:4px}.problem{font-size:13px;margin:0 0 12px;color:#397980}.service h3{font-size:26px;letter-spacing:-1px;margin:0 0 17px}.service-main>p:not(.problem){font-size:13px;max-width:650px;line-height:2;color:#60777a}.service-en{font-size:23px;line-height:1.1;color:#83a7ab;letter-spacing:-1px;padding-top:35px}.tags{display:flex;flex-wrap:wrap;gap:8px;margin-top:20px}.tags span{border:1px solid #d6e6e7;border-radius:30px;padding:6px 13px;font-size:10px;background:#fff}.project-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.project-img{aspect-ratio:1.5;background:var(--off);overflow:hidden;border-radius:4px}.project img{width:100%;height:100%;object-fit:cover;transition:transform .4s}.project:hover img{transform:scale(1.025)}.project-title{display:flex;justify-content:space-between;align-items:center;padding-top:13px}.project-title h3{font-size:20px}.project-title span{font-size:25px}.project p{font-size:12px;color:var(--muted);line-height:1.9}.audition{display:flex;align-items:center;justify-content:space-between;border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:55px;padding:30px 20px}.audition .label{color:#397980}.audition h3{font-size:22px;margin:12px 0}.audition p{font-size:12px;color:var(--muted)}.audition>span{font-size:40px}.flow{background:#f0f8f8}.flow ol{list-style:none;padding:0;margin:0}.flow li{display:flex;gap:28px;border-bottom:1px solid #d8e7e8;padding:0 0 22px;margin-bottom:25px}.flow li>span{font-size:12px;color:#50868b;padding-top:5px}.flow h3{font-size:19px;margin:0 0 12px}.flow p{font-size:12px;line-height:1.9;color:var(--muted)}dl{margin:0}dl>div{display:grid;grid-template-columns:100px 1fr;border-bottom:1px solid var(--line);padding:21px 0;font-size:13px;line-height:2}dt{color:var(--muted)}dd{margin:0}.contact{background:var(--lime);padding:75px 6%;text-align:center}.contact .label{margin-bottom:22px}.contact h2{font-size:42px;margin-bottom:20px}.contact p{font-size:13px;line-height:2}.contact>a{background:#fff;display:flex;align-items:center;justify-content:space-between;max-width:370px;margin:28px auto 12px;padding:22px 28px;border-radius:3px;font-size:15px;font-weight:600}.contact>a span{font-size:22px}.contact small{font-size:10px;color:#fff}footer{padding:45px 6%;display:flex;flex-wrap:wrap;align-items:center;justify-content:space-between;gap:25px}footer .brand{width:150px}footer>span,footer>a:not(.brand),footer small{font-size:9px;letter-spacing:1px}a:focus-visible,button:focus-visible{outline:3px solid #247b82;outline-offset:5px}a:hover{opacity:.8}@media(min-width:1600px){.hero,.section{padding-left:calc((100% - 1400px)/2);padding-right:calc((100% - 1400px)/2)}}@media(max-width:850px){header{height:76px}.brand{width:145px}nav{gap:15px;font-size:10px}.nav-contact{padding:13px}.hero{min-height:650px}.hero-copy{width:80%;padding-top:60px}.hero-art{opacity:.5;right:-15%;width:60%}h1 i{font-size:60px}.service{grid-template-columns:40px 1fr;gap:15px}.service-en{display:none}.about,.flow,.company{grid-template-columns:1fr 1.6fr;gap:30px}.section{padding:70px 5%}}@media(max-width:620px){header{padding:0 6%}.menu{display:block;background:transparent;border:0;font-size:11px}nav{display:none;position:absolute;left:0;right:0;top:76px;padding:25px;background:#fff;border-bottom:1px solid var(--line);flex-direction:column;align-items:stretch;gap:22px;font-size:13px}nav.open{display:flex}.hero{padding:23px 6% 0;min-height:690px}.hero-top{font-size:8px}.hero-top span:last-child{display:none}.hero-copy{width:100%;padding-top:55px}.eyebrow{font-size:11px;letter-spacing:1px}h1{font-size:55px;margin-top:28px}h1 i{font-size:45px;margin-left:12px}.hero-art{top:185px;right:-95px;width:300px;height:360px;opacity:.28}.orbit{width:260px;height:260px}.art-word{font-size:43px}.art-caption{display:none}.hero-bottom{gap:15px;margin-top:40px}.hero-bottom p{font-size:11px}.circle-link{flex-shrink:0;width:78px;height:78px;font-size:8px}.hero-foot{font-size:7px;letter-spacing:0;margin-top:60px;padding:20px 0}.ticker{font-size:19px;padding:18px 0}.section{padding:60px 6%}.about,.flow,.company{grid-template-columns:1fr;gap:15px}.label{margin-bottom:20px}h2{font-size:29px}.body-copy{font-size:12px}.section-heading{display:block}.section-heading>p{font-size:12px}.service{padding:28px 0;grid-template-columns:25px 1fr;gap:12px}.service h3{font-size:22px}.problem{font-size:11px;line-height:1.9}.service-main>p:not(.problem){font-size:12px}.project-grid{grid-template-columns:1fr;gap:25px}.project-title h3{font-size:18px}.audition{padding:25px 0}.audition h3{font-size:18px}.flow h2{margin-bottom:35px}dl>div{grid-template-columns:75px 1fr;font-size:12px}.contact{padding:60px 6%}.contact h2{font-size:29px}footer{padding:35px 6%}footer>span{display:none}footer small{width:100%}.desktop{display:none}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*{transition:none!important}}

@media(min-width:851px){.project-grid{grid-template-columns:repeat(3,minmax(0,1fr))}.project-title h3{font-size:17px}.project-img{aspect-ratio:1.42}}
