/* ========================================
   Patolaqshe Footer（Asti風・flex版）
   - .ptl-footer 以下のみに限定
   - flex で上段/下段レイアウト実現
   ======================================== */

/* フッター全体 */
.ptl-footer {
  /* カスタマイザ変数が未定義でも表示が途切れないようにフォールバックを追加 */
  font-family: var(--swl-font_family, 'Noto Serif JP', serif) !important;
  margin: 0;
  padding: 0;
}

/* 全子要素にフォント継承を強制 */
.ptl-footer * {
  font-family: inherit !important;
}

/* 親テーマのフッター色変数をローカルで明示上書き（透明背景・黒文字） */
.l-footer {
  --color_footer_bg: transparent;
  --color_footer_text: #333333;
  background: transparent;
}

/* リセット */
.ptl-footer ul {
  list-style: none;
  margin: 0;
  padding: 0;
}

.ptl-footer li {
  list-style: none;
  margin: 0;
  padding: 0;
}

/* ========================================
   上段（白背景）: ロゴ + SALON
   ======================================== */
.ptl-footer-inner {
  max-width: 1200px;
  margin: 0 auto;
  padding: 40px 20px 20px 20px;
  border-top: 1px solid #eee;
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  gap: 20px;
}

/* ロゴ（左側） */
.ptl-footer__logo {
  flex: 0 0 auto;
}

.ptl-footer__logo h2 {
  font-size: 16px;
  font-weight: 500;
  margin: 0;
  color: #333;
  letter-spacing: 0.05em;
  font-family: inherit !important;
}

/* ロゴ画像スタイル */
.ptl-footer__logo img {
  height: 40px;
  width: auto;
  display: block;
}

/* SALON（右側） */
.ptl-footer__salon {
  flex: 0 0 auto;
  text-align: right;
}

.ptl-footer__salon-label {
  font-size: 14px;
  font-weight: 700;
  color: #333;
  margin: 0 0 8px 0;
  letter-spacing: 0.05em;
}

.ptl-footer__salon-divider {
  display: none;
}

.ptl-footer__salon-links {
  display: flex;
  gap: 15px;
  align-items: center;
  justify-content: flex-end;
}

.ptl-footer__salon-link {
  font-size: 14px;
  color: #333;
  text-decoration: none;
  transition: opacity 0.3s;
}

.ptl-footer__salon-link:hover {
  opacity: 0.7;
}

/* ========================================
   下段（グレー背景）: ナビ左 + コピーライト右
   ======================================== */

/* グレー背景の親コンテナ（BOX化） */
.ptl-footer__lower {
  width: 100%;
  background: transparent;
  margin: 0;
  padding: 20px 20px 40px 20px;
  display: flex;
  justify-content: center;
}

/* 内側コンテナ：透明背景 + ナビとコピーライトを横並び */
.ptl-footer__lower-inner {
  max-width: 1200px;
  width: 100%;
  margin: 0;
  padding: 40px 20px;
  background: transparent;
  border-radius: 8px;
  display: flex;
  justify-content: space-between;
  align-items: center;
  gap: 40px;
}

/* ナビゲーション（左側） */
.ptl-footer__nav {
  flex: 1;
  background: transparent;
  margin: 0;
  padding: 0;
}

.ptl-footer__nav-list {
  display: flex;
  gap: 28px;
  flex-wrap: wrap;
  align-items: center;
  justify-content: flex-start;
  margin: 0;
  padding: 0;
}

.ptl-footer__nav-item {
  font-size: 13px;
  position: relative;
  padding-left: 0;
  margin: 0;
}

/* 点は不要 */
.ptl-footer__nav-item:before {
  display: none;
}

.ptl-footer__nav-separator {
  display: none;
}

/* ナビリンク */
.ptl-footer .ptl-footer__nav .ptl-footer__nav-link {
  font-family: var(--swl-font_family, 'Noto Serif JP', serif) !important;
  font-weight: 500 !important;
  color: #666 !important;
  font-size: 13px !important;
  letter-spacing: 0.08em !important;
  text-decoration: none !important;
  transition: opacity 0.3s;
  display: inline !important;
  visibility: visible !important;
  opacity: 1 !important;
}

.ptl-footer__nav-link:hover {
  opacity: 0.6;
}

/* コピーライト（右側） */
.ptl-footer__copyright {
  flex: 0 0 auto;
  background: transparent;
  padding: 0;
  text-align: right;
  font-style: normal;
}

.ptl-footer__copyright p {
  font-family: var(--swl-font_family);
  font-weight: 400;
  font-size: 11px;
  color: #aaa;
  margin: 0;
  line-height: 1;
  letter-spacing: 0.05em;
}
