/* Loaded on the homepage and interview index only. */
.nz-find { padding-bottom: 24px; }
.nz-find .nz-search { margin-bottom: 18px; }
.nz-find__link { display: inline-block; font-weight: 600; }
.nz-company-index { border: 1px solid #dce1e5; border-radius: 8px; background: #fff; }
.nz-company-index > summary { padding: 18px 20px; cursor: pointer; font-weight: 700; line-height: 1.6; }
.nz-company-index > summary:focus-visible { outline: 3px solid #296c81; outline-offset: 3px; }
.nz-company-grid { display: grid; grid-template-columns: repeat(3, minmax(0, 1fr)); gap: 12px; padding: 0 20px 20px; }
.nz-company-link { display: flex; align-items: center; gap: 12px; min-width: 0; padding: 12px; border: 1px solid #e5e8eb; border-radius: 6px; color: inherit; line-height: 1.65; text-decoration: none; }
.nz-company-link:hover { background: #f4f7f8; }
.nz-company-link img { width: 56px; height: 56px; flex: 0 0 56px; object-fit: cover; border-radius: 50%; }
.nz-company-link span { min-width: 0; overflow-wrap: anywhere; font-size: 14px; }
@media (max-width: 959px) { .nz-company-grid { grid-template-columns: repeat(2, minmax(0, 1fr)); } }
@media (max-width: 599px) { .nz-company-grid { grid-template-columns: minmax(0, 1fr); padding: 0 12px 12px; } .nz-company-index > summary { padding: 16px 12px; } }

/* Existing photo-card/search rules are included for complete theme previews. */

/* NOZOKURU: テーマ別の写真カード（2026-10-09 更新案） */
.nz-topic-list { display:grid; gap:44px; }
.nz-topic { scroll-margin-top:100px; }
.nz-topic__header { margin-bottom:20px; }
.nz-topic__header h3 { margin:0 0 8px; font-size:22px; line-height:1.5; }
.nz-topic__header p { margin:0; color:#595959; font-size:14px; line-height:1.8; }
.nz-topic-cards { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:24px; }
.nz-topic-card { display:flex; flex-direction:column; overflow:hidden; border:1px solid #e5e5e5; border-radius:12px; color:inherit; background:#fff; text-decoration:none; }
.nz-topic-card:hover { border-color:#d34e49; }
.nz-topic-card__image { aspect-ratio:8/5; width:100%; overflow:hidden; background:#f5f5f5; }
.nz-topic-card__image img { display:block; width:100%; height:100%; object-fit:cover; }
.nz-topic-card__body { padding:18px 20px 20px; }
.nz-topic-card__company { margin:0 0 8px; font-size:12px; font-weight:500; color:#656565; line-height:1.7; }
.nz-topic-card__title { margin:0 0 14px; font-size:17px; font-weight:700; line-height:1.7; color:#212124; }
.nz-topic-card time { display:block; margin:0; color:#737373; font-size:12px; }
.nz-topic-card:focus-visible { outline:3px solid #8a302c; outline-offset:3px; }
.nz-search { max-width:720px; margin:0 auto 32px; }
.nz-search label { display:block; font-weight:700; margin-bottom:12px; }
.nz-search__row { display:flex; gap:12px; }
.nz-search input[type=search] { flex:1; min-width:0; padding:14px 16px; border:1px solid #aaa; border-radius:8px; background:#fff; color:#222; font:inherit; }
.nz-search button { border:0; border-radius:8px; padding:14px 24px; background:#d34e49; color:#fff; font:inherit; font-weight:700; cursor:pointer; }
.nz-search input:focus-visible,.nz-search button:focus-visible,.nz-topic a:focus-visible { outline:3px solid #8a302c; outline-offset:3px; }

@media(max-width:767px) { .nz-topic-cards { grid-template-columns:1fr; }.nz-search__row { flex-direction:column; }.nz-topic__header h3 { font-size:20px; } }
