/* ===== 研修動画 共通プレーヤー スタイル ===== */
:root{
  --teal:#0E7C86; --teal-d:#0B5D66; --mint:#31C2B0; --navy:#0F2547;
  --ink:#1E293B; --mute:#64748B; --paleteal:#E9F3F4; --green:#1E8E5A;
}
*{box-sizing:border-box;}
body{margin:0;background:#0c1420;color:#e2e8f0;
  font-family:"Yu Gothic UI","Hiragino Sans","Noto Sans JP",system-ui,sans-serif;}
.wrap{max-width:1080px;margin:0 auto;padding:22px 16px 60px;}
a{color:#7dd3c4;}

.topbar{display:flex;align-items:center;gap:12px;margin-bottom:14px;}
.topbar .tag{background:var(--teal);color:#fff;font-size:12px;font-weight:700;
  padding:3px 10px;border-radius:999px;letter-spacing:.04em;}
.topbar h1{font-size:18px;margin:0;font-weight:700;color:#f1f5f9;}
.topbar .meta{margin-left:auto;font-size:12px;color:#94a3b8;}
.topbar .back{font-size:13px;text-decoration:none;}

.player{background:#000;border-radius:14px;overflow:hidden;box-shadow:0 18px 50px rgba(0,0,0,.5);}
.screen{position:relative;width:100%;aspect-ratio:16/9;background:#000;overflow:hidden;}
.stage{position:absolute;top:0;left:0;width:1280px;height:720px;transform-origin:top left;}
.slide{position:absolute;inset:0;opacity:0;transition:opacity .45s ease;pointer-events:none;}
.slide.show{opacity:1;}

/* captions */
.cap{position:absolute;left:0;right:0;bottom:0;padding:0 0 14px;display:flex;justify-content:center;
  pointer-events:none;transition:opacity .2s;}
.cap span{max-width:90%;background:rgba(0,0,0,.74);color:#fff;font-size:19px;line-height:1.55;
  padding:10px 18px;border-radius:10px;font-weight:600;text-align:center;}
.cap.off{opacity:0;}

/* controls */
.ctrls{background:#111a28;padding:10px 14px 14px;}
.bar{position:relative;height:8px;background:#2a3950;border-radius:6px;cursor:pointer;}
.bar .play{position:absolute;height:100%;background:linear-gradient(90deg,var(--teal),var(--mint));
  border-radius:6px;width:0;}
.bar .knob{position:absolute;top:50%;width:14px;height:14px;border-radius:50%;background:#fff;
  transform:translate(-50%,-50%);left:0;box-shadow:0 1px 4px rgba(0,0,0,.5);}
.ticks{position:absolute;inset:0;}
.ticks i{position:absolute;top:0;width:2px;height:100%;background:rgba(255,255,255,.28);}
.row{display:flex;align-items:center;gap:14px;margin-top:12px;}
.btn{background:none;border:none;color:#cbd5e1;cursor:pointer;display:flex;align-items:center;
  padding:6px;border-radius:8px;}
.btn:hover{background:#1c2738;color:#fff;}
.btn svg{width:22px;height:22px;}
.btn.main svg{width:28px;height:28px;}
.time{font-size:13px;color:#94a3b8;font-variant-numeric:tabular-nums;}
.spacer{margin-left:auto;}
.vol{display:flex;align-items:center;gap:6px;}
.vol input{width:80px;}
.pill{font-size:12px;color:#cbd5e1;background:#1c2738;padding:3px 9px;border-radius:999px;}

.note{margin-top:18px;font-size:13px;color:#94a3b8;line-height:1.7;
  background:#111a28;border:1px solid #1e293b;border-radius:10px;padding:14px 16px;}
.note b{color:#cbd5e1;}
kbd{background:#1c2738;border-radius:4px;padding:1px 6px;font-size:12px;}

/* 挿入動画（転記ツール操作mp4）— 実映像を画面いっぱいに表示 */
.insvid{position:absolute;inset:0;width:100%;height:100%;object-fit:contain;background:#000;display:none;z-index:6;}
.insvid.vshow{display:block;}

/* 挿入素材プレースホルダ枠（デモ音声・実録音・転記ツールmp4の差し込み位置） */
.ins{position:absolute;inset:0;background:radial-gradient(ellipse at center,#16304f,#0b1a2e);
  display:none;flex-direction:column;align-items:center;justify-content:center;gap:18px;}
.ins.show{display:flex;}
.ins .pct{width:96px;height:96px;border-radius:50%;background:rgba(49,194,176,.16);
  border:2px solid var(--mint);display:flex;align-items:center;justify-content:center;}
.ins .pct svg{width:46px;height:46px;fill:var(--mint);margin-left:5px;}
.ins .lab{color:#fff;font-size:30px;font-weight:800;}
.ins .sub{color:var(--paleteal);font-size:19px;}
.ins .meta{margin-top:6px;color:#7da7b0;font-size:15px;border:1px dashed #3a5b66;padding:6px 14px;border-radius:8px;}

/* ===== 共通スライド部品 ===== */
.s-chap{position:absolute;left:67px;top:40px;color:var(--teal);font-size:18px;font-weight:800;letter-spacing:.12em;}
.s-title{position:absolute;left:67px;top:72px;color:var(--navy);font-size:46px;font-weight:900;}
.s-foot{position:absolute;left:67px;color:var(--mute);font-size:18px;}

/* ===== 商材スライド（06〜09 共通） ===== */
.prod{background:#fff;}
.prod .tag2{position:absolute;left:67px;top:126px;background:var(--teal);color:#fff;
  font-size:17px;font-weight:800;padding:6px 16px;border-radius:999px;transition:box-shadow .3s;}
.prod .tag2.hot{box-shadow:0 0 0 4px rgba(49,194,176,.35);}
.prod table.rt{position:absolute;left:67px;top:178px;width:640px;border-collapse:collapse;transition:outline .2s;outline:3px solid transparent;border-radius:10px;}
.prod table.rt.hot{outline-color:var(--mint);}
.prod .rt td{border:1px solid #dde7e9;padding:6px 12px;font-size:15px;}
.prod .rt td.k{background:#f1f6f7;color:var(--navy);font-weight:800;width:170px;}
.prod .rt td.v{color:var(--ink);}
.prod .rt td.v b{color:var(--teal-d);}
.prod .pts{position:absolute;left:735px;top:178px;width:478px;background:var(--navy);
  border-radius:14px;padding:18px 20px;transition:box-shadow .3s;}
.prod .pts.hot{box-shadow:0 0 0 4px rgba(49,194,176,.4);}
.prod .pts .h{color:var(--mint);font-size:18px;font-weight:800;margin-bottom:12px;}
.prod .pts ol{margin:0;padding-left:22px;}
.prod .pts li{color:#fff;font-size:17px;line-height:1.7;font-weight:600;}
.prod .entry{position:absolute;left:735px;top:402px;width:478px;background:var(--paleteal);
  border-radius:14px;padding:14px 20px;transition:box-shadow .3s;}
.prod .entry.hot{box-shadow:0 0 0 4px rgba(49,194,176,.4);}
.prod .entry .h{color:var(--teal-d);font-size:16px;font-weight:800;}
.prod .entry .d{color:var(--ink);font-size:14px;margin-top:4px;}
.prod .fn{position:absolute;left:67px;top:540px;color:#94a3b8;font-size:13px;}
/* 決済登録の説明パネル（06・07で追加） */
.prod .pay{position:absolute;left:0;top:112px;width:1280px;height:496px;background:#fff;display:none;z-index:4;padding:4px 67px 0;}
.prod .pay.show{display:block;}
.prod .pay .ph{color:var(--teal-d);font-size:23px;font-weight:900;margin:6px 0 4px;}
.prod .pay .sub{color:var(--mute);font-size:14px;margin-bottom:12px;}
.prod .pay .step{display:flex;gap:13px;align-items:flex-start;background:var(--paleteal);border-radius:11px;padding:11px 16px;margin-bottom:9px;}
.prod .pay .step .n{flex:0 0 auto;width:28px;height:28px;border-radius:50%;background:var(--teal);color:#fff;font-weight:800;display:flex;align-items:center;justify-content:center;font-size:14px;}
.prod .pay .step .tx{color:var(--ink);font-size:16px;line-height:1.45;padding-top:2px;}
.prod .pay .step .tx b{color:var(--teal-d);}
.prod .pay .step .tx .cs{color:#b3261e;font-weight:700;}
/* 決済パネル内のスクリーンショット */
.prod .pay .shots{display:flex;flex-wrap:wrap;gap:10px 16px;}
.prod .pay .shots.g2 .shot{width:565px;}
.prod .pay .shot .cap2{font-size:15px;color:var(--navy);font-weight:700;margin-bottom:4px;}
.prod .pay .shot .cap2 b{display:inline-block;width:22px;height:22px;line-height:22px;text-align:center;border-radius:50%;background:var(--teal);color:#fff;font-size:13px;margin-right:7px;}
.prod .pay .shots.g2 .shot img{width:100%;height:170px;object-fit:contain;object-position:top;background:#f1f6f7;border:1px solid #dde7e9;border-radius:8px;}
.prod .pay .paylist{margin:6px 0 12px;padding-left:20px;}
.prod .pay .paylist li{color:var(--ink);font-size:15px;line-height:1.5;margin-bottom:5px;}
.prod .pay .paylist li b{color:var(--teal-d);}
.prod .pay .paylist .cs{color:#b3261e;font-weight:700;}
