/* p06: 共通CSS（page-common.0c570cbd.css）への追加分のみ。共通CSSの後に読み込むこと。 */
/* ==== v2 RAC visual enhancement ==== */
.dl-hero-vis{position:relative;overflow:hidden;border-radius:14px}
.dl-hero-photo{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;object-position:center;background:#fff;padding:6px;z-index:2;border-radius:14px}
.dl-hero-vis .scan{z-index:3}.dl-hero-vis .dl-layer{z-index:4}
.rac-hl{display:flex;flex-wrap:wrap;gap:8px;margin:2px 0 14px}
.rac-hl .hl{display:flex;flex-direction:column;gap:2px;background:var(--blue-soft,#e8f1fe);border:1px solid var(--line,#e2e8f0);border-left:3px solid var(--lc,#1f6feb);border-radius:8px;padding:7px 11px;min-width:120px}
.rac-hl .hl b{font-size:10.5px;letter-spacing:.06em;text-transform:uppercase;color:var(--ink-dim,#52647a);font-weight:700}
.rac-hl .hl span{font-size:13px;color:var(--ink,#15212e);font-weight:700;line-height:1.3}
.rac-gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:6px}
@media(max-width:640px){.rac-gal{grid-template-columns:1fr}}
.rac-shot{background:var(--bg-card,#fff);border:1px solid var(--line,#e2e8f0);border-radius:12px;overflow:hidden;display:flex;flex-direction:column}
.rac-shot figure{margin:0;background:#0b1620;position:relative}
.rac-shot img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top}
.rac-shot .cap{padding:11px 13px 13px}
.rac-shot .cap .k{display:inline-block;font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-dim,#155bc4);background:var(--blue-soft,#e8f1fe);border-radius:5px;padding:2px 7px;margin-bottom:6px}
.rac-shot .cap h4{margin:0 0 4px;font-size:14.5px;color:var(--ink,#15212e);font-weight:700}
.rac-shot .cap p{margin:0;font-size:12.5px;line-height:1.55;color:var(--ink-dim,#52647a)}
.rac-note{margin-top:14px;font-size:11.5px;color:var(--ink-faint,#8497aa)}
.rac-lead{font-size:14px;line-height:1.7;color:var(--ink-dim,#52647a);margin:2px 0 16px}
.rac-band{display:flex;gap:14px;align-items:center;background:var(--bg-soft,#f3f7fb);border:1px solid var(--line,#e2e8f0);border-radius:12px;padding:14px;margin-top:16px}
.rac-band img{width:150px;height:110px;object-fit:cover;border-radius:9px;flex:0 0 auto}
.rac-band .t h4{margin:0 0 4px;font-size:14px;color:var(--ink)}
.rac-band .t p{margin:0;font-size:12.5px;line-height:1.55;color:var(--ink-dim)}
/* ==== v3 RAC animated gallery ==== */
.rac-gal{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:16px;margin-top:6px}
@media(max-width:640px){.rac-gal{grid-template-columns:1fr}}
.rac-shot{background:var(--bg-card,#fff);border:1px solid var(--line,#e2e8f0);border-radius:12px;overflow:hidden;display:flex;flex-direction:column;transition:box-shadow .25s,transform .25s}
.rac-shot:hover{box-shadow:0 10px 28px rgba(20,40,80,.14);transform:translateY(-2px)}
.rac-shot figure{margin:0;background:#0b1620;position:relative;overflow:hidden}
.rac-shot figure::after{content:"";position:absolute;inset:0;pointer-events:none;background:linear-gradient(115deg,transparent 44%,rgba(120,200,255,.22) 50%,transparent 56%);transform:translateX(-120%);animation:racscan 4.2s cubic-bezier(.4,0,.2,1) infinite}
.rac-shot:nth-child(2n) figure::after{animation-delay:1.1s}
.rac-shot:nth-child(3n) figure::after{animation-delay:2.2s}
@keyframes racscan{0%{transform:translateX(-120%)}55%{transform:translateX(120%)}100%{transform:translateX(120%)}}
.rac-shot img{display:block;width:100%;height:auto;aspect-ratio:16/10;object-fit:cover;object-position:top;transition:transform .5s ease}
.rac-shot:hover img{transform:scale(1.045)}
.rac-shot .live{position:absolute;top:8px;left:8px;z-index:3;display:inline-flex;align-items:center;gap:5px;font-family:ui-monospace,monospace;font-size:9.5px;font-weight:700;letter-spacing:.08em;color:#eaffff;background:rgba(11,22,32,.72);border:1px solid rgba(120,200,255,.35);border-radius:999px;padding:3px 8px}
.rac-shot .live i{width:6px;height:6px;border-radius:50%;background:#33e0a0;box-shadow:0 0 0 0 rgba(51,224,160,.7);animation:racpulse 1.6s infinite}
@keyframes racpulse{0%{box-shadow:0 0 0 0 rgba(51,224,160,.6)}70%{box-shadow:0 0 0 7px rgba(51,224,160,0)}100%{box-shadow:0 0 0 0 rgba(51,224,160,0)}}
.rac-shot .cap{padding:11px 13px 13px}
.rac-shot .cap .k{display:inline-block;font-family:ui-monospace,monospace;font-size:10px;letter-spacing:.06em;text-transform:uppercase;color:var(--blue-dim,#155bc4);background:var(--blue-soft,#e8f1fe);border-radius:5px;padding:2px 7px;margin-bottom:6px}
.rac-shot .cap h4{margin:0 0 4px;font-size:14.5px;color:var(--ink,#15212e);font-weight:700}
.rac-shot .cap p{margin:0;font-size:12.5px;line-height:1.55;color:var(--ink-dim,#52647a)}
@media(prefers-reduced-motion:reduce){.rac-shot figure::after{animation:none}.rac-shot:hover img{transform:none}}

/* ============================================================
   v139: スキップリンク（キーボード操作時のみ表示）
   ============================================================ */
.skip-link{position:absolute;left:-9999px;top:0;z-index:100;
  background:var(--blue,#1f6feb);color:#fff;padding:10px 18px;border-radius:0 0 8px 0;
  font-size:14px;font-weight:600;text-decoration:none}
.skip-link:focus{left:0}
main:focus{outline:none}
main:focus-visible{outline:2px solid var(--blue,#1f6feb);outline-offset:2px}
