/* ====================================================================
 * global-footer.css — 下層ページ共通フッター（カンプフッター .home-footer-kampu）
 *
 * D-0 共通ガワ刷新。トップ専用 home.css のカンプフッター（§8）から
 * トップ限定スコープ接頭辞を除去したもの。下層公開ページ（members 系を除く）
 * にのみ enqueue する。トップ（page-home.php）は従来どおり home.css が担当
 * （本ファイルは home には読み込まない＝home 回帰ゼロを担保）。
 *
 * 抽出元: home.css §8「Footer（P15）」 L944-1072（.home-footer-kampu 関連ルール）。
 * トップ限定スコープ接頭辞 除去済み（生バイト検証で残存 0 件を確認）。
 *
 * 色/radius/transition はトークン参照（design-tokens.core.css に依存＝enqueue deps）。
 * 一時的に home.css とルールが重複する（技術負債）。解消トリガー: 下層展開が
 *   dev/pre で回帰なしを確認後、home.css 側を本ファイル参照化する。
 * ==================================================================== */

.home-footer-kampu {
  position: relative;
  z-index: 2;
  /* PR-B PC⑦: フッター背景を Blue #003594 へ（カンプ逸脱だがユーザー承認済・白文字 約10.4:1 でAAA可読性確保。
     Tier0 色役割定義 Blue=主色/Orange=アクセント に沿う是正） */
  background: var(--color-brand-blue);
  padding-top: var(--space-section);
}
@media print, screen and (min-width: 768px) {
  .home-footer-kampu { padding-right: var(--section-padding-right-pc); padding-bottom: 3rem; }
}
@media screen and (max-width: 767px) {
  .home-footer-kampu { padding-bottom: 5rem; }
}
/* [2026-06-23] 下層フッター間伸び是正。
   トップは .page-id-785 .wrapper（home.css L26-43）で max-width/中央寄せ/左右padding を担保していたが、
   PR#132 の下層展開でこの幅拘束（.page-id-785 スコープ）を取りこぼし、下層の .home-footer-kampu .wrapper が
   全幅に広がって間伸びしていた。トップと等価の幅拘束を .home-footer-kampu スコープで補う（グローバル .wrapper 非汚染）。
   display:flex はトップの .dp-Flexcolumn（縦並び）と等価挙動になるため付けず、現状の縦積み（block）を維持しつつ幅のみ揃える。 */
.home-footer-kampu .wrapper { margin: 0 auto; }
@media print, screen and (min-width: 768px) {
  .home-footer-kampu .wrapper {
    max-width: var(--container-max-width);       /* 1160px */
    width: 100%;
    padding-left: var(--container-padding-x-pc);  /* 20px（右paddingは .home-footer-kampu の section-padding-right-pc 120px が担当＝トップと一致） */
  }
}
@media screen and (max-width: 767px) {
  .home-footer-kampu .wrapper {
    width: 100%;
    padding-left: var(--container-padding-x-sp);  /* 16px */
    padding-right: var(--container-padding-x-sp);
  }
}
.home-footer-kampu #footer-Nav { width: 100%; }
@media print, screen and (min-width: 768px) {
  .home-footer-kampu #footer-Nav {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home-footer-kampu #footer-Nav .foot-Col { width: 25%; }
}
@media screen and (max-width: 767px) {
  .home-footer-kampu #footer-Nav { display: flex; flex-wrap: wrap; }
  .home-footer-kampu #footer-Nav .foot-Col { width: 47%; }
  .home-footer-kampu #footer-Nav .foot-Col:nth-child(3) { margin-top: 16px; }
  .home-footer-kampu #footer-Nav .foot-Col:last-child {
    display: flex;
    flex-direction: column;
    align-items: center;
    margin-top: 16px;
    width: 100%;
  }
}
.home-footer-kampu #footer-Nav .foot-Col { border-left: 1px solid var(--color-brand-white); }
.home-footer-kampu #footer-Nav .foot-Col:last-child { border-left: none; }
.home-footer-kampu #footer-Nav .foot-Col:last-child h3 {
  font-size: var(--font-size-footer-sns-heading);
  color: var(--color-brand-white);
  margin-bottom: 16px;
}
.home-footer-kampu #footer-Nav .foot-Col .f-Link {
  margin-left: var(--space-card-padding);
}
.home-footer-kampu #footer-Nav .foot-Col .f-Link li {
  margin-bottom: var(--space-link-vmargin);
}
.home-footer-kampu #footer-Nav .foot-Col .f-Link a {
  position: relative;
  color: var(--color-brand-white);
  font-size: 1rem;
  text-decoration: none;
  padding-left: 10px;
  line-height: 1.6;
  background-image: linear-gradient(to right, var(--color-brand-white), var(--color-brand-white));
  background-repeat: no-repeat;
  background-position: left 1.3em;
  background-size: 0 1px;
  transition: background-size var(--t-base);
}
.home-footer-kampu #footer-Nav .foot-Col .f-Link a::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0.6em;
  width: 4px;
  height: 4px;
  border-radius: var(--radius-circle);
  background: var(--color-brand-white);
}
.home-footer-kampu #footer-Nav .foot-Col .f-Link a:hover { background-size: 100% 1px; }
.home-footer-kampu #footer-Nav .sns-Link {
  display: flex;
  align-items: center;
  gap: 16px;
}
.home-footer-kampu #footer-Nav .sns-Link img { width: 23px; height: auto; }
.home-footer-kampu #foot-Logo img { width: 202px; height: auto; }
.home-footer-kampu #footer-Info {
  margin-top: var(--space-footer-info-top);
}
.home-footer-kampu #footer-Info p { color: var(--color-brand-white); }
@media print, screen and (min-width: 768px) {
  .home-footer-kampu #footer-Info {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
  }
  .home-footer-kampu #footer-Info ul { margin-right: auto; margin-left: 24px; gap: 24px; }
}
@media screen and (max-width: 767px) {
  .home-footer-kampu #footer-Info {
    display: flex;
    flex-direction: column;
    align-items: center;
    gap: 16px;
  }
  .home-footer-kampu #footer-Info > ul { order: 1; }
  .home-footer-kampu #footer-Info > p { order: 2; }
  .home-footer-kampu #footer-Info #foot-Logo { order: 3; }
  .home-footer-kampu #footer-Info ul { justify-content: center; gap: 16px; flex-wrap: wrap; }
}
.home-footer-kampu #footer-Info ul { display: flex; }
.home-footer-kampu #footer-Info ul li a {
  position: relative;
  display: inline;
  color: var(--color-brand-white);
  text-decoration: none;
  line-height: 1.6;
  background-image: linear-gradient(to right, var(--color-brand-white), var(--color-brand-white));
  background-repeat: no-repeat;
  background-position: left 1.3em;
  background-size: 0 1px;
  transition: background-size var(--t-base);
}
.home-footer-kampu #footer-Info ul li a:hover { background-size: 100% 1px; }
.home-footer-kampu .footer-copyright {
  text-align: center;
  color: var(--color-brand-white);
  margin-top: 24px;
  padding-bottom: 1.5rem;
}


/* [2026-06-21] Cocoon親 ul{list-style:disc; padding-left:40px} の打ち消し。
   トップは .page-id-785 ul（style.css L1286）で実施済の等価リセットを下層フッターにも適用。 */
.home-footer-kampu ul {
  list-style: none;
  padding-left: 0;
}
