/* ===== Google Fonts読み込み ===== */
@import url('https://fonts.googleapis.com/css2?family=Zen+Kaku+Gothic+New:wght@300;400&display=swap');

/* =========================================================
   Contactページ完全安全版CSS
   index/about に干渉しない。1カラム構成のみ担当。
   ※ メニュー類は style.css に完全委任。
   ========================================================= */

/* ============================================
   ★1. index の scroll-snap の影響を無効化（安全）
   ============================================ */
html, body {
  scroll-snap-type: none !important;   /* ← index の影響遮断 */
  overflow-y: auto !important;
  background: #000;
  margin: 0;
  font-family: 'Noto Sans JP', sans-serif;
}

/* ============================================
   ★2. このページのレイアウトを1カラムに固定（壊れない）
   ============================================ */

.contact-wrapper {
  width: 100%;
  max-width: 560px;
  margin: 140px auto 120px; /* 上に余白 → PC固定ヘッダーと干渉しない */
  padding: 0 24px;
  color: #fff;
  box-sizing: border-box;
}

/* ---- タイトル ---- */
.contact-wrapper h1 {
  font-family: "Zen Kaku Gothic New", sans-serif;
  font-weight: 400;
  font-size: 40px;
  letter-spacing: 0.05em;
  margin-bottom: 24px;
}

/* ---- 説明文 ---- */
.contact-wrapper p {
  font-size: 14px;
  color: #ccc;
  line-height: 1.7;
  margin-bottom: 32px;
}

/* ---- フォーム ---- */
.contact-form {
  display: flex;
  flex-direction: column;
  gap: 18px;
}

.contact-form input,
.contact-form textarea {
  width: 100%;
  padding: 12px 14px;
  font-size: 14px;
  color: #fff;
  background: rgba(255,255,255,0.1);
  border: 1px solid rgba(255,255,255,0.15);
  border-radius: 4px;
  outline: none;
  box-sizing: border-box;
}

.contact-form textarea {
  height: 120px;
  resize: vertical;
}

/* ---- 送信ボタン ---- */
.contact-form button {
  background: #9dc4d7;
  color: #000;
  border: none;
  padding: 12px 0;
  font-size: 14px;
  font-weight: bold;
  border-radius: 9999px;
  cursor: pointer;
  transition: opacity 0.25s ease;
}
.contact-form button:hover {
  opacity: 0.8;
}

/* ---- 成功メッセージ ---- */
.success-message {
  margin-top: 12px;
  color: #9dc4d7;
  font-size: 14px;
}

/* ============================================
   ★3. フッター（About と統一）
   ============================================ */
.footer-simple {
  margin-top: 80px;
  text-align: center;
  padding: 60px 0;
}
.footer-simple .footer-logo {
  width: 120px;
  opacity: 0.08;
  display: block;
  margin: 0 auto 12px;
  filter: grayscale(100%);
}
.footer-simple p {
  font-size: 12px;
  letter-spacing: 0.05em;
  color: #888;
}

/* ============================================
   ★4. SP レスポンシブ（style.css のメニューと衝突しない）
   ============================================ */
@media (max-width: 1280px) {
  .contact-wrapper {
    margin: 120px auto 80px;
    padding: 0 20px;
  }

  .contact-wrapper h1 {
    font-size: 32px;
  }
}

/* =========================================================
   PC 1281px以上：SPメニューを完全に消す（決定版）
   ========================================================= */
@media (min-width: 1281px) {
  header {
    display: none !important; /* ← SPヘッダー丸ごと非表示 */
  }

  .menu-panel,
  .menu-btn,
  .header-inner {
    display: none !important;
    visibility: hidden !important;
    opacity: 0 !important;
    pointer-events: none !important;
  }
}
