:root{--color-background:#fff;--color-surface:#f7f7f5;--color-surface-dark:#191919;--color-text-primary:#191919;--color-text-secondary:#62615e;--color-border:#e8e8e5;--color-accent:#2f6feb;--font-sans:Inter, "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Yu Gothic", sans-serif}*{box-sizing:border-box}html{background:var(--color-background);color:var(--color-text-primary);font-family:var(--font-sans);scroll-behavior:smooth;line-height:1.6}body{margin:0;font-size:16px;overflow-x:hidden}a{color:inherit}img{max-width:100%;display:block}button,a{-webkit-tap-highlight-color:transparent}.site-header,.section,.trust-strip,.metrics-section,.footer-inner,.footer-bottom{width:min(100% - 3rem,72rem);margin-inline:auto}.site-header{z-index:10;position:relative}.header-inner{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:4.75rem;display:flex}.brand{letter-spacing:-.02em;align-items:center;gap:.625rem;font-size:1.125rem;font-weight:700;text-decoration:none;display:inline-flex}.brand img{object-fit:contain;width:2rem;height:2rem}nav{align-items:center;gap:2rem;display:flex}nav a{color:var(--color-text-secondary);font-size:.875rem;font-weight:600;text-decoration:none;transition:color .16s}nav a:hover{color:var(--color-text-primary)}.button{border:1px solid var(--color-text-primary);border-radius:.5rem;justify-content:center;align-items:center;gap:1.25rem;min-height:3.25rem;padding:.75rem 1.25rem;font-size:.9375rem;font-weight:700;text-decoration:none;transition:background-color .16s,color .16s,transform .16s;display:inline-flex}.button:hover{transform:translateY(-2px)}.button-dark{background:var(--color-text-primary);color:#fff}.button-dark:hover{background:#333331}.button-light{border-color:var(--color-border);background:#fff}.button-light:hover{background:var(--color-surface)}.button-small{border-radius:.375rem;min-height:2.375rem;padding:.4rem .875rem;font-size:.8125rem}.hero{text-align:center;width:min(100% - 3rem,78rem);margin-inline:auto;padding:clamp(5.5rem,10vw,8rem) 0 0}.hero-copy{flex-direction:column;align-items:center;display:flex}.eyebrow{border:1px solid var(--color-border);color:var(--color-text-secondary);letter-spacing:.06em;text-transform:uppercase;border-radius:999px;align-items:center;gap:.625rem;margin:0 0 1.75rem;padding:.375rem .75rem;font-size:.75rem;font-weight:700;display:inline-flex}.eyebrow-dot{background:#39a96b;border-radius:50%;width:.5rem;height:.5rem;box-shadow:0 0 0 3px #e5f4eb}.hero h1{letter-spacing:-.065em;margin:0;font-size:clamp(3rem,7.2vw,6rem);line-height:1.06}.lead{max-width:43rem;color:var(--color-text-secondary);margin:2rem auto 0;font-size:clamp(1rem,2vw,1.1875rem);line-height:1.9}.hero-actions{gap:.75rem;margin-top:2.25rem;display:flex}.product-window{text-align:left;background:#fff;border:1px solid #d9d9d6;border-radius:.875rem .875rem 0 0;max-width:72rem;margin:clamp(4rem,8vw,6.5rem) auto 0;overflow:hidden;box-shadow:0 30px 80px #0f0f0f1a,0 4px 16px #0f0f0f0d}.window-bar{border-bottom:1px solid var(--color-border);background:#fbfbfa;grid-template-columns:1fr auto 1fr;align-items:center;height:2.875rem;padding:0 1rem;display:grid}.window-controls{gap:.375rem;display:flex}.window-controls span{background:#e8e8e5;border:1px solid #cececa;border-radius:50%;width:.625rem;height:.625rem}.window-address{border:1px solid var(--color-border);color:#898984;background:#fff;border-radius:.3125rem;padding:.25rem 4rem;font-size:.6875rem}.window-menu{color:#a3a39f;justify-self:end;font-size:.75rem}.workspace{grid-template-columns:13.5rem 1fr;min-height:34rem;display:grid}.workspace-sidebar{border-right:1px solid var(--color-border);background:var(--color-surface);color:#5f5e5a;flex-direction:column;padding:1.25rem .75rem;font-size:.75rem;display:flex}.sidebar-brand{color:var(--color-text-primary);align-items:center;gap:.5rem;padding:0 .5rem 1.5rem;display:flex}.sidebar-brand img{object-fit:contain;width:1.5rem;height:1.5rem}.sidebar-group{gap:.25rem;display:grid}.sidebar-label{color:#aaa9a5;letter-spacing:.06em;text-transform:uppercase;padding:.4rem .5rem;font-size:.625rem;font-weight:700}.sidebar-item{border-radius:.25rem;padding:.4rem .5rem}.sidebar-item.active{color:var(--color-text-primary);background:#e8e8e5;font-weight:600}.sidebar-bottom{margin-top:auto}.workspace-content{width:min(100% - 5rem,44rem);margin-inline:auto;padding:1.5rem 0 4rem}.workspace-breadcrumb{color:#a3a39f;margin-bottom:3.5rem;font-size:.6875rem}.workspace-icon{border:1px solid var(--color-border);background:#fff;border-radius:.75rem;place-items:center;width:5rem;height:5rem;margin-bottom:1.5rem;display:grid;box-shadow:0 3px 8px #0f0f0f0f}.workspace-icon img{object-fit:contain;width:4rem;height:4rem}.workspace-kicker{color:var(--color-text-secondary);margin:0 0 .75rem;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.workspace-content h2{letter-spacing:-.045em;margin:0;font-size:clamp(2rem,4vw,3.25rem);line-height:1.2}.workspace-divider{background:var(--color-border);height:1px;margin:2.5rem 0 1.5rem}.workspace-grid{grid-template-columns:repeat(3,1fr);gap:1rem;display:grid}.workspace-grid div{gap:.25rem;display:grid}.workspace-grid span{color:#a3a39f;font-size:.6875rem}.workspace-grid strong{font-size:.8125rem}.trust-strip{border-bottom:1px solid var(--color-border);justify-content:space-between;align-items:center;gap:2rem;padding:2rem 0;display:flex}.trust-strip p{white-space:nowrap;margin:0;font-size:.8125rem;font-weight:700}.trust-items{color:#9a9995;letter-spacing:.03em;text-transform:uppercase;justify-content:flex-end;gap:clamp(1.5rem,4vw,3.5rem);font-size:.75rem;font-weight:700;display:flex}.section{padding-block:clamp(6rem,12vw,10rem)}.section-label{color:var(--color-text-secondary);letter-spacing:.1em;text-transform:uppercase;margin:0 0 1.5rem;font-size:.75rem;font-weight:700}.section-heading{grid-template-columns:1fr 1fr;column-gap:3rem;margin-bottom:5rem;display:grid}.section-heading .section-label{grid-column:1/-1}.section-heading h2,.process-intro h2,.contact-section h2{letter-spacing:-.055em;margin:0;font-size:clamp(2.5rem,5vw,4.5rem);line-height:1.12}.section-heading>p:last-child{max-width:31rem;color:var(--color-text-secondary);margin:.5rem 0 0;font-size:1rem;line-height:1.9}.service-list{border-top:1px solid var(--color-text-primary)}.service-item{border-bottom:1px solid var(--color-border);grid-template-columns:3rem 1fr 18rem 2rem;align-items:start;gap:2rem;padding:2.5rem 0;display:grid}.service-number{color:#a3a39f;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.75rem}.service-content h3{letter-spacing:-.035em;margin:-.4rem 0 1rem;font-size:clamp(1.5rem,3vw,2rem)}.service-content p{max-width:32rem;color:var(--color-text-secondary);margin:0;font-size:.9375rem;line-height:1.8}.service-tags{flex-wrap:wrap;gap:.5rem;display:flex}.service-tags span{border:1px solid var(--color-border);color:var(--color-text-secondary);border-radius:999px;padding:.4rem .625rem;font-size:.6875rem;font-weight:600}.service-arrow{justify-self:end;font-size:1.25rem}.statement-section{background:var(--color-surface-dark);color:#fff;padding:clamp(6rem,13vw,11rem) 1.5rem}.statement-inner{width:min(100%,72rem);margin-inline:auto}.statement-section .section-label{color:#8f8f8b}.statement-section h2{letter-spacing:-.07em;max-width:15ch;margin:0;font-size:clamp(3rem,8vw,7.5rem);line-height:.98}.statement-ja{color:#b8b8b3;max-width:39rem;margin:4rem 0 0 auto;font-size:clamp(1rem,2vw,1.25rem);line-height:2}.process-section{grid-template-columns:.8fr 1.2fr;gap:clamp(3rem,8vw,8rem);display:grid}.principle-list{border-top:1px solid var(--color-text-primary);margin:0;padding:0;list-style:none}.principle-list li{border-bottom:1px solid var(--color-border);grid-template-columns:2rem 1fr 1.4fr;align-items:center;gap:1.5rem;min-height:5rem;display:grid}.principle-index{color:#aaa9a5;font-family:ui-monospace,SFMono-Regular,Menlo,monospace;font-size:.6875rem}.principle-list strong{font-size:1.125rem}.principle-list li>span:last-child{color:var(--color-text-secondary);font-size:.875rem}.metrics-section{border:solid var(--color-border);border-width:1px 0;grid-template-columns:repeat(3,1fr);margin-bottom:clamp(6rem,12vw,10rem);display:grid}.metric{text-align:center;padding:clamp(2rem,5vw,4rem)}.metric+.metric{border-left:1px solid var(--color-border)}.metric strong{letter-spacing:-.06em;font-size:clamp(2.5rem,5vw,4rem);line-height:1;display:block}.metric strong span{color:var(--color-accent)}.metric p{color:var(--color-text-secondary);margin:1rem 0 0;font-size:.8125rem}.contact-section{background:var(--color-surface);text-align:center;flex-direction:column;align-items:center;padding:clamp(6rem,12vw,10rem) 1.5rem;display:flex}.contact-mark{border:1px solid var(--color-border);background:#fff;border-radius:1rem;place-items:center;width:6.5rem;height:6.5rem;margin-bottom:2.5rem;display:grid;box-shadow:0 8px 24px #0f0f0f0f}.contact-mark img{object-fit:contain;width:5rem;height:5rem}.contact-section h2{max-width:15ch}.contact-section>p:not(.section-label){max-width:36rem;color:var(--color-text-secondary);margin:2rem 0}footer{border-top:1px solid var(--color-border)}.footer-inner{grid-template-columns:1fr 1.5fr .6fr;gap:clamp(3rem,8vw,7rem);padding-block:clamp(4rem,8vw,6rem);display:grid}.footer-brand p{max-width:16rem;color:var(--color-text-secondary);margin:1.25rem 0 0;font-size:.8125rem}.footer-heading{color:var(--color-text-primary);letter-spacing:.08em;text-transform:uppercase;margin:0 0 1.25rem;font-size:.75rem;font-weight:700}.footer-company dl{gap:1.25rem;margin:0;display:grid}.footer-company dl div{grid-template-columns:7rem 1fr;gap:1rem;display:grid}.footer-company dt,.footer-company dd,.footer-links a{color:var(--color-text-secondary);margin:0;font-size:.8125rem}.footer-company dt{color:#a3a39f}.footer-links{flex-direction:column;align-items:flex-start;display:flex}.footer-links a{padding-block:.2rem;text-decoration:none}.footer-links a:hover{color:var(--color-text-primary)}.footer-bottom{border-top:1px solid var(--color-border);justify-content:space-between;align-items:center;min-height:4.5rem;display:flex}.footer-bottom p,.footer-bottom small{color:var(--color-text-secondary);margin:0;font-size:.6875rem}.contact-page{border-bottom:1px solid var(--color-border)}.contact-hero{grid-template-columns:minmax(0,1.05fr) minmax(30rem,.95fr);min-height:calc(100vh - 4.75rem);display:grid}.contact-story{border-right:1px solid var(--color-border);background:#f5f0e7;flex-direction:column;min-width:0;padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,6rem) 0;display:flex;position:relative;overflow:hidden}.contact-story-copy{z-index:1;width:min(100%,41rem);margin-inline:auto;position:relative}.contact-story-copy h1{letter-spacing:-.065em;margin:0;font-size:clamp(3rem,6vw,5.75rem);line-height:1.08}.contact-story-copy>p:not(.section-label){color:#5d574e;max-width:38rem;margin:2rem 0 0;font-size:1rem;line-height:1.95}.contact-topics{border-top:1px solid #483f3440;gap:0;max-width:39rem;margin:3rem 0 4rem;padding:0;list-style:none;display:grid}.contact-topics li{border-bottom:1px solid #483f342e;grid-template-columns:2.75rem 1fr;gap:1rem;padding:1.25rem 0;display:grid}.contact-topics li>span{color:#a93123;border:1px solid #bd3d2a;border-radius:50%;place-items:center;width:2rem;height:2rem;font-family:serif;font-size:.75rem;display:grid}.contact-topics strong{margin-bottom:.25rem;font-size:.9375rem;display:block}.contact-topics p{color:#777066;margin:0;font-size:.8125rem}.fuji-art{z-index:0;pointer-events:none;width:100%;height:68%;margin:0;position:absolute;bottom:0;left:0;right:0}.fuji-art:after{content:"";pointer-events:none;background:linear-gradient(#f5f0e7 0%,#0000 42%);position:absolute;inset:0}.fuji-art img{opacity:.16;object-fit:cover;object-position:center bottom;mix-blend-mode:multiply;width:100%;height:100%}.fuji-art figcaption{z-index:2;color:#2a25208c;pointer-events:auto;font-size:.5625rem;position:absolute;bottom:.75rem;right:1rem}.fuji-art figcaption a{text-underline-offset:.15em}.contact-form-column{align-self:start;width:min(100%,42rem);margin-inline:auto;padding:clamp(4rem,7vw,7rem) clamp(2rem,6vw,5.5rem)}.contact-form-heading{border-bottom:1px solid var(--color-border);align-items:center;gap:1.25rem;margin-bottom:2.75rem;padding-bottom:2rem;display:flex}.contact-heading-icon{border:1px solid var(--color-border);background:#fff;border-radius:.5rem;place-items:center;width:3.25rem;height:3.25rem;display:grid;overflow:hidden}.contact-heading-icon img{object-fit:contain;width:2.75rem;height:2.75rem}.contact-form-heading p{letter-spacing:-.02em;margin:0 0 .25rem;font-size:1.25rem;font-weight:700}.contact-form-heading div>span{color:var(--color-text-secondary);font-size:.75rem}.contact-form{gap:1.5rem;display:grid}.form-row{grid-template-columns:1fr 1fr;align-items:end;gap:1rem;display:grid}.contact-form label{color:#333330;gap:.5rem;font-size:.8125rem;font-weight:700;display:grid}.field-label{align-items:baseline;gap:.35rem;display:inline-flex}.field-label small{color:#a93123;font-size:.625rem;font-weight:600}.contact-form input,.contact-form select,.contact-form textarea{width:100%;color:var(--color-text-primary);font:inherit;background:#fff;border:1px solid #d8d7d3;border-radius:.375rem;outline:none;font-size:.9375rem;font-weight:400;transition:border-color .16s,box-shadow .16s}.contact-form input,.contact-form select{min-height:3rem;padding:0 .75rem}.contact-form textarea{resize:vertical;min-height:10rem;padding:.75rem}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{border-color:#77736d;box-shadow:0 0 0 3px #19191912}.privacy-check{grid-template-columns:none;align-items:flex-start;line-height:1.6;color:var(--color-text-secondary)!important;gap:.625rem!important;font-weight:400!important;display:flex!important}.privacy-check input{flex:none;width:1rem;height:1rem;min-height:0;margin-top:.15rem}.privacy-check span{color:inherit!important;font-size:.75rem!important;font-weight:400!important}.form-submit{cursor:pointer;border:0;width:100%}.form-submit:disabled{cursor:wait;opacity:.65;transform:none}.honeypot-field{width:1px;height:1px;position:absolute;left:-10000px;overflow:hidden}.form-note{color:#9a9995;text-align:center;margin:-.75rem 0 0;font-size:.6875rem}.form-status{text-align:center;min-height:1.5rem;margin:-.5rem 0 0;font-size:.8125rem;font-weight:600}.form-status[data-state=sending]{color:var(--color-text-secondary)}.form-status[data-state=success]{color:#277448}.form-status[data-state=error]{color:#a93123}@media (prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}@media (width<=60rem){.contact-hero{grid-template-columns:1fr}.contact-story{border-right:0;border-bottom:1px solid var(--color-border)}.service-item{grid-template-columns:2rem 1fr 2rem}.service-tags{grid-column:2}.service-arrow{grid-area:1/3}.process-section{grid-template-columns:1fr}}@media (width<=48rem){nav{display:none}.workspace{grid-template-columns:1fr;min-height:auto}.workspace-sidebar{display:none}.workspace-content{width:min(100% - 3rem,40rem)}.trust-strip{flex-direction:column;align-items:flex-start}.trust-items{flex-wrap:wrap;justify-content:flex-start;gap:.75rem 1.5rem}.section-heading{grid-template-columns:1fr;gap:2rem}.section-heading .section-label{grid-column:1}.metrics-section{grid-template-columns:1fr}.metric+.metric{border-top:1px solid var(--color-border);border-left:0}.footer-inner{grid-template-columns:1fr 1fr}.footer-brand{grid-column:1/-1}}@media (width<=40rem){.site-header,.hero,.section,.trust-strip,.metrics-section,.footer-inner,.footer-bottom{width:min(100% - 2rem,72rem)}.header-inner>.button{display:none}.hero{padding-top:4.5rem}.hero h1{font-size:clamp(2.75rem,13vw,4.25rem)}.hero-actions{flex-direction:column;align-items:stretch;width:100%;max-width:22rem}.window-address{padding-inline:1rem}.workspace-content{width:min(100% - 2rem,40rem);padding-bottom:2.5rem}.workspace-breadcrumb{margin-bottom:2.5rem}.workspace-grid{grid-template-columns:1fr}.workspace-grid div{grid-template-columns:5rem 1fr}.service-item{grid-template-columns:2rem 1fr;gap:1.25rem}.service-tags{grid-column:2}.service-arrow{display:none}.statement-section{padding-inline:1rem}.statement-section h2{font-size:clamp(2.75rem,14vw,4.5rem)}.principle-list li{grid-template-columns:2rem 1fr;gap:.75rem;padding:1rem 0}.principle-list li>span:last-child{grid-column:2}.footer-inner{grid-template-columns:1fr;gap:3rem}.footer-brand{grid-column:1}.footer-bottom{flex-direction:column;justify-content:center;align-items:flex-start;gap:.25rem}.contact-story{padding:4rem 1rem 0}.contact-story-copy h1{font-size:clamp(2.75rem,13vw,4rem)}.fuji-art{width:100%;height:48%;margin:0}.contact-form-column{padding:4rem 1rem}.form-row{grid-template-columns:1fr}}
