:root{--lightningcss-light:initial;--lightningcss-dark: ;color-scheme:light;--paper:#fcfaf6;--cream:#fbf6ee;--ink:#3b302a;--head:#4a2e1e;--sub:#6b5a4e;--note:#7a6a5e;--accent:sienna;--gold:#b8862f;--line:#e8dfd2;--photo:#efe6da;--white:#fff;--mincho:"Zen Old Mincho","Hiragino Mincho ProN","Yu Mincho",serif;--gothic:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP",Meiryo,sans-serif}body{background:var(--paper);color:var(--ink);font-family:var(--gothic);letter-spacing:.03em;word-break:normal;word-break:auto-phrase;overflow-wrap:anywhere;line-break:strict;margin:0;font-size:16px;line-height:1.95}p{margin:0}h1,h2,h3{font-family:var(--mincho);color:var(--head);text-wrap:balance;letter-spacing:.06em;margin:0;font-weight:600;line-height:1.5}a{color:var(--accent)}:focus-visible{outline:2px solid var(--accent);outline-offset:3px}.site{background:var(--paper);overflow:hidden}.nav{border-bottom:1px solid var(--line);background:var(--paper);justify-content:space-between;align-items:center;padding:16px 22px;display:flex}.logo{font-family:var(--mincho);letter-spacing:.22em;color:var(--head);font-size:15px;font-weight:600;text-decoration:none}.nav a.menu{color:var(--sub);letter-spacing:.1em;font-size:12px;text-decoration:none}.band{flex-direction:column;gap:22px;padding:72px 24px;display:flex}.band.cream{background:var(--cream)}.band.center{text-align:center;align-items:center}.inner{flex-direction:column;gap:22px;width:100%;max-width:560px;margin:0 auto;display:flex}.lines p{margin:0}.lines{flex-direction:column;gap:2px;display:flex}.big{font-family:var(--mincho);color:var(--head);letter-spacing:.08em;font-size:clamp(26px,6.4vw,38px);font-weight:600;line-height:1.55}.mid{font-family:var(--mincho);color:var(--head);letter-spacing:.06em;font-size:clamp(20px,4.6vw,25px);font-weight:500;line-height:1.75}.lead{color:var(--sub)}.rule{background:var(--gold);border:0;width:40px;height:1px;margin:0}.btn{background:var(--accent);min-height:52px;color:var(--white);letter-spacing:.08em;border-radius:6px;justify-content:center;align-items:center;gap:10px;padding:0 28px;font-size:15px;font-weight:500;text-decoration:none;display:inline-flex}.btn.ghost{color:var(--accent);border:1px solid var(--accent);background:0 0}.photo{aspect-ratio:4/3;background:var(--photo);box-sizing:border-box;border-radius:6px;align-items:flex-end;width:100%;max-width:100%;padding:14px;display:flex;position:relative;overflow:hidden}.photo.tall{aspect-ratio:4/5}.photo:before{content:"";background:radial-gradient(120% 80% at 80% 10%,#ffffff8c,#0000 60%);position:absolute;inset:0}.photo span{color:var(--sub);letter-spacing:.06em;background:#fcfaf6d9;border-radius:4px;padding:4px 10px;font-size:12px;position:relative}.photo.has-img{padding:0}.photo.has-img:before{display:none}.photo.has-img img{object-fit:cover;width:100%;height:100%;display:block;position:absolute;inset:0}.photo.hero-photo{aspect-ratio:21/9;border-radius:0;flex:none;align-self:center;width:100vw;max-width:none}.photo.hero-photo img{object-position:50% 58%}@media (width<=480px){.photo.hero-photo{aspect-ratio:4/3}}.facts{grid-template-columns:repeat(3,minmax(0,1fr));gap:12px;width:100%;display:grid}.fact{border-top:1px solid var(--line);border-bottom:1px solid var(--line);flex-direction:column;align-items:center;gap:2px;padding:16px 4px;display:flex}.fact b{font-family:var(--mincho);color:var(--head);letter-spacing:.04em;font-variant-numeric:tabular-nums;font-size:clamp(22px,6vw,30px);font-weight:600}.fact small{color:var(--sub);letter-spacing:.08em;font-size:12px}.quote{font-family:var(--mincho);color:var(--head);letter-spacing:.05em;font-size:clamp(19px,4.4vw,23px);line-height:1.85}.who{color:var(--sub);font-size:13px}.note{color:var(--note);font-size:12px;line-height:1.7}.voice{border-left:1px solid var(--gold);flex-direction:column;gap:6px;padding-left:16px;display:flex}.profile{grid-template-columns:120px minmax(0,1fr);align-items:center;gap:20px;display:grid}.profile .photo{aspect-ratio:1}.foot{border-top:1px solid var(--line);color:var(--sub);flex-wrap:wrap;justify-content:center;gap:8px 18px;padding:28px 24px;font-size:12px;display:flex}.foot a{color:var(--sub);text-decoration:none}@media (width<=480px){.band{padding:56px 20px}.profile{grid-template-columns:88px minmax(0,1fr);gap:16px}}@media (prefers-reduced-motion:no-preference){.btn{transition:opacity .2s}.btn:hover{opacity:.88}}
