@import url('https://fonts.googleapis.com/css2?family=Noto+Serif+SC:wght@500;600&display=swap');

:root{--ink:#181916;--paper:#f5f4f0;--white:#fbfbf8;--line:#d7d4cc;--muted:#70716b;--blue:#7899aa;--yellow:#e1ad43;--max:1240px;--pad:max(24px,calc((100vw - var(--max))/2))}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;background:var(--paper);color:var(--ink);font-family:Arial,"PingFang SC",sans-serif;line-height:1.65}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button{cursor:pointer}img{max-width:100%;display:block}em{font-style:normal}

header{height:72px;padding:0 var(--pad);display:flex;align-items:center;justify-content:space-between;border-bottom:1px solid var(--line);position:sticky;top:0;background:rgba(245,244,240,.94);backdrop-filter:blur(18px);z-index:20}.logo{display:flex;align-items:center;line-height:1}.logo img{width:148px;height:51px;object-fit:contain;object-position:left center}nav{display:flex;gap:clamp(18px,2.3vw,32px)}nav a{font-size:12px;letter-spacing:.08em;position:relative}nav a:after{content:"";position:absolute;left:0;right:100%;bottom:-8px;height:2px;background:var(--yellow);transition:.2s}nav a:hover:after{right:0}.menu-btn{display:none;background:none;border:0}
main{min-height:65vh}.eyebrow{font-size:10px;letter-spacing:.2em;font-weight:bold;margin:0 0 18px;text-transform:uppercase;color:var(--muted)}.section{padding:88px var(--pad);border-top:1px solid var(--line)}.section h2,.home-intro h2{font:600 clamp(30px,4vw,54px)/1.3 "Noto Serif SC",serif;letter-spacing:-.035em;margin:0}.section-title{display:flex;align-items:end;justify-content:space-between;margin:0 0 30px}.section-title a{font-size:11px;letter-spacing:.06em}.section-title a:hover{color:var(--blue)}

.hero{min-height:calc(90vh - 72px);max-height:790px;padding:clamp(70px,10vh,110px) var(--pad);display:grid;grid-template-columns:minmax(0,1.1fr) minmax(320px,.75fr);gap:7vw;align-items:center;overflow:hidden}.hero-copy{position:relative;z-index:2}.hero h1{font:600 clamp(54px,6.7vw,94px)/1.08 "Noto Serif SC",serif;letter-spacing:-.07em;margin:0;max-width:800px}.hero-en{font-size:clamp(20px,2vw,28px);letter-spacing:.06em;margin:15px 0 32px}.hero-lead{font-size:15px;color:var(--muted);margin:0 0 30px}.actions{display:flex;gap:10px;flex-wrap:wrap}.button{display:inline-flex;min-width:155px;padding:12px 15px;border:1px solid var(--ink);justify-content:space-between;background:var(--ink);color:var(--paper);font-size:12px;transition:.2s}.button:hover{background:var(--yellow);border-color:var(--yellow);color:var(--ink)}.button.secondary{background:transparent;color:var(--ink)}.button.secondary:hover{background:var(--ink);color:var(--paper)}.hero-minor{display:flex;gap:22px;margin-top:23px}.hero-minor a{font-size:11px;color:var(--muted);border-bottom:1px solid transparent}.hero-minor a:hover{border-color:var(--yellow);color:var(--ink)}.hero-visual{justify-self:end;width:min(32vw,390px);aspect-ratio:1/1;background:#e8e7e1;display:flex;flex-direction:column;align-items:center;justify-content:center;position:relative}.hero-visual:before{content:"";position:absolute;width:8px;height:40%;background:var(--yellow);left:0;top:0}.hero-visual img{width:72%;height:auto}.hero-visual span{font-size:9px;letter-spacing:.18em;line-height:1.7;margin-top:30px;align-self:flex-start;margin-left:14%}
.home-intro{padding:70px var(--pad);background:var(--ink);color:var(--white);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.home-intro .eyebrow{color:var(--yellow)}.home-intro h2{max-width:520px}.home-intro>p{max-width:520px;color:#b8b9b3;font-size:14px;margin:0}
.home-core{padding-top:76px;padding-bottom:76px}.core-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin-top:30px}.core-grid a{background:var(--paper);padding:30px;min-height:240px;display:flex;flex-direction:column;transition:.25s}.core-grid a:hover{background:var(--white);transform:translateY(-3px)}.core-grid em,.featured-store-grid em{font-size:9px;letter-spacing:.14em;color:var(--blue)}.core-grid h3{font:600 25px "Noto Serif SC",serif;margin:42px 0 8px}.core-grid p{font-size:12px;color:var(--muted);max-width:260px;margin:0}.core-grid b{font-size:10px;letter-spacing:.08em;margin-top:auto}.featured-stores{background:var(--white)}.featured-store-grid{display:grid;grid-template-columns:repeat(2,1fr);gap:22px}.featured-store-grid a{border-bottom:1px solid var(--line);transition:.2s}.featured-store-grid a:hover{border-color:var(--yellow)}.featured-store-grid img{width:100%;aspect-ratio:16/8.2;object-fit:cover;filter:grayscale(.35)}.featured-store-grid div{padding:18px 0 20px}.featured-store-grid h3{font:600 22px "Noto Serif SC",serif;margin:7px 0 3px}.featured-store-grid span{font-size:10px;color:var(--muted)}
.notice-grid,.notice-list{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line)}.notice-card{background:var(--paper);padding:24px;min-height:235px;display:flex;flex-direction:column;transition:.2s}.notice-card:hover{background:var(--white)}.notice-card span,.notice-card p,.notice-card b{font-size:9px;letter-spacing:.1em}.notice-card p{color:var(--muted)}.notice-card h3{font:600 19px/1.45 "Noto Serif SC",serif;margin:20px 0 8px}.notice-card small{color:var(--muted);font-size:11px}.notice-card b{margin-top:auto;padding-top:20px}

.page-head{padding:95px var(--pad) 75px;max-width:1450px}.page-head h1{font:600 clamp(43px,6vw,82px)/1.18 "Noto Serif SC",serif;letter-spacing:-.055em;margin:0}.page-head>p:not(.eyebrow){max-width:620px;color:var(--muted);font-size:14px;margin:25px 0 0}.about-image,.store-hero{padding:0 var(--pad)}.about-image img,.store-hero img{width:100%;height:min(50vw,600px);object-fit:cover;filter:grayscale(.25)}.about-image p{font-size:9px;letter-spacing:.2em}.split,.prose,.detail-grid{display:grid;grid-template-columns:1fr 1.2fr;gap:8vw}.prose div{font-size:clamp(16px,1.7vw,22px);color:var(--muted)}.prose h2{font-size:clamp(28px,4vw,50px)}.practice-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:1px;background:var(--line)}.practice-grid article{background:var(--paper);padding:28px;min-height:220px}.practice-grid em,.future-grid em{font-size:9px;color:var(--muted)}.practice-grid h3{font:600 24px "Noto Serif SC",serif;margin:48px 0 8px}.practice-grid p{color:var(--muted);font-size:11px}.consult-banner{background:var(--ink);color:white;padding:68px var(--pad);display:flex;justify-content:space-between;align-items:end;gap:30px}.consult-banner h2{font:600 clamp(30px,4vw,54px)/1.3 "Noto Serif SC",serif;max-width:800px;margin:0}.consult-banner p{color:#b4b5af}.consult-banner .button{border-color:white}
.store-list{border-top:1px solid var(--line)}.store-row{display:grid;grid-template-columns:40px 210px 1fr auto;gap:26px;align-items:center;padding:22px var(--pad);border-bottom:1px solid var(--line)}.store-row img{width:210px;height:125px;object-fit:cover}.store-row span,.store-row p,.store-row small{color:var(--muted);font-size:10px}.store-row h2{font:600 clamp(22px,2.5vw,34px) "Noto Serif SC",serif;margin:5px 0}.store-row b{font-size:10px}.detail-grid dl{margin:0}.detail-grid dt{font-size:9px;letter-spacing:.12em;color:var(--muted)}.detail-grid dd{margin:5px 0 20px;padding-bottom:20px;border-bottom:1px solid var(--line)}
.form-wrap{padding:0 var(--pad) 100px}form{display:grid;grid-template-columns:1fr 1fr;gap:22px 32px;max-width:1050px}label{font-size:10px;letter-spacing:.08em;display:flex;flex-direction:column;gap:8px}.full{grid-column:1/-1}input,select,textarea{border:0;border-bottom:1px solid var(--ink);background:transparent;padding:12px 2px;outline:none;border-radius:0}textarea{border:1px solid var(--line);padding:14px;resize:vertical}.form-end{display:flex;flex-direction:row;justify-content:space-between;align-items:center}.form-end p{font-size:10px;color:var(--muted)}form button,.product-card button,.result-row button{border:0;background:var(--ink);color:white;padding:12px 18px;font-size:11px}
.filters{margin:0 var(--pad) 25px;display:grid;grid-template-columns:2fr 1fr 1fr;border:1px solid var(--line)}.filters input,.filters select{border:0;border-right:1px solid var(--line);padding:15px}.results{padding:0 var(--pad) 95px}.result-row{display:grid;grid-template-columns:1.4fr 1fr 1fr auto;gap:26px;align-items:center;border-top:1px solid var(--line);padding:22px 0}.result-row:last-child{border-bottom:1px solid var(--line)}.result-row h3{font:600 21px "Noto Serif SC",serif;margin:4px 0}.result-row span,.result-row small,.result-row p{font-size:10px;color:var(--muted);margin:0}.result-row .ok{color:#39744b}.result-row .no{color:#9d4d3f}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:24px;padding:0 var(--pad) 95px}.product-card img{aspect-ratio:1/1;object-fit:cover}.product-card>p,.product-card small{font-size:9px;color:var(--muted)}.product-card h3{font:600 20px "Noto Serif SC",serif}.product-card div{display:flex;justify-content:space-between;align-items:center}.product-card button{padding:8px 11px}.empty{grid-column:1/-1;padding:70px 0;color:var(--muted);text-align:center}.chips{padding:0 var(--pad) 28px;display:flex;gap:7px;flex-wrap:wrap}.chips button{border:1px solid var(--line);background:transparent;padding:7px 13px;font-size:10px}.chips .active{background:var(--ink);color:white}.notice-list{margin:0 var(--pad) 95px}.article{max-width:850px;margin:auto;padding:95px var(--pad)}.article h1{font:600 clamp(40px,6vw,72px)/1.25 "Noto Serif SC",serif}.article .lead{font-size:18px;color:var(--muted);margin:30px 0 60px}.article-body{font-size:15px;max-width:650px;border-top:1px solid var(--line);padding:35px 0 65px}.consulting-types{margin:0 var(--pad) 80px;grid-template-columns:repeat(3,1fr)}.contact-grid,.future-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:var(--line);margin:0 var(--pad) 95px}.contact-grid article,.future-grid article{background:var(--paper);padding:30px;min-height:210px}.contact-grid span,.future-grid span{font-size:9px;color:var(--muted)}.contact-grid h2,.future-grid h3{font:600 24px "Noto Serif SC",serif;margin:42px 0 12px}.future-grid article{position:relative}.future-grid span{position:absolute;right:22px;bottom:22px}.not-found{min-height:65vh;padding:12vh var(--pad);text-align:center}.not-found b{font-size:clamp(90px,18vw,240px);line-height:1;color:var(--blue)}.not-found h1{font:600 30px "Noto Serif SC",serif}.toast{position:fixed;z-index:99;right:22px;bottom:22px;background:var(--ink);color:white;padding:15px 20px;max-width:380px;font-size:11px}
footer{padding:52px var(--pad) 20px;background:var(--ink);color:var(--paper);display:grid;grid-template-columns:2fr 1fr 1fr;gap:40px}footer .logo img{filter:invert(1)}footer .logo small{color:#aaa}footer>div{display:flex;flex-direction:column;gap:9px;font-size:11px}footer p,footer span{color:#999}footer small{grid-column:1/-1;border-top:1px solid #3d3d39;padding-top:16px;color:#888}
.hero-visual img{width:82%}.hero-visual span{margin-left:9%}footer .logo img{filter:brightness(0) invert(1)}

@media(max-width:850px){header{height:64px}.logo img{width:42px}.logo small{display:none}.menu-btn{display:block;font-size:11px}nav{position:absolute;top:64px;left:0;right:0;background:var(--paper);padding:20px 24px;display:none;grid-template-columns:repeat(2,1fr);border-bottom:1px solid var(--line)}nav.open{display:grid}.hero{min-height:auto;max-height:none;padding:68px 24px 58px;grid-template-columns:1fr}.hero h1{font-size:clamp(48px,14vw,68px)}.hero-en{font-size:19px}.hero-visual{display:none}.home-intro{padding:52px 24px;grid-template-columns:1fr;gap:25px}.section{padding:60px 24px}.core-grid,.featured-store-grid,.notice-grid,.notice-list,.practice-grid,.consulting-types,.contact-grid,.future-grid,.product-grid,.split,.prose,.detail-grid{grid-template-columns:1fr}.core-grid a{min-height:210px}.featured-store-grid{gap:28px}.page-head{padding:65px 24px 50px}.page-head h1{font-size:clamp(40px,12vw,62px)}.about-image,.store-hero{padding:0 24px}.about-image img,.store-hero img{height:75vw}.store-row{grid-template-columns:30px 1fr;padding:20px 24px}.store-row img,.store-row b{display:none}.result-row{grid-template-columns:1fr 1fr}.result-row>div:first-child{grid-column:1/-1}.filters{grid-template-columns:1fr;margin:0 24px 25px}.filters input,.filters select{border-right:0;border-bottom:1px solid var(--line)}.results{padding:0 24px 70px}.product-grid{padding:0 24px 70px}.notice-list{margin:0 24px 70px}.chips{padding:0 24px 25px}form{grid-template-columns:1fr}.full{grid-column:auto}.form-wrap{padding:0 24px 70px}.form-end{align-items:stretch;flex-direction:column}.consult-banner{align-items:start;flex-direction:column;padding:55px 24px}.section-title{align-items:start;gap:15px}.section-title h2{font-size:32px}.article{padding:70px 24px}.contact-grid,.future-grid{margin:0 24px 70px}footer{grid-template-columns:1fr 1fr;padding:45px 24px 20px}footer>div:first-child{grid-column:1/-1}}
@media(max-width:850px){.logo img{width:122px;height:44px}.logo small{display:initial}}
