:root{color-scheme:light;--blue-950: #073967;--blue-850: #004e98;--blue-700: #1477b8;--blue-100: #eaf5fd;--sand: #fbf9f6;--ice: #f5fafe;--ink: #2f3338;--muted: #68737d;--line: #e2e8ee;--paper: #ffffff;--accent: #d46b57;font-family:Noto Sans JP,Yu Gothic,Hiragino Kaku Gothic ProN,Arial,sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:76px}body{margin:0;background:#f4f6fa;color:var(--ink);line-height:1.95;font-feature-settings:"palt";font-weight:400}::selection{background:#cfe7f8;color:var(--blue-950)}a{color:inherit;text-decoration:none}p,h1,h2,h3{margin-top:0}.container{width:min(1080px,calc(100% - 56px));margin:0 auto}.narrow{max-width:900px}.section{padding:112px 0}.section-center{text-align:center}.eyebrow{margin-bottom:10px;color:var(--blue-700);font-size:13px;font-weight:700;letter-spacing:.2em}h1{margin-bottom:24px;font-size:clamp(40px,4.8vw,58px);line-height:1.38;letter-spacing:.05em;font-weight:800}h1 span{display:block;white-space:nowrap}h2{margin-bottom:20px;color:var(--blue-850);font-size:clamp(28px,3vw,38px);line-height:1.5;letter-spacing:.08em;font-weight:700}h3{color:var(--blue-950)}.lead{color:var(--muted);font-size:16px}.muted{color:var(--muted)}.site-header{position:fixed;top:0;left:0;right:0;z-index:20;height:76px;border-bottom:1px solid transparent;background:#fff0;box-shadow:none;backdrop-filter:none;transition:background .18s ease,border-color .18s ease,box-shadow .18s ease}.site-header.is-scrolled{border-bottom-color:#e2e8eee6;background:#ffffffeb;box-shadow:0 10px 28px #19375314;backdrop-filter:blur(10px)}.header-inner{position:relative;z-index:1;display:flex;height:100%;align-items:center;justify-content:space-between;gap:24px}.brand{display:flex;min-width:0;align-items:center;gap:16px;color:var(--ink);font-size:18px;font-weight:700;letter-spacing:.05em}.brand-text{display:grid;gap:1px}.brand-name{line-height:1.25}.site-header:not(.is-scrolled) .brand-name{color:#fff;text-shadow:0 2px 10px rgba(7,57,103,.22)}.brand-sub{color:#ffffffeb;font-size:10px;font-weight:500;letter-spacing:.08em;text-shadow:0 1px 8px rgba(7,57,103,.24)}.site-header.is-scrolled .brand-sub{color:var(--blue-700);text-shadow:none}.brand-logo{width:46px;height:46px;flex:0 0 auto;background:#fff;-webkit-mask:url(/brand-logo.svg) center / contain no-repeat;mask:url(/brand-logo.svg) center / contain no-repeat;transition:background .18s ease}.site-header.is-scrolled .brand-logo,.site-header.is-menu-open .brand-logo,.privacy-page .site-header .brand-logo{background:var(--blue-850)}.main-nav{display:flex;align-items:center;gap:28px;color:var(--ink);font-size:12px;font-weight:700;letter-spacing:.12em}.main-nav a{transition:color .16s ease,background .16s ease}.site-header:not(.is-scrolled) .main-nav a:not(.nav-cta){color:#fff;text-shadow:0 2px 10px rgba(7,57,103,.22)}.main-nav a:hover{color:var(--blue-850)}.nav-cta{display:inline-flex;min-height:34px;align-items:center;border:1px solid var(--blue-850);border-radius:999px;padding:0 16px;background:#ffffffd1;color:var(--blue-850)}.site-header:not(.is-scrolled) .nav-cta{border-color:transparent}.site-header.is-scrolled .nav-cta{border-color:var(--blue-850);background:var(--blue-850);color:#fff}.menu-toggle,.mobile-menu{display:none}.hero{position:relative;height:100vh;height:100svh;overflow:hidden;background:#073967}.hero:after{position:absolute;inset:0;z-index:1;background:linear-gradient(0deg,#07396733,#0739670a);content:"";pointer-events:none}.hero-image{position:absolute;inset:0;z-index:0;width:100%;height:100%;object-fit:cover;object-position:42% center}.hero-inner{position:relative;z-index:2;height:100%;display:flex;align-items:center;justify-content:center;padding:102px 0 70px;color:#fff}.hero-copy{width:min(720px,100%);padding-top:28px;margin:0 auto;text-align:center}.hero h1{color:#fff;text-align:center;text-shadow:0 3px 18px rgba(7,57,103,.28)}.hero-actions{display:flex;flex-wrap:wrap;justify-content:center;gap:14px;margin-top:34px}.hero-message,.mobile-only{display:none}.button{display:inline-flex;min-height:50px;min-width:188px;align-items:center;justify-content:center;border-radius:999px;padding:12px 24px;border:1px solid transparent;font:inherit;font-weight:800;cursor:pointer;letter-spacing:.08em}.button-primary{background:var(--blue-850);color:#fff}.button-outline{border-color:var(--line);background:#fff;color:var(--blue-850)}.reveal{transform-origin:center}.reveal-ready .reveal{opacity:0;transform:scale(.96);transition:opacity .72s ease,transform .72s cubic-bezier(.2,.8,.2,1);transition-delay:var(--reveal-delay, 0ms);will-change:opacity,transform}.reveal-ready .reveal.is-visible{opacity:1;transform:scale(1)}@media(prefers-reduced-motion:reduce){.reveal-ready .reveal{opacity:1;transform:none;transition:none}}.about{background:#fff}.about-lead{margin:0 auto 18px;color:var(--ink);font-size:clamp(17px,1.8vw,21px);font-weight:700;line-height:2.05}.desktop-only{display:block}.partner-note{display:inline-grid;gap:12px;margin-top:34px;justify-items:center}.partner-banner{display:block;width:min(300px,100%);overflow:hidden;border:1px solid var(--line);border-radius:8px;background:#fff;box-shadow:0 10px 24px #1937530f;transition:box-shadow .16s ease,transform .16s ease}.partner-banner:hover{transform:translateY(-1px);box-shadow:0 14px 30px #1937531a}.partner-banner img{display:block;width:100%;height:auto}.strength-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;margin-top:52px}.info-card{min-height:250px;padding:36px 30px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 10px 26px #1937530d}.card-number{display:block;margin-bottom:24px;color:var(--blue-700);font-weight:900;letter-spacing:.18em}.info-card p{margin-bottom:0;color:var(--muted);font-size:15px}.services{background:#f4f6fa}.service-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:20px;margin-top:42px}.service-card{min-height:380px;overflow:hidden;border-radius:12px;background-position:center;background-size:cover}.service-card>div{display:flex;min-height:380px;flex-direction:column;justify-content:flex-end;padding:26px;background:linear-gradient(0deg,#073967eb,#0739670d);color:#fff}.service-card span{margin-bottom:auto;font-size:13px;font-weight:900;letter-spacing:.2em}.service-card h3{margin-bottom:12px;color:#fff;font-size:20px}.service-card p{margin-bottom:0;font-size:13px}.service-accounting{background-image:url(/images/services/accounting.webp)}.service-startup{background-image:url(/images/services/startup.webp)}.service-return{background-image:url(/images/services/cashflow.webp)}.service-inheritance{background-image:url(/images/services/succession.webp)}.profile{background:#fff}.profile-heading{margin-bottom:58px}.profile-grid{display:grid;grid-template-columns:410px minmax(0,1fr);gap:clamp(48px,7vw,88px);align-items:start}.profile-message{position:relative;padding-top:0;color:var(--ink);font-size:15px;font-weight:600;line-height:2.15}.profile-message h3{margin-bottom:28px;color:var(--blue-850);font-size:clamp(22px,2.4vw,30px);line-height:1.65;letter-spacing:.06em}.profile-message p{margin-bottom:24px}.profile-message p:last-child{margin-bottom:0}.profile-card{display:grid;justify-items:center;text-align:center}.profile-photo{display:block;width:min(100%,340px);height:auto;object-fit:contain}.profile-intro{margin-top:26px}.profile-bio{width:100%;margin-top:22px;color:var(--muted);text-align:left}.profile-name{margin-bottom:4px;color:var(--blue-850);font-size:clamp(28px,3vw,36px);line-height:1.35;letter-spacing:.08em}.profile-roman{margin-bottom:0;color:var(--blue-700);font-size:13px;font-weight:400;letter-spacing:.22em}.profile-bio p{margin-bottom:14px;font-size:14px;line-height:2}.profile-partner{display:grid;width:100%;margin:42px auto 0;justify-items:center}.credential{margin-bottom:12px;color:var(--blue-700);font-weight:800}.flow{background:#f4f6fa}.flow-list{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:clamp(26px,3.9vw,42px);align-items:center;margin:54px 0 0;padding:0;color:var(--blue-850);list-style:none}.flow-list li{--flow-connector: clamp(26px, 3.9vw, 42px);--flow-arrow-clearance: 19px;--flow-arrow-size: 20px;--flow-arrow-stem-overlap: 14px;position:relative;z-index:1;display:flex;flex-direction:column;align-items:center;justify-content:center;width:100%;max-width:250px;margin:0 auto;padding:clamp(20px,2.4vw,26px);aspect-ratio:1;border:4px solid var(--blue-850);border-radius:50%;background:#fff;box-shadow:0 18px 40px #0739670f;text-align:center}.flow-list li:not(:last-child):after{position:absolute;top:50%;left:100%;width:var(--flow-connector);height:4px;background:var(--blue-850);content:"";transform:translateY(-50%)}.flow-list li:nth-child(3):before{position:absolute;top:50%;left:calc(100% + var(--flow-connector) - var(--flow-arrow-clearance) - (var(--flow-arrow-size) / 2));width:var(--flow-arrow-size);height:var(--flow-arrow-size);border-top:4px solid var(--blue-850);border-right:4px solid var(--blue-850);content:"";transform:translateY(-50%) rotate(45deg)}.flow-list li:nth-child(3):after{width:calc(var(--flow-connector) - var(--flow-arrow-clearance) + var(--flow-arrow-stem-overlap))}.flow-step{margin-bottom:clamp(10px,1.4vw,16px);color:var(--muted);font-size:clamp(15px,1.7vw,20px);font-weight:800;line-height:1;letter-spacing:.02em}.flow-icon{display:grid;width:clamp(58px,7vw,78px);height:clamp(58px,7vw,78px);margin-bottom:clamp(12px,1.6vw,18px);color:var(--blue-700);place-items:center}.flow-icon-svg{width:100%;height:100%}.flow-list h3{margin:0;color:var(--ink);font-size:clamp(17px,1.7vw,21px);line-height:1.45;letter-spacing:.04em;font-weight:800}.contact{background:#fff}.contact-grid{display:grid;width:min(760px,calc(100% - 28px));gap:42px;align-items:start}.contact-form{display:grid;gap:15px;padding:30px;border:1px solid var(--line);border-radius:24px;background:#fff;box-shadow:0 18px 42px #19375314}.contact-form label{display:grid;gap:7px;font-weight:800}.field-label{display:inline-flex;align-items:center;gap:8px}.required{display:inline-grid;min-width:34px;place-items:center;border-radius:2px;padding:1px 5px 2px;background:var(--blue-850);color:#fff;font-size:11px;font-weight:700;letter-spacing:.08em;line-height:1.4}.contact-form input,.contact-form select,.contact-form textarea{width:100%;border:1px solid var(--line);border-radius:12px;padding:12px 13px;background:#fff;color:var(--ink);font:inherit}.contact-form textarea{min-height:160px;resize:vertical}.honeypot{position:absolute;left:-9999px}.policy-note,.check-label{color:var(--muted);font-size:14px;font-weight:400}.policy-note{text-align:center}.policy-note a,.check-label a{color:var(--blue-850);text-decoration:underline;text-underline-offset:3px}.check-label{display:flex!important;grid-template-columns:none!important;align-items:flex-start;gap:10px!important;justify-content:center;color:var(--ink);font-weight:700}.check-label input{accent-color:var(--blue-850);width:auto;margin-top:7px}.form-submit{width:100%}.privacy-page{background:#fff}.privacy-page .site-header{position:sticky}.privacy-main{background:#fff}.privacy-hero{padding:92px 0 76px;background:#fff}.privacy-hero h1{margin-bottom:18px;color:var(--blue-850);font-size:clamp(34px,4vw,48px);line-height:1.35;letter-spacing:.08em}.privacy-hero p:last-child{width:min(760px,100%);margin:0 auto;color:var(--muted);font-size:15px;line-height:2}.not-found-hero{display:grid;min-height:calc(100svh - 76px);align-items:center}.not-found-page .privacy-hero h1{text-shadow:none}.not-found-button{margin-top:18px}.privacy-body{padding:72px 0 104px}.privacy-content{color:var(--ink)}.privacy-content section{padding:34px 0;border-bottom:1px solid var(--line)}.privacy-content section:first-child{padding-top:0}.privacy-content h2{margin-bottom:14px;color:var(--blue-950);font-size:21px;line-height:1.55;letter-spacing:.04em}.privacy-content p,.privacy-content li{color:var(--muted);font-size:15px;line-height:2.05}.privacy-content p{margin-bottom:0}.privacy-content ul{display:grid;gap:8px;margin:14px 0 0;padding-left:1.35em}.privacy-contact{margin-top:14px!important;color:var(--ink)!important;font-weight:700}.privacy-end{margin:38px 0 0;color:var(--muted);text-align:right}.site-footer{background:var(--blue-950);color:#ffffffd1}.footer-grid{display:grid;grid-template-columns:1fr auto;gap:40px;padding:52px 0;align-items:center}.site-footer h2{margin-bottom:12px;color:#fff;font-size:26px}.site-footer p{margin-bottom:6px}.footer-links{display:flex;gap:22px;font-weight:800}.copyright{margin:0;padding:18px;border-top:1px solid rgba(255,255,255,.14);color:#ffffffb8;font-size:13px;text-align:center}@media(max-width:900px){html{scroll-padding-top:62px}.container{width:min(100% - 28px,660px)}.section{padding:72px 0}.site-header{height:62px;background:#fff0;backdrop-filter:none}.site-header.is-scrolled,.site-header.is-menu-open{background:#ffffffe6;backdrop-filter:blur(10px)}.header-inner{min-height:62px;flex-direction:row;align-items:center;gap:16px;padding:0}.brand{max-width:calc(100% - 58px);font-size:14px;color:var(--blue-950)}.brand-logo{width:42px;height:42px}.site-header.is-menu-open .brand-name{color:var(--ink);text-shadow:none}.brand-sub{color:#ffffffeb;font-size:9px}.site-header.is-scrolled .brand-sub,.site-header.is-menu-open .brand-sub{color:var(--blue-700)}.main-nav{display:none}.menu-toggle{display:grid;width:42px;height:38px;margin-left:auto;place-items:center;border:0;border-radius:0;background:transparent;box-shadow:none;cursor:pointer}.menu-toggle span{display:block;width:24px;height:2px;background:var(--blue-850);transition:transform .16s ease}.site-header:not(.is-scrolled):not(.is-menu-open) .menu-toggle span{background:#fff}.menu-toggle span+span{margin-top:-11px}.site-header.is-menu-open .menu-toggle span:first-child{transform:translateY(5px) rotate(35deg)}.site-header.is-menu-open .menu-toggle span:last-child{transform:translateY(-5px) rotate(-35deg)}.mobile-menu{position:absolute;top:calc(100% + 8px);left:0;right:0;display:grid;gap:0;border:1px solid rgba(226,232,238,.95);border-radius:22px;background:#fffffff5;box-shadow:0 20px 42px #19375321;opacity:0;visibility:hidden;pointer-events:none;transform:translateY(-8px);transition:opacity .16s ease,transform .16s ease,visibility .16s ease;overflow:hidden}.site-header.is-menu-open .mobile-menu{opacity:1!important;visibility:visible;pointer-events:auto;transform:translateY(0)!important}.mobile-menu a{display:flex;justify-content:space-between;align-items:center;min-height:58px;padding:0 20px;border-bottom:1px solid var(--line);color:var(--ink);font-size:14px;font-weight:700;letter-spacing:.16em}.mobile-menu a:last-child{border-bottom:0;color:var(--blue-850)}.mobile-menu span{color:var(--blue-700);font-size:12px;letter-spacing:.1em}.hero{height:100vh;height:100svh}.hero:after{background:linear-gradient(180deg,#05395e0a,#05395e14 45%,#05395e61)}.hero-image{object-position:33% center}.hero-inner{height:100%;padding:0 0 34px;align-items:center;justify-content:center}h1{color:#fff;font-size:clamp(22px,6vw,26px);line-height:2.05;letter-spacing:.12em;text-align:center;text-shadow:0 2px 16px rgba(7,57,103,.26)}.hero-message{display:none;margin:14px auto 0;color:#fffffff0;font-size:15px;font-weight:700;letter-spacing:.16em;line-height:2.1;text-align:center;text-shadow:0 2px 14px rgba(7,57,103,.28)}.mobile-only{display:block}.desktop-only{display:none}.button{width:100%;min-width:0;min-height:46px;padding:10px 12px;font-size:13px}.hero-actions{position:static;display:grid;grid-template-columns:1fr 1fr;gap:10px;width:min(100vw - 28px,360px);margin:28px auto 0}.hero-copy{width:min(360px,100%);padding-top:0;margin:64px auto 0}.strength-grid,.service-grid,.profile-grid,.flow-list,.contact-grid,.footer-grid{grid-template-columns:1fr}.service-grid{gap:14px}.service-card,.service-card>div{min-height:310px}.profile-grid{grid-template-columns:1fr;gap:38px}.profile-heading{margin-bottom:40px}.profile-message{order:2;padding-top:30px;border-top:1px solid rgba(20,119,184,.22);font-size:14px;line-height:2.05}.profile-card{order:1}.profile-photo{width:min(100%,320px);height:auto;margin:0 auto;object-fit:contain}.profile-intro{margin-top:24px;text-align:center}.profile-name{font-size:34px}.profile-roman{font-size:12px}.profile-bio{max-width:520px;margin:20px auto 0}.flow-list{max-width:430px;gap:0;margin:36px auto 0}.flow-list li{display:grid;grid-template-columns:54px 72px 1fr;gap:14px;align-items:center;width:100%;max-width:none;min-height:78px;padding:13px 0;aspect-ratio:auto;border:0;border-radius:0;background:transparent;box-shadow:none;text-align:left}.flow-list li:not(:last-child):after,.flow-list li:last-child:after{position:absolute;inset:auto 0 0 72px;width:auto;height:0;border-top:1px dotted rgba(7,57,103,.42);background:transparent;content:"";transform:none}.flow-list li:nth-child(3):before{content:none}.flow-step{grid-column:2;grid-row:1;margin-bottom:0;color:#a2abb4;font-size:12px;letter-spacing:.06em}.flow-icon{grid-column:1;grid-row:1;width:46px;height:46px;margin-bottom:0;border:2px solid var(--blue-700);border-radius:50%;background:#ffffff9e}.flow-icon-svg{width:25px;height:25px}.flow-list h3{grid-column:3;grid-row:1;margin:0;font-size:15px;line-height:1.45;white-space:nowrap}.contact-form{padding:22px}.privacy-hero{padding:72px 0 54px}.not-found-hero{min-height:calc(100svh - 62px)}.privacy-body{padding:54px 0 78px}.privacy-content section{padding:28px 0}.privacy-content h2{font-size:19px}.partner-banner{width:100%;max-width:300px}.footer-links{flex-direction:column;gap:10px}}
