.page-template-association-overview #content{padding:0!important}.page-template-association-overview .l-content{max-width:none!important;margin:0!important;padding:0!important}.page-template-association-overview .l-mainContent{width:100%!important;max-width:none!important;padding:0!important}.page-template-association-overview .l-sidebar{display:none!important}
.itoba-association-directory{--assoc-navy:#04384c;--assoc-teal:#0e7c86;--assoc-lime:#d9ef8d;--assoc-cream:#fbf8f0;--assoc-mist:#eef4f1;--assoc-ink:#16323c;--assoc-muted:#64777d;--assoc-line:#d9e4e0;color:var(--assoc-ink);background:#f7f9f6}.itoba-association-directory *{box-sizing:border-box}.itoba-association-container{width:min(1120px,calc(100% - 48px));margin:0 auto}
.itoba-association-hero{padding:64px 0 60px;background:linear-gradient(125deg,var(--assoc-cream),#edf5f1);border-bottom:1px solid var(--assoc-line)}.itoba-association-breadcrumb{display:flex;gap:9px;margin-bottom:34px;color:var(--assoc-muted);font-size:12px}.itoba-association-breadcrumb a{color:var(--assoc-teal)}.itoba-association-eyebrow{margin:0 0 13px!important;color:var(--assoc-teal);font-size:11px!important;font-weight:900;letter-spacing:.18em}.itoba-association-hero h1{margin:0;color:var(--assoc-navy);font-size:clamp(40px,6vw,68px);line-height:1.13;letter-spacing:-.045em}.itoba-association-hero>div>p:last-child{max-width:720px;margin:22px 0 0;color:var(--assoc-muted);font-size:16px;line-height:1.9}.itoba-association-content{padding:60px 0 96px}
.itoba-association-intro{display:grid;grid-template-columns:.72fr 1.28fr;gap:52px;align-items:start}.itoba-association-intro small,.itoba-officers header small,.itoba-association-rules header small{color:var(--assoc-teal);font-size:10px;font-weight:900;letter-spacing:.17em}.itoba-association-intro h2,.itoba-officers h2,.itoba-association-rules h2{margin:5px 0 15px;color:var(--assoc-navy);font-size:30px}.itoba-association-intro p{margin:0;color:var(--assoc-muted);font-size:14px;line-height:1.9}.itoba-association-activity-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:13px}.itoba-association-activity-grid>div{min-height:180px;padding:23px;background:#fff;border:1px solid var(--assoc-line);border-radius:18px}.itoba-association-activity-grid span{color:var(--assoc-teal);font-size:10px;font-weight:900}.itoba-association-activity-grid strong{display:block;margin-top:22px;color:var(--assoc-navy);font-size:19px}.itoba-association-activity-grid small{display:block;margin-top:9px;color:var(--assoc-muted);font-size:11px;line-height:1.65;letter-spacing:0}
.itoba-officers{margin-top:68px}.itoba-officers>header{display:flex;align-items:end;justify-content:space-between;gap:24px;margin-bottom:22px}.itoba-officers>header p{max-width:430px;margin:0;color:var(--assoc-muted);font-size:12px}.itoba-officer-table-wrap{overflow:auto;background:#fff;border:1px solid var(--assoc-line);border-radius:20px;box-shadow:0 10px 30px rgba(6,46,59,.05)}.itoba-officer-table-wrap table{width:100%;min-width:760px;margin:0;border-collapse:collapse}.itoba-officer-table-wrap th,.itoba-officer-table-wrap td{padding:14px 18px;border-bottom:1px solid var(--assoc-line);text-align:left;font-size:12px}.itoba-officer-table-wrap thead th{color:#fff;background:var(--assoc-navy);font-size:11px}.itoba-officer-table-wrap tbody th{color:var(--assoc-navy);font-size:13px}.itoba-officer-table-wrap tbody td:first-child{color:var(--assoc-teal);font-weight:900}.itoba-officer-table-wrap tr:last-child th,.itoba-officer-table-wrap tr:last-child td{border-bottom:0}.itoba-officer-empty{padding:32px;text-align:center;color:var(--assoc-muted)}
.itoba-association-rules{margin-top:68px}.itoba-association-rules>header p{margin:0;color:var(--assoc-muted);font-size:12px}.itoba-association-rules-content{margin-top:20px;padding:32px 36px;background:#fff;border:1px solid var(--assoc-line);border-radius:20px}.itoba-association-rules-content h3{margin:30px 0 12px;color:var(--assoc-navy);font-size:20px}.itoba-association-rules-content h3:first-child{margin-top:0}.itoba-association-rules-content p{margin:7px 0;color:var(--assoc-muted);font-size:13px;line-height:1.9}.itoba-association-rules-content strong{color:var(--assoc-ink)}
@media(max-width:860px){.itoba-association-intro{grid-template-columns:1fr}.itoba-association-activity-grid{grid-template-columns:repeat(3,1fr)}}@media(max-width:620px){.itoba-association-container{width:min(100% - 32px,620px)}.itoba-association-hero{padding:48px 0 44px}.itoba-association-breadcrumb{margin-bottom:25px}.itoba-association-hero h1{font-size:39px}.itoba-association-content{padding:42px 0 72px}.itoba-association-intro{gap:25px}.itoba-association-activity-grid{grid-template-columns:1fr}.itoba-association-activity-grid>div{min-height:0}.itoba-officers{margin-top:52px}.itoba-officers>header{display:block}.itoba-officers>header p{margin-top:8px}.itoba-officer-table-wrap th,.itoba-officer-table-wrap td{padding:12px 14px}.itoba-association-rules{margin-top:52px}.itoba-association-rules-content{padding:24px 20px}}

/* DESIGN-SYSTEM.md: association overview, 2026-09-06 */
body:has(.itoba-association-directory) #breadcrumb { display: none !important; }

.itoba-association-directory {
  --assoc-navy: var(--itoba-navy-900);
  --assoc-teal: var(--itoba-teal);
  --assoc-lime: var(--itoba-lime);
  --assoc-cream: var(--itoba-cream);
  --assoc-mist: var(--itoba-mist);
  --assoc-ink: var(--itoba-ink);
  --assoc-muted: var(--itoba-muted);
  --assoc-line: var(--itoba-line);
  color: var(--itoba-ink);
  background: var(--itoba-white);
  font-family: "Zen Kaku Gothic New", "Yu Gothic UI", "Yu Gothic", Meiryo, sans-serif;
  font-size: 15px;
  line-height: 1.75;
}

.itoba-association-container {
  width: min(var(--itoba-content), calc(100% - 40px));
}

.itoba-association-hero {
  padding: 50px 0 58px;
  background: linear-gradient(125deg, var(--itoba-cream), var(--itoba-mist));
  border-bottom-color: var(--itoba-line);
}

.itoba-association-breadcrumb { margin-bottom: 32px; color: var(--itoba-muted); }
.itoba-association-breadcrumb a { color: var(--itoba-teal); }
.itoba-association-eyebrow { color: var(--itoba-teal); }
.itoba-association-hero h1 {
  color: var(--itoba-navy-900);
  font-size: clamp(38px, 4.25vw, 48px);
  line-height: 1.3;
  letter-spacing: -.035em;
}

.itoba-association-hero > div > p:last-child {
  color: var(--itoba-muted);
  font-size: 15px;
  line-height: 1.75;
}

.itoba-association-content { padding: 90px 0 100px; }
.itoba-association-intro { gap: 56px; }
.itoba-association-intro small,
.itoba-officers header small,
.itoba-association-rules header small { color: var(--itoba-teal); font-size: 11px; }
.itoba-association-intro h2,
.itoba-officers h2,
.itoba-association-rules h2 {
  color: var(--itoba-navy-900);
  font-size: clamp(31px, 3.2vw, 34px);
  line-height: 1.35;
}

.itoba-association-intro p { color: var(--itoba-muted); font-size: 15px; line-height: 1.75; }
.itoba-association-activity-grid { gap: 15px; }
.itoba-association-activity-grid > div {
  padding: 24px;
  background: var(--itoba-white);
  border-color: var(--itoba-line);
  border-radius: var(--itoba-radius-md);
}

.itoba-association-activity-grid span { color: var(--itoba-teal); font-size: 11px; }
.itoba-association-activity-grid strong { color: var(--itoba-navy-900); }
.itoba-association-activity-grid small { color: var(--itoba-muted); font-size: 12px; line-height: 1.65; }
.itoba-officers { margin-top: 90px; }
.itoba-officers > header p,
.itoba-association-rules > header p {
  color: var(--itoba-muted);
  font-size: 15px;
  line-height: 1.75;
}

.itoba-officer-table-wrap {
  border-color: var(--itoba-line);
  border-radius: var(--itoba-radius-md);
  box-shadow: var(--itoba-shadow-soft);
}

.itoba-officer-table-wrap th,
.itoba-officer-table-wrap td {
  padding: 15px 18px;
  border-bottom-color: var(--itoba-line);
  font-size: 13px;
}

.itoba-officer-table-wrap thead th {
  color: var(--itoba-white);
  background: var(--itoba-navy-900);
  font-size: 12px;
}

.itoba-officer-table-wrap tbody th { color: var(--itoba-navy-900); font-size: 14px; }
.itoba-officer-table-wrap tbody td:first-child { color: var(--itoba-teal); }
.itoba-association-rules { margin-top: 90px; }
.itoba-association-rules-content {
  margin-top: 24px;
  padding: 36px 40px;
  background: var(--itoba-white);
  border-color: var(--itoba-line);
  border-radius: var(--itoba-radius-md);
}

.itoba-association-rules-content h3 { color: var(--itoba-navy-900); }
.itoba-association-rules-content p {
  color: var(--itoba-muted);
  font-size: 15px;
  line-height: 1.75;
}

.itoba-association-rules-content strong { color: var(--itoba-ink); }
.itoba-association-directory a:focus-visible {
  outline: 3px solid var(--itoba-teal);
  outline-offset: 3px;
}

@media (max-width: 860px) {
  .itoba-association-intro { grid-template-columns: 1fr; }
}

@media (max-width: 760px) {
  .itoba-officer-table-wrap {
    overflow: visible;
    background: transparent;
    border: 0;
    border-radius: 0;
    box-shadow: none;
  }

  .itoba-officer-table-wrap table { display: block; min-width: 0; }
  .itoba-officer-table-wrap thead { display: none; }
  .itoba-officer-table-wrap tbody { display: grid; gap: 14px; }
  .itoba-officer-table-wrap tbody tr {
    display: grid;
    overflow: hidden;
    background: var(--itoba-white);
    border: 1px solid var(--itoba-line);
    border-radius: var(--itoba-radius-sm);
  }

  .itoba-officer-table-wrap tbody th,
  .itoba-officer-table-wrap tbody td {
    display: grid;
    grid-template-columns: 76px minmax(0, 1fr);
    gap: 12px;
    padding: 10px 14px;
    border-bottom: 1px solid var(--itoba-line);
    font-size: 13px;
    line-height: 1.6;
  }

  .itoba-officer-table-wrap tbody tr > *:last-child { border-bottom: 0; }
  .itoba-officer-table-wrap tbody th::before,
  .itoba-officer-table-wrap tbody td::before {
    color: var(--itoba-muted);
    font-size: 11px;
    font-weight: 700;
  }

  .itoba-officer-table-wrap tbody td:nth-child(1)::before { content: "役職"; }
  .itoba-officer-table-wrap tbody th::before { content: "氏名"; }
  .itoba-officer-table-wrap tbody td:nth-child(3)::before { content: "所属団体"; }
  .itoba-officer-table-wrap tbody td:nth-child(4)::before { content: "委員会・担当"; }
}

@media (max-width: 620px) {
  .itoba-association-container { width: min(calc(100% - 28px), 620px); }
  .itoba-association-hero { padding: 38px 0 44px; }
  .itoba-association-breadcrumb { margin-bottom: 24px; }
  .itoba-association-hero h1 { font-size: 31px; }
  .itoba-association-content { padding: 64px 0 77px; }
  .itoba-association-intro { gap: 28px; }
  .itoba-association-intro h2,
  .itoba-officers h2,
  .itoba-association-rules h2 { font-size: 27px; }
  .itoba-association-activity-grid { grid-template-columns: 1fr; }
  .itoba-association-activity-grid > div { min-height: 0; }
  .itoba-officers,
  .itoba-association-rules { margin-top: 64px; }
  .itoba-officers > header { display: block; }
  .itoba-officers > header p { margin-top: 8px; }
  .itoba-association-rules-content { padding: 26px 21px; }
}

@media (prefers-reduced-motion: reduce) {
  .itoba-association-directory *,
  .itoba-association-directory *::before,
  .itoba-association-directory *::after {
    transition: none !important;
    animation: none !important;
    scroll-behavior: auto !important;
  }
}
