:root{--bg:#050505;--paper:#fff;--ink:#0b0b0b;--muted:#777;--red:#d90000;--line:#dedede;--ease:cubic-bezier(.22,1,.36,1)}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:Arial,'Helvetica Neue','Noto Sans JP',sans-serif;background:#fff;color:var(--ink);letter-spacing:.03em}body.menu-open{overflow:hidden}a{color:inherit;text-decoration:none}img{max-width:100%}.site-header{position:fixed;z-index:1000;inset:0 0 auto;height:88px;display:flex;align-items:center;padding:0 38px;transition:.45s var(--ease);color:#fff}.site-header.scrolled,.inner-page .site-header{height:72px;background:rgba(5,5,5,.94);backdrop-filter:blur(16px);box-shadow:0 1px rgba(255,255,255,.1)}.brand{position:relative;z-index:1002;display:flex;align-items:center;gap:13px}.brand img{width:58px;height:58px;object-fit:contain}.brand-word{font-weight:800;font-size:15px;letter-spacing:.16em}.menu-btn{margin-left:auto;position:relative;z-index:1002;width:70px;height:50px;border:0;background:none;color:inherit;cursor:pointer;font:700 11px Arial;letter-spacing:.18em}.menu-btn i,.menu-btn:before,.menu-btn:after{content:'';position:absolute;right:0;width:29px;height:1px;background:currentColor;transition:.35s var(--ease)}.menu-btn:before{top:13px}.menu-btn i{top:22px}.menu-btn:after{top:31px}.menu-open .menu-btn:before{top:22px;transform:rotate(45deg)}.menu-open .menu-btn i{opacity:0}.menu-open .menu-btn:after{top:22px;transform:rotate(-45deg)}.menu-btn span{position:absolute;left:0;top:18px}.menu-overlay{position:fixed;z-index:1001;inset:0;background:#070707;color:#fff;display:grid;place-items:center;clip-path:inset(0 0 100% 0);transition:clip-path .7s var(--ease)}.menu-open .menu-overlay{clip-path:inset(0)}.menu-inner{width:min(1180px,86vw);display:grid;grid-template-columns:1fr 1fr;gap:8vw;align-items:end}.menu-kicker{font-size:11px;color:#888;letter-spacing:.28em;margin-bottom:30px}.menu-links a{display:block;font-weight:800;font-size:clamp(32px,4.5vw,68px);line-height:1.15;padding:6px 0;letter-spacing:-.035em;transform:translateY(25px);opacity:0;transition:.4s}.menu-open .menu-links a{transform:none;opacity:1}.menu-open .menu-links a:nth-child(2){transition-delay:.06s}.menu-open .menu-links a:nth-child(3){transition-delay:.12s}.menu-open .menu-links a:nth-child(4){transition-delay:.18s}.menu-side{border-left:1px solid #333;padding-left:40px;color:#aaa;line-height:2;font-size:12px}.menu-side strong{display:block;color:#fff;font-size:14px;letter-spacing:.14em}.hero{height:100svh;min-height:680px;background:radial-gradient(circle at 68% 44%,#3a0000 0,#140000 22%,#050505 55%,#000 100%);color:#fff;position:relative;overflow:hidden;display:flex;align-items:center}.hero:before{content:"";position:absolute;width:55vw;height:55vw;right:-8vw;top:10vh;border:1px solid rgba(255,0,0,.3);border-radius:50%;box-shadow:0 0 80px rgba(200,0,0,.12),inset 0 0 80px rgba(200,0,0,.08)}.hero:after{content:"";position:absolute;inset:0;background:linear-gradient(90deg,rgba(0,0,0,.5),transparent 65%)}.hero-inner{position:relative;z-index:2;width:min(1280px,88vw);margin:auto;display:grid;grid-template-columns:1.05fr .95fr;align-items:center}.hero-copy{padding-top:70px}.eyebrow{font-size:11px;font-weight:800;letter-spacing:.3em;color:var(--red);margin-bottom:24px}.hero h1{font-size:clamp(62px,10vw,145px);line-height:.8;margin:0;letter-spacing:-.07em}.hero h1 small{font-size:.26em;letter-spacing:.2em;display:block;margin-top:28px}.hero p{max-width:560px;color:#aaa;line-height:2;margin:35px 0}.hero-logo{width:min(460px,36vw);justify-self:end;filter:drop-shadow(0 25px 70px rgba(255,0,0,.16));animation:float 6s ease-in-out infinite}@keyframes float{50%{transform:translateY(-12px)}}.scroll-cue{position:absolute;z-index:3;bottom:28px;left:6vw;font-size:9px;letter-spacing:.25em;color:#777;writing-mode:vertical-rl}.wrap{width:min(1180px,88vw);margin:auto}.section{padding:110px 0}.section-head{display:flex;justify-content:space-between;align-items:end;border-bottom:1px solid #111;padding-bottom:18px;margin-bottom:45px}.section-head h2,.page-head h1{font-size:clamp(38px,5vw,72px);margin:0;letter-spacing:-.055em;line-height:.9}.section-head a{font-size:11px;font-weight:bold;letter-spacing:.15em}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:1px;background:#ddd;border:1px solid #ddd}.card{background:#fff;padding:34px;min-height:265px;position:relative;transition:.35s var(--ease)}.card:hover{z-index:2;transform:translateY(-6px);box-shadow:0 16px 35px rgba(0,0,0,.12)}.card h3{font-size:20px;line-height:1.55;margin:13px 0}.card p{font-size:13px;color:#666;line-height:1.8}.meta{font-size:10px;color:#999;letter-spacing:.12em}.tag{font-size:9px;background:#111;color:#fff;padding:7px 10px;display:inline-block;letter-spacing:.14em}.btn{display:inline-flex;align-items:center;gap:25px;border-bottom:1px solid #111;padding:11px 0;font-size:10px;font-weight:bold;letter-spacing:.17em}.hero .btn{border-color:#fff}.ad{height:120px;background:#f5f5f5;color:#aaa;display:grid;place-items:center;font-size:9px;letter-spacing:.2em;margin:20px 0}.dark-band{background:#080808;color:#fff}.dark-band .section-head{border-color:#333}.dark-band .grid{border-color:#222;background:#222}.dark-band .card{background:#0d0d0d}.dark-band .card p{color:#999}.page-head{background:#080808;color:#fff;padding:190px 0 75px;position:relative;overflow:hidden}.page-head:after{content:"";position:absolute;width:380px;height:380px;border:1px solid #3b0000;border-radius:50%;right:4vw;top:-100px}.page-head .eyebrow{margin-bottom:18px}.filters{display:grid;grid-template-columns:1fr 220px;gap:12px;margin-bottom:35px}.input,.select{width:100%;padding:18px;border:1px solid #ccc;background:#fff;font:inherit}.notice{padding:18px 22px;border-left:3px solid var(--red);background:#f5f5f5;font-size:12px;line-height:1.8}.live-date{font-size:13px;color:var(--red);font-weight:bold}.setlist-songs{padding-left:20px;line-height:1.9;font-size:13px}.video-frame{width:100%;aspect-ratio:16/9;border:0;background:#000}.footer{background:#050505;color:#777;padding:70px 0;font-size:10px;line-height:2}.footer b{color:#fff;font-size:18px;letter-spacing:.12em}.reveal{opacity:0;transform:translateY(32px);transition:opacity .8s var(--ease),transform .8s var(--ease)}.reveal.in{opacity:1;transform:none}.page-transition{position:fixed;z-index:2000;inset:0;background:#050505;pointer-events:none;transform:translateY(100%)}.page-transition.go{animation:wipe .65s var(--ease) forwards}@keyframes wipe{0%{transform:translateY(100%)}55%,100%{transform:translateY(0)}}@media(max-width:800px){.site-header{height:70px;padding:0 20px}.brand img{width:46px;height:46px}.brand-word{display:none}.menu-btn{width:66px}.menu-inner{grid-template-columns:1fr}.menu-side{display:none}.menu-links a{font-size:12vw}.hero{min-height:650px}.hero-inner{display:block}.hero-copy{padding-top:110px}.hero h1{font-size:22vw}.hero p{font-size:12px;max-width:80%}.hero-logo{position:absolute;width:47vw;right:-5vw;bottom:-10vh;opacity:.65}.section{padding:75px 0}.section-head{margin-bottom:25px}.grid{grid-template-columns:1fr}.card{min-height:0}.filters{grid-template-columns:1fr}.page-head{padding:145px 0 55px}.ad{height:90px}}
/* NEWS stream — category-driven site update index */
.news-list{border-top:1px solid #111}.news-row{display:grid;grid-template-columns:125px 110px 76px 1fr 24px;gap:18px;align-items:center;min-height:86px;border-bottom:1px solid #ddd;transition:.3s var(--ease);position:relative}.news-row:before{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--red);transition:.45s var(--ease)}.news-row:hover{padding-left:14px}.news-row:hover:before{width:100%}.news-row time{font-size:11px;color:#777;letter-spacing:.08em}.news-cat{font-size:9px;font-weight:800;letter-spacing:.12em;text-align:center;border:1px solid #111;padding:8px 6px}.new-badge{font-size:10px;color:var(--red);font-style:italic;letter-spacing:.03em}.news-row strong{font-size:14px;line-height:1.65}.news-row i{font-style:normal;font-size:18px}.home-news{margin-top:-8px}
@media(max-width:800px){.news-row{grid-template-columns:82px 82px 1fr 18px;gap:9px;min-height:92px;padding:13px 0}.news-row time{font-size:9px}.news-cat{font-size:8px;padding:6px 3px}.news-row .new-badge{position:absolute;left:0;bottom:8px;font-size:8px}.news-row strong{font-size:12px}.news-row:hover{padding-left:0}}

/* v4 — information-first persistent navigation */
.site-header{height:78px;background:rgba(5,5,5,.96);backdrop-filter:blur(16px);padding:0 38px;border-bottom:1px solid rgba(255,255,255,.09)}
.site-header.scrolled,.inner-page .site-header{height:68px}
.brand img{width:46px;height:46px}.brand-word{text-transform:none;font-size:16px;letter-spacing:.08em;white-space:nowrap}
.desktop-nav{margin-left:auto;display:flex;align-items:center;height:100%;gap:clamp(18px,2.4vw,42px)}
.desktop-nav a{height:100%;display:flex;align-items:center;position:relative;color:#fff;font-size:11px;font-weight:800;letter-spacing:.09em;white-space:nowrap}
.desktop-nav a:after{content:"";position:absolute;left:0;right:100%;bottom:0;height:2px;background:var(--red);transition:right .35s var(--ease)}
.desktop-nav a:hover:after{right:0}
.menu-btn,.menu-overlay{display:none!important}
.info-hero{height:auto;min-height:0;padding:138px 0 58px;background:linear-gradient(115deg,#050505 0,#0b0b0b 65%,#190000 100%)}
.info-hero:before{width:320px;height:320px;right:7vw;top:-110px;opacity:.45}.info-hero:after{display:none}
.info-hero .hero-inner{grid-template-columns:1fr 170px;gap:40px}
.info-hero .hero-copy{padding:0}.info-hero h1{font-size:clamp(38px,5vw,66px);line-height:1;letter-spacing:-.045em}
.info-hero .hero-copy p{margin:18px 0 0;max-width:720px;font-size:13px;line-height:1.9;color:#aaa}
.info-hero .eyebrow{margin-bottom:15px;font-size:9px}.info-hero .hero-logo{width:130px;opacity:.72;animation:none;filter:none}
@media(max-width:900px){.site-header{padding:0 20px}.desktop-nav{gap:15px}.desktop-nav a{font-size:9px}.brand-word{font-size:13px}}
@media(max-width:700px){.site-header{position:sticky;height:auto!important;padding:10px 16px;display:grid;grid-template-columns:1fr}.brand{margin-bottom:8px}.brand img{width:38px;height:38px}.brand-word{display:block}.desktop-nav{margin:0;width:100%;overflow-x:auto;gap:20px;height:34px;padding-bottom:2px;scrollbar-width:none}.desktop-nav::-webkit-scrollbar{display:none}.desktop-nav a{font-size:9px;flex:0 0 auto}.info-hero{padding:42px 0 35px}.info-hero .hero-inner{display:grid;grid-template-columns:1fr 70px;gap:20px}.info-hero h1{font-size:36px}.info-hero .hero-copy p{max-width:100%;font-size:11px}.info-hero .hero-logo{position:static;width:66px;opacity:.62}.page-head{padding-top:75px}}


/* v5 - split update files / clearer NEWS category badges */
.news-cat{background:#fff;color:#111;font-weight:900}
.news-cat.cat-blog{border-color:#111}
.news-cat.cat-youtube{border-color:#111}
.news-cat.cat-setlist{border-color:#111}
.news-cat.cat-live-info{border-color:#111}
.news-cat.cat-news{border-color:var(--red);color:var(--red)}
.news-row.no-link{cursor:default}.news-row.no-link i{opacity:0}
.new-space{display:block}
.video-placeholder{display:grid;place-items:center;color:#666}
@media(max-width:800px){.new-space{display:none}}
\n\n/* v6 - BLOG index + single article detail */\n.blog-index{border-top:1px solid #111}\n.blog-index-row{display:grid;grid-template-columns:130px 120px 1fr 30px;gap:22px;align-items:center;min-height:92px;border-bottom:1px solid #ddd;position:relative;transition:.3s var(--ease)}\n.blog-index-row:after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--red);transition:.4s var(--ease)}\n.blog-index-row:hover{padding-left:14px}.blog-index-row:hover:after{width:100%}\n.blog-index-row time{font-size:11px;color:#777;letter-spacing:.08em}.blog-index-row strong{font-size:17px;line-height:1.55}.blog-index-row i{font-style:normal;font-size:20px}\n.blog-card-link{display:block}.blog-card-link p{display:none}.blog-open{display:inline-block;margin-top:18px;font-size:9px;font-weight:800;letter-spacing:.15em;border-bottom:1px solid #111;padding-bottom:7px}\n.blog-article{max-width:900px;margin:0 auto}.blog-detail{padding:15px 0 40px}.blog-back{display:inline-block;font-size:10px;font-weight:800;letter-spacing:.14em;margin-bottom:55px;border-bottom:1px solid #111;padding-bottom:8px}\n.blog-detail-meta{display:flex;align-items:center;gap:16px;margin-bottom:24px}.blog-detail-meta time{font-size:11px;color:#888;letter-spacing:.1em}\n.blog-detail h2{font-size:clamp(32px,4.8vw,62px);line-height:1.25;letter-spacing:-.035em;margin:0 0 34px;border-bottom:1px solid #ddd;padding-bottom:34px}\n.blog-lead{font-size:16px!important;color:#555!important;line-height:2!important;font-weight:600;margin:0 0 32px!important}\n.blog-body{font-size:15px;line-height:2.15;color:#333;white-space:pre-wrap;overflow-wrap:anywhere;padding-bottom:40px}\n@media(max-width:800px){.blog-index-row{grid-template-columns:82px 82px 1fr 18px;gap:9px;min-height:88px;padding:12px 0}.blog-index-row:hover{padding-left:0}.blog-index-row time{font-size:9px}.blog-index-row strong{font-size:13px}.blog-detail{padding-top:0}.blog-back{margin-bottom:35px}.blog-detail h2{font-size:30px}.blog-lead{font-size:14px!important}.blog-body{font-size:14px;line-height:2}}\n
/* ==========================================================
   B'zer TV unified archive UI
   BLOG / YouTube / SETLIST / LIVE INFO share this layout.
   ========================================================== */

.archive-index {
  border-top: 1px solid #111;
}

.archive-row {
  display: grid;
  grid-template-columns: 130px 120px minmax(0, 1fr) 110px 28px;
  gap: 22px;
  align-items: center;
  min-height: 92px;
  border-bottom: 1px solid #ddd;
  position: relative;
  transition: .3s var(--ease);
}

.archive-row::after {
  content: "";
  position: absolute;
  left: 0;
  bottom: -1px;
  width: 0;
  height: 1px;
  background: var(--red);
  transition: .4s var(--ease);
}

.archive-row:hover {
  padding-left: 14px;
}

.archive-row:hover::after {
  width: 100%;
}

.archive-row time {
  font-size: 11px;
  color: #777;
  letter-spacing: .08em;
}

.archive-row strong {
  font-size: 17px;
  line-height: 1.55;
  overflow-wrap: anywhere;
}

.archive-row .tag {
  text-align: center;
  min-width: 0;
}

.archive-status {
  color: #888;
  font-size: 10px;
  text-align: right;
  letter-spacing: .08em;
}

.archive-row i {
  font-style: normal;
  font-size: 20px;
  text-align: right;
}

.compact-index .archive-row {
  min-height: 82px;
}

.dark-index {
  border-color: #333;
}

.dark-index .archive-row {
  border-color: #2a2a2a;
}

.dark-index .archive-row time,
.dark-index .archive-status {
  color: #888;
}

.dark-index .archive-row .tag {
  background: #fff;
  color: #111;
}

.dark-index .archive-row::after {
  background: #f33;
}

/* Detail pages */
.detail-area {
  max-width: 950px;
  margin: 0 auto;
}

.content-detail {
  padding: 15px 0 45px;
}

.detail-back {
  display: inline-block;
  font-size: 10px;
  font-weight: 800;
  letter-spacing: .14em;
  margin-bottom: 55px;
  border-bottom: 1px solid #111;
  padding-bottom: 8px;
}

.detail-meta {
  display: flex;
  align-items: center;
  gap: 16px;
  margin-bottom: 24px;
}

.detail-meta time {
  font-size: 11px;
  color: #888;
  letter-spacing: .1em;
}

.content-detail h2 {
  font-size: clamp(30px, 4.5vw, 58px);
  line-height: 1.25;
  letter-spacing: -.035em;
  margin: 0 0 34px;
  border-bottom: 1px solid #ddd;
  padding-bottom: 34px;
  overflow-wrap: anywhere;
}

.detail-lead {
  font-size: 16px;
  color: #555;
  line-height: 2;
  font-weight: 600;
  margin: 0 0 32px;
}

.detail-body {
  font-size: 15px;
  line-height: 2.15;
  color: #333;
  white-space: pre-wrap;
  overflow-wrap: anywhere;
  padding-bottom: 35px;
}

.detail-info-grid {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
  margin: 0 0 42px;
}

.detail-info-grid > div {
  padding: 22px 18px;
  border-right: 1px solid #ddd;
}

.detail-info-grid > div:last-child {
  border-right: 0;
}

.detail-info-grid small {
  display: block;
  color: #999;
  font-size: 9px;
  font-weight: 800;
  letter-spacing: .16em;
  margin-bottom: 9px;
}

.detail-info-grid strong {
  font-size: 14px;
  line-height: 1.6;
}

.detail-subhead {
  font-size: 12px;
  letter-spacing: .18em;
  margin: 0 0 18px;
}

.detail-setlist {
  margin: 0 0 36px;
  padding: 0;
  list-style-position: inside;
  border-top: 1px solid #ddd;
}

.detail-setlist li {
  padding: 15px 4px;
  border-bottom: 1px solid #e5e5e5;
  line-height: 1.6;
  font-size: 14px;
}

.detail-note {
  background: #f6f6f6;
  border-left: 3px solid var(--red);
  padding: 18px 22px;
  white-space: pre-wrap;
  line-height: 1.9;
  color: #555;
  font-size: 13px;
}

.youtube-player {
  width: 100%;
  aspect-ratio: 16 / 9;
  background: #000;
  margin-bottom: 35px;
}

.youtube-player iframe {
  width: 100%;
  height: 100%;
  border: 0;
}

.youtube-error {
  padding: 40px;
  background: #111;
  color: #aaa;
  text-align: center;
  margin-bottom: 30px;
}

.external-detail-btn {
  display: flex;
  justify-content: space-between;
  align-items: center;
  border-top: 1px solid #111;
  border-bottom: 1px solid #111;
  padding: 20px 5px;
  font-size: 11px;
  font-weight: 900;
  letter-spacing: .15em;
  transition: .3s var(--ease);
}

.external-detail-btn:hover {
  padding-left: 15px;
  padding-right: 15px;
  color: var(--red);
}

/* NEWS MORE VIEW */
.more-view-wrap {
  display: flex;
  justify-content: center;
  padding: 45px 0 10px;
}

.more-view-btn {
  appearance: none;
  border: 1px solid #111;
  background: #fff;
  color: #111;
  width: 230px;
  height: 58px;
  display: flex;
  align-items: center;
  justify-content: space-between;
  padding: 0 22px;
  font-family: inherit;
  font-size: 10px;
  font-weight: 900;
  letter-spacing: .18em;
  cursor: pointer;
  transition: background .3s, color .3s, transform .3s;
}

.more-view-btn i {
  font-size: 18px;
  font-style: normal;
  font-weight: 400;
}

.more-view-btn:hover {
  background: #111;
  color: #fff;
  transform: translateY(-2px);
}

.news-more-list {
  overflow: hidden;
}

.news-more-list.open {
  animation: newsMoreOpen .65s cubic-bezier(.22, 1, .36, 1) both;
}

@keyframes newsMoreOpen {
  from { opacity: 0; transform: translateY(25px); }
  to { opacity: 1; transform: translateY(0); }
}

.empty {
  padding: 38px 0;
  color: #888;
  border-top: 1px solid #ddd;
  border-bottom: 1px solid #ddd;
}

[hidden] { display: none !important; }

@media (max-width: 800px) {
  .archive-row {
    grid-template-columns: 82px 78px minmax(0, 1fr) 18px;
    gap: 9px;
    min-height: 88px;
    padding: 12px 0;
  }

  .archive-row:hover { padding-left: 0; }
  .archive-row time { font-size: 9px; }
  .archive-row strong { font-size: 13px; }
  .archive-row .tag { font-size: 8px; padding: 6px 3px; }
  .archive-status { display: none; }
  .archive-row i { font-size: 16px; }

  .content-detail { padding-top: 0; }
  .detail-back { margin-bottom: 35px; }
  .content-detail h2 { font-size: 30px; }
  .detail-lead { font-size: 14px; }
  .detail-body { font-size: 14px; line-height: 2; }

  .detail-info-grid {
    grid-template-columns: 1fr;
  }

  .detail-info-grid > div {
    border-right: 0;
    border-bottom: 1px solid #ddd;
  }

  .detail-info-grid > div:last-child { border-bottom: 0; }

  .more-view-wrap { padding-top: 30px; }
  .more-view-btn { width: 190px; height: 52px; font-size: 9px; }
}

/* ==========================================================
   YouTube detail - thumbnail first layout
   ========================================================== */
.youtube-detail .detail-meta {
  margin-bottom: 22px;
}

.youtube-detail .detail-body {
  padding-top: 6px;
}

.youtube-thumb-link {
  display: block;
  margin: 0 0 34px;
}

.youtube-thumb-wrap {
  position: relative;
  width: 100%;
  aspect-ratio: 16 / 9;
  overflow: hidden;
  background: #000;
  border: 1px solid #ddd;
}

.youtube-thumb {
  display: block;
  width: 100%;
  height: 100%;
  object-fit: cover;
  transform: scale(1.001);
  transition: transform .5s var(--ease), filter .35s var(--ease);
}

.youtube-thumb-overlay {
  position: absolute;
  inset: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 14px;
  color: #fff;
  background: rgba(0, 0, 0, .16);
  transition: background .35s var(--ease);
}

.youtube-play-icon {
  display: grid;
  place-items: center;
  width: 78px;
  height: 56px;
  padding-left: 4px;
  border-radius: 15px;
  background: #ff0033;
  color: #fff;
  font-size: 28px;
  line-height: 1;
  box-shadow: 0 8px 28px rgba(0, 0, 0, .25);
}

.youtube-play-label {
  padding: 8px 12px;
  background: rgba(0, 0, 0, .62);
  font-size: 9px;
  font-weight: 900;
  letter-spacing: .16em;
}

.youtube-thumb-link:hover .youtube-thumb {
  transform: scale(1.025);
  filter: brightness(.9);
}

.youtube-thumb-link:hover .youtube-thumb-overlay {
  background: rgba(0, 0, 0, .24);
}

@media (max-width: 800px) {
  .youtube-thumb-link { margin-bottom: 26px; }
  .youtube-play-icon {
    width: 66px;
    height: 48px;
    border-radius: 13px;
    font-size: 23px;
  }
  .youtube-play-label { font-size: 8px; }
}

/* =========================================================
   SETLIST ARCHIVE - ARTIST > TOUR > SHOW > SETLIST
   ========================================================= */
.setlist-guide{margin:0 0 18px;padding:14px 18px;border-left:3px solid var(--red);background:#f6f6f6;font-size:11px;color:#666;letter-spacing:.08em}
.setlist-breadcrumb{display:flex;align-items:center;flex-wrap:wrap;gap:10px;margin:0 0 34px;font-size:10px;font-weight:800;letter-spacing:.08em;color:#888}
.setlist-breadcrumb a{color:#111;border-bottom:1px solid #bbb;padding-bottom:3px}.setlist-breadcrumb a:hover{color:var(--red)}.setlist-breadcrumb span{color:#bbb}.setlist-breadcrumb b{color:#111}
.setlist-artist-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:1px;background:#ddd;border:1px solid #ddd}
.setlist-artist-card{position:relative;min-height:220px;background:#fff;padding:34px;display:flex;flex-direction:column;justify-content:flex-end;transition:.35s var(--ease);overflow:hidden}
.setlist-artist-card:before{content:"";position:absolute;width:180px;height:180px;border:1px solid #eee;border-radius:50%;right:-55px;top:-65px;transition:.4s var(--ease)}
.setlist-artist-card:hover{background:#090909;color:#fff}.setlist-artist-card:hover:before{border-color:#410000;transform:scale(1.15)}
.setlist-artist-card .setlist-card-kicker{position:absolute;left:34px;top:30px;font-size:9px;font-weight:900;letter-spacing:.2em;color:var(--red)}
.setlist-artist-card strong{font-size:clamp(25px,3vw,42px);letter-spacing:-.035em;line-height:1.1;position:relative;z-index:1}
.setlist-artist-card small{margin-top:16px;font-size:9px;letter-spacing:.13em;color:#888;position:relative;z-index:1}.setlist-artist-card i{position:absolute;right:28px;bottom:28px;font-style:normal;font-size:22px}
.setlist-nav-list{border-top:1px solid #111}.setlist-step-head{padding:0 0 35px;border-bottom:1px solid #111}.setlist-step-head>span{font-size:9px;font-weight:900;letter-spacing:.18em;color:var(--red)}.setlist-step-head h2{font-size:clamp(30px,4.2vw,56px);letter-spacing:-.04em;margin:10px 0 12px;line-height:1.15}.setlist-step-head p{margin:0;color:#777;font-size:12px;line-height:1.8}
.setlist-tour-row,.setlist-show-row{display:grid;align-items:center;gap:24px;min-height:96px;border-bottom:1px solid #ddd;position:relative;transition:.3s var(--ease)}
.setlist-tour-row{grid-template-columns:90px 1fr 28px}.setlist-show-row{grid-template-columns:150px 1fr 28px}
.setlist-tour-row:after,.setlist-show-row:after{content:"";position:absolute;left:0;bottom:-1px;width:0;height:1px;background:var(--red);transition:.4s var(--ease)}
.setlist-tour-row:hover,.setlist-show-row:hover{padding-left:14px}.setlist-tour-row:hover:after,.setlist-show-row:hover:after{width:100%}
.setlist-tour-year{font-size:18px;font-weight:800;color:#888}.setlist-tour-row div,.setlist-show-row div{display:flex;align-items:center;gap:18px;min-width:0}.setlist-tour-row div{flex-wrap:wrap}.setlist-tour-row small{font-size:8px;letter-spacing:.14em;border:1px solid #111;padding:5px 7px}.setlist-tour-row strong,.setlist-show-row strong{font-size:17px;line-height:1.5}.setlist-tour-row em{font-size:9px;font-style:normal;color:#888;letter-spacing:.1em}.setlist-tour-row i,.setlist-show-row i{font-style:normal;font-size:20px}.setlist-show-row time{font-size:11px;color:#777;letter-spacing:.08em}.setlist-show-row small{font-size:10px;color:#999}
.setlist-detail-area{max-width:960px}.setlist-show-title{display:flex;gap:16px;align-items:baseline;flex-wrap:wrap;margin:-12px 0 42px}.setlist-show-title strong{font-size:20px}.setlist-show-title span{font-size:11px;color:#888;letter-spacing:.1em}
.setlist-performance{border-top:1px solid #111;margin-top:16px}.setlist-song{display:grid;grid-template-columns:64px minmax(0,1fr) auto;gap:14px;align-items:center;min-height:62px;border-bottom:1px solid #e5e5e5;position:relative;padding:9px 4px}.setlist-song.is-variation:before{content:"";position:absolute;left:0;top:0;bottom:0;width:3px;background:var(--setlist-accent)}.setlist-song-no{font-size:14px;font-weight:900;color:#777;text-align:right;padding-right:7px}.setlist-song-title{font-size:17px;font-weight:750;line-height:1.5}.setlist-song.is-variation .setlist-song-title{color:var(--setlist-accent)}.setlist-variation-label{font-size:8px;font-weight:900;letter-spacing:.08em;color:var(--setlist-accent);border:1px solid var(--setlist-accent);padding:5px 7px;white-space:nowrap}.setlist-song small{grid-column:2 / -1;color:#888;font-size:10px;padding-bottom:4px}
.setlist-break{padding:26px 10px;text-align:center;border-bottom:1px solid #e5e5e5;color:#777;font-size:11px;font-weight:800;letter-spacing:.15em}.setlist-mc{background:#f7f7f7}.setlist-se{background:#f4f8fb;color:#46677f}.setlist-section-title{margin-top:32px;padding:15px 10px;border-top:2px solid #111;border-bottom:1px solid #111;text-align:center;font-size:12px;font-weight:900;letter-spacing:.2em;background:#fafafa}
@media(max-width:800px){.setlist-artist-grid{grid-template-columns:1fr}.setlist-artist-card{min-height:170px;padding:26px}.setlist-artist-card .setlist-card-kicker{left:26px;top:23px}.setlist-tour-row{grid-template-columns:65px 1fr 18px;gap:12px;min-height:86px}.setlist-show-row{grid-template-columns:100px 1fr 18px;gap:12px;min-height:82px}.setlist-tour-row:hover,.setlist-show-row:hover{padding-left:0}.setlist-tour-year{font-size:14px}.setlist-tour-row strong,.setlist-show-row strong{font-size:13px}.setlist-tour-row div,.setlist-show-row div{gap:8px}.setlist-song{grid-template-columns:44px minmax(0,1fr);gap:10px;padding:10px 0}.setlist-song-title{font-size:14px}.setlist-variation-label{grid-column:2;justify-self:start}.setlist-song small{grid-column:2}.setlist-song-no{font-size:12px}.setlist-show-title{margin-bottom:28px}}


/* ==========================================================
   V4 creator-friendly additions: BLOG dropdown + SNS
   Existing font / color / spacing foundation is unchanged.
   ========================================================== */
.nav-dropdown{height:100%;position:relative;display:flex;align-items:center}
.nav-dropdown-main{gap:6px}.nav-arrow{font-size:10px;opacity:.7;transform:translateY(-1px)}
.nav-submenu{position:absolute;left:50%;top:calc(100% - 1px);transform:translate(-50%,-8px);min-width:150px;padding:8px;background:rgba(5,5,5,.98);border:1px solid rgba(255,255,255,.12);box-shadow:0 16px 35px rgba(0,0,0,.28);opacity:0;visibility:hidden;pointer-events:none;transition:.25s var(--ease)}
.nav-submenu a{height:auto!important;min-height:40px;padding:0 14px!important;font-size:10px!important;justify-content:flex-start;border-bottom:1px solid rgba(255,255,255,.08)}
.nav-submenu a:last-child{border-bottom:0}.nav-submenu a:after{display:none!important}.nav-submenu a:hover{background:#171717}
.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{opacity:1;visibility:visible;pointer-events:auto;transform:translate(-50%,0)}
.sns-lead{margin:0 0 30px;color:#777;font-size:10px;font-weight:800;letter-spacing:.2em}
.sns-grid{display:grid;grid-template-columns:repeat(5,1fr);gap:1px;background:#ddd;border:1px solid #ddd}
.sns-card{background:#fff;min-height:210px;padding:30px 22px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;gap:18px;transition:.3s var(--ease)}
.sns-card:hover{transform:translateY(-5px);box-shadow:0 16px 35px rgba(0,0,0,.12);z-index:2}.sns-card.is-disabled{opacity:.42;cursor:not-allowed}.sns-card.is-disabled:hover{transform:none;box-shadow:none}
.sns-icon{width:66px;height:66px;border:2px solid #111;border-radius:50%;display:grid;place-items:center;font-size:30px;font-weight:900;line-height:1}.sns-icon i{font-style:normal}.sns-icon-youtube{border-radius:18px}.sns-card strong{font-size:13px;letter-spacing:.08em}.sns-card>span:last-child{font-size:8px;color:#999;letter-spacing:.16em;font-weight:800}
@media(max-width:900px){.sns-grid{grid-template-columns:repeat(3,1fr)}}
@media(max-width:700px){.nav-dropdown{flex:0 0 auto;height:34px}.nav-submenu{position:fixed;top:82px;left:50%;width:min(280px,88vw);transform:translate(-50%,-8px);z-index:1300}.nav-dropdown:hover .nav-submenu,.nav-dropdown:focus-within .nav-submenu{transform:translate(-50%,0)}.sns-grid{grid-template-columns:1fr 1fr}.sns-card{min-height:160px}.sns-icon{width:54px;height:54px;font-size:24px}}

/* SETLIST multiple acts */
.setlist-act{margin:26px 0 32px;padding-top:14px;border-top:1px solid rgba(128,128,128,.35)}
.setlist-act-role{font-size:.75rem;letter-spacing:.14em;font-weight:800;opacity:.7}
.setlist-act-artist{font-size:1.3rem;margin:7px 0 15px}

/* LIVE INFO tour portal */
.live-index>section{margin:28px 0 45px}.live-index h2{font-size:1.3rem;margin-bottom:18px}
.live-tour-link{display:flex;justify-content:space-between;gap:15px;align-items:center;padding:22px;border:1px solid #ddd;color:inherit;text-decoration:none;margin:9px 0;border-radius:5px}
.live-tour-link:hover{border-color:#777;background:#fafafa}.live-tour-link span,.live-muted{color:#777;font-size:.9rem}
.live-archive{border-top:1px solid #ddd;padding-top:28px}.live-archive-toggle{width:100%;background:none;border:0;border-bottom:1px solid #ddd;padding:18px 0;text-align:left;font-size:1.2rem;font-weight:800;cursor:pointer;display:flex;justify-content:space-between}
.live-archive-body{padding-top:16px}.live-tour-detail h2{margin:16px 0 28px}.live-tabs{display:flex;gap:8px;flex-wrap:wrap;margin:20px 0 32px}
.live-tab{border:1px solid #ddd;background:white;padding:12px 16px;font:inherit;font-weight:700;cursor:pointer;border-radius:4px}.live-tab.active{background:#151515;color:white;border-color:#151515}
.live-panel h3{border-bottom:2px solid #222;padding-bottom:14px;margin-bottom:22px}.live-panel h4{margin:22px 0 12px}.live-info-card{border-bottom:1px solid #e4e4e4;padding:16px 0 24px;overflow:auto}
.live-fact{display:flex;gap:18px;margin:10px 0}.live-fact span{color:#777;min-width:110px}.live-fact strong{font-weight:600}.live-info-card iframe{display:block;width:100%;height:300px;border:0;margin:16px 0}
.live-member-photo{float:left;width:105px;height:105px;object-fit:cover;margin:0 22px 16px 0;border-radius:5px}
@media(max-width:600px){.live-tour-link{padding:16px}.live-fact{display:block}.live-fact span{display:block}.live-info-card iframe{height:240px}}

/* Goods sales: active cards and collapsible archive */
.goods-sale-list{margin:22px 0 42px}.goods-grid{display:grid;grid-template-columns:repeat(auto-fit,minmax(min(100%,340px),1fr));gap:18px}.goods-card{border:1px solid #e4e4e4;border-radius:14px;padding:25px;background:#fff;box-shadow:0 9px 25px rgba(0,0,0,.045);min-width:0}.goods-card-kicker{font-size:11px;letter-spacing:.17em;color:#c82017;font-weight:800}.goods-card h4{font-size:20px;margin:12px 0 18px;line-height:1.45}.goods-facts{display:grid;gap:10px;margin-bottom:18px}.goods-fact{display:grid;grid-template-columns:105px minmax(0,1fr);gap:12px;font-size:14px;line-height:1.6}.goods-fact span{color:#777}.goods-fact strong{font-weight:650;overflow-wrap:anywhere}.goods-archive{margin-top:30px;border:1px solid #ddd;border-radius:12px;overflow:hidden}.goods-archive summary{cursor:pointer;padding:21px 24px;background:#f5f5f5;font-weight:800}.goods-archive>.goods-grid{padding:18px}@media(max-width:600px){.goods-card{padding:18px}.goods-fact{grid-template-columns:1fr;gap:0}}
