:root{
    --ot-ink:#1e1a24;--ot-sub:#6a6472;--ot-soft:#f7f4fb;--ot-line:#eae6f0;
    --ot-violet:#4B1E78;--ot-violet2:#341A52;--ot-vsoft:#f0eaf6;
  }
.otomarche-lp, .otomarche-lp *{box-sizing:border-box;margin:0;padding:0}
.otomarche-lp{font-family:"Yu Gothic","Hiragino Kaku Gothic ProN","Noto Sans JP",sans-serif;
    color:var(--ot-ink);background:#fff;line-height:1.75;-webkit-font-smoothing:antialiased;font-feature-settings:"palt"}
.otomarche-lp a{color:inherit;text-decoration:none}
.otomarche-lp img{max-width:100%;display:block;height:auto}
.otomarche-lp .ot-wrap{max-width:960px;margin:0 auto;padding:0 18px}
.otomarche-lp .ot-btn{display:inline-flex;align-items:center;justify-content:center;gap:8px;
    padding:14px 28px;border-radius:999px;font-size:15px;font-weight:700;cursor:pointer;
    border:1.5px solid var(--ot-violet);transition:.2s}
.otomarche-lp .ot-btn-fill{background:var(--ot-violet);color:#fff;box-shadow:0 6px 18px rgba(75,30,120,.25)}
.otomarche-lp .ot-btn-fill:hover{background:#3a1660}
.otomarche-lp .ot-btn-line{background:#fff;color:var(--ot-violet)}
.otomarche-lp .ot-btn-line:hover{background:var(--ot-vsoft)}
.otomarche-lp .ot-ctarow{display:flex;flex-wrap:wrap;gap:12px;margin-top:20px}
.otomarche-lp .ph{border:2px dashed #d63333 !important;background:#fff5f5 !important;color:#b42318 !important;position:relative}
.otomarche-lp .hidden-radio{position:absolute;width:1px;height:1px;opacity:0}
.otomarche-lp .ot-tabbar{border-bottom:1px solid var(--ot-line);background:#fff;padding:10px 0}
.otomarche-lp .ot-tabbar .ot-wrap{display:flex;align-items:center;gap:6px;flex-wrap:wrap}
.otomarche-lp .ot-brand{font-weight:700;letter-spacing:.04em;margin-right:auto;font-size:13.5px}
.otomarche-lp .ot-brand b{color:var(--ot-violet)}
.otomarche-lp .vtab{border:1px solid var(--ot-line);background:#fff;color:var(--ot-sub);padding:7px 16px;
    border-radius:999px;cursor:pointer;font-size:13.5px;font-weight:700;user-select:none;
    -webkit-tap-highlight-color:rgba(75,30,120,.12);touch-action:manipulation}
.otomarche-lp #otv-all:checked ~ .ot-main .vtab-all, .otomarche-lp #otv-a:checked ~ .ot-main .vtab-a, .otomarche-lp #otv-k:checked ~ .ot-main .vtab-k{background:var(--ot-violet);border-color:var(--ot-violet);color:#fff}
.otomarche-lp #otv-a:checked ~ .ot-main .only-k{display:none !important}
.otomarche-lp #otv-k:checked ~ .ot-main .only-a{display:none !important}
.otomarche-lp .ot-hero{background:linear-gradient(180deg,#fdfbff 0%,#ffffff 100%)}
.otomarche-lp .ot-hero .ot-wrap{padding-top:44px;padding-bottom:48px}
.otomarche-lp .ot-eyebrow{display:inline-block;font-size:12px;letter-spacing:.16em;font-weight:700;color:var(--ot-violet);
    background:#fff;border:1px solid var(--ot-line);border-radius:999px;padding:6px 15px;margin-bottom:20px}
.otomarche-lp .ot-hero h1{font-size:34px;line-height:1.25;letter-spacing:.01em;font-weight:800}
.otomarche-lp .ot-hero h1 em{font-style:normal;color:var(--ot-violet);
    background:linear-gradient(transparent 62%, #f6e08a 62% 92%, transparent 92%)}
.otomarche-lp .ot-hero .sm{display:block;font-size:15px;font-weight:600;color:var(--ot-sub);margin-top:14px;line-height:1.8}
.otomarche-lp .ot-facts{display:flex;flex-wrap:wrap;gap:10px;margin-top:22px}
.otomarche-lp .ot-fact{background:#fff;border:1px solid var(--ot-line);border-radius:999px;padding:8px 16px;
    font-size:13px;font-weight:700;box-shadow:0 2px 8px rgba(75,30,120,.05)}
.otomarche-lp .ot-fact b{color:var(--ot-violet)}
.otomarche-lp .ot-note{margin-top:14px;font-size:12.5px;color:var(--ot-sub)}
.otomarche-lp .ot-kv{margin:30px auto 0;max-width:560px;border-radius:14px;overflow:hidden;
    box-shadow:0 16px 44px rgba(75,30,120,.18);border:1px solid var(--ot-line);background:#fff}
.otomarche-lp .ot-kv .cap{font-size:11.5px;color:var(--ot-sub);text-align:center;padding:8px 10px;background:#fff}
.otomarche-lp .ot-sec{padding:50px 0;border-top:1px solid var(--ot-line)}
.otomarche-lp .ot-kicker{color:var(--ot-violet);font-size:12px;letter-spacing:.2em;font-weight:700;margin-bottom:12px}
.otomarche-lp .ot-sec h2{font-size:25px;letter-spacing:.03em;font-weight:800;line-height:1.35}
.otomarche-lp .ot-lead{color:var(--ot-sub);font-size:15px;max-width:60ch;margin-top:10px}
.otomarche-lp .ot-feat{display:grid;grid-template-columns:repeat(auto-fit,minmax(210px,1fr));gap:14px;margin-top:26px}
.otomarche-lp .ot-fcard{border:1px solid var(--ot-line);border-radius:12px;overflow:hidden;background:var(--ot-soft)}
.otomarche-lp .ot-fcard .ph-img{width:100%;height:158px;object-fit:cover;display:block}
.otomarche-lp .ot-fcard .tx{padding:18px 20px 22px;text-align:center}
.otomarche-lp .ot-fcard h3{font-size:16px;margin:0 0 6px}
.otomarche-lp .ot-fcard p{font-size:13.5px;color:var(--ot-sub)}
.otomarche-lp .ot-stripcap{font-size:12px;color:var(--ot-sub);margin-top:12px}
.otomarche-lp .ot-vh{margin:26px 0 0;font-size:17px;font-weight:800;color:var(--ot-violet);
    border-left:4px solid var(--ot-violet);padding-left:12px}
.otomarche-lp .ot-vh small{display:block;font-size:12.5px;color:var(--ot-sub);font-weight:600}
.otomarche-lp .ot-prog{margin-top:14px;display:grid;gap:12px}
.otomarche-lp .ot-ev{display:flex;gap:16px;align-items:flex-start;border:1px solid var(--ot-line);border-radius:12px;
    padding:16px 18px;background:#fff;flex-wrap:wrap}
.otomarche-lp .ot-when{flex:0 0 128px;text-align:center;background:var(--ot-vsoft);color:var(--ot-violet);
    border-radius:10px;padding:9px 6px;font-weight:800;font-size:12.5px;line-height:1.5}
.otomarche-lp .ot-when b{font-size:15.5px;display:block}
.otomarche-lp .ot-ev h3{font-size:15.5px;margin-bottom:2px}
.otomarche-lp .ot-ev p{font-size:13px;color:var(--ot-sub)}
.otomarche-lp .ot-ev .tx{flex:1;min-width:200px}
.otomarche-lp .ot-ticket{margin-top:16px;font-size:13px;background:#fff7e0;border:1px solid #f2df9e;border-radius:8px;padding:13px 16px}
.otomarche-lp .ot-bridge{background:var(--ot-soft);text-align:center;padding:44px 0;border-top:1px solid var(--ot-line)}
.otomarche-lp .ot-bridge h2{font-size:22px}
.otomarche-lp .ot-bridge p{color:var(--ot-sub);margin-top:10px;font-size:14.5px;max-width:34em;margin-left:auto;margin-right:auto;padding:0 18px}
.otomarche-lp .ot-duo{display:grid;grid-template-columns:repeat(auto-fit,minmax(300px,1fr));gap:26px;align-items:center;margin-top:24px}
.otomarche-lp .ot-duo .im{border-radius:14px;overflow:hidden;border:1px solid var(--ot-line);box-shadow:0 12px 32px rgba(75,30,120,.12)}
.otomarche-lp .ot-duo .im .cap{font-size:11.5px;color:var(--ot-sub);text-align:center;padding:8px 10px;background:#fff}
.otomarche-lp .ot-duo h3{font-size:19px;margin-bottom:8px}
.otomarche-lp .ot-duo .ds{font-size:14px;color:var(--ot-sub)}
.otomarche-lp .ot-chips{display:flex;flex-wrap:wrap;gap:10px;margin:14px 0 4px}
.otomarche-lp .ot-chip{background:var(--ot-vsoft);color:var(--ot-violet);font-size:13px;font-weight:700;padding:8px 16px;border-radius:999px}
.otomarche-lp .ot-chip small{font-weight:600;color:var(--ot-sub)}
.otomarche-lp .ot-mini{display:grid;grid-template-columns:96px 1fr;row-gap:8px;font-size:14px;margin-top:14px}
.otomarche-lp .ot-mini dt{color:var(--ot-violet);font-weight:700}
.otomarche-lp .ot-cv{background:linear-gradient(135deg,var(--ot-violet) 0%,var(--ot-violet2) 100%);color:#fff;text-align:center;padding:50px 0;border-top:1px solid var(--ot-line)}
.otomarche-lp .ot-cv h2{color:#fff;font-size:24px}
.otomarche-lp .ot-cv p{color:#e9def5;max-width:34em;margin:12px auto 0;font-size:14.5px;padding:0 18px}
.otomarche-lp .ot-cv .ot-ctarow{justify-content:center;margin-top:24px}
.otomarche-lp .ot-cv .ot-btn-fill{background:#fff;color:var(--ot-violet);border-color:#fff}
.otomarche-lp .ot-cv .ot-btn-line{background:transparent;color:#fff;border-color:rgba(255,255,255,.6)}
.otomarche-lp .ot-cv .tel{margin-top:14px;font-size:12.5px;color:#d8c7ec}
.otomarche-lp .ot-acc dl{display:grid;grid-template-columns:110px 1fr;row-gap:10px;font-size:14px;margin-top:12px}
.otomarche-lp .ot-acc dt{color:var(--ot-violet);font-weight:700}
.otomarche-lp .ot-foot{border-top:1px solid var(--ot-line);padding:34px 0 50px;text-align:center}
.otomarche-lp .ot-foot .ot-ctarow{justify-content:center}
.otomarche-lp .ot-foot .fine{color:#9a96a0;font-size:12px;margin-top:22px;line-height:1.9}
/* ===== 店舗テンプレ対策（id単独・!important。html-structure.md準拠） ===== */
#otomarche-root img{max-width:100% !important;height:auto !important}
#otomarche-root .ot-fcard .ph-img{height:158px !important;object-fit:cover !important}
#otomarche-root a{text-decoration:none !important}
#otomarche-root .ot-btn-fill{color:#fff !important}
#otomarche-root .ot-btn-line{color:#4B1E78 !important}
#otomarche-root .ot-cv .ot-btn-fill{color:#4B1E78 !important}
#otomarche-root .ot-cv .ot-btn-line{color:#fff !important}
#otomarche-root,#otomarche-root *{pointer-events:auto !important}
#otomarche-root .vtab{-webkit-appearance:none;appearance:none;position:relative;z-index:30;touch-action:manipulation;display:inline-block;font:inherit}
/* 見出しに付くテンプレ既定の罫線/下線/縦バーを消す（見出し左の黒い縦線の正体。なんばnanbadp.cssで実証済み） */
#otomarche-root h1,#otomarche-root h2,#otomarche-root h3,#otomarche-root h4,
#otomarche-root .ot-kicker{border:0 !important;text-decoration:none !important;background-image:none !important}
#otomarche-root h1::before,#otomarche-root h1::after,#otomarche-root h2::before,#otomarche-root h2::after,
#otomarche-root h3::before,#otomarche-root h3::after,#otomarche-root h4::before,#otomarche-root h4::after,
#otomarche-root .ot-kicker::before,#otomarche-root .ot-kicker::after{
  content:none !important;border:0 !important;background:none !important;display:none !important}
/* ↑の打ち消し後も、会場見出しの紫バーは意図した装飾なので維持（.ot-vh は id+class で h3 の打ち消しに勝つ） */
#otomarche-root .ot-vh{border-left:4px solid #4B1E78 !important;padding-left:12px !important}
/* アンカー着地時に見出しが上端に張り付かないよう余白を確保 */
#otomarche-root .ot-sec{scroll-margin-top:16px}
