:root{color:#000;font-synthesis:none;--page:1280px;background:#f9f7f0;font-family:Arial,Hiragino Kaku Gothic ProN,Yu Gothic,Meiryo,sans-serif;line-height:1.65}*{box-sizing:border-box}body{margin:0}a{color:inherit;text-underline-offset:4px}a:hover{text-decoration-thickness:2px}a:focus-visible{outline-offset:6px;outline:3px solid #235f9b}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:400;line-height:1.35}h2{letter-spacing:.01em;font-size:clamp(27px,3.1vw,46px)}p{font-size:20px;line-height:1.6}.content-width{width:min(var(--page),calc(100% - 96px));margin-inline:auto}section[id]{scroll-margin-top:24px}.skip-link{z-index:5;background:#fff;padding:10px 18px;position:absolute;top:8px;left:8px;transform:translateY(-160%)}.skip-link:focus{transform:none}.site-header{height:130px}.header-inner{height:100%;width:min(var(--page),calc(100% - 96px));justify-content:space-between;align-items:center;margin:auto;display:flex}.logo{object-fit:contain;width:96px;height:96px}.header-contact{font-size:38px;line-height:1.2}.hero{isolation:isolate;color:#fff;place-items:center;height:640px;display:grid;position:relative}.hero-image,.hero-shade{z-index:-2;object-fit:cover;object-position:center;width:100%;height:100%;position:absolute;inset:0}.hero-shade{z-index:-1;background:#0000007a}.hero-content{width:min(var(--page),calc(100% - 96px));text-align:center;padding-top:80px}.hero h1{letter-spacing:-.025em;font-size:clamp(56px,5.3vw,82px)}.work-nav{justify-content:space-between;gap:30px;margin-top:36px;padding-inline:70px;display:flex}.work-nav a{font-size:clamp(20px,1.8vw,29px);font-weight:700}.services{padding-block:70px 80px}.services h2{margin-bottom:28px}.service-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:48px;display:grid}.service-grid img{aspect-ratio:1.46;object-fit:cover;width:100%;height:auto}.service-grid h3{text-align:center;margin:20px 0 18px;font-size:32px}.service-grid p{font-size:20px}.contact-button{text-align:center;border:7px solid #000;flex-direction:column;justify-content:center;align-items:center;min-height:92px;padding:17px 16px;font-size:24px;line-height:1.6;display:flex}.service-grid .contact-button{margin-top:34px}.split-section{grid-template-columns:minmax(0,1.45fr) minmax(0,1fr);gap:70px;display:grid}.split-copy{padding:28px 0 70px}.split-copy h2{margin-bottom:24px}.split-copy p+p{margin-top:16px}.split-copy p[lang=en]{max-width:580px;font-size:23px;line-height:1.4}.split-image{object-fit:cover;width:100%;height:100%;min-height:660px;max-height:790px}.split-cta{max-width:420px;margin-top:clamp(80px,12vw,230px)}.contact-section address{margin-top:100px;font-size:20px;font-style:normal;line-height:1.6}.contact-section address p{margin-top:20px}.contact-section .split-image{min-height:740px}.not-found{max-width:760px;margin:15vh auto;padding:24px}.not-found>p{font-size:70px}.not-found h1{margin:20px 0;font-size:32px}.not-found a{font-size:20px}@media (width<=1100px){.work-nav{padding-inline:0}.service-grid{gap:25px}.service-grid h3{font-size:25px}.service-grid p{font-size:17px}.contact-button{border-width:5px;font-size:20px}.split-section{gap:36px}.split-copy h2{font-size:30px}.split-copy p{font-size:18px}.split-image{min-height:580px}.contact-section address,.contact-section address p{font-size:18px}}@media (width<=900px){.content-width,.header-inner,.hero-content{width:calc(100% - 40px)}.site-header{height:95px}.logo{width:72px;height:72px}.header-contact{font-size:25px}.hero{height:540px}.hero-content{padding-top:15px}.hero h1{font-size:58px}.work-nav{flex-direction:column;gap:25px;margin-top:35px}.work-nav a{font-size:20px}.services{padding-block:52px}.services h2{overflow-wrap:anywhere;margin-bottom:30px;font-size:27px}.service-grid{grid-template-columns:1fr;gap:40px}.service-grid h3{margin:18px 0 12px;font-size:27px}.service-grid p{font-size:17px}.service-grid .contact-button{margin-top:25px}.contact-button{min-height:88px;font-size:21px}.split-section{grid-template-columns:1fr;gap:28px}.split-copy{padding:0}.split-copy h2{font-size:27px}.split-copy p{font-size:17px}.split-copy p[lang=en]{font-size:20px}.split-cta{max-width:none;margin-top:36px}.split-image{aspect-ratio:4/5;height:auto;min-height:0;max-height:none}.contact-section{padding-top:52px;padding-bottom:24px}.contact-section address{overflow-wrap:anywhere;margin-top:35px;font-size:16px}.contact-section address p{font-size:17px}.contact-section .split-image{aspect-ratio:4/5;min-height:0}.not-found{margin:12vh 0}.not-found h1{font-size:26px}}@media (prefers-reduced-motion:no-preference){html{scroll-behavior:smooth}}.ai-section{border-top:1px solid #111;padding:65px 0}.eyebrow{letter-spacing:.16em;margin-bottom:20px;font-size:13px}.ai-section h2{max-width:850px;margin-bottom:28px}.ai-lead{max-width:1000px;margin-bottom:22px;font-size:clamp(22px,2.2vw,30px)}.ai-section ol{grid-template-columns:repeat(3,1fr);gap:30px;margin:40px 0;padding:0;list-style:none;display:grid}.ai-section li{border-top:2px solid #000;gap:16px;padding-top:20px;font-size:18px;display:flex}.ai-section li span{font-size:30px}.ai-section strong{margin-bottom:12px;font-size:21px;display:block}.ai-cta{grid-template-columns:1fr 1fr;align-items:center;gap:35px;display:grid}.ai-cta .contact-button{font-size:21px}@media (width<=900px){.ai-section ol,.ai-cta{grid-template-columns:1fr}.ai-section{padding:45px 0}.ai-section li{font-size:17px}.ai-section strong{font-size:20px}}.ai-workflow{margin:32px 0 42px}.ai-workflow-grid{grid-template-columns:repeat(3,minmax(0,1fr));gap:32px;display:grid}.ai-workflow-grid>div{position:relative}.ai-workflow-grid>div+div:before{content:"→";font-size:25px;position:absolute;top:35%;left:-28px}.ai-workflow img{aspect-ratio:4/5;object-fit:cover;width:100%;height:auto;display:block}.ai-workflow h3{margin:18px 0 8px;font-size:25px}.ai-workflow p{margin:0;font-size:17px}.ai-workflow figcaption{color:#555;margin-top:20px;font-size:12px}@media (width<=650px){.ai-workflow-grid{grid-template-columns:1fr;gap:44px}.ai-workflow-grid>div+div:before{content:"↓";top:-37px;left:calc(50% - 10px)}.ai-workflow img{max-width:320px;margin:auto}.ai-workflow h3,.ai-workflow p{text-align:center}.ai-workflow h3{font-size:23px}}
