:root{--ink:#171714;--paper:#f3f0e8;--white:#fff;--yellow:#f2d52f;--red:#d9342b;--line:#d9d3c5;--muted:#6c675e;--charcoal:#2c2c29}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,Noto Sans JP,sans-serif;line-height:1.7}a{color:inherit;text-decoration:none}.header{position:sticky;top:0;z-index:50;background:#f3f0e8f7;border-bottom:1px solid var(--line)}.nav{height:78px;max-width:1240px;margin:auto;padding:0 18px;display:flex;align-items:center;gap:22px}.brand{display:flex;align-items:center;gap:11px;font-weight:900;white-space:nowrap}.mark{width:12px;height:38px;background:var(--yellow)}.brand small{display:block;font-size:8px;letter-spacing:.16em;color:#706b62}.links{margin-left:auto;display:flex;align-items:center;gap:18px;font-size:12px;font-weight:800}.links a:hover{text-decoration:underline;text-underline-offset:6px}.recruit{height:78px;min-width:126px;padding:0 16px;background:var(--red);color:#fff;display:flex;flex-direction:column;align-items:center;justify-content:center;font-weight:900;line-height:1.15}.recruit small{font-size:8px;letter-spacing:.16em;margin-bottom:4px}.recruit strong{font-size:14px}.menu{display:none;width:44px;height:42px;border:1px solid var(--ink);background:transparent;position:relative}.menu:before,.menu:after,.menu span{content:"";position:absolute;left:10px;right:10px;height:2px;background:var(--ink)}.menu:before{top:12px}.menu span{top:19px}.menu:after{top:26px}main{min-height:70vh}.container{max-width:1180px;margin:auto;padding:0 20px}.hero{padding:92px 0 108px}.eyebrow{font-size:11px;font-weight:900;letter-spacing:.16em}.hero h1{font-size:clamp(52px,7vw,92px);line-height:1.04;letter-spacing:-.055em;margin:20px 0 28px}.lead{max-width:760px;font-size:18px;line-height:1.9}.actions{display:flex;gap:12px;flex-wrap:wrap;margin-top:34px}.btn{display:inline-flex;align-items:center;justify-content:center;padding:14px 20px;border:1px solid var(--ink);font-size:13px;font-weight:900}.btn.primary{background:var(--ink);color:#fff}.btn.secondary{background:#fff}.section{padding:84px 0;border-top:1px solid var(--line)}.section.white{background:#fff}.section h2{font-size:clamp(34px,5vw,56px);line-height:1.2;margin:0 0 18px}.section p{max-width:780px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.card{background:#fff;border:1px solid var(--line);padding:24px}.card h3{margin-top:0}.tag{font-size:11px;font-weight:900;letter-spacing:.08em;color:#6c675e}.number{font-size:44px;font-weight:900;color:#d1c9b9}.price{font-size:34px;font-weight:900}.muted{color:var(--muted)}.side-cta{position:fixed;right:0;top:50%;transform:translateY(-36%);z-index:40;display:flex;flex-direction:column;gap:10px}.side-cta a{width:66px;min-height:198px;color:#fff;display:flex;align-items:center;justify-content:center;writing-mode:vertical-rl;font-weight:900;letter-spacing:.08em;padding:14px 0;box-shadow:0 3px 14px #0000002e}.side-cta .consult{background:var(--red)}.side-cta .document{background:var(--charcoal)}.mobile-bottom{display:none}.footer{background:var(--ink);color:#fff;padding:54px 20px;margin-top:60px}.footer-inner{max-width:1180px;margin:auto;display:flex;justify-content:space-between;gap:24px;flex-wrap:wrap}.footer a{text-decoration:underline;text-underline-offset:4px}.content-list{display:grid;gap:14px}.content-item{padding:20px;border:1px solid var(--line);background:#fff}.content-item h2{font-size:24px;margin:0 0 8px}.prose{max-width:800px}.prose img{max-width:100%;height:auto}.prose h2,.prose h3{line-height:1.4;margin-top:2em}@media(max-width:900px){.links{display:none}.nav{height:66px;padding:0 12px;gap:10px}.brand{margin-right:auto;font-size:14px}.brand small{display:none}.mark{height:32px;width:10px}.recruit{height:66px;min-width:98px;padding:0 10px}.recruit strong{font-size:13px}.recruit small{font-size:7px}.menu{display:block}.side-cta{display:none}.mobile-bottom{display:grid;grid-template-columns:1fr 1fr;position:fixed;left:0;right:0;bottom:0;z-index:60;box-shadow:0 -3px 14px #00000024}.mobile-bottom a{height:58px;display:flex;align-items:center;justify-content:center;color:#fff;font-size:13px;font-weight:900}.mobile-bottom .consult{background:var(--red)}.mobile-bottom .document{background:var(--charcoal)}body{padding-bottom:58px}.grid{grid-template-columns:1fr}.hero{padding-top:62px}.hero h1{font-size:clamp(46px,13vw,66px)}}
