/* One static editorial guide. All article rules are page-scoped. */
.recruitment-selection-bottleneck { --rsb-ink:#173449; --rsb-line:#ccd9df; --rsb-paper:#f7f4ed; color:var(--rsb-ink); background:#fff; }
.recruitment-selection-bottleneck *, .recruitment-selection-bottleneck *::before, .recruitment-selection-bottleneck *::after { box-sizing:border-box; }
.recruitment-selection-bottleneck .nav-main { gap:clamp(.7rem,1.25vw,1.35rem); }
.recruitment-selection-bottleneck .nav-main a { font-size:.72rem; }
.recruitment-selection-bottleneck .nav-main a[aria-current="page"], .recruitment-selection-bottleneck .nav-main .nav-cta-start { color:#76531f; }
.recruitment-selection-bottleneck .content-context { margin-top:79px; border-bottom:1px solid var(--rsb-line); background:#fff; }
.recruitment-selection-bottleneck .content-context-inner { display:flex; align-items:center; justify-content:space-between; gap:20px; width:min(1120px,calc(100% - 48px)); min-height:54px; margin:0 auto; }
.recruitment-selection-bottleneck .content-context ol { display:flex; flex-wrap:wrap; min-width:0; gap:6px 8px; align-items:center; margin:0; padding:8px 0; color:#526b7b; font-size:.76rem; list-style:none; }
.recruitment-selection-bottleneck .content-context li { display:flex; min-width:0; align-items:center; gap:8px; }
.recruitment-selection-bottleneck .content-context li:not(:last-child)::after { content:"/"; color:#6a808e; }
.recruitment-selection-bottleneck .content-context a { color:#40596d; text-decoration:none; }
.recruitment-selection-bottleneck .content-context-all { flex:0 0 auto; font-weight:700; }
.rsb-article { width:min(1080px,calc(100% - 48px)); margin:0 auto; padding:3.2rem 0 3.5rem; }
.rsb-meta { display:flex; flex-wrap:wrap; align-items:center; gap:.55rem 1rem; color:#506875; font-size:.82rem; margin-bottom:1.25rem; }
.rsb-kind { border:1px solid #c8d6d7; background:#edf4f3; padding:.2rem .6rem; }
.rsb-meta time { margin-left:auto; }
.rsb-article h1 { font:600 clamp(1.6rem,3vw,2.6rem)/1.6 'Noto Serif JP',serif; color:#0b2942; letter-spacing:-.025em; margin:0; }
.rsb-heading-unit { display:inline-block; max-width:100%; }
.rsb-lead { font-size:1.075rem; line-height:2.05; margin:1.2rem 0; color:#3d5869; }
.rsb-section { margin-top:3rem; padding-top:2.3rem; border-top:1px solid var(--rsb-line); scroll-margin-top:110px; }
.rsb-section h2 { font:600 clamp(1.42rem,2.4vw,1.95rem)/1.65 'Noto Serif JP',serif; margin:0 0 1.4rem; color:#0b2942; letter-spacing:-.02em; }
.rsb-section h3 { font-size:1.15rem; line-height:1.8; margin:2rem 0 .6rem; color:#0b2942; }
.rsb-section p { line-height:2.05; font-size:1.075rem; margin:1.3rem 0 0; }
.rsb-list { padding:1rem 1.2rem 1rem 2.5rem; margin:1.4rem 0; background:var(--rsb-paper); font-size:1.02rem; }
.rsb-list li { padding:.4rem 0; line-height:1.95; }
.rsb-table-wrap { margin:1.8rem 0; }
.rsb-table { width:100%; border-collapse:collapse; table-layout:fixed; }
.rsb-table caption { text-align:left; font-weight:700; font-size:1rem; padding:0 0 .75rem; }
.rsb-table th, .rsb-table td { border:1px solid var(--rsb-line); padding:.85rem .75rem; text-align:left; vertical-align:top; font-size:.96rem; line-height:1.9; overflow-wrap:anywhere; }
.rsb-table thead th { color:#fff; background:#0b2942; font-size:.86rem; }
.rsb-table thead th:first-child { width:13%; }
.rsb-table thead th:nth-child(2) { width:20%; }
.rsb-table tbody th { background:#edf4f3; font-size:1rem; }
.rsb-table tbody td:nth-last-child(2) { background:#fbf5e9; }
.rsb-catch { margin:2rem 0; }
.rsb-catch img { display:block; width:100%; height:auto; }
.rsb-ending { margin-top:2rem; padding-top:1.5rem; border-top:1px solid var(--rsb-line); }
.rsb-ending p { color:#526b7b; font-size:.95rem; line-height:2; margin-top:1rem; }
.rsb-ending .rsb-return { display:inline-block; font-size:1.05rem; font-weight:700; padding:.6rem 0; }
.rsb-article a { color:#173449; text-decoration:underline; text-underline-offset:.2em; }
.rsb-article a:focus-visible, .recruitment-selection-bottleneck .content-back a:focus-visible { outline:3px solid #9a6d2c; outline-offset:4px; }
.recruitment-selection-bottleneck .content-back { border-top:1px solid var(--rsb-line); background:#0b2942; }
.recruitment-selection-bottleneck .content-back-link { display:flex; flex-wrap:wrap; gap:.45rem 1.5rem; width:100%; padding:1.8rem 0; color:#fff; text-decoration:none; }
.recruitment-selection-bottleneck .content-back-label { font-weight:700; color:#fff; }
.recruitment-selection-bottleneck .content-back-label::before { content:"← "; color:#ead9b7; }
.recruitment-selection-bottleneck .content-back-meta { color:#d8e3e9; font-size:.9rem; }
.recruitment-selection-bottleneck .site-footer { margin-top:0; }
@media (max-width:720px) {
  .recruitment-selection-bottleneck .nav-main { padding-block:0; border-bottom:0; }
  .recruitment-selection-bottleneck .nav-main.active { padding-block:1rem; border-bottom:.5px solid var(--color-border-light); }
  .recruitment-selection-bottleneck .nav-main a { font-size:.85rem; }
  .recruitment-selection-bottleneck .content-context { margin-top:69px; }
  .recruitment-selection-bottleneck .content-context-inner { width:calc(100% - 28px); min-height:48px; }
  .recruitment-selection-bottleneck .content-context ol { font-size:.69rem; }
  .recruitment-selection-bottleneck .content-context-all { display:none; }
  .rsb-article { width:calc(100% - 32px); padding:2.2rem 0 3rem; }
  .rsb-meta { font-size:.72rem; gap:.4rem .7rem; }
  .rsb-article h1 { font-size:1.48rem; line-height:1.68; }
  .rsb-lead, .rsb-section p { font-size:1.04rem; }
  .rsb-section { margin-top:2.5rem; padding-top:2rem; }
  .rsb-section h2 { font-size:1.38rem; }
  .rsb-section h3 { font-size:1.09rem; }
  .rsb-list { padding-left:2rem; font-size:1rem; }
  .rsb-table caption { display:block; width:100%; }
  .rsb-table, .rsb-table tbody, .rsb-table tr, .rsb-table th, .rsb-table td { display:block; width:100%; }
  .rsb-table thead { position:absolute; width:1px; height:1px; margin:-1px; overflow:hidden; clip:rect(0,0,0,0); white-space:nowrap; }
  .rsb-table tbody { display:grid; gap:1rem; }
  .rsb-table tbody tr { border:1px solid var(--rsb-line); }
  .rsb-table th, .rsb-table td { border:0; border-bottom:1px solid var(--rsb-line); padding:.85rem 1rem; font-size:1rem; }
  .rsb-table tbody td:last-child { border-bottom:0; }
  .rsb-table td::before { display:block; margin-bottom:.3rem; content:attr(data-label); font-size:.82rem; color:#76531f; font-weight:700; }
  .recruitment-selection-bottleneck .content-back-link { flex-direction:column; padding:1.5rem 0; }
}

.rsb-figure { margin:2rem 0; padding:0; }
.rsb-figure figcaption { font-size:1.1rem; font-weight:700; line-height:1.8; margin-bottom:1rem; }
.rsb-figure-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:1rem; }
.rsb-figure-grid img { display:block; width:100%; height:auto; border:1px solid var(--rsb-line); border-radius:6px; }
.rsb-section .rsb-figure-caption { font-size:.95rem; margin-top:.8rem; }
.rsb-table thead th:first-child { width:24%; }
.rsb-table thead th:nth-child(2) { width:19%; }
@media (max-width:720px) {
 .rsb-figure-grid { grid-template-columns:1fr; gap:1rem; }
 .rsb-table thead th:first-child, .rsb-table thead th:nth-child(2) { width:100%; }
}
