:root{
  --primary:#004080;
  --accent:#002b5c;
  --bg-light:#f7f9fc;
  --card-bg:#fff;
  --text-main:#222;
  --text-sub:#555;
  --border:#e6eaf0;
}

/* ベース */
.apply-main-area{
  max-width:1020px;
  margin:64px auto 0;
  padding:0 1rem 72px;
  font-family:'Montserrat',system-ui,-apple-system,BlinkMacSystemFont,'Segoe UI',Roboto,Arial,sans-serif;
  color:var(--text-main);
  background:var(--bg-light);
  line-height:1.9;
}

.apply-main-flex{
  display:flex; gap:3em; align-items:flex-start;
}
.apply-main-flex>div{ flex:1 1 0; }

@media (max-width:900px){
  .apply-main-flex{ flex-direction:column; gap:2em; }
}

/* カード */
.apply-info-card, .apply-form-card{
  background:var(--card-bg);
  border:1px solid var(--border);
  border-radius:12px;
  box-shadow:0 4px 18px -6px rgba(0,0,0,.06);
  padding:2.4em 2.2em 2em;
  margin-bottom:2em;
}
.mb0{ margin-bottom:0; }

/* 見出し */
.apply-info-card h2, .apply-form-card h2{
  font-size:1.45rem; font-weight:700; color:var(--primary);
  margin:0 0 1em; text-align:left; position:relative; display:inline-block;
}
.apply-info-card h2::after, .apply-form-card h2::after{
  content:''; position:absolute; bottom:-10px; left:0;
  width:54px; height:4px; background:var(--primary); border-radius:2px;
}

/* 説明リスト */
.apply-info-list{ margin:1em 0 1.8em; padding:0; list-style:none; }
.apply-info-list li{
  position:relative; padding-left:1.4em; margin-bottom:1em;
  color:var(--text-sub); font-size:1.05em; line-height:1.9;
}
.apply-info-list li::before{
  content:'✓'; position:absolute; left:0; color:var(--primary); font-weight:700;
}

/* 強調・電話行 */
.emph{ color:var(--primary); font-weight:600; }
.tel-line{ text-align:center; font-size:1.14em; margin-top:.6em; }
.tel-strong{ color:var(--primary); font-weight:600; margin-right:8px; display:inline-block; }
.tel-note{ color:#999; }

/* CTAボタン */
.btn-like{
  display:inline-block; padding:16px 32px; border-radius:8px;
  font-weight:700; font-size:1.05rem; text-decoration:none; letter-spacing:.01em;
  color:#fff; background:var(--primary); transition:.25s;
  box-shadow:0 2px 12px -6px rgba(0,64,128,.35); text-align:center;
}
.btn-like:hover{ background:var(--accent); color:#fff; transform:translateY(-1px); }

/* フォームカード */
.apply-form-card{
  border:1.5px solid #e2eaf5;
  max-width:580px; margin:0 auto; text-align:center;
}
.apply-form-card h2{
  text-align:center; margin-bottom:1em;
}
.apply-form-card h2::after{
  left:50%; transform:translateX(-50%); width:42px;
}
.apply-form-desc{
  color:var(--text-sub); font-size:1.05em; margin-bottom:1.4em;
}

/* シミュレーター導線 */
.simulation-link-top-in-form{
  text-align:center; margin-bottom:1.4em; margin-top:-.2em;
}
.simulation-link-btn{
  display:inline-block; padding:14px 28px; border-radius:6px;
  font-weight:700; font-size:1rem; text-decoration:none;
  color:#fff; background:var(--primary); transition:.25s;
  box-shadow:0 2px 10px -6px rgba(0,64,128,.35);
}
.simulation-link-btn:hover{ background:var(--accent); color:#fff; transform:translateY(-1px); }
.simulation-link-caption{ color:#888; font-size:.96em; margin-top:10px; margin-bottom:-8px; }

/* フォーム下部注意 */
.form-footnote{
  margin-top:1.4em; text-align:center; font-size:0.95em; color:#888;
}

/* 埋め込みフォームの幅 */
.form-embed{ max-width:520px; margin:0 auto; }

/* レスポンシブ */
@media (max-width:700px){
  .apply-info-card,.apply-form-card{ padding:1.6em 1.1em 1.4em; }
  .apply-main-area{ padding:0 2vw 48px; }
  .apply-main-flex{ gap:1.6em; }
  .simulation-link-btn,.btn-like{ width:100%; }
}