@charset "UTF-8";
:root{--ink:#24322d;--text:#353334;--muted:#64696a;--blue:#3d95d0;--deep-blue:#226da5;--paper:#fff;--soft:#f3f6f7;--line:#dbe2e5;--serif:"Yu Mincho","Hiragino Mincho ProN","Noto Serif JP",serif;--sans:"Yu Gothic","Hiragino Kaku Gothic ProN",Meiryo,sans-serif}
*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:var(--text);background:var(--paper);font:400 16px/1.95 var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button,input,textarea{font:inherit}button,a,input,textarea{touch-action:manipulation}button{cursor:pointer}img{display:block;width:100%;height:auto}h1,h2,h3,h4,p,figure{margin:0}h1,h2,h3{color:var(--ink)}button:focus-visible,a:focus-visible,input:focus-visible,textarea:focus-visible{outline:3px solid var(--deep-blue);outline-offset:5px}::selection{background:#d5eaf5;color:#24322d}.wrap{width:min(1160px,calc(100% - 96px));margin-inline:auto}.skip{position:fixed;left:16px;top:-100px;z-index:100;background:white;padding:12px 20px}.skip:focus{top:10px}.site-header{height:92px;background:rgba(255,255,255,.97);border-bottom:1px solid var(--line);position:sticky;top:0;z-index:20}.header-inner{height:100%;display:flex;align-items:center;justify-content:space-between;gap:28px}.brand{width:184px;flex-shrink:0}.brand img{width:100%;height:38px;object-fit:contain;object-position:left center}.nav{display:flex;align-items:center;gap:30px}.nav a{font-size:14px;font-weight:600;position:relative;white-space:nowrap}.nav a:not(.nav-contact):after{content:"";position:absolute;bottom:-6px;left:0;width:0;height:1px;background:var(--deep-blue);transition:width .2s}.nav a:hover:after{width:100%}.nav-contact{padding:10px 20px;border:1px solid var(--ink)}.nav-contact:hover{background:var(--ink);color:white}.menu-toggle{display:none;align-items:center;gap:10px;border:0;background:none;padding:10px 0;font-size:14px}.menu-bars{width:23px;display:grid;gap:6px}.menu-bars:before,.menu-bars:after{content:"";display:block;height:1px;background:var(--ink)}.hero{padding-top:24px}.hero-picture{width:calc(100% - 48px);margin:auto;height:clamp(350px,39vw,590px);overflow:hidden}.hero-picture img{height:100%;object-fit:cover;object-position:50% 52%}.hero-caption{position:relative;margin-top:-86px;background:white;padding:39px 48px 12px;margin-left:max(48px,calc((100% - 1160px)/2));width:max-content;max-width:calc(100% - 96px)}.eyebrow{font:600 12px/1.5 var(--sans);letter-spacing:.16em;color:var(--deep-blue);text-transform:uppercase;display:block;margin-bottom:14px}.hero h1{font:500 clamp(26px,2.45vw,40px)/1.8 var(--serif);letter-spacing:.035em;white-space:pre-line}.hero-caption .company{font-size:14px;color:var(--muted);margin-bottom:12px;letter-spacing:.08em}.section{padding:100px 0}.section-heading{margin-bottom:45px;display:flex;align-items:baseline;justify-content:space-between;gap:24px}.section-heading h2,.side-heading h2{font:500 32px/1.6 var(--serif);letter-spacing:.055em}.section-heading .eyebrow{margin-bottom:10px}.section-heading .rule{flex:1;height:1px;background:var(--line);max-width:47%}.about{padding-top:68px;padding-bottom:104px}.about-grid{display:grid;grid-template-columns:310px 1fr;gap:88px}.side-heading{padding-top:6px}.about-symbol{width:138px;margin-top:40px;opacity:.9}.prose p+p{margin-top:21px}.prose p{white-space:pre-line}.prose .emphasis{color:var(--ink);font-weight:600}.services{background:var(--soft);border-block:1px solid var(--line)}.service-row{display:grid;grid-template-columns:50px 280px 1fr;gap:32px;padding:45px 0;border-top:1px solid #cdd8de}.service-row:last-child{padding-bottom:0}.service-number{font:400 30px/1.1 Georgia,serif;color:var(--deep-blue);padding-top:8px}.service-image{height:230px;object-fit:cover}.service-copy h3{font:600 24px/1.65 var(--serif);letter-spacing:.02em;margin-bottom:12px}.service-lead{font-size:16px;color:var(--deep-blue);font-weight:600;line-height:1.8;margin-bottom:16px;white-space:pre-line}.service-description p{margin-top:12px;white-space:pre-line}.service-list{margin:19px 0 0;padding:0;list-style:none}.service-list li{position:relative;padding:0 0 10px 16px;font-size:15px;line-height:1.85;white-space:pre-line}.service-list li:before{content:"";position:absolute;left:0;top:.85em;width:4px;height:4px;background:var(--blue)}.members-intro{display:grid;grid-template-columns:1fr 1fr;gap:56px;align-items:start;margin-bottom:45px}.members-intro h3{font:500 24px/1.85 var(--serif);white-space:pre-line}.members-intro p{white-space:pre-line}.members-grid{display:grid;grid-template-columns:1fr 1fr;gap:30px}.member-panel{border-top:2px solid var(--ink);background:var(--soft);padding:30px 32px}.member-panel h3{font-size:18px;line-height:1.7;margin-bottom:24px}.member-panel h4{font-size:14px;font-weight:600;color:var(--deep-blue);margin:24px 0 7px}.member-panel p{font-size:15px;line-height:1.95;white-space:pre-line}.member-panel h4:first-of-type{margin-top:0}.features{background:#24322d;color:#f2f4f3}.features .eyebrow{color:#8dc4dd}.features h2,.features h3{color:white}.features .rule{background:#53615b}.feature-row{display:grid;grid-template-columns:260px 1fr;gap:64px;align-items:center;padding:38px 0;border-top:1px solid #53615b}.feature-row:last-child{padding-bottom:0}.feature-image{aspect-ratio:1.42;object-fit:cover}.feature-row h3{font:500 25px/1.7 var(--serif);margin-bottom:21px;white-space:pre-line}.feature-row p{color:#e0e6e2;white-space:pre-line}.feature-row p+p{margin-top:15px}.contact-layout{display:grid;grid-template-columns:310px 1fr;gap:88px}.contact-note{margin-top:23px;font-size:14px;color:var(--muted);line-height:1.85;max-width:275px}.demo-badge{display:inline-block;border:1px solid var(--line);padding:3px 12px;font-size:12px;letter-spacing:.035em;margin-bottom:12px;color:var(--muted)}.form-grid{display:grid;grid-template-columns:1fr 1fr;gap:24px}.form-field{display:grid;gap:8px}.form-field.full{grid-column:1/-1}.form-field label{font-size:14px;font-weight:600}.required{font-size:12px;color:var(--muted);font-weight:400;margin-left:9px}.form-field input,.form-field textarea{width:100%;min-width:0;border:1px solid #b8c3c8;background:white;border-radius:0;padding:11px 14px;color:var(--text);font-size:16px;line-height:1.6;box-shadow:none}.form-field textarea{resize:vertical;min-height:175px}.form-field input::placeholder{color:#8a9194}.form-actions{margin-top:25px;display:flex;align-items:center;gap:24px;flex-wrap:wrap}.primary-button{border:1px solid var(--ink);background:var(--ink);color:white;padding:13px 28px;min-height:52px;font-size:15px;font-weight:600}.primary-button:hover{background:#3a4e43}.secondary-button{background:white;color:var(--ink);border:1px solid var(--ink);padding:12px 24px}.form-status{font-size:14px;line-height:1.8;color:var(--muted)}.review{border:1px solid var(--line);padding:26px;margin-top:30px;background:var(--soft)}.review h3{font-size:18px;margin-bottom:12px}.review dl{margin:0}.review dt{font-size:13px;color:var(--muted);margin-top:14px}.review dd{margin:2px 0 0;white-space:pre-wrap;overflow-wrap:anywhere}.review .form-actions{margin-top:25px}.site-footer{border-top:1px solid var(--line);padding:34px 0}.footer-inner{display:flex;align-items:center;justify-content:space-between;gap:25px}.footer-name{font-size:14px;font-weight:600}.copyright{font-size:12px;color:var(--muted)}[hidden]{display:none!important}
@media(min-width:1600px){.hero-caption{padding-right:80px}.hero-picture{width:calc(100% - 80px)}}
@media(max-width:1050px){.wrap{width:calc(100% - 64px)}.nav{gap:18px}.brand{width:160px}.nav a{font-size:13px}.nav-contact{padding:9px 13px}.about-grid,.contact-layout{grid-template-columns:240px 1fr;gap:45px}.service-row{grid-template-columns:40px 210px 1fr;gap:22px}.service-image{height:220px}.service-copy h3{font-size:22px}.feature-row{gap:40px}.hero-caption{margin-left:32px;max-width:calc(100% - 64px);padding:32px}.section-heading h2,.side-heading h2{font-size:28px}}
@media(max-width:800px){html{scroll-padding-top:83px}.site-header{height:76px}.wrap{width:calc(100% - 40px)}.brand{width:158px}.brand img{height:34px}.menu-toggle{display:flex}.nav{display:none;position:absolute;top:75px;left:0;right:0;background:white;border-bottom:1px solid var(--line);padding:12px 20px 24px;flex-direction:column;align-items:stretch;gap:0}.nav.open{display:flex}.nav a{padding:14px 0;font-size:15px;border-bottom:1px solid var(--line)}.nav a:after{display:none}.nav .nav-contact{margin-top:12px;padding:12px;text-align:center;border:1px solid var(--ink)}.hero{padding-top:12px}.hero-picture{width:calc(100% - 24px);height:360px}.hero-caption{margin-left:20px;margin-top:-44px;padding:26px 22px 0;max-width:calc(100% - 40px)}.hero h1{font-size:clamp(23px,4.4vw,32px);line-height:1.85;letter-spacing:.005em}.hero-caption .company{font-size:12px}.section{padding:68px 0}.section-heading{margin-bottom:32px}.section-heading h2,.side-heading h2{font-size:27px}.section-heading .rule{max-width:25%}.about{padding-top:42px;padding-bottom:60px}.about-grid,.contact-layout{grid-template-columns:1fr;gap:27px}.side-heading{padding:0}.about-symbol{display:none}.eyebrow{margin-bottom:8px}.service-row{grid-template-columns:34px 1fr;gap:16px;padding:32px 0}.service-number{grid-column:1;grid-row:1;font-size:25px}.service-image{grid-column:2;grid-row:1;width:100%;height:auto;aspect-ratio:2.05;object-fit:cover}.service-copy{grid-column:2}.service-copy h3{font-size:23px;margin-top:7px}.service-list li{font-size:15px}.members-intro{grid-template-columns:1fr;gap:23px;margin-bottom:32px}.members-intro h3{font-size:22px}.members-grid{grid-template-columns:1fr;gap:22px}.member-panel{padding:25px}.feature-row{grid-template-columns:1fr;gap:23px;padding:30px 0}.feature-image{aspect-ratio:2.05;object-position:center 45%;max-height:290px}.feature-row h3{font-size:23px;margin-bottom:16px}.contact-note{max-width:none;margin-top:14px}.form-grid{gap:20px}.footer-inner{align-items:flex-start;flex-direction:column;gap:8px}.site-footer{padding:28px 0}}
@media(max-width:460px){.hero-picture{height:285px}.hero-caption{padding:22px 15px 0;margin-left:12px;max-width:calc(100% - 24px)}.hero h1{font-size:22px;line-height:1.9}.hero h1 span{display:block}.hero-caption .company{font-size:12px;margin-bottom:8px}.form-grid{grid-template-columns:1fr}.form-field{grid-column:1/-1}.service-row{grid-template-columns:28px 1fr;gap:13px}.service-copy h3{font-size:21px}.section-heading .rule{display:none}.member-panel{padding:23px}.review{padding:20px}.primary-button{width:100%}}
.service-label h3{font:500 24px/1.7 var(--serif);margin-bottom:17px;white-space:pre-line}.service-description p:first-child{margin-top:0}.service-list li,.member-panel p{font-size:16px}.service-label .service-lead{font-size:14px;line-height:1.9}.service-copy{min-width:0}.service-label{min-width:0}h1,h2,h3,p,li{overflow-wrap:anywhere}
@media(max-width:1050px){.nav a{font-size:14px}.nav{gap:15px}.service-label h3{font-size:22px}}
@media(max-width:800px){.service-label{grid-column:2}.service-label h3{margin-bottom:10px;font-size:24px}.service-label .service-lead{margin-bottom:0}.service-copy{grid-column:2}.service-list li{font-size:16px}.hero-caption .company{font-size:14px}.contact-note{font-size:14px}}
@media(max-width:460px){.hero-caption .company{font-size:14px}.service-label h3{font-size:23px}.hero h1 br{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{transition:none!important}}
