@charset "utf-8";

/* SITEMAP
----------------------------------------------------------------------------- */

/* SITEMAP 一覧（2026-09-18 実装：js/sitemap.js が描画するマークアップ用） */
.sm-groups{ display:grid; grid-template-columns:1fr 1fr; gap:20px 28px; margin-top:20px; }
.sm-cat{ background:#EBF5EB; border:1px solid #C8E6C8; border-radius:14px; padding:22px 26px 26px; }
.sm-cat.is-wide{ grid-column:1 / -1; }
.sm-cat-title{ font-size:19px; font-weight:900; color:#1E3D22; display:flex; align-items:center; gap:10px; margin:0 0 14px; }
.sm-cat-title a{ display:flex; align-items:center; gap:10px; color:inherit; text-decoration:none; flex:1; min-width:0; }
.sm-cat-title a:hover{ text-decoration:underline; }
.sm-cat-arrow{ color:inherit; font-size:0.75em; }
.sm-cat[data-cat="個人のお客さま"]{ border-color:#15A648; background:#FBFFEF; }
.sm-cat[data-cat="個人のお客さま"] .sm-cat-title,
.sm-cat[data-cat="個人のお客さま"] .sitemap-heading{ color:#15A648; }
.sm-cat[data-cat="法人・個人事業主のお客さま"]{ border-color:#0067A5; background:#EAF4FC; }
.sm-cat[data-cat="法人・個人事業主のお客さま"] .sm-cat-title,
.sm-cat[data-cat="法人・個人事業主のお客さま"] .sitemap-heading{ color:#0067A5; }
.sitemap-grid{ display:grid; grid-template-columns:repeat(auto-fit,minmax(190px,1fr)); gap:24px 28px; }
.sitemap-grid-split{ grid-template-columns:1fr 1fr; align-items:start; }
.sitemap-grid-split .sm-col-group{ display:flex; flex-direction:column; gap:24px; min-width:0; }
.sitemap-grid-split .sm-col-tall{ min-width:0; }
.sm-col{ background:#fff; border-radius:10px; padding:16px 18px; }
.sm-col.hidden{ display:none; }
.sm-col .sitemap-heading{ font-size:15px; font-weight:700; margin-bottom:18px; color:#1A6634; }
.sm-col ul.sitemap-list{ list-style:none; margin:0 0 0 0.6em; padding:0; }
.sm-col ul.sitemap-list li{ font-size:13px; line-height:1.5; border-radius:7px; padding:4px 7px; margin:0 -7px 2px; transition:.12s; }
.sm-col ul.sitemap-list li.l4{ padding-left:calc(7px + 1em); }
.sm-col ul.sitemap-list li.is-link:hover{ background:#F4FCEC; }
.sm-col ul.sitemap-list li.hidden{ display:none; }
.sm-col ul.sitemap-list a{ color:#2b2f2b; text-decoration:none; display:block; }
.sm-col ul.sitemap-list a:hover{ text-decoration:underline; color:#1A6634; }
.sm-badge{ display:inline-block; font-size:11px; font-weight:700; color:#6B7280; background:#F3F4F6; border:1px solid #D9DDE3; border-radius:999px; padding:0 8px; margin-left:6px; white-space:nowrap; }
.sm-nohit{ display:none; margin-top:20px; font-size:14px; }
.sm-nohit.show{ display:block; }


@media screen and (max-width: 768px) {
    .sm-groups{ display:flex; flex-direction:column; gap:14px; margin-top:14px; }
    .sm-cat{ padding:16px 16px 18px; border-radius:12px; }
    .sm-cat-title{ font-size:15px; gap:8px; margin-bottom:12px; }
    .sitemap-grid{ grid-template-columns:1fr !important; gap:14px; }
    .sitemap-grid-split{ grid-template-columns:1fr; gap:14px; }
    .sitemap-grid-split .sm-col-group{ gap:14px; }
    .sm-col{ padding:12px 14px; }
    .sm-col .sitemap-heading{ font-size:12.5px; margin-bottom:12px; }
    .sm-col ul.sitemap-list li{ font-size:13px; }
}
