/* ==================================================
   Contact Page (Linxy) - FIXED LAYOUT
================================================== */

/* =========================
   Body
========================= */
.page-template-page-contact {
  background: #f6f7f9;
}

/* =========================
   Header 完全非表示
========================= */
.page-template-page-contact header,
.page-template-page-contact .site-header,
.page-template-page-contact .global-header {
  display: none !important;
}

/* =========================
   Page Wrapper
========================= */
.page-template-page-contact .lp {
  padding: 120px 20px 140px;
}

/* =========================
   Main Container（★重要）
========================= */
.page-template-page-contact .lp-contact {
  max-width: 820px;   /* ← 全体を中央寄せ */
  margin: 0 auto;
  text-align: center;
}

/* =========================
   Title / Lead
========================= */
.lp-contact-title {
  font-size: 32px;
  font-weight: 800;
  margin-top: 40px;
  margin-bottom: 16px;
  color: #0f172a;
}

.lp-contact-lead {
  font-size: 15px;
  line-height: 1.8;
  color: #64748b;
  margin-bottom: 48px;
}

/* タイトル・リードを中央揃え */
.lp-contact-title,
.lp-contact-lead {
  text-align: center;
}

/* =========================
   Form Card（★幅を制御）
========================= */
.lp-contact-form {
  max-width: 720px;     /* ← カード幅 */
  margin: 0 auto;       /* ← 中央寄せ */
  background: #ffffff;
  padding: 40px 36px 48px;
  border-radius: 24px;
  box-shadow: 0 20px 40px rgba(0,0,0,.06);
  text-align: left;
}

/* =========================
   Fields
========================= */
.lp-contact-field {
  margin-bottom: 20px;
}

.lp-contact-field input,
.lp-contact-field textarea {
  width: 100%;
  padding: 16px 18px;
  font-size: 15px;
  border-radius: 12px;
  border: 1px solid #e2e8f0;
}

.lp-contact-field textarea {
  resize: vertical;
}

/* =========================
   Submit Button
========================= */
.lp-contact-actions {
  text-align: center;
  margin-top: 32px;
}

.lp-contact-submit {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 52px;
  padding: 0 48px;
  font-size: 15px;
  font-weight: 700;
  color: #ffffff;
  border: none;
  border-radius: 999px;
  cursor: pointer;
  min-width: 240px;
  background: linear-gradient(
    135deg,
    #7bdcb5 0%,
    #8ecdf7 100%
  );

  box-shadow: 0 12px 28px rgba(142,205,247,.35);
}

/* =========================
   Back Button
========================= */
.contact-back {
  display: flex;
  justify-content: center;
  margin-top: 48px;
}

.contact-back-button {
  display: inline-flex;
  align-items: center;
  justify-content: center;
  height: 48px;
  padding: 0 24px;
  font-size: 14px;
  font-weight: 600;
  color: #5a7cf0;
  text-decoration: none;
  border-radius: 999px;
  border: 1px solid #dbeafe;
  background: #ffffff;
}

/* =================================
   LP Contact Responsive 強制上書き
================================= */

@media (max-width: 768px) {

  .lp-contact form,
  .lp-contact .wpcf7 form {
    max-width: 100% !important;
    padding: 24px !important;
    border-radius: 16px !important;
  }

  .lp-contact h1 {
    font-size: 24px !important;
  }

  .lp-contact-lead {
    font-size: 14px !important;
    margin-bottom: 24px !important;
  }

  .lp-contact input,
  .lp-contact textarea {
    font-size: 16px !important;
  }

  .lp-contact button,
  .lp-contact input[type="submit"],
  .lp-contact .wpcf7-submit {
    width: 100% !important;
  }
}