/* ============================================
   s-nav-07 — ページ内ナビ（矢印付き横並び）
   アンカーリンク横並び + 矢印 + 下線
   ============================================ */

/* --- WP block margin reset --- */
:is(.s-nav-07 *) {
  margin: 0;
}

/* --- Nav container --- */
.s-nav-07 {
  container-type: inline-size;
  padding-top: var(--space-5-xl);
  padding-bottom: var(--space-5-xl);
  background-color: var(--color-bg);
}

/* --- Inner list (horizontal scroll on SP) --- */
.s-nav-07__list {
  display: flex;
  align-items: stretch;
  list-style: none;
  /* 帯(alignfull)が全幅でもリストは inner 幅で中央に置く */
  max-width: var(--width-inner);
  margin-inline: auto;
  padding: 0 var(--container-padding);
  overflow-x: auto;
  -webkit-overflow-scrolling: touch;
}

/* Hide scrollbar */
.s-nav-07__list::-webkit-scrollbar {
  display: none;
}

.s-nav-07__list {
  scrollbar-width: none;
}

/* --- Each nav item --- */
.s-nav-07__item {
  display: flex;
  align-items: center;
  flex: 1;
  min-width: 0;
}

/* --- Link --- */
.s-nav-07__link {
  display: flex;
  align-items: center;
  justify-content: space-between;
  gap: var(--space-sm);
  width: 100%;
  padding: var(--space-md) var(--space-lg);
  border-bottom: 1px solid var(--color-primary-light);
  text-decoration: none;
  color: var(--color-primary);
  font-size: var(--font-size-md);
  font-weight: var(--font-weight-normal);
  letter-spacing: var(--letter-spacing-wide);
  white-space: nowrap;
  transition: opacity var(--transition-normal);
}

.s-nav-07__link:hover {
  opacity: 0.7;
}

.s-nav-07__link a,
.s-nav-07__link a:hover {
  text-decoration: none;
  color: inherit;
}

/* --- Arrow ornament (Figma INDEX 矢印オーナメント) ---
   マークアップは material-icons の span のまま、グリフを mask 表示の
   実SVG（icon--arrow-nav-01.svg）へ置き換える。色は primary（mask＋background） */
.s-nav-07__arrow {
  flex-shrink: 0;
  display: inline-block;
  width: var(--font-size-3-xs);
  height: var(--font-size-3-xs);
  background-color: var(--color-primary);
  -webkit-mask: url("../../images/icon/icon--arrow-nav-01.svg") no-repeat center / contain;
  mask: url("../../images/icon/icon--arrow-nav-01.svg") no-repeat center / contain;
  overflow: hidden;
  font-size: 0;
  color: transparent;
  line-height: var(--line-height-none);
}

/* ===== Responsive ===== */

@container (max-width: 599px) {
  .s-nav-07 {
    padding-top: var(--space-xl);
    padding-bottom: var(--space-xl);
  }

  .s-nav-07__link {
    font-size: var(--font-size-sm);
    padding: var(--space-sm) var(--space-md);
  }

  .s-nav-07__item {
    flex: none;
  }
}

@container (min-width: 600px) {
  .s-nav-07__link {
    font-size: var(--font-size-lg);
    padding: var(--space-lg) var(--space-xl);
  }
}
