/* 縦方向に積み重ねて中央寄せ */
.site-header {
  display: flex;
  flex-direction: column;  /* 縦並びにする */
  align-items: center;     /* 横方向の中央揃え */
  justify-content: center;
  gap: 15px;               /* 各ブロック間の余白 */
  padding: 20px;
}

/* メニューの横並び中央寄せ */
.site-header nav ul {
  display: flex;
  gap: 20px;
  list-style: none;
  margin: 0;
  padding: 0;
}

.site-header {
  border-bottom: 1px solid rgba(0, 0, 0, 0.08); /* 超極細＆薄いグレー */
  padding-bottom: 15px; /* 下線と要素との間の余白 */
}

/* フッター全体を中央寄せ */
footer,
.site-footer,
.elementor-location-footer {
  text-align: center !important;
  display: flex !important;
  flex-direction: column !important;
  align-items: center !important;
  justify-content: center !important;
  padding: 30px 20px;
}

/* フッター内のメニュー（ナビゲーション）を横並び中央寄せ */
footer nav ul,
.site-footer nav ul {
  display: flex !important;
  justify-content: center !important;
  align-items: center !important;
  flex-wrap: wrap;             /* スマホ表示時に綺麗に折り返す */
  gap: 20px;                   /* メニュー同士の間隔 */
  list-style: none !important;
  padding: 0 !important;
  margin: 0 0 15px 0 !important;
}

/* フッター内の段落・テキストの中央寄せ */
footer p,
.site-footer p {
  text-align: center !important;
  margin: 0 auto;
}

/* フッターの上線をヘッダーの下線と完全統一 */
footer,
.site-footer,
.wp-block-template-part,
.site-info {
  border-top: 1px solid rgba(0, 0, 0, 0.08) !important; /* ヘッダーと同じ線種・濃さ */
  padding-top: 25px !important;                          /* 線とメニューの余白 */
  margin-top: 40px !important;                           /* フォームとの間の余白 */
}

/* WordPress.com のフッタークレジットを非表示にする */
.site-info,
.footer-credits,
.wp-block-site-generator,
.site-footer .imprint {
  display: none !important;
}

/* ログイン時に表示される「編集」リンクを非表示にする */
.post-edit-link,
a.post-edit-link,
.edit-link {
  display: none !important;
}

/* 「メニュー」というテキストだけを隠して「MENU」を表示する */
#toggle-menu {
  font-size: 0 !important; /* 直下の「メニュー」テキストのみ非表示にする */
}

/* 先頭に「MENU」を追加 */
#toggle-menu::before {
  content: "MENU" !important;
  font-size: 14px !important; /* お好みの文字サイズに調整してください */
  font-weight: bold;
  letter-spacing: 1px;
  margin-right: 6px; /* アイコン（+ や ×）との余白 */
}

/* アイコンや状態テキストの非表示化を防ぎ、元のサイズを維持する */
#toggle-menu .dropdown-icon {
  font-size: 14px !important; /* アイコン（+ / ×）のサイズ */
}


@media only screen and (max-width: 559px) {
    .mobile-nav-side .site-header #site-navigation.main-navigation #toggle-cart[for=woocommerce-toggle].button, .mobile-nav-side .site-header #site-navigation.main-navigation #toggle-menu {
        width: 80px;
			margin-bottom: 10px;
    }
}

/* --- メニューが開いた状態の時にMENUタグ全体を非表示にする --- */

/* 1. チェックボックス(#toggle)がオンのとき、MENUタグ（label）を消す */
#toggle:checked ~ label[for="toggle"],
#toggle:checked ~ #toggle-menu,
#toggle:checked + label[for="toggle"],
#toggle:checked + #toggle-menu {
  display: none !important;
}

/* 2. JavaScript等でopenクラスが付与される場合の非表示指定 */
label.open#toggle-menu,
label[for="toggle"].open,
#toggle-menu.open {
  display: none !important;
}

.dropdown-icon.open {
  display: block !important;
  text-align: right !important; /* または margin-left: auto; */
  margin-left: auto !important;
}