/* 各回のページ（受付開始前の第2回・第3回）：新デザイン案（v2）
   templates/v2/event-02.php と event-03.php で共通（event-03.css はこのファイルを読むだけ）。
   最初の画面はホームの「次回」と同じ大きな日付の形。箱をやめて罫線と余白で区切り、強い面は「演者・座長」の紺の一か所と、締めの紺の帯だけ。 */


/* ===== 1. 最初の画面 ===== */
.v2-ev-hero::after{content:"";inset:auto;right:-80px;bottom:-220px;width:560px;height:560px;border-radius:50%;background:none;border:1px solid rgba(255,255,255,.14);box-shadow:0 0 0 90px transparent,0 0 0 91px rgba(255,255,255,.1)}
.v2-ev-hero .wrap.v2-ev-grid{display:grid;grid-template-columns:minmax(0,7fr) minmax(0,5fr);grid-template-areas:"main next" "acts next";gap:0 56px;align-items:end;max-width:1120px;padding-top:clamp(40px,6vw,80px);padding-bottom:clamp(40px,6vw,72px)}
.v2-ev-main{grid-area:main}
.v2-ev-next{grid-area:next;align-self:end;border-top:1px solid rgba(255,255,255,.5);padding-top:20px}
.v2-ev-hero .hero-actions{grid-area:acts;margin-top:4px}
.v2-ev-hero .tmp-banner{margin-bottom:24px}
.v2-ev-hero .hero-title{font-size:clamp(26px,3.8vw,44px);margin-bottom:24px}
.v2-ev-hero .hero-title .bar{box-shadow:none}
.v2-ev-hero .hero-sub2{margin-bottom:28px}

.v2-ev-status{display:inline-block;font-size:12px;font-weight:700;color:#fff;border:1px solid rgba(255,255,255,.6);padding:1px 10px;border-radius:2px;margin-bottom:12px}
.v2-ev-next .hero-date{display:block;margin:0 0 16px}
.v2-ev-next .hero-date .d{display:block;font-size:clamp(44px,5.4vw,64px)}
.v2-ev-next .hero-date .w{font-size:14px;width:1.8em;height:1.8em;margin-left:12px;top:-.5em}
.v2-ev-next .hero-date .t{display:block;margin-top:12px;font-size:clamp(20px,2.4vw,26px)}
.v2-ev-next.is-tbd .hero-date .d{font-size:clamp(34px,4.4vw,50px);line-height:1.15}
.v2-ev-next .hero-meta{display:block;border-top:0;padding-top:0;margin:0;font-size:14px;line-height:1.8;color:rgba(255,255,255,.9)}
.v2-ev-next .hero-meta span{display:block}
@media (max-width:860px){
  .v2-ev-hero .wrap.v2-ev-grid{grid-template-columns:minmax(0,1fr);grid-template-areas:"main" "next" "acts";gap:0}
  .v2-ev-next{margin:4px 0 28px}
}
@media (max-width:520px){
  .v2-ev-hero .hero-actions .btn{width:100%}
}

/* ===== 2. 開催概要と扱うステップ ===== */
.v2-ev .v2-sec.v2-ev-first{padding-top:clamp(48px,6vw,80px)}
.v2-ev-overview{display:grid;grid-template-columns:minmax(0,5fr) minmax(0,7fr);gap:56px;align-items:start}
.v2-ev-facts>div{grid-template-columns:7em minmax(0,1fr)}
.v2-ev-facts dd b{display:block;font-size:17px;line-height:1.6}
.v2-ev-facts dd small{display:block;font-size:13px;color:var(--sub);line-height:1.7}
.v2-ev-steps .v2-h3{font-size:17px}
.v2-ev-steps .phase{margin:0 0 10px}
.v2-ev-steps .ph-bar span{font-size:14px;padding:6px 14px}
.v2-ev-steps .ph-legend{margin:0 0 14px}
.v2-ev-steps>p:not([class]){font-size:15px;line-height:1.9;margin:0}
.v2-ev-steps .v2-more{margin:16px 0 24px;font-size:14px}
.v2-ev-steps .ph-items li{padding:12px 2px}
@media (max-width:860px){.v2-ev-overview{grid-template-columns:minmax(0,1fr);gap:48px}}

/* ===== 3. こんな先生に（罫線の一覧） ===== */
.v2-ev-who{list-style:none;margin:0;padding:0;border-top:1px solid var(--line)}
.v2-ev-who li{padding:18px 0;border-bottom:1px solid var(--line);font-size:16px;font-weight:700;color:var(--navy);line-height:1.7}
.v2-ev .v2-split-head .v2-small{margin:0}

/* ===== 4. 持ち帰れること（罫線で区切った列） ===== */
.v2-ev-take{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:0 48px;margin-top:36px}
.v2-ev-take.is-3{grid-template-columns:repeat(3,minmax(0,1fr))}
.v2-ev-take>div{border-top:1px solid var(--line);padding:22px 0 30px}
.v2-ev-take .n{display:block;font-size:14px;font-weight:700;color:var(--green);margin-bottom:6px}
.v2-ev-take h3{font-size:18px;margin:0 0 8px}
.v2-ev-take p{font-size:15px;line-height:1.9;margin:0}
.v2-ev-note{margin-top:16px}
@media (max-width:860px){.v2-ev-take.is-3{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media (max-width:600px){.v2-ev-take,.v2-ev-take.is-3{grid-template-columns:minmax(0,1fr)}}

/* ===== 5. 演者・座長（紺の面に丸い写真） ===== */
.v2-ev-people{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:40px;margin-top:40px}
.v2-ev-people.is-5{grid-template-columns:repeat(5,minmax(0,1fr));gap:28px}
.v2-ev-person{text-align:center}
.v2-ev-person .ph,.v2-ev-person .ph-none{width:140px;height:140px;border-radius:50%;object-fit:cover;margin:0 auto 16px;border:0;box-shadow:none}
.v2-ev-person .ph{border:2px solid rgba(255,255,255,.9)}
.v2-ev-person .ph-none{background:rgba(255,255,255,.12);color:rgba(255,255,255,.7);border:1px dashed rgba(255,255,255,.4)}
.v2-navy .v2-ev-person .v2-role{color:#9fd6b8}
.v2-navy .v2-ev-person .v2-name{color:#fff;font-size:18px}
.v2-navy .v2-ev-person .v2-org{color:rgba(255,255,255,.72)}
.v2-ev-talk{margin:14px 0 0;padding-top:12px;border-top:1px solid rgba(255,255,255,.25);font-size:15px;font-weight:700;line-height:1.6;color:#fff;text-align:left}
.v2-ev-people.is-5 .v2-ev-talk{font-size:13px}
.v2-ev-desc{margin:8px 0 0;font-size:13.5px;line-height:1.8;color:rgba(255,255,255,.82);text-align:left}
/* 未確定の印：紺の面の上でも読めるように */
body.review .v2-navy .chk{color:#3a2c00}
body.review .v2-navy .chk[data-note]::after{color:#3a2c00}
@media (max-width:900px){.v2-ev-people,.v2-ev-people.is-5{grid-template-columns:repeat(2,minmax(0,1fr));gap:36px 24px}}
@media (max-width:600px){
  .v2-ev-people,.v2-ev-people.is-5{grid-template-columns:minmax(0,1fr);gap:0;margin-top:24px}
  .v2-ev-person{display:grid;grid-template-columns:88px minmax(0,1fr);column-gap:18px;align-content:start;text-align:left;padding:22px 0;border-bottom:1px solid rgba(255,255,255,.2)}
  .v2-ev-person>*{grid-column:2}
  .v2-ev-person .ph,.v2-ev-person .ph-none{grid-column:1;grid-row:1/span 4;width:88px;height:88px;margin:0;font-size:11px}
  .v2-ev-talk{margin-top:10px;padding-top:10px}
}

/* ===== 6. プログラム（帯の見出しをやめ、太い線の上の見出しに） ===== */
.v2-ev .tt{background:transparent;margin:32px 0 28px}
.v2-ev .tt caption .bar{background:none;color:var(--navy);padding:0 0 10px;border-bottom:2px solid var(--navy);font-size:16px}
.v2-ev .tt.after caption .bar{background:none;color:var(--green);border-bottom-color:var(--green)}
.v2-ev .tt td{padding:14px 12px}
.v2-ev .tt td:first-child{padding-left:0}
.v2-ev .v2-sec>.wrap>.v2-small+.tt{margin-top:24px}
@media (max-width:760px){.v2-ev .tt td{padding:12px 8px}.v2-ev .tt td:first-child{padding-left:0}}

/* ===== 7. 参加費（第2回） ===== */
.v2-ev-fees{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;margin-top:36px}
.v2-ev-price{font-size:15px;color:var(--sub);margin:4px 0 16px}
.v2-ev-price .yen{font-size:clamp(40px,4.6vw,52px);font-weight:700;line-height:1.1;color:var(--navy);margin-right:8px}
.v2-ev-list{list-style:none;margin:0;padding:0}
.v2-ev-list li{padding:12px 0;border-bottom:1px solid var(--line);font-size:15px;line-height:1.8}
.v2-ev-list li:first-child{padding-top:0}
@media (max-width:860px){.v2-ev-fees{grid-template-columns:minmax(0,1fr);gap:40px}}

/* ===== 6. 2つの参加方法（第3回） ===== */
.v2-ev-join{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;margin-top:36px}
.v2-ev-way{display:flex;flex-direction:column;border-top:3px solid var(--navy);padding-top:20px}
.v2-ev-way.is-rec{border-top-color:var(--green)}
.v2-ev-way-tag{align-self:flex-start;font-size:12px;font-weight:700;color:#fff;background:var(--green);padding:1px 10px;border-radius:2px;margin-bottom:8px}
.v2-ev-way h3{font-size:22px;margin:0}
.v2-ev-way-time{font-size:14px;color:var(--sub);margin:2px 0 18px}
.v2-ev-incl{list-style:none;margin:0 0 18px;padding:0;border-top:1px solid var(--line)}
.v2-ev-incl li{position:relative;padding:10px 0 10px 22px;border-bottom:1px solid var(--line);font-size:15px;line-height:1.7}
.v2-ev-incl li::before{content:"";position:absolute;left:0;top:1.3em;width:12px;height:2px;background:var(--green)}
.v2-ev-incl li.x{color:var(--sub)}
.v2-ev-incl li.x::before{background:var(--line)}
.v2-ev-way-dl{display:grid;grid-template-columns:7em minmax(0,1fr);gap:4px 16px;margin:0 0 18px;font-size:14px;line-height:1.8}
.v2-ev-way-dl dt{color:var(--sub);font-weight:700}
.v2-ev-way-dl dd{margin:0}
.v2-ev-way-price{font-size:clamp(28px,3.4vw,40px);font-weight:700;color:var(--navy);line-height:1.25;margin:0 0 20px}
.v2-ev-way-price small{display:block;font-size:13px;font-weight:400;color:var(--sub);margin-top:6px;line-height:1.6}
.v2-ev-way .btn{margin-top:auto}
@media (max-width:760px){.v2-ev-join{grid-template-columns:minmax(0,1fr);gap:48px}.v2-ev-way-dl{grid-template-columns:minmax(0,1fr)}}

/* ===== 会場（第2回） ===== */
.v2-ev-venue h3{font-size:20px;margin:0 0 8px}
.v2-ev-venue p{margin:0 0 18px;font-size:15px;line-height:1.85}

/* ===== よくある質問 ===== */
.v2-ev .v2-faq .a a{color:var(--navy)}

/* ===== 一緒につくる（縦の罫線で3つ） ===== */
.v2-ev-ways3{list-style:none;display:grid;grid-template-columns:repeat(3,minmax(0,1fr));border-left:1px solid var(--line);margin:0 0 32px;padding:0}
.v2-ev-ways3 li{padding:4px 28px 4px 24px;border-right:1px solid var(--line);font-size:14px;line-height:1.85}
.v2-ev-ways3 b{display:block;font-size:18px;color:var(--navy);margin-bottom:8px}
@media (max-width:860px){
  .v2-ev-ways3{grid-template-columns:minmax(0,1fr);border-left:0;border-top:1px solid var(--line)}
  .v2-ev-ways3 li{border-right:0;border-bottom:1px solid var(--line);padding:18px 0}
}

/* ===== 締めの紺の帯 ===== */
.v2-ev .v2-closing .btn-outline{border-color:#fff}
@media (max-width:520px){.v2-ev .v2-closing .hero-actions .btn{width:100%}}
