/* Location archive styles moved from template-parts/location-archive-body.php. */
.media-pane[hidden]{display:none;}
		.media-switcher [data-pane="insta"] .insta-scroll{height:100%;}
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal{
  margin-top:0;
  padding-top:0;
  border-top:0;
}
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .topcat-slider--aggregate,
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__block,
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .feature-slider,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .topcat-slider--aggregate,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__block,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .feature-slider{
  margin-top:0;
  padding-top:0;
  border-top:0;
}
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__aggregate-empty,
body.iks-mobile-shell-active .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__aggregate-status,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__aggregate-empty,
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .spot-related--aggregate-minimal .spot-related__aggregate-status{
  margin-top:0;
}
.location-archive-header__tag{display:flex;align-items:center;gap:6px;}
.location-archive-header__tag-icon{width:16px;height:16px;display:inline-flex;align-items:center;justify-content:center;}
.location-archive-header__tag-icon svg{width:16px;height:16px;fill:currentColor;}
.location-archive-header__tag-icon img{display:block;width:16px;height:16px;object-fit:contain;}
/* Phase 2B-3d-5: quick-filter root and button base sync from inline-style.php. */
.iks-spot-quick-filter{
  position:relative;
  z-index:50;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:7px;
  max-width:100%;
  min-width:0;
}
.iks-spot-quick-filter__button{
  display:inline-flex;
  align-items:center;
  justify-content:center;
  gap:6px;
  max-width:100%;
  min-height:32px;
  padding:3px 2px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:rgba(248,250,252,.94);
  font:inherit;
  font-size:15px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:0;
  text-align:center;
  text-shadow:0 2px 10px rgba(0,0,0,.3);
  box-shadow:none;
  cursor:pointer;
}
/* Phase 2B-3d-7: quick-filter state sync from inline-style.php. */
.iks-spot-quick-filter__button:hover{
  color:#fffaf0;
  text-decoration:underline;
  text-underline-offset:3px;
}
.iks-spot-quick-filter__button:focus-visible{
  outline:2px solid rgba(14,165,233,.68);
  outline-offset:2px;
}
/* Phase 2B-3d-2: quick-filter static display sync from inline-style.php. */
.iks-spot-quick-filter__label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.iks-spot-quick-filter__button--area .iks-spot-quick-filter__label{
  max-width:min(36vw, 170px);
}
.iks-spot-quick-filter__button--category .iks-spot-quick-filter__label{
  max-width:min(44vw, 220px);
}
.iks-spot-quick-filter__separator{
  flex:0 0 auto;
  color:rgba(248,250,252,.8);
  font-size:14px;
  font-weight:700;
  line-height:1;
  text-shadow:0 2px 10px rgba(0,0,0,.28);
}
/* Phase 2B-3d-4: quick-filter caret and option base sync from inline-style.php. */
.iks-spot-quick-filter__caret{
  flex:0 0 auto;
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
}
/* Phase 2B-3d-6: quick-filter category and menu base sync from inline-style.php. */
.iks-spot-quick-filter__category{
  position:static;
  display:inline-flex;
  min-width:0;
}
.iks-spot-quick-filter__category.is-open .iks-spot-quick-filter__button--category .iks-spot-quick-filter__caret{
  transform:translateY(2px) rotate(225deg);
}
.iks-spot-quick-filter__menu{
  position:absolute;
  top:calc(100% + 7px);
  left:0;
  right:auto;
  transform:none;
  z-index:120;
  display:grid;
  gap:2px;
  width:min(320px, calc(100vw - 32px));
  min-width:min(250px, calc(100vw - 32px));
  max-width:calc(100vw - 32px);
  max-height:min(62vh, 380px);
  box-sizing:border-box;
  padding:6px;
  overflow:auto;
  border:1px solid rgba(148,163,184,.28);
  border-radius:6px;
  background:#fff;
  box-shadow:0 16px 34px rgba(15,23,42,.18);
}
.iks-spot-quick-filter__menu[hidden]{
  display:none;
}
.iks-spot-quick-filter__option{
  display:flex;
  align-items:center;
  gap:10px;
  width:100%;
  min-height:42px;
  padding:9px 11px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:#334155;
  font:inherit;
  font-size:14px;
  font-weight:700;
  line-height:1.3;
  letter-spacing:0;
  text-align:left;
  cursor:pointer;
}
.iks-spot-quick-filter__option:hover,
.iks-spot-quick-filter__option:focus-visible,
.iks-spot-quick-filter__option.is-selected{
  background:#f1f5f9;
  outline:none;
}
.iks-spot-quick-filter__option-icon{
  flex:0 0 auto;
  width:22px;
  height:22px;
  display:inline-flex;
  align-items:center;
  justify-content:center;
  border-radius:50%;
  background:#fff;
  box-shadow:inset 0 0 0 1px rgba(148,163,184,.2);
}
.iks-spot-quick-filter__option-icon img{
  display:block;
  width:16px;
  height:16px;
  object-fit:contain;
}
.iks-spot-quick-filter__option-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.iks-spot-feature-condition{
  position:relative;
  z-index:40;
  display:inline-block;
  width:auto;
  max-width:100%;
  margin:9px 0 0;
}
.iks-mobile-shell__spot-shell .iks-spot-current-heading{
  overflow:visible;
  z-index:20;
}
.iks-mobile-shell__spot-shell .iks-spot-current-heading__conditions{
  margin-top:0;
}
.iks-spot-feature-condition__button{
  display:inline-flex;
  align-items:center;
  justify-content:flex-start;
  gap:7px;
  max-width:100%;
  min-height:30px;
  padding:3px 2px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:rgba(248,250,252,.9);
  font:inherit;
  font-size:14px;
  font-weight:500;
  line-height:1.35;
  letter-spacing:0;
  text-align:left;
  text-shadow:0 2px 10px rgba(0,0,0,.28);
  box-shadow:none;
  cursor:pointer;
}
.iks-spot-feature-condition__button:hover{
  color:#fffaf0;
  text-decoration:underline;
  text-underline-offset:3px;
}
.iks-spot-feature-condition__button:focus-visible{
  outline:2px solid rgba(14,165,233,.65);
  outline-offset:2px;
}
.iks-spot-feature-condition__button-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.iks-spot-feature-condition__caret{
  flex:0 0 auto;
  width:7px;
  height:7px;
  border-right:1.5px solid currentColor;
  border-bottom:1.5px solid currentColor;
  transform:translateY(-2px) rotate(45deg);
}
.iks-spot-feature-condition.is-open .iks-spot-feature-condition__caret{
  transform:translateY(2px) rotate(225deg);
}
.iks-spot-feature-condition__menu{
  position:absolute;
  top:calc(100% + 5px);
  left:0;
  right:auto;
  z-index:90;
  display:grid;
  gap:2px;
  width:max-content;
  min-width:min(270px, calc(100vw - 32px));
  max-width:min(360px, calc(100vw - 32px));
  max-height:min(60vh, 320px);
  padding:6px;
  overflow:auto;
  border:1px solid rgba(148,163,184,.28);
  border-radius:6px;
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.14);
}
.iks-spot-feature-condition__menu[hidden]{
  display:none;
}
.iks-spot-feature-condition__option{
  display:flex;
  align-items:center;
  justify-content:space-between;
  gap:10px;
  width:100%;
  min-height:36px;
  padding:8px 10px;
  border:0;
  border-radius:4px;
  background:transparent;
  color:#334155;
  font:inherit;
  font-size:13.5px;
  font-weight:500;
  line-height:1.3;
  letter-spacing:0;
  text-align:left;
  cursor:pointer;
}
.iks-spot-feature-condition__option:hover,
.iks-spot-feature-condition__option:focus-visible,
.iks-spot-feature-condition__option.is-selected{
  background:#f1f5f9;
  outline:none;
}
.iks-spot-feature-condition__option.is-disabled,
.iks-spot-feature-condition__option:disabled{
  color:#cbd5e1;
  cursor:not-allowed;
}
.iks-spot-feature-condition__option-label{
  min-width:0;
  overflow:hidden;
  text-overflow:ellipsis;
  white-space:nowrap;
}
.iks-spot-feature-condition__option-count{
  flex:0 0 auto;
  color:currentColor;
  font-variant-numeric:tabular-nums;
}
.iks-spot-current-heading__conditions + .iks-spot-current-heading__title{
  margin-top:4px;
}
.iks-spot-current-heading__conditions[hidden] + .iks-spot-current-heading__title{
  margin-top:0;
}
body.iks-mobile-shell-desktop-preview .iks-mobile-shell__spot-shell .iks-spot-feature-condition__button{
  border:0;
  background:transparent;
  color:#64748b;
  text-shadow:none;
  box-shadow:none;
}
body.iks-mobile-shell-desktop-preview .iks-mobile-shell__spot-shell .iks-spot-quick-filter__button,
body.iks-mobile-shell-desktop-preview .iks-mobile-shell__spot-shell .iks-spot-quick-filter__separator{
  color:#334155;
  text-shadow:none;
}
body.iks-mobile-shell-desktop-preview .iks-mobile-shell__spot-shell .iks-spot-feature-condition__menu{
  border:1px solid rgba(148,163,184,.3);
  background:#fff;
  box-shadow:0 12px 28px rgba(15,23,42,.13);
}
@media (max-width:420px){
  /* Phase 2B-3d-9: quick-filter narrow-width sync from inline-style.php. */
  .iks-spot-quick-filter__label{
    white-space:normal;
  }
  .iks-spot-quick-filter{
    gap:5px;
  }
  .iks-spot-quick-filter__button{
    font-size:14px;
  }
  .iks-spot-feature-condition__button-label,
  .iks-spot-feature-condition__option-label{
    white-space:normal;
  }
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="ベビーカー"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="ベビーカー"]{
  --iks-mobile-shell-tag-accent:#0ea5e9;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="雨（屋内）"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="雨（屋内）"]{
  --iks-mobile-shell-tag-accent:#2563eb;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="授乳室"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="授乳室"]{
  --iks-mobile-shell-tag-accent:#a855f7;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="おむつ台"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="おむつ台"]{
  --iks-mobile-shell-tag-accent:#f97316;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="公園"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="公園"]{
  --iks-mobile-shell-tag-accent:#22c55e;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="キッズパーク"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="キッズパーク"]{
  --iks-mobile-shell-tag-accent:#f59e0b;
  --iks-mobile-shell-tag-ink:#111827;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="公共施設"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="公共施設"]{
  --iks-mobile-shell-tag-accent:#14b8a6;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="宿泊"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="宿泊"]{
  --iks-mobile-shell-tag-accent:#db2777;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="ホテル"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="ホテル"]{
  --iks-mobile-shell-tag-accent:#db2777;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="動物園"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="動物園"]{
  --iks-mobile-shell-tag-accent:#84cc16;
  --iks-mobile-shell-tag-ink:#111827;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="水族館"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="水族館"]{
  --iks-mobile-shell-tag-accent:#0891b2;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="アウトドア"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="アウトドア"]{
  --iks-mobile-shell-tag-accent:#a16207;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="水遊び"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="水遊び"]{
  --iks-mobile-shell-tag-accent:#0284c7;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="商業施設"],
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature="商業施設"]{
  --iks-mobile-shell-tag-accent:#64748b;
  --iks-mobile-shell-tag-ink:#ffffff;
}
body.iks-mobile-shell-active.iks-active-tab-current.iks-current-target-spot .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature]:is(.is-active,.is-slider-selected,[aria-pressed="true"]),
.iks-mobile-shell[data-current-target="spot"][data-active-tab="current"] .iks-mobile-shell__spot-shell .location-archive-header__tag[data-feature]:is(.is-active,.is-slider-selected,[aria-pressed="true"]){
  border-color:var(--iks-mobile-shell-tag-accent,#1d4ed8) !important;
  background:var(--iks-mobile-shell-tag-accent,#1d4ed8) !important;
  color:var(--iks-mobile-shell-tag-ink,#ffffff) !important;
  box-shadow:0 8px 20px rgba(15,23,42,.24) !important;
}
body:is(.tax-location, .has-location-header) .location-archive-heading{
  margin:clamp(14px,2.8vw,30px) 0 clamp(28px,4.8vw,56px);
  text-align:center;
}
body:is(.tax-location, .has-location-header) .location-archive-heading--collection{
  margin:clamp(8px,1.8vw,18px) 0 clamp(12px,2.4vw,24px);
}
body:is(.tax-location, .has-location-header) .location-archive-heading__title{
  margin:0;
  display:inline-flex;
  flex-wrap:wrap;
  align-items:baseline;
  justify-content:center;
  gap:.16em;
  font-size:clamp(30px,5.4vw,68px);
  font-weight:900;
  line-height:1.15;
  letter-spacing:.01em;
  color:#1f2a44;
  text-wrap:balance;
}
body:is(.tax-location, .has-location-header) .location-archive-heading__title .iks-h1__lead,
body:is(.tax-location, .has-location-header) .location-archive-heading__title .iks-h1__tail{
  color:inherit;
}
body:is(.tax-location, .has-location-header) .location-archive-heading__title .iks-h1__spot{
  display:inline-block;
  padding:0 .02em;
  background:linear-gradient(120deg,#ff6a9c 0%,#f489ac 45%,#d9a5b6 100%);
  -webkit-background-clip:text;
  background-clip:text;
  color:transparent;
}
body:is(.tax-location, .has-location-header) .location-archive-heading__near-label{
  display:inline-flex;
  align-items:center;
  margin-left:.35em;
  padding:.2em .62em;
  border-radius:999px;
  font-size:clamp(12px,1.6vw,18px);
  font-weight:800;
  line-height:1;
  letter-spacing:.02em;
  color:#2f4f67;
  background:rgba(173,224,234,.36);
}
@media (max-width:768px){
  body:is(.tax-location, .has-location-header) .location-archive-heading__title{
    font-size:clamp(28px,9vw,44px);
    line-height:1.22;
  }
  body:is(.tax-location, .has-location-header) .location-archive-heading__near-label{
    margin-top:.22em;
  }
}

/* =============== 0件ページ：導線（P1） =============== */
.iks-zero{
  max-width:980px;
  margin:26px auto 42px;
  padding:16px 14px;
  border:1px solid rgba(24,32,42,.12);
  border-radius:16px;
  background:rgba(255,255,255,.78);
  backdrop-filter:blur(8px);
}
.iks-zero__lead{
  margin:0 0 14px;
  font-weight:800;
  letter-spacing:.01em;
  color:#18202a;
}
.iks-zero__grid{
  display:grid;
  gap:14px;
  grid-template-columns:repeat(auto-fit, minmax(240px, 1fr));
}
.iks-zero__h{
  margin:0 0 8px;
  font-size:14px;
  font-weight:900;
  letter-spacing:.02em;
  color:#18202a;
}
.iks-zero__list{
  margin:0;
  padding-left:18px;
}
.iks-zero__list li{margin:0 0 6px;}
.iks-zero__link{
  color:#18202a;
  text-decoration:underline;
  text-underline-offset:2px;
}
.iks-zero__chips{display:flex;flex-wrap:wrap;gap:8px;}
.iks-zero__chip{
  display:inline-flex;
  align-items:center;
  gap:6px;
  padding:8px 10px;
  border-radius:999px;
  border:1px solid rgba(24,32,42,.12);
  background:#fff;
  color:#18202a;
  text-decoration:none;
  font-weight:800;
  line-height:1;
}
.iks-zero__chip:hover{background:rgba(255,47,147,.08);}
@media (max-width:480px){
  .iks-zero{padding:14px 12px;}
  .iks-zero__list{padding-left:16px;}
}

/* Feature slider: double the slide size on location archive */
.location-archive-header .feature-slider{
  --feature-slide-size: clamp(220px, 36vw, 300px);
}
@media (max-width:768px){
  .location-archive-header .feature-slider{
    --feature-slide-size: clamp(140px, 150vw, 220px);
  }
}

.location-archive.is-detail-open .location-archive-heading {
  display: none;
}
/* Detail view: hide search/header UI so media starts at top */
.location-archive.is-detail-open .location-archive-header,
.location-archive.is-detail-open .location-archive-search,
.location-archive.is-detail-open .location-archive-distance,
.location-archive.is-detail-open .location-archive-floating-tags,
.location-archive.is-detail-open .iks-home-limeband {
  display: none;
}

/* TOP: セクション順を固定（育あるある -> 育スポット -> 育記事） */
body.home.tax-location #locationArchive{
  display:flex;
  flex-direction:column;
}
body.home.tax-location #locationArchive > #aruaruCategoryHeading{
  order:-30;
}
body.home.tax-location #locationArchive > #aruaruCategorySliders{
  order:-29;
}
body.home.tax-location #locationArchive > .iks-home-limeband--below-slider{
  order:-20;
}
body.home.tax-location #locationArchive > #spotCategorySliders{
  order:-19;
}
body.home.tax-location #locationArchive > .location-archive-header{
  order:-10;
}

/* ============ TOP カテゴリ横スライダー：アコーディオン ============ */
.topcat-slider .feature-slider__head {
  cursor: pointer;
  user-select: none;
  display: flex;
  align-items: center;
}
.topcat-toggle-icon {
  display: none;
  width: 9px;
  height: 9px;
  border-right: 2.5px solid currentColor;
  border-bottom: 2.5px solid currentColor;
  flex-shrink: 0;
  margin-left: 10px;
  opacity: 0.55;
  transition: transform 0.22s;
}
/* 折りたたみ中: ▼ */
.topcat-slider[data-collapsed] .topcat-toggle-icon {
  transform: translateY(-25%) rotate(45deg);
}
/* 展開中: ▲ */
.topcat-slider:not([data-collapsed]) .topcat-toggle-icon {
  transform: translateY(20%) rotate(-135deg);
}
.topcat-slider[data-collapsed] .feature-slider__wrap {
  display: none;
}
/* 折りたたみ中：ブロックと帯を小さく（TOP カテゴリスライダー） */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed]{
  /* もともとの左右paddingは維持しつつ、上下だけ薄くする */
  padding-top: 6px;
  padding-bottom: 6px;
}
/* 折りたたみ中：帯（タイトル行）を薄く・フォントを縮小 */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .feature-slider__head{
  padding: 2px calc(var(--feature-nav-w, 44px) + 10px);
  margin-bottom: 0;
  min-height: 0;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .feature-slider__title{
  font-size: 14px;
  line-height: 1.15;
  margin: 0;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .topcat-toggle-icon{
  width: 8px;
  height: 8px;
  border-right-width: 2px;
  border-bottom-width: 2px;
  margin-left: 8px;
}
/* ===== TOP カテゴリスライダー：タイトル（カテゴリ名 ＋ カウンター） ===== */
.topcat-slider .feature-slider__title {
  flex: 1;      /* ヘッド幅を使い切る */
  min-width: 0;
}
/* JS が .feature-slider__title-text の innerHTML を
   「<span class="feature-slider__title-cat">公園</span>
    <span class="feature-slider__title-counter">1/848</span>」
   に書き換える。CSS Grid 3列で
   「空（左 1fr） | 公園（中央 auto） | 1/848（右 1fr）」を配置。 */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-text {
  display: grid;
  grid-template-columns: 1fr auto 1fr;
  align-items: center;
  width: 100%;
}
/* カテゴリ名：2列目（中央）に配置 */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-cat {
  grid-column: 2;
  position: relative;
  display: inline-flex;
  align-items: center;
  justify-content: center;
  gap: 0.34em;
  min-width: 0;
  text-align: center;
  font-weight: 900;
  white-space: nowrap;
  margin: 0;
  color: #18202a;
  --topcat-icon-size: clamp(44px, 5.2vw, 52px);
  --topcat-icon-image: var(--topcat-icon-image-override, none);
  --topcat-line-color: rgba(24,32,42,.26);
  --topcat-line-w: clamp(140px, 28vw, 300px);
  --topcat-line-h: 4px;
  --topcat-line-bottom: -0.24em;
  --topcat-line-opacity: .92;
  --topcat-line-bg: linear-gradient(var(--topcat-line-color), var(--topcat-line-color));
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-cat::before {
  content: "";
  flex: 0 0 auto;
  width: var(--topcat-icon-size);
  height: var(--topcat-icon-size);
  border-radius: 0;
  background-image:
    var(--topcat-icon-image, none),
    radial-gradient(circle at 50% 50%, rgba(61,188,210,.92) 0 42%, rgba(61,188,210,0) 44% 100%);
  background-repeat: no-repeat, no-repeat;
  background-position: center center, center center;
  background-size: contain, 56% 56%;
  box-shadow: none;
  background-color: transparent;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-cat::after {
  content: none;
}

/* 育アイテム/育ワザ/育あるある：青丸は新着のみ */
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-cat::before {
  background-image: var(--topcat-icon-image, none);
  background-repeat: no-repeat;
  background-position: center center;
  background-size: contain;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="新着"] .feature-slider__title-cat::before {
  background-image:
    var(--topcat-icon-image, none),
    radial-gradient(circle at 50% 50%, rgba(61,188,210,.92) 0 42%, rgba(61,188,210,0) 44% 100%);
  background-repeat: no-repeat, no-repeat;
  background-position: center center, center center;
  background-size: contain, 56% 56%;
}

/* 共通フォールバック（未定義カテゴリ） */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label] .feature-slider__title-cat {
  --topcat-line-color: rgba(100,116,139,.30);
  --topcat-line-bg: linear-gradient(var(--topcat-line-color), var(--topcat-line-color));
}

/* カテゴリ別アイコン + 見出し線 */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="公園"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/公園.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 6px;
  --topcat-line-color: rgba(57,143,53,.85);
  --topcat-line-bg: url('../img/grass-divider.svg') center / 100% 100% no-repeat;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="宿泊"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/宿泊.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 8px;
  --topcat-line-color: rgba(199,103,63,.75);
  --topcat-line-bg:
    linear-gradient(45deg, transparent 44%, rgba(199,103,63,.78) 45% 55%, transparent 56%) right 7px center / 8px 8px no-repeat,
    linear-gradient(-45deg, transparent 44%, rgba(199,103,63,.78) 45% 55%, transparent 56%) right 7px center / 8px 8px no-repeat,
    linear-gradient(rgba(199,103,63,.55), rgba(199,103,63,.55)) left center / 100% 1.5px no-repeat;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="公共施設"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/公共施設.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(64,118,201,.70);
  --topcat-line-bg:
    radial-gradient(circle, rgba(64,118,201,.72) 1.2px, transparent 1.6px) left center / 7px 4px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="キッズパーク"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/キッズパーク.png');
  --topcat-line-w: clamp(160px, 32vw, 340px);
  --topcat-line-h: 5px;
  --topcat-line-color: rgba(234,140,56,.78);
  --topcat-line-bg:
    radial-gradient(circle, rgba(234,140,56,.74) 1.35px, transparent 1.9px) left center / 8px 5px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="動物園"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/動物園.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(170,130,48,.78);
  --topcat-line-bg:
    radial-gradient(circle, rgba(170,130,48,.75) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="水族館"] .feature-slider__title-cat {
  /* 専用アイコンが未定義でも線で差を出す（アイコンはフォールバックで表示） */
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 5px;
  --topcat-line-color: rgba(50,140,198,.72);
  --topcat-line-bg:
    radial-gradient(6px 4px at 6px 100%, transparent 60%, rgba(50,140,198,.62) 62% 72%, transparent 74%) 0 0 / 12px 5px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="水遊び"] .feature-slider__title-cat {
  --topcat-icon-image: none;
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 5px;
  --topcat-line-color: rgba(56,164,214,.74);
  --topcat-line-bg:
    radial-gradient(6px 4px at 6px 100%, transparent 60%, rgba(56,164,214,.62) 62% 72%, transparent 74%) 0 0 / 12px 5px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="アウトドア"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/アウトドア.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(92,142,74,.65);
  --topcat-line-bg:
    linear-gradient(rgba(92,142,74,.42), rgba(92,142,74,.42)) left center / 100% 1.5px no-repeat;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="商業施設"] .feature-slider__title-cat {
  --topcat-icon-image: url('https://ikukore.jp/wp-content/uploads/2026/05/商業施設.png');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(210,100,138,.66);
  --topcat-line-bg:
    radial-gradient(circle, rgba(210,100,138,.62) 1px, transparent 1.6px) left center / 8px 4px repeat-x;
}

/* ===== 月齢カテゴリアイコン（育アイテム・育ワザ） ===== */
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="出産準備"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-pregnancy.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(160,120,220,.70);
  --topcat-line-bg:
    radial-gradient(circle, rgba(160,120,220,.65) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="0〜3か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-0-3m.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(249,140,175,.78);
  --topcat-line-bg:
    radial-gradient(circle, rgba(249,140,175,.74) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="0~3か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="0〜3 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="0~3 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="0～3か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-0-3m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4〜6か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-4-6m.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(249,160,100,.78);
  --topcat-line-bg:
    radial-gradient(circle, rgba(249,160,100,.74) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4~6か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4〜6 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4~6 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4～6か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-4-6m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7〜9か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-7-9m.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(240,200,60,.80);
  --topcat-line-bg:
    radial-gradient(circle, rgba(240,200,60,.76) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7~9か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7〜9 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7~9 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7～9か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-7-9m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7〜10か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7~10か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7〜10 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7~10 か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="7～10か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-7-10m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="10〜12か月"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-10-12m.svg');
  --topcat-line-w: clamp(160px, 32vw, 340px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(180,220,60,.78);
  --topcat-line-bg:
    radial-gradient(circle, rgba(180,220,60,.74) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="1歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-1y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(80,200,130,.76);
  --topcat-line-bg:
    radial-gradient(circle, rgba(80,200,130,.72) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="2歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-2y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(56,190,210,.74);
  --topcat-line-bg:
    radial-gradient(circle, rgba(56,190,210,.70) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="3歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-3y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(80,150,240,.74);
  --topcat-line-bg:
    radial-gradient(circle, rgba(80,150,240,.70) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="4歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-4y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(100,120,230,.72);
  --topcat-line-bg:
    radial-gradient(circle, rgba(100,120,230,.68) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="5歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-5y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(150,100,220,.72);
  --topcat-line-bg:
    radial-gradient(circle, rgba(150,100,220,.68) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="6歳"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-6y.svg');
  --topcat-line-w: clamp(150px, 30vw, 320px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(200,80,190,.70);
  --topcat-line-bg:
    radial-gradient(circle, rgba(200,80,190,.66) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-label="小学生低学年"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-elem-low.svg');
  --topcat-line-w: clamp(160px, 32vw, 340px);
  --topcat-line-h: 4px;
  --topcat-line-color: rgba(60,100,200,.72);
  --topcat-line-bg:
    radial-gradient(circle, rgba(60,100,200,.68) 1.2px, transparent 1.7px) left center / 8px 4px repeat-x;
}
/* 月齢term名が 0~3 か月 などへ変更されても、slug一致でアイコンを維持 */
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="pregnancy"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-pregnancy.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="0-3m"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-0-3m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="4-6m"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-4-6m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="7-9m"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-7-9m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="7-10m"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-7-10m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="10-12m"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-10-12m.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="1y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-1y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="2y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-2y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="3y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-3y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="4y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-4y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="5y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-5y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="6y"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-6y.svg');
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-cat-slug="elem-low"] .feature-slider__title-cat {
  --topcat-icon-image: url('../img/icons/age-elem-low.svg');
}
/* 折りたたみ時：月齢アイコン表示 */
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="出産準備"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="0〜3か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="4〜6か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="7〜9か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="10〜12か月"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="1歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="2歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="3歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="4歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="5歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="6歳"] .feature-slider__title-cat,
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="小学生低学年"] .feature-slider__title-cat {
  --topcat-line-color: rgba(100,116,139,.20);
}

/* カウンター（〇/848）：3列目（右列）の左端に置き、カテゴリ名の右へ15px空ける */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider .feature-slider__title-counter {
  grid-column: 3;
  justify-self: start;
  text-align: left;
  margin-left: 15px;
  position: static;
  transform: none;
  font-size: 0.63em;
  font-weight: 600;
  color: #b3bdc9;
  letter-spacing: 0.06em;
  white-space: nowrap;
}
/* 「近い順」ラベル（counter の内側に入れるため inline 表示） */
.topcat-slider .feature-slider__title-near {
  font-size: 0.88em;
  color: #3dbcd2;
  font-weight: 700;
  margin-left: 0.2em;
}
/* ポップアニメーション */
@keyframes iks-cat-pop {
  0%   { transform: scale(0.68); opacity: 0; }
  62%  { transform: scale(1.12);             }
  100% { transform: scale(1);    opacity: 1; }
}
.topcat-slider--cat-anim .feature-slider__title-cat {
  animation: iks-cat-pop 0.52s cubic-bezier(0.34, 1.56, 0.64, 1) both;
}

/* 折りたたみ中（A案）：アイコン + 短い見出し線を簡略表示 */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .feature-slider__title-cat {
  --topcat-icon-size: 15px;
  --topcat-line-w: clamp(90px, 18vw, 180px);
  --topcat-line-h: 3px;
  --topcat-line-bottom: -0.10em;
  --topcat-line-opacity: .56;
  gap: 0.26em;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .feature-slider__title-cat::before {
  box-shadow: none;
  background-color: transparent;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="公園"] .feature-slider__title-cat {
  --topcat-line-h: 4px;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="宿泊"] .feature-slider__title-cat {
  /* 折りたたみ帯では星を省略して直線に簡略化 */
  --topcat-line-h: 3px;
  --topcat-line-bg: linear-gradient(rgba(199,103,63,.50), rgba(199,103,63,.50));
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="公共施設"] .feature-slider__title-cat {
  --topcat-line-bg: radial-gradient(circle, rgba(64,118,201,.56) 1px, transparent 1.4px) left center / 6px 3px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="キッズパーク"] .feature-slider__title-cat {
  --topcat-line-bg: radial-gradient(circle, rgba(234,140,56,.56) 1px, transparent 1.4px) left center / 6px 3px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="動物園"] .feature-slider__title-cat {
  --topcat-line-bg: radial-gradient(circle, rgba(170,130,48,.56) 1px, transparent 1.4px) left center / 6px 3px repeat-x;
}
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="水族館"] .feature-slider__title-cat,
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed][data-cat-label="水遊び"] .feature-slider__title-cat {
  --topcat-line-bg: radial-gradient(4px 3px at 4px 100%, transparent 60%, rgba(56,164,214,.50) 62% 72%, transparent 74%) 0 0 / 8px 3px repeat-x;
}
/* 折りたたみ中はカウンター非表示（帯が小さいため） */
:is(#spotCategorySliders, #itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .topcat-slider[data-collapsed] .feature-slider__title-counter {
  display: none;
}

/* ===== TOP コンテンツスライダー：もっと見る（育アイテム/育ワザ/育あるある） ===== */
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .feature-slider__more{
  justify-self:end;
  display:inline-flex;
  align-items:center;
  gap:.38em;
  padding:.38rem .82rem;
  border-radius:999px;
  border:1.5px solid #3dbcd2;
  background:transparent;
  color:#3dbcd2;
  font-size:.78rem;
  font-weight:700;
  line-height:1;
  letter-spacing:.04em;
  text-decoration:none;
  box-shadow:none;
  transition:background .16s ease, color .16s ease;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .feature-slider__more::after{
  content:"›";
  font-size:1.1em;
  font-weight:700;
  line-height:1;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .feature-slider__more:hover{
  background:#3dbcd2;
  color:#fff;
}
:is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .feature-slider__more:focus-visible{
  outline:2px solid #3dbcd2;
  outline-offset:2px;
}
@media (max-width:768px){
  :is(#itemCategorySliders, #wazaCategorySliders, #aruaruCategorySliders) .feature-slider__more{
    padding:.34rem .72rem;
    font-size:.74rem;
  }
}
html.iks-spot-list-restore-pending #locationArchive{
  visibility:hidden;
  pointer-events:none;
}

/* Archive cards: keep Instagram display-only outside detail so iOS swipe/scroll is not captured by embeds. */
#locationArchive:not(.is-detail-open) .spot-card .media-pane[data-pane="insta"] .insta-scroll{
  overflow:hidden !important;
  overscroll-behavior:contain;
  -webkit-overflow-scrolling:auto;
}
#locationArchive:not(.is-detail-open) .spot-card .media-pane[data-pane="insta"] iframe,
#locationArchive:not(.is-detail-open) .spot-card .media-pane[data-pane="insta"] blockquote.instagram-media,
#locationArchive:not(.is-detail-open) .spot-card .media-pane[data-pane="insta"] .insta-card__hit,
#locationArchive:not(.is-detail-open) .spot-card .media-pane[data-pane="insta"] .insta-fitter{
  pointer-events:none !important;
  touch-action:none !important;
}
#locationArchive[data-iks-spots-view="list"]:not(.is-detail-open) .ikuspot-simple-media-item--instagram::after{
  pointer-events:none !important;
  touch-action:none !important;
}
