
:root{--bg:#080604;--gold-1:#fff6d0;--gold-2:#f4d67f;--gold-3:#e0b24e;--gold-4:#b8842c;--purple-2:#8a54c9;--purple-deep:#3a2159;--ink:#f3ead6;--muted:#b9a888;--line:rgba(244,214,127,.22)}
*{margin:0;padding:0;box-sizing:border-box}
html{scroll-behavior:smooth}
body{font-family:"Zen Kaku Gothic New",-apple-system,sans-serif;color:var(--ink);background:var(--bg);line-height:1.9;letter-spacing:.02em;overflow-x:hidden}
a{color:inherit;text-decoration:none}
img{max-width:100%;height:auto;display:block}
picture{display:contents}
.bgfx{position:fixed;inset:0;z-index:0;pointer-events:none;background:radial-gradient(60% 45% at 80% 4%,rgba(160,110,30,.26),transparent 60%),radial-gradient(55% 45% at 10% 30%,rgba(120,70,160,.14),transparent 62%),linear-gradient(180deg,#0a0705,#060402 60%,#0a0603)}
.wrap{position:relative;z-index:2}
.container{max-width:860px;margin:0 auto;padding:0 22px}
.goldtext{background:linear-gradient(178deg,var(--gold-1) 4%,var(--gold-2) 36%,var(--gold-4) 64%,var(--gold-1) 100%);-webkit-background-clip:text;background-clip:text;-webkit-text-fill-color:transparent}
.nav{position:sticky;top:0;z-index:20;display:flex;align-items:center;justify-content:space-between;padding:13px 22px;background:rgba(8,6,4,.82);backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}
.nav .brand{font-family:"Cinzel",serif;font-weight:800;letter-spacing:.12em;font-size:.82rem}
.nav .brand small{display:block;font-family:"Zen Kaku Gothic New";font-weight:500;letter-spacing:.3em;font-size:.5rem;color:var(--muted)}
.nav .cta{font-family:"Cinzel",serif;font-weight:700;letter-spacing:.12em;font-size:.72rem;color:#2a1c06;background:linear-gradient(180deg,#ffe9a8,#f0cb6f 46%,#d3a544);padding:9px 18px;border-radius:999px}
.crumbs{font-size:.72rem;color:var(--muted);padding:18px 0 0;letter-spacing:.04em}
.crumbs a:hover{color:var(--gold-2)}
.a-hero{text-align:center;padding:clamp(26px,5vw,42px) 0 clamp(20px,4vw,30px)}
.a-photo{width:min(360px,86%);aspect-ratio:4/5;margin:0 auto 26px;border-radius:16px;overflow:hidden;position:relative;
  background:linear-gradient(160deg,rgba(38,28,15,.95),rgba(14,10,6,.95));border:1px solid rgba(244,214,127,.3);
  display:flex;align-items:center;justify-content:center;box-shadow:0 30px 70px -30px rgba(0,0,0,.9)}
.a-photo .mono{font-family:"Shippori Mincho",serif;font-weight:700;font-size:4rem;color:var(--gold-2)}
.a-photo img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.eyebrow{font-family:"Cinzel",serif;font-weight:600;letter-spacing:.34em;text-transform:uppercase;font-size:.62rem;color:var(--gold-3)}
.a-hero h1{font-family:"Shippori Mincho",serif;font-weight:700;font-size:clamp(1.7rem,7vw,2.7rem);line-height:1.25;color:var(--gold-1);margin-top:12px}
.a-hero .en{font-family:"Great Vibes",cursive;font-size:clamp(1.3rem,5vw,1.9rem);color:var(--gold-3);margin-top:2px}
.a-hero .chips{display:flex;gap:8px;justify-content:center;flex-wrap:wrap;margin-top:16px}
.chip{font-size:.72rem;letter-spacing:.08em;color:var(--gold-2);border:1px solid var(--line);border-radius:999px;padding:5px 14px}
.a-video{max-width:720px;margin:8px auto clamp(20px,4vw,30px);aspect-ratio:16/9;border-radius:14px;overflow:hidden;border:1px solid var(--line);background:#000}
.a-video iframe{width:100%;height:100%;border:0;display:block}
.sec{padding:clamp(26px,4vw,36px) 0;border-top:1px solid rgba(244,214,127,.14)}
.sec h2{font-family:"Cinzel",serif;font-weight:800;font-size:1.05rem;letter-spacing:.1em;position:relative;padding-left:16px;margin-bottom:16px}
.sec h2::before{content:"";position:absolute;left:0;top:2px;bottom:2px;width:3px;background:linear-gradient(var(--gold-2),var(--purple-2));border-radius:2px}
.sec h2 .jp{font-family:"Zen Kaku Gothic New";font-weight:500;font-size:.72rem;letter-spacing:.18em;color:var(--muted);margin-left:8px}
.profile p{font-family:"Shippori Mincho",serif;font-size:1.02rem;line-height:2.2}
.rows{border-top:1px solid var(--line)}
.row{display:flex;gap:16px;padding:13px 0;border-bottom:1px dashed rgba(244,214,127,.16)}
.row .k{font-family:"Cinzel";letter-spacing:.14em;font-size:.62rem;color:var(--gold-3);min-width:104px;padding-top:3px;text-transform:uppercase}
.row .v{flex:1}
.row .v b{color:var(--gold-1)}
.cta-row{display:flex;gap:12px;flex-wrap:wrap;justify-content:center;padding:clamp(28px,5vw,40px) 0 8px}
.btn{display:inline-flex;align-items:center;gap:8px;font-family:"Cinzel",serif;font-weight:700;letter-spacing:.1em;font-size:.82rem;padding:14px 28px;border-radius:999px;transition:.3s}
.btn-gold{color:#2a1c06;background:linear-gradient(180deg,#ffe9a8,#f0cb6f 46%,#d3a544);box-shadow:0 12px 30px -10px rgba(230,180,70,.7)}
.btn-gold:hover{transform:translateY(-3px)}
.btn-ghost{color:var(--gold-2);border:1px solid var(--line)}
.btn-ghost:hover{background:rgba(244,214,127,.1);border-color:var(--gold-3)}
.others{padding:clamp(26px,4vw,36px) 0}
.others h2{font-family:"Cinzel";font-weight:800;font-size:.95rem;letter-spacing:.1em;text-align:center;margin-bottom:18px}
.oth-grid{display:grid;grid-template-columns:repeat(4,1fr);gap:12px}
@media(max-width:640px){.oth-grid{grid-template-columns:repeat(2,1fr)}}
.oth{display:flex;flex-direction:column;align-items:center;gap:8px;padding:16px 10px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(160deg,rgba(30,22,11,.7),rgba(10,7,4,.85));text-align:center;transition:.3s}
.oth:hover{transform:translateY(-4px);border-color:var(--gold-3)}
.oth .av{width:52px;height:52px;border-radius:50%;overflow:hidden;position:relative;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,rgba(38,28,15,.95),rgba(14,10,6,.95));border:1px solid rgba(244,214,127,.3)}
.oth .av .mono{font-family:"Shippori Mincho",serif;font-weight:700;color:var(--gold-2);font-size:1.2rem}
.oth .av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.oth .nm{font-family:"Shippori Mincho",serif;font-weight:700;font-size:.86rem;color:var(--gold-1);line-height:1.3}
.oth .rl{font-size:.66rem;color:var(--muted)}
footer{border-top:1px solid var(--line);padding:44px 22px;text-align:center;margin-top:24px}
footer .fb{font-family:"Archivo Black",sans-serif;text-transform:lowercase;font-size:1.4rem}
footer .fg{font-family:"Great Vibes",cursive;font-size:1.3rem;color:var(--gold-3)}
footer .org{color:var(--muted);font-size:.76rem;margin-top:14px;letter-spacing:.08em}
footer .cp{color:#6e6350;font-size:.66rem;margin-top:16px;letter-spacing:.12em;font-family:"Cinzel"}
/* share */
.a-share-sec{padding:clamp(26px,4.5vw,38px) 0 6px;text-align:center;border-top:1px solid var(--line)}
.a-share-sec h2{font-family:"Cinzel";font-weight:800;font-size:.95rem;letter-spacing:.1em}
.a-share-sec h2 .jp{display:block;font-family:"Zen Kaku Gothic New";font-weight:700;font-size:.72rem;letter-spacing:.18em;color:var(--gold-3);margin-top:7px}
.a-share-lead{color:var(--muted);font-size:.86rem;line-height:1.9;margin:12px auto 18px;max-width:34em;word-break:auto-phrase;line-break:strict}
.a-share{display:flex;flex-wrap:wrap;justify-content:center;gap:10px}
.sh-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;min-width:150px;padding:13px 20px;border-radius:999px;font-family:"Zen Kaku Gothic New";font-weight:800;font-size:.86rem;letter-spacing:.03em;cursor:pointer;border:1px solid var(--line);transition:transform .2s,box-shadow .3s,border-color .3s}
.sh-btn:hover{transform:translateY(-2px)}
.sh-btn svg{width:16px;height:16px;display:block;flex:0 0 auto}
.sh-sfx{font-style:normal}
.sh-x{color:var(--ink);background:rgba(10,7,4,.5)}
.sh-x:hover{border-color:var(--gold-3);box-shadow:0 10px 26px -12px rgba(244,214,127,.4)}
.sh-fb{color:#fff;background:#1877F2;border-color:#1877F2}
.sh-fb:hover{box-shadow:0 10px 26px -12px rgba(24,119,242,.8)}
.sh-ig{color:#fff;border-color:transparent;background:linear-gradient(45deg,#f9ce34 0%,#ee2a7b 48%,#6228d7 100%)}
.sh-ig:hover{box-shadow:0 10px 26px -12px rgba(238,42,123,.85)}
.sh-line{color:#fff;background:#06C755;border-color:#06C755}
.sh-line:hover{box-shadow:0 10px 26px -12px rgba(6,199,85,.6)}
.sh-copy{color:#2a1c05;background:linear-gradient(180deg,#ffe9a8,#e9c169);border-color:var(--gold-2)}
.sh-copy:hover{box-shadow:0 10px 26px -12px rgba(244,214,127,.6)}
.a-share-note{max-width:520px;margin:16px auto 0;padding:12px 18px;border-radius:14px;border:1px solid rgba(244,214,127,.28);background:rgba(20,14,8,.6);color:var(--muted);font-size:.8rem;line-height:1.9}
.a-share-note b{color:var(--gold-2);font-weight:800}
.a-share-note a{display:inline-block;margin-left:6px;color:var(--gold-2);text-decoration:underline;font-weight:700;white-space:nowrap}
@media(min-width:521px){.a-share .sh-btn{min-width:0;padding:13px 17px;font-size:.84rem}}
@media(max-width:520px){
  .a-share{display:grid;grid-template-columns:1fr 1fr;gap:10px}
  .sh-btn{min-width:0;padding:13px 8px;font-size:.82rem;gap:6px}
  .a-share .sh-copy{grid-column:1/-1;justify-self:center;min-width:62%}
}
@media(max-width:370px){.sh-sfx{display:none}}
/* 可読性・操作性の底上げ */
body{word-break:auto-phrase;line-break:strict}
p,li,.a-share-lead,.profile p,.v{text-wrap:pretty}
h1,h2,.idx-head h1{text-wrap:balance}
.nav .brand small{font-size:.6rem;letter-spacing:.22em}
.nav .brand{display:inline-flex;flex-direction:column;justify-content:center;min-height:44px}
.nav .cta{font-size:.8rem;padding:12px 20px;display:inline-flex;align-items:center;min-height:44px}
.crumbs{font-size:.8rem}
.crumbs a{display:inline-block;padding:11px 3px}
.eyebrow{font-size:.78rem}
.chip{font-size:.8rem}
.sec h2 .jp,.jp{font-size:.8rem}
.row .k{font-size:.74rem}
.oth .rl{font-size:.74rem}
.idx-card .rl{font-size:.78rem}
footer .org{font-size:.82rem}
footer .cp{font-size:.74rem;letter-spacing:.1em}
.a-share-sec h2 .jp{font-size:.8rem}
.row .k{font-size:.76rem}
.oth .rl{font-size:.76rem}
.nav .brand small{font-size:.62rem}
footer .cp{font-size:.76rem}
.idx-card .rl{font-size:.8rem}
/* インタビュー記事リンク */
.related{padding-top:clamp(20px,3.5vw,28px)}
.rel-lead{color:var(--muted);font-size:.86rem;margin-bottom:14px}
.rel-list{display:grid;gap:10px}
.rel-card{display:flex;align-items:center;justify-content:space-between;gap:12px;min-height:56px;
  padding:14px 18px;border:1px solid var(--line);border-radius:14px;
  background:linear-gradient(160deg,rgba(30,22,11,.7),rgba(10,7,4,.85));transition:.3s}
.rel-card:hover{transform:translateY(-2px);border-color:var(--gold-3);background:rgba(244,214,127,.08)}
.rel-nm{font-weight:800;font-size:.94rem;color:var(--gold-1);line-height:1.5}
.rel-site{flex:none;font-family:"Cinzel",serif;font-weight:700;font-size:.72rem;letter-spacing:.06em;color:var(--gold-3);white-space:nowrap}
@media(max-width:520px){.rel-card{flex-direction:column;align-items:flex-start;gap:6px}}
/* index */
.idx-head{text-align:center;padding:clamp(34px,6vw,56px) 0 clamp(24px,4vw,36px)}
.idx-head h1{font-family:"Cinzel",serif;font-weight:800;font-size:clamp(1.6rem,6vw,2.4rem);letter-spacing:.06em}
.idx-head .jp{display:block;font-size:.86rem;letter-spacing:.24em;color:var(--muted);margin-top:12px}
.idx-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:14px;padding-bottom:40px}
@media(max-width:720px){.idx-grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:430px){.idx-grid{grid-template-columns:1fr}}
.idx-card{display:flex;align-items:center;gap:14px;padding:14px 16px;border:1px solid var(--line);border-radius:14px;background:linear-gradient(160deg,rgba(30,22,11,.75),rgba(10,7,4,.88));transition:.3s}
.idx-card:hover{transform:translateY(-4px);border-color:var(--gold-3)}
.idx-card .av{width:56px;height:56px;border-radius:50%;overflow:hidden;position:relative;flex-shrink:0;display:flex;align-items:center;justify-content:center;background:linear-gradient(160deg,rgba(38,28,15,.95),rgba(14,10,6,.95));border:1px solid rgba(244,214,127,.3)}
.idx-card .av .mono{font-family:"Shippori Mincho",serif;font-weight:700;color:var(--gold-2);font-size:1.3rem}
.idx-card .av img{position:absolute;inset:0;width:100%;height:100%;object-fit:cover}
.idx-card .nm{font-family:"Shippori Mincho",serif;font-weight:700;font-size:1.02rem;color:var(--gold-1);line-height:1.3}
.idx-card .rl{font-size:.7rem;color:var(--muted);margin-top:2px}
