@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--paper:#f7f5f0;--ink:#293c35;--green:#354d41;--muted:#6b7169;--line:#d8d9cf;--accent:#9b7750}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:'Noto Sans JP',sans-serif;font-size:14px;line-height:1.95}a{color:inherit;text-decoration:none}a:hover{opacity:.75}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #9b7750;outline-offset:5px}header{height:100px;display:flex;align-items:center;justify-content:space-between;padding:0 5%;border-bottom:1px solid var(--line);background:var(--paper);gap:20px}.brand{font-family:Georgia,serif;letter-spacing:.15em;font-size:21px}.brand small{display:block;font-size:12px;letter-spacing:.3em;margin-top:2px}nav{display:flex;gap:26px;align-items:center;font-size:12px}.nav-contact{padding:13px 20px;border:1px solid var(--green)}.hero{min-height:660px;display:grid;grid-template-columns:1fr 1fr;position:relative}.hero-copy{padding:70px 6% 45px 10%}.eyebrow{font-size:11px;letter-spacing:.2em;color:var(--accent);margin:0 0 25px;font-weight:500}h1,h2,h3,.lead{font-family:'Noto Serif JP',serif;font-weight:400}h1{font-size:clamp(34px,3.7vw,58px);line-height:1.6;letter-spacing:.08em;margin:0 0 25px}.lead{font-size:18px;line-height:2}.intro{font-size:12px;line-height:2.2;color:var(--muted);margin:24px 0 30px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:40px;padding:17px 25px;background:var(--green);color:white;font-size:13px}.hero-name{margin-top:35px;font-family:'Noto Serif JP',serif;font-size:20px;letter-spacing:.15em}.hero-name small{display:block;font-family:Georgia,serif;font-size:10px;letter-spacing:.2em;margin-top:7px}.hero-art{background:#e9e8de;display:flex;flex-direction:column;justify-content:center;padding:9%;position:relative;overflow:hidden}.hero-art p{font:italic 72px Georgia,serif;color:#6d7b65}.hero-art span{font-size:11px;letter-spacing:.18em}.hero-art img{width:100%;height:100%;object-fit:cover;position:absolute;inset:0}.metrics{margin:0 5%;display:grid;grid-template-columns:1fr 1fr 1fr 1.3fr;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:28px 0;align-items:center}.metrics>div,.metrics>a{padding:0 25px;border-right:1px solid var(--line)}.metrics>a{border:0;font-size:11px}.metrics b{font:42px Georgia,serif;display:block}.metrics b span{font-family:'Noto Serif JP';font-size:15px;margin-left:7px}.metrics small{font-size:11px;color:var(--muted)}footer{padding:45px 5%;font-size:11px;letter-spacing:.1em;border-top:1px solid var(--line)}@media(max-width:900px){header{height:auto;min-height:90px;align-items:flex-start;padding:20px 6%;flex-direction:column}nav{gap:16px;flex-wrap:wrap;font-size:11px}.nav-contact{padding:6px 10px}.hero{grid-template-columns:1fr 1fr;min-height:600px}.hero-copy{padding:45px 8%}.metrics{grid-template-columns:1fr 1fr;gap:25px}.metrics>div:nth-child(2){border:0}}@media(max-width:600px){.hero{grid-template-columns:1fr}.hero-copy{padding:40px 7%}.hero-art{min-height:420px;grid-row:2}h1{font-size:37px}.hero-name{margin-top:24px}.metrics{margin:0 6%;padding:25px 0}.metrics>div,.metrics>a{padding:0 12px}.metrics b{font-size:34px}.metrics small{font-size:10px}nav{gap:12px}.brand{font-size:18px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
body{font-size:16px}.eyebrow{font-size:12px}.intro{font-size:14px}.button{font-size:14px}nav{font-size:14px;gap:20px}.brand small,.hero-name small{font-size:12px}.metrics small,.metrics>a{font-size:12px}.hero-art{background:#e1e4d9}.hero-art img{object-fit:contain;object-position:center bottom;padding:20px 12% 0}.portrait-caption{position:absolute;left:7%;bottom:28px;font:italic 43px Georgia,serif;color:#314638}.portrait-caption small{display:block;font:12px 'Noto Sans JP',sans-serif;letter-spacing:.2em;margin-top:12px}.hero{min-height:700px}.wrap{max-width:1180px;margin:0 auto;padding-left:35px;padding-right:35px}.section{padding-top:100px;padding-bottom:100px}h2{font-size:36px;line-height:1.7;letter-spacing:.06em;margin:0 0 30px}h3{font-size:23px;line-height:1.8}p{margin:0 0 22px}.text-link{font-size:14px;border-bottom:1px solid var(--line);padding-bottom:7px}.book-section{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:center;padding-top:110px;padding-bottom:110px}.book-visual{background:#e9e6db;min-height:530px;display:flex;align-items:center;justify-content:center;position:relative}.book-visual img{width:60%;height:auto;box-shadow:15px 18px 25px #293c3526}.vertical-label{position:absolute;top:35px;left:24px;writing-mode:vertical-rl;letter-spacing:.2em;font-size:12px}.book-award{border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:17px 0;margin:22px 0}.book-award strong{color:#866137;font-size:16px}.book-award small{display:block;font-size:12px;line-height:1.9;margin-top:7px}.meta{font-size:12px;color:var(--muted)}.about-section{background:#e9ece6;padding:100px 0}.about-grid{display:grid;grid-template-columns:1fr 1fr;gap:100px}.about-grid h3 small{display:block;font-size:13px}.about-grid p{line-height:2.3}.section-head{display:flex;justify-content:space-between;align-items:flex-end;gap:30px;margin-bottom:35px}.section-head h2{margin-bottom:0}.topics{display:grid;grid-template-columns:repeat(3,1fr);gap:40px;margin-top:40px}.topics article{border-top:1px solid var(--line);padding-top:20px}.topics article>span{font:italic 32px Georgia,serif;color:var(--accent)}.topics h3{font-size:22px;min-height:80px}.topics p{font-size:15px;color:var(--muted)}.news-row{display:grid;grid-template-columns:110px 125px 1fr 25px;align-items:center;gap:20px;padding:25px 0;border-top:1px solid var(--line)}.news-row:last-child{border-bottom:1px solid var(--line)}.news-row time{font-size:13px;color:var(--muted)}.news-row strong{font-size:16px;font-weight:400}.tag{font-size:12px;border:1px solid var(--line);padding:3px 10px;text-align:center}.services{background:#ecebe4}.salon-photo{width:100%;height:240px;object-fit:cover;margin:15px 0 35px}.service-grid,.two-col{display:grid;grid-template-columns:1fr 1fr;gap:65px}.service-grid article+article{border-left:1px solid #c4c8bd;padding-left:65px}.video-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px;align-items:center}iframe{border:0;width:100%;height:auto;aspect-ratio:16/9;background:#dfe2da}.socials{display:flex;gap:20px;flex-wrap:wrap;margin-top:30px}.socials a{font-size:12px}.contact-band{text-align:center;background:var(--green);color:var(--paper);padding:80px 25px}.contact-band .eyebrow{color:#d8c7a9}.contact-band h2{font-size:40px}.button.light{background:var(--paper);color:var(--ink);margin-top:15px}.affiliated{display:grid;grid-template-columns:1fr 1fr;gap:30px;padding-top:65px;padding-bottom:65px}.affiliated>a{border:1px solid var(--line);padding:30px}.affiliated small,.affiliated strong,.affiliated span{display:block}.affiliated small{font-size:12px;letter-spacing:.15em;color:var(--accent)}.affiliated strong{font:21px 'Noto Serif JP',serif;margin:15px 0}.affiliated span{font-size:13px}.footer-top{display:flex;justify-content:space-between;align-items:center;gap:25px;margin-bottom:35px}.footer-top div{font-size:12px}.page-head{padding-top:55px;padding-bottom:40px}.page-head .crumb{font-size:12px;color:var(--muted);display:block;margin-bottom:50px}.page-head h1{font-size:42px;line-height:1.6}.page-head .eyebrow{margin-bottom:15px}.compact{padding-top:30px}.article{max-width:830px;padding-bottom:100px;line-height:2.3}.article hr{margin:55px 0;border:0;border-top:1px solid var(--line)}.profile-grid{display:grid;grid-template-columns:.75fr 1.25fr;gap:70px;padding-bottom:100px}.profile-grid>img{width:100%;height:auto;background:#e1e4d9;align-self:start}.profile-grid dl{display:grid;grid-template-columns:110px 1fr;border-top:1px solid var(--line);padding-top:25px;gap:15px}.profile-grid dd{margin:0}.two-col{margin:50px 0}.steps{padding-left:25px;margin-bottom:45px}.steps li{padding:15px}.steps p{font-size:14px}.faq{max-width:900px}.faq details{border-top:1px solid var(--line);padding:25px 0}.faq details:last-child{border-bottom:1px solid var(--line)}.faq summary{cursor:pointer;font-size:17px}.faq details p{padding:20px 22px 0;color:var(--muted)}.skip{position:absolute;left:-9999px;top:0}.skip:focus{left:10px;background:white;padding:10px;z-index:10}a,button{touch-action:manipulation}
@media(max-width:1050px){header{align-items:flex-start;flex-direction:column;height:auto;padding:20px 5%}.hero-copy{padding:50px 8%}.hero-art img{padding:0 5%}.book-section,.about-grid{gap:50px}.topics{gap:25px}.wrap{padding-left:30px;padding-right:30px}.video-grid{gap:35px}}
@media(max-width:700px){.hero{grid-template-columns:1fr;min-height:unset}.hero-art{height:510px;min-height:unset}.hero-art img{padding:0 13%}.hero-copy{padding:40px 7%}.portrait-caption{font-size:35px}.wrap{padding-left:24px;padding-right:24px}.section{padding-top:65px;padding-bottom:65px}.book-section,.about-grid,.service-grid,.video-grid,.profile-grid,.two-col{grid-template-columns:1fr;gap:35px}.book-section{padding-top:65px;padding-bottom:65px}.book-visual{min-height:460px}.book-visual img{max-width:245px}.about-section{padding:65px 0}.topics{grid-template-columns:1fr;gap:25px}.topics h3{min-height:unset;margin:12px 0}.section-head{align-items:flex-start;flex-direction:column;gap:20px}h2{font-size:30px}.news-row{grid-template-columns:100px 120px 1fr;gap:12px}.news-row strong{grid-column:1/3;grid-row:2}.news-row>span:last-child{grid-column:3;grid-row:2;text-align:right}.service-grid article+article{border-left:0;border-top:1px solid var(--line);padding:30px 0 0}.salon-photo{height:160px}.affiliated{grid-template-columns:1fr}.footer-top{align-items:flex-start;flex-direction:column}.page-head h1{font-size:33px}.page-head{padding-top:30px}.profile-grid>img{max-width:380px}.contact-band h2{font-size:34px}nav{font-size:13px;gap:12px}.meta{font-size:13px}.metrics small{font-size:12px}.compact{padding-top:10px}.hero h1{font-size:38px}footer{padding:40px 24px}}

/* Book-inspired identity: red ink, generous white, bold rounded typography. */
:root{--paper:#fff;--ink:#231f20;--green:#c92935;--muted:#625859;--line:#e8d9d8;--accent:#b72432}
body{background:#fff;font-size:16px}h1,h2,h3,.lead{font-family:'Noto Sans JP',sans-serif;font-weight:800;letter-spacing:.015em}.brand{font-family:'Noto Sans JP',sans-serif;font-weight:800;letter-spacing:.03em}.brand small{font-weight:400}.eyebrow{font-weight:700;color:#b72432}header{border-top:6px solid #dc3f49;border-bottom:1px solid var(--line)}.hero{min-height:720px;grid-template-columns:1.1fr .9fr}.hero-copy{padding-top:60px}.hero h1{font-size:clamp(38px,4.2vw,64px);font-weight:900;line-height:1.5;letter-spacing:.035em}.hero-art{background:#fff4f2;border-left:1px solid var(--line)}.hero-art img{padding:40px 12% 0}.portrait-caption{color:#b72432;font-family:'Noto Sans JP',sans-serif;font-size:28px;font-style:normal;font-weight:800;bottom:26px;background:#fff;padding:16px 20px;border:2px solid #dc3f49;border-radius:18px}.portrait-caption small{font-size:12px}.hero-name{font-family:'Noto Sans JP',sans-serif;font-weight:700}.lead{font-size:19px;font-weight:500}.button{border-radius:6px;font-weight:700}.metrics{border-top:4px solid #dc3f49}.metrics b{font-family:'Noto Sans JP',sans-serif;font-weight:800;color:#c92935}.metrics b span{font-family:inherit;font-weight:600;color:var(--ink)}.book-visual{background:#fff4f2;border:1px solid #edcac9;border-radius:16px}.book-award{background:#fff9d9;padding:20px;border:0;border-left:5px solid #dc3f49}.book-award strong{color:#99232c}.book-section h2{font-weight:800}.about-section{background:#fff4f2}.topics article{border-top:4px solid #dc3f49}.topics article>span{font-family:inherit;font-style:normal;font-weight:800}.topics h3{font-weight:700}.services{background:#fff8f5}.contact-band{background:#c92935}.contact-band .eyebrow{color:#fff0d1}.contact-band h2{font-weight:800}.affiliated>a{border:2px solid #e6cece;border-radius:10px}.affiliated strong{font-family:inherit;font-weight:700}.tag{color:#a92732;border-color:#e1b3b5;background:#fff5f5}.news-row strong{font-weight:600}.faq summary{font-weight:700}.faq details{padding:26px 0}.page-head h1{font-weight:800}.nav-contact{border-radius:6px;border-width:2px}.salon-photo{border-radius:12px}
@media(max-width:700px){.hero{grid-template-columns:1fr;min-height:unset}.hero h1{font-size:39px}.hero-art{border-left:0;border-top:1px solid var(--line)}.hero-art img{padding-top:15px}.portrait-caption{font-size:22px;bottom:15px}.book-visual{min-height:430px}}
.discover{border-bottom:1px solid var(--line)}.discover-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:24px}.discover-grid>a{padding:28px;border:1px solid #e4caca;border-radius:14px;background:#fff}.discover-grid small{font-size:26px;font-weight:900;color:#c92935}.discover-grid h3{font-size:21px;margin:14px 0}.discover-grid p{font-size:14px;line-height:1.9;color:#625859}.discover-grid span{font-size:14px;font-weight:700;color:#b72432}.home-faq details{border-top:1px solid var(--line);padding:23px 0}.home-faq summary{cursor:pointer;font-weight:700}.home-faq details p{padding:20px 0 0}.content-layout{display:grid;grid-template-columns:250px minmax(0,1fr);gap:55px;align-items:start;padding-bottom:90px}.content-layout>aside{position:sticky;top:25px}.toc{display:block;padding:22px;background:#fff5f3;border:1px solid #e9d2d0;border-radius:12px;font-size:14px}.toc strong{font-size:15px}.toc ol{margin:15px 0 0;padding-left:20px}.toc li{margin:10px 0}.long-read{min-width:0;line-height:2.2}.long-read h2{font-size:27px;line-height:1.65;margin:0 0 24px;padding-left:18px;border-left:5px solid #d93643}.long-read ul{padding-left:22px}.long-read li{margin:12px 0}.reading-section{margin-bottom:55px;padding-top:15px}.source-note{padding:16px 20px;background:#faf7f5;border-radius:6px;font-size:13px;line-height:1.8}.source-note span{display:block;color:#625859;margin-bottom:5px}.source-note a{display:block;text-decoration:underline;text-underline-offset:3px}.related-links{display:block;padding:28px 0;border-top:1px solid var(--line);margin-top:45px}.related-links h2{font-size:22px}.related-links a{display:inline-block;margin:8px 16px 8px 0;border:1px solid var(--line);padding:8px 14px;border-radius:5px;font-size:14px}.extension{max-width:940px;padding-top:25px;padding-bottom:50px}.update-note{font-size:12px;color:#756666;padding-top:25px;padding-bottom:25px}.book-facts{display:grid;grid-template-columns:170px minmax(0,1fr);gap:30px;margin-bottom:45px;align-items:start}.book-facts img{width:100%;height:auto}.book-facts dl{display:grid;grid-template-columns:100px minmax(0,1fr);margin:0;font-size:14px;gap:10px 16px}.book-facts dt{font-weight:700}.book-facts dd{margin:0}.table-scroll{overflow-x:auto;margin:20px 0}.table-scroll table{border-collapse:collapse;width:100%;font-size:14px}.table-scroll caption{text-align:left;font-size:16px;font-weight:700;margin-bottom:12px}.table-scroll th,.table-scroll td{text-align:left;padding:14px;border:1px solid #e4caca;min-width:140px}.table-scroll thead{background:#fff4f2}.table-scroll tbody th{font-weight:500}.page-head>p:last-child{max-width:800px}.hero-name small{font-family:inherit}.metrics b span{font-size:14px}.metrics b{font-size:40px}.hero-art img{object-fit:contain}.footer-top div{line-height:2.5}.article{overflow-wrap:anywhere}
@media(max-width:1000px){.content-layout{grid-template-columns:220px minmax(0,1fr);gap:30px}.book-facts{grid-template-columns:130px minmax(0,1fr);gap:20px}.book-facts dl{grid-template-columns:75px minmax(0,1fr)}}
@media(max-width:700px){.discover-grid{grid-template-columns:1fr}.content-layout{grid-template-columns:1fr;gap:32px}.content-layout>aside{position:static}.book-facts{grid-template-columns:110px minmax(0,1fr);gap:20px}.book-facts dl{display:block}.book-facts dd{margin-bottom:12px}.long-read h2{font-size:24px}.long-read p{font-size:16px}.related-links a{display:block}.update-note{font-size:12px}.hero h1{font-size:38px;line-height:1.5}.hero-art{height:480px}.portrait-caption{left:6%;font-size:19px}.metrics b{font-size:33px}.metrics b span{font-size:13px}.source-note a{overflow-wrap:anywhere}}

/* Both languages stay discoverable on desktop and mobile. */
header{flex-wrap:wrap;gap:14px 24px}
.language-switch{display:flex;align-items:center;gap:8px;margin-left:auto;font-size:13px;white-space:nowrap}
.language-switch a{padding:7px 4px;text-decoration:underline;text-underline-offset:4px}
.language-switch [aria-current]{font-weight:800;color:var(--red,#c42c34)}
.translation-pending{white-space:normal;color:#666}
html[lang=en] .hero h1{font-size:clamp(34px,4vw,58px);line-height:1.12;letter-spacing:-.035em}
html[lang=en] h2,html[lang=en] h3{overflow-wrap:break-word;line-height:1.25}
html[lang=en] header nav{gap:14px}
html[lang=en] .metrics b{font-size:clamp(24px,3vw,44px)}
html[lang=en] .metrics small{line-height:1.45}
html[lang=en] .hero-name{font-size:24px}
html[lang=en] .button{white-space:normal}
html[lang=en] .news-row strong{overflow-wrap:anywhere}
@media(max-width:1050px){.language-switch{order:2}header nav{order:3;width:100%}}
@media(max-width:700px){.language-switch{font-size:12px;gap:5px}html[lang=en] .hero h1{font-size:36px}html[lang=en] header nav{gap:12px}html[lang=en] .metrics b{font-size:28px}}
