:root{--color-accent:#d76b56;--color-accent-strong:#b9533f;--color-accent-soft:#f3d2cc;--color-text:#666;--color-muted:#666;--color-bg:#fff;--color-bg-soft:#f5f5f5;--color-border:#ccc;--color-on-accent:#fff;--color-placeholder:#8a5a00;--color-placeholder-bg:#fff6df;--font-body:"Hiragino Sans", "Hiragino Kaku Gothic ProN", "Yu Gothic UI", "Yu Gothic", "Meiryo", sans-serif;--wrap:62rem;--gutter:1rem;--bar-h:3.75rem}*,:before,:after{box-sizing:border-box}html{-webkit-text-size-adjust:100%;scroll-behavior:smooth}body{font-family:var(--font-body);color:var(--color-text);background:var(--color-bg);word-break:auto-phrase;padding-bottom:calc(var(--bar-h) + env(safe-area-inset-bottom));margin:0;font-size:1rem;line-height:1.85}img{max-width:100%;height:auto}a{color:var(--color-accent);text-underline-offset:.2em}h1,h2,h3,h4{text-wrap:balance;margin:0 0 .75em;line-height:1.5}h1{font-size:1.5rem}h2{border-bottom:3px solid var(--color-accent);margin-top:2.5rem;padding-bottom:.35em;font-size:1.3rem}h3{margin-top:1.75rem;font-size:1.1rem}p,ul,ol,dl,table{margin:0 0 1em}ul,ol{padding-left:1.4em}.wrap{max-width:var(--wrap);padding-inline:var(--gutter);margin-inline:auto}.skip-link{background:var(--color-bg);z-index:100;padding:.5rem 1rem;position:absolute;top:0;left:-999px}.skip-link:focus{left:0}.btn{border:2px solid var(--color-accent);background:var(--color-accent);min-height:3rem;color:var(--color-on-accent);text-align:center;border-radius:.4rem;justify-content:center;align-items:center;gap:.4em;padding:.5rem 1.25rem;font-weight:700;line-height:1.3;text-decoration:none;display:inline-flex}.btn:hover,.btn:focus-visible{background:var(--color-accent-strong);border-color:var(--color-accent-strong)}.btn--outline{background:var(--color-bg);color:var(--color-accent)}.btn--outline:hover,.btn--outline:focus-visible{background:var(--color-accent-soft);color:var(--color-accent-strong)}.unset,.placeholder{color:var(--color-placeholder);background:var(--color-placeholder-bg);border-radius:.25rem;padding:.05em .4em}p.placeholder,div.placeholder{padding:.6rem .8rem}.site-header{z-index:50;background:var(--color-bg);border-bottom:3px solid var(--color-accent);position:sticky;top:0}.header-inner{flex-wrap:wrap;justify-content:space-between;align-items:center;gap:.75rem;min-height:3.5rem;display:flex}.brand{color:var(--color-accent);font-size:1.15rem;font-weight:700;line-height:1.3;text-decoration:none}.menu-toggle{border:1px solid var(--color-border);background:var(--color-bg);min-height:2.75rem;color:var(--color-text);font:inherit;cursor:pointer;border-radius:.4rem;padding:0 .9rem;font-weight:700}.site-nav{flex:0 0 calc(100% + 2 * var(--gutter));margin-inline:calc(-1 * var(--gutter));border-top:1px solid var(--color-border);background:var(--color-bg);display:none}.site-nav[data-open=true]{display:block}.site-nav ul{margin:0;padding:0;list-style:none}.site-nav a{padding:.85rem var(--gutter);border-bottom:1px solid var(--color-border);color:var(--color-text);font-weight:700;text-decoration:none;display:block}.site-nav a[aria-current=page]{color:var(--color-accent);background:var(--color-accent-soft)}.header-contact{display:none}.cta-bar{z-index:60;padding:.5rem var(--gutter) calc(.5rem + env(safe-area-inset-bottom));background:var(--color-bg);border-top:1px solid var(--color-border);grid-template-columns:1fr 1fr;gap:.5rem;display:grid;position:fixed;inset:auto 0 0;box-shadow:0 -2px 8px #00000014}.cta-bar .btn{min-height:calc(var(--bar-h) - 1rem);padding-inline:.5rem}.site-footer{background:var(--color-accent);color:var(--color-on-accent);margin-top:4rem;padding-block:2rem}.site-footer a{color:var(--color-on-accent)}.footer-nav ul{grid-template-columns:1fr 1fr;gap:.25rem 1rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.footer-nav a{padding:.4rem 0;display:block}.footer-office p{margin:0 0 .4rem}.footer-affiliation{font-weight:700;margin-top:1rem!important}.copyright{opacity:.85;margin:1.25rem 0 0;font-size:.85rem}.page{padding-block:1.5rem 0}.page>.wrap>h1{margin-bottom:1.25rem}.lead{color:var(--color-muted)}.panel{background:var(--color-bg-soft);border-radius:.5rem;margin-bottom:1.5rem;padding:1rem}.work-list{gap:.5rem;margin:0 0 1.5rem;padding:0;list-style:none;display:grid}.work-list a{box-sizing:border-box;border:1px solid var(--color-border);border-left:5px solid var(--color-accent);background:var(--color-bg);height:100%;color:var(--color-text);border-radius:.4rem;flex-direction:column;justify-content:center;padding:.85rem 1rem;font-size:1.15rem;font-weight:700;line-height:1.5;text-decoration:none;display:flex}.work-list a:hover,.work-list a:focus-visible{background:var(--color-accent-soft)}.work-list small{color:var(--color-muted);font-size:.85rem;font-weight:400;line-height:1.5;display:block}.hero{background:var(--color-bg-soft);padding-block:1.5rem 2rem}.hero h1{margin-bottom:.75rem;font-size:1.55rem;line-height:1.45}.hero p{margin-bottom:1rem}.hero-actions{gap:.6rem;display:grid}.hero-tel{font-size:1.5rem;font-weight:700;line-height:1.2}.hero-tel small{color:var(--color-muted);margin-bottom:.3rem;font-size:.85rem;font-weight:400;display:block}.hero-tel .unset,.header-tel .unset{line-height:1.5;display:inline-block}.section{padding-block:.5rem}.section>.wrap>h2:first-child{margin-top:2rem}.lawyer-en{color:var(--color-muted);font-size:.8em;font-weight:400}.lawyer-catch{color:var(--color-accent);font-weight:700}h3>.lawyer-catch{font-size:.85rem;display:block}.lawyer-head{flex-wrap:wrap;align-items:flex-start;gap:1rem;margin-bottom:1rem;display:flex}.lawyer-head>div{flex:16rem}.lawyer-head p:last-child{margin-bottom:0}.lawyer-head h3{margin:0}.lawyer-photo{border-radius:.4rem;flex:none;width:6.875rem;height:auto}.lawyer-career{padding-left:0;list-style:none}.lawyer-career li{border-bottom:1px solid var(--color-border);padding:.35rem 0}.lawyer-cards{gap:1rem;margin:0 0 1rem;padding:0;list-style:none;display:grid}.lawyer-cards li{border:1px solid var(--color-border);border-top:4px solid var(--color-accent);border-radius:.4rem;padding:1rem}.lawyer-cards h3{margin-top:0}.page .lawyer-photo{width:13.75rem}.lawyer-cards p:last-child{margin-bottom:0}.entry-list{margin:0 0 1.5rem;padding:0;list-style:none}.entry-list li{border-bottom:1px solid var(--color-border);padding:.9rem 0}.entry-title{margin-top:.25rem;font-weight:700;display:block}.entry-desc{color:var(--color-muted);margin:.25rem 0 0;font-size:.95rem}.tag{border:1px solid var(--color-accent);color:var(--color-accent);background:var(--color-bg);border-radius:999px;margin-right:.35em;padding:0 .6em;font-size:.8rem;line-height:1.7;text-decoration:none;display:inline-block}.tag--type{background:var(--color-accent);color:var(--color-on-accent)}.dates{color:var(--color-muted);flex-wrap:wrap;gap:0 1.25rem;margin:0 0 1rem;font-size:.9rem;display:flex}.dates div{gap:.4em;display:flex}.dates dt{font-weight:700}.dates dd{margin:0}.prose h2{font-size:1.2rem}.prose img{height:auto}.case-note{background:var(--color-bg-soft);border-left:4px solid var(--color-accent);margin-top:2rem;padding:.75rem 1rem;font-size:.95rem}.price-table-wrap{margin-bottom:1rem;overflow-x:auto}.price-table{border-collapse:collapse;width:100%;min-width:28rem}.price-table th,.price-table td{border:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.6rem .75rem}.price-table th{background:var(--color-bg-soft);white-space:nowrap}.price-example{background:var(--color-bg-soft);border-radius:.4rem;margin-bottom:1rem;padding:.75rem 1rem}.price-example h4{margin:0 0 .4rem;font-size:1rem}.price-facts{margin:0 0 1rem}.price-facts div{flex-wrap:wrap;gap:0 .75em;display:flex}.price-facts dt{font-weight:700}.price-facts dd{margin:0}.price-notice{font-weight:700}.price-row-note{color:var(--color-muted);margin-top:.3em;font-size:.9em;display:block}.price-tax{color:var(--color-muted);font-size:.9rem}.price-scale{border:1px solid var(--color-border);border-radius:.4rem;margin-bottom:1rem;padding:.75rem 1rem}.price-scale h4{margin:0 0 .4rem;font-size:1rem}.price-scale>ul:last-child{margin-bottom:0}.map{margin-bottom:1.5rem}.map iframe{border:1px solid var(--color-border);border-radius:.4rem;width:100%;height:22rem;display:block}.info-table{border-collapse:collapse;width:100%}.info-table th,.info-table td{border-bottom:1px solid var(--color-border);text-align:left;vertical-align:top;padding:.6rem .5rem}.info-table th{white-space:nowrap;width:7em}@media (width>=52rem){html{font-size:112.5%}:root{--gutter:1.5rem}body{padding-bottom:0}h1{font-size:1.9rem}h2{font-size:1.5rem}.cta-bar,.menu-toggle{display:none}.header-inner{min-height:4.5rem}.site-nav{border-top:0;flex-basis:100%;order:3;margin-inline:0;display:block}.site-nav ul{flex-wrap:wrap;gap:0 .25rem;display:flex}.site-nav a{border-bottom:0;border-radius:.3rem;padding:.5rem .9rem}.site-header .header-inner{flex-wrap:wrap;padding-block:.5rem 0}.header-contact{align-items:center;gap:1rem;margin-left:auto;display:flex}.header-tel{font-size:1.4rem;font-weight:700;line-height:1.2}.header-tel small{color:var(--color-muted);font-size:.75rem;font-weight:400;display:block}.work-list{grid-template-columns:repeat(3,1fr);grid-auto-rows:1fr}.lawyer-cards{grid-template-columns:1fr 1fr}.hero{padding-block:3rem}.hero h1{font-size:2.1rem}.hero-actions{grid-template-columns:auto auto;justify-content:start;align-items:center;gap:1.5rem}.footer-nav ul{grid-template-columns:repeat(4,auto);justify-content:start;gap:.25rem 2rem}}
