/* ============================================
   LP共通（/lp/配下）— style.css の上に重ねる
   2026-10-13 国家資格LPで新設
============================================ */
.lp-hero{position:relative;background:#000;padding:120px 0 64px}
.lp-hero::before{content:"";position:absolute;inset:0;background:url(../images/hero_school.jpg) center 35%/cover no-repeat;opacity:.55}
.lp-hero::after{content:"";position:absolute;inset:0;background:linear-gradient(180deg,rgba(18,18,18,.6) 0%,rgba(18,18,18,.35) 50%,rgba(18,18,18,.9) 100%)}
.lp-hero .wrap{position:relative;z-index:2}
.lp-hero .julc-band{margin-bottom:18px}
.lp-hero h1{color:#fff;font-size:40px;font-weight:900;line-height:1.45;text-shadow:0 2px 24px rgba(0,0,0,.5)}
.lp-hero h1 .yl{color:var(--yellow)}
.lp-hero .sub{color:#eee;margin-top:16px;font-size:15.5px;max-width:680px}
.lp-points{display:flex;flex-wrap:wrap;gap:10px;margin-top:24px;list-style:none}
.lp-points li{background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.25);color:#fff;font-size:13.5px;font-weight:700;padding:7px 14px;border-radius:30px}
.lp-cta{margin-top:30px;display:flex;gap:14px;flex-wrap:wrap;align-items:center}
.lp-cta .btn{font-size:16px;padding:16px 34px}
.lp-tel{color:#fff;font-size:13px;line-height:1.5}
.lp-tel a{display:block;font-family:'Oswald',sans-serif;font-size:24px;letter-spacing:.04em;color:var(--yellow)}

.lp-reasons{background:var(--bg)}
.reason-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}
.reason{background:#fff;border:1px solid var(--line);border-top:4px solid var(--julc);padding:26px 24px}
.reason .num{font-family:'Oswald',sans-serif;color:var(--julc);font-size:28px;line-height:1}
.reason h3{font-size:17px;font-weight:900;margin:10px 0 8px;line-height:1.5}
.reason p{font-size:13.5px;color:var(--gray)}

.stay-band{margin-top:22px;background:#fff;border:1px solid var(--line);border-left:5px solid var(--yellow);padding:22px 24px}
.stay-band h3{font-size:17px;font-weight:900;line-height:1.5;margin-bottom:6px}
.stay-band p{font-size:14px;color:#444}
.lp-compare table{width:100%;border-collapse:collapse;background:#fff;font-size:14px}
.lp-compare th,.lp-compare td{border:1px solid var(--line);padding:12px 14px;text-align:left;vertical-align:top}
.lp-compare thead th{background:var(--julc);color:#fff;font-weight:700}
.lp-compare tbody th{background:#f4f6f9;width:22%;font-weight:700}
.lp-compare .note{font-size:12.5px;color:var(--gray);margin-top:10px}
.tbl-scroll{overflow-x:auto}

.lp-flow{background:var(--bg)}
.flow{list-style:none;counter-reset:f;display:grid;grid-template-columns:repeat(5,1fr);gap:12px}
.flow li{counter-increment:f;background:#fff;border:1px solid var(--line);padding:22px 16px 18px;position:relative;font-size:13.5px}
.flow li::before{content:"STEP " counter(f);font-family:'Oswald',sans-serif;color:var(--julc);font-size:13px;letter-spacing:.08em;display:block;margin-bottom:6px}
.flow li strong{display:block;font-size:15px;margin-bottom:4px}
.flow-note{font-size:12.5px;color:var(--gray);margin-top:14px}

.lp-josei .josei-box{border:2px solid var(--yellow);background:#fffaf0;border-radius:8px;padding:26px 28px}
.lp-josei h3{font-size:19px;font-weight:900;margin-bottom:8px}
.lp-josei ul{margin:10px 0 0 1.2em;font-size:14px}
.lp-josei .note{font-size:12.5px;color:var(--gray);margin-top:12px}

.lp-env .env-grid{display:grid;grid-template-columns:1fr 1fr;gap:20px}
.lp-env figure{background:#fff;border:1px solid var(--line)}
.lp-env figure img{width:100%;aspect-ratio:4/3;object-fit:cover}
.lp-env figcaption{padding:14px 16px;font-size:13.5px}
.lp-env figcaption strong{display:block;font-size:15px}

.faq dl{border-top:1px solid var(--line)}
.faq dt{font-weight:700;padding:18px 0 6px 34px;position:relative;font-size:15px}
.faq dt::before{content:"Q";position:absolute;left:0;top:16px;font-family:'Oswald',sans-serif;color:var(--julc);font-size:20px}
.faq dd{padding:0 0 18px 34px;border-bottom:1px solid var(--line);font-size:14px;color:#444;position:relative}
.faq dd::before{content:"A";position:absolute;left:0;top:-2px;font-family:'Oswald',sans-serif;color:var(--yellow-d);font-size:20px}

.lp-form{background:var(--black);color:#fff}
.lp-form .sec-head h2{color:#fff}
.lp-form .sec-head p.lead{color:#bbb}
.lp-form .cform-wrap{background:#fff;color:var(--ink);border-radius:6px;padding:30px 28px;max-width:720px;margin:0 auto}
.lp-form .contact-tel{margin-top:26px;text-align:center}

.lp-fixed{display:none}
@media(max-width:820px){
  .lp-hero{padding:96px 0 48px}
  .lp-hero h1{font-size:27px}
  body.lp .sec-head h2{font-size:23px}
  .reason-grid{grid-template-columns:1fr}
  .flow{grid-template-columns:1fr}
  .lp-env .env-grid{grid-template-columns:1fr}
  .lp-form .cform-wrap{padding:22px 16px}
  /* スマホ下部の固定CTA */
  .lp-fixed{display:flex;position:fixed;left:0;right:0;bottom:0;z-index:90;background:rgba(18,18,18,.95);padding:8px;gap:8px}
  .lp-fixed a{flex:1;text-align:center;font-weight:700;font-size:14px;padding:12px 6px;border-radius:3px}
  .lp-fixed .f-form{background:var(--yellow);color:var(--black)}
  .lp-fixed .f-tel{background:var(--julc);color:#fff}
  body.lp{padding-bottom:62px}
}
