html {
  scroll-behavior: auto !important;
}

body {
  margin: 0;
  padding: 0;
}

body {
  font-family: "Noto Sans JP", "Hiragino Kaku Gothic ProN", "Hiragino Sans",
               "Yu Gothic Medium", "Yu Gothic", Meiryo, sans-serif;
  background: #fff;  /* 全体の背景色 */
}


/* 固定ページのデフォルトタイトルを全て非表示 */
body.page .page-header,
body.page .entry-title,
body.page h1.entry-title,
body.page h1.page-title,
body.page .elementor-page-title,
body.page .wp-block-post-title{
  display: none !important;
}

/* =========================================================
   PCでは SP専用要素を完全に非表示（全ページ共通）
   - 固定ページ / 投稿 / アーカイブ すべて対象
   ========================================================= */
@media (min-width: 769px){

  /* モバイル専用テキストロゴ */
  #globalNavi .sp-site-title{
    display: none !important;
  }

  /* モバイル用トグルボタン */
  #globalNavi .sp-nav-toggle{
    display: none !important;
  }

  /* SPメニュー本体＋オーバーレイ */
  #globalNavi .sp-nav-panel,
  #globalNavi .sp-nav-overlay{
    display: none !important;
  }

  /* 念のため：SPメニュー内の要素もまとめて潰す */
  #globalNavi .sp-menu,
  #globalNavi .sp-nav-brand,
  #globalNavi .sp-nav-close{
    display: none !important;
  }
}




/* =========================================
   SPでは 100vw + transform を無効化して崩れ防止
========================================= */
@media (max-width: 768px){
  .site-footer .footer-upper,
  .site-footer .footer-middle,
  .site-footer .footer-lower{
    left: auto !important;
    transform: none !important;
    width: 100% !important;     /* 100vw をやめる */
    margin-left: 0 !important;
    margin-right: 0 !important;
  }
}


/* =========================================
   フッター直前の白い隙間（ページ最下部の謎余白）対策
   - 全ページ共通 / 最小構成
========================================= */

/* ブラウザ標準の余白をゼロ */
html, body{
  margin: 0 !important;
  padding: 0 !important;
}

/* メイン領域（Hello/Elementor）が下に余白を作るのを防ぐ */
#page,
.site,
#content,
.site-main,
.elementor,
.elementor-section-wrap,
.elementor-location-single,
.elementor-location-archive{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* 最終セクション由来の余白を殺す（Elementorの保険） */
.elementor-section:last-of-type{
  margin-bottom: 0 !important;
  padding-bottom: 0 !important;
}

/* フッター直前/フッター自体の余白をゼロ（保険） */
footer.site-footer,
.site-footer{
  margin-top: 0 !important;
  margin-bottom: 0 !important;
  padding-top: 0 !important;
  padding-bottom: 0 !important;
  display: block;
}



html{
  scroll-padding-top: 100px !important;
}


/* Contact From 7 用 */


/* フォーム全体の幅制御 */
.cf7-form{
  max-width: 750px;   /* ★ 横幅を制限 */
  margin: 0 auto;     /* ★ 中央寄せ */
  padding: 0 16px;    /* ★ モバイルで端にくっつかないよう保険 */
}



/* =========================================
   CF7 送信ボタン（ゴールド / 幅240 / 中央寄せ / 光学中央調整）
   ========================================= */

/* ラッパー：中央寄せ */
.cf-submit{
  text-align: center;
}

/* ボタン本体（button/inputの両方を想定しておく） */
.cf-submit .cf-wide-btn,
.wpcf7 input[type="submit"].cf-wide-btn,
.wpcf7 button.cf-wide-btn{
  width: 240px !important;
  max-width: 240px !important;
  height: 56px !important;

  /* 中央配置（箱としての中心） */
  display: inline-flex !important;
  align-items: center !important;
  justify-content: center !important;

  /* 余白は横のみ（上下0で安定） */
  padding: 0 16px !important;

  /* 文字の行箱を安定させる */
  line-height: 1 !important;
  white-space: nowrap !important;

  /* はみ出し防止 */
  overflow: hidden !important;

  /* 見た目 */
  background: rgba(164,131,98, 1) !important;
  border: none !important;
  outline: none !important;
  box-shadow: none !important;

  color: #fff !important;
  -webkit-text-fill-color: #fff !important;

  border-radius: 4px !important;
  cursor: pointer;

  font-size: 20px !important;
  font-weight: 700 !important;
  letter-spacing: 0.04em !important;
  text-align: center !important;

  box-sizing: border-box !important;
  appearance: none;
  -webkit-appearance: none;
}

/* ボタン内テキスト：光学中心（見た目中央）を微調整 */
.cf-submit .cf-wide-btn .cf-btn-text{
  display: inline-block;
  transform: translateY(-1px); /* ★ここで完璧調整：-2px〜+2pxで微調整 */
}



/* hover（任意：上品に少しだけ） */
@media (hover:hover){
  .cf-submit .cf-wide-btn:hover{
    filter: brightness(0.95);
  }
}



/* 3) hover（任意：少し濃く） */
@media (hover:hover){
  .cf-submit .cf-wide-btn:hover,
  .wpcf7 input[type="submit"].cf-wide-btn:hover,
  .wpcf7 button.cf-wide-btn:hover{
    filter: brightness(0.95);
  }
}


/* フォーム入力欄の見た目統一 */
.wpcf7 input,
.wpcf7 textarea,
.wpcf7 select{
  font-weight: 300;
}

/* 件名 select だけ太字になる問題を強制修正 */
.wpcf7 select.cf-wide{
  font-weight: 300 !important;
}

/* 送信ボタンの下に余白を追加 */
.cf-submit{
  margin-top: 48px;  /* ← 好みで 16〜32px */
  margin-bottom: 48px;  /* ← 好みで 16〜32px */
}
