:root{
  --bg:#F5F0EB; --navy:#1B2A4A; --terra:#C05A3A; --gold:#D4B483;
}
*{box-sizing:border-box}
html{-webkit-text-size-adjust:100%}
body{
  margin:0; background:var(--bg); color:var(--navy);
  font-family:"Noto Sans JP",sans-serif; font-weight:300;
  line-height:2; letter-spacing:.04em;
}
.wrap{max-width:560px; margin:0 auto; padding:72px 24px 48px}
.label{
  font-family:Montserrat,sans-serif; font-weight:500; font-size:12px;
  letter-spacing:.3em; color:var(--terra); margin:0 0 20px;
}
h1{
  font-family:"Noto Serif JP",serif; font-weight:500;
  font-size:26px; line-height:1.7; margin:0 0 12px;
}
.date,.lead{font-size:13px; opacity:.7; margin:0 0 36px}
.player{width:100%; margin:0 0 40px}
.bigplay{
  display:flex; align-items:center; justify-content:center;
  width:128px; height:128px; margin:8px auto 14px; padding:0;
  border-radius:50%; border:1px solid var(--navy); background:transparent;
  color:var(--terra); cursor:pointer; -webkit-tap-highlight-color:transparent;
  transition:background .3s ease, color .3s ease;
}
.bigplay svg{width:56px; height:56px; fill:currentColor}
.bigplay .ico-play{margin-left:6px}
.bigplay .ico-pause{display:none}
.bigplay.is-playing{background:var(--navy); color:var(--bg)}
.bigplay.is-playing .ico-play{display:none}
.bigplay.is-playing .ico-pause{display:block}
.bigplay:focus-visible{outline:2px solid var(--gold); outline-offset:4px}
.playhint{
  text-align:center; font-size:12px; letter-spacing:.12em;
  opacity:.65; margin:0 0 28px;
}
.body{font-size:15px; border-top:1px solid var(--gold); padding-top:28px}
.body p{margin:0 0 1.4em}
.tagline{
  font-family:"Cormorant Garamond",serif; font-style:italic;
  font-size:18px; text-align:center; margin:64px 0 24px; color:var(--navy);
}
.back{text-align:center; font-size:13px}
a{color:var(--navy)}
.list{list-style:none; margin:0; padding:0; border-top:1px solid var(--gold)}
.list li{border-bottom:1px solid var(--gold)}
.list a{display:block; padding:22px 4px; text-decoration:none}
.list .num{
  font-family:Montserrat,sans-serif; font-size:12px; letter-spacing:.2em;
  color:var(--terra); display:block;
}
.list .ttl{font-family:"Noto Serif JP",serif; font-size:17px; display:block}
.list .meta{font-size:12px; opacity:.6; display:block}
footer{
  text-align:center; font-family:Montserrat,sans-serif;
  font-size:11px; letter-spacing:.2em; padding:0 0 40px; opacity:.6;
}
