/* 会員専用の一覧・資料一覧・パスワードの入力画面（新設分）。色は旧テーマ style.min.css に合わせる */
.members-index { padding: 40px 0 80px; }
.members-links { text-align: right; margin-bottom: 20px; font-size: 14px; }
.members-links a { color: #017FF7; margin-left: 1.5em; text-decoration: underline; }
.members-note { font-size: 14px; color: #37474F; margin-bottom: 20px; }

.members-tools { background: #FFF; padding: 24px; margin-bottom: 30px; }
.members-search input {
  width: 100%; box-sizing: border-box; font-size: 16px; padding: 12px 14px;
  border: 1px solid #90A4AE; border-radius: 0; background: #FFF; color: #37474F; -webkit-appearance: none;
}
.members-search input:focus { outline: 2px solid #017FF7; outline-offset: -1px; }
.members-filter { display: flex; flex-wrap: wrap; align-items: center; gap: 12px; margin-top: 16px; }
.members-kinds { display: flex; flex-wrap: wrap; gap: 8px; list-style: none; margin: 0; padding: 0; }
.members-kinds button {
  cursor: pointer; font-size: 14px; padding: 6px 12px; border: 1px solid #90A4AE; background: #FFF; color: #37474F;
}
.members-kinds button span { margin-left: 6px; font-size: 12px; color: #78909C; }
.members-kinds button.is-active { background: #37474F; border-color: #37474F; color: #FFF; }
.members-kinds button.is-active span { color: #E3E8EB; }
.members-filter select {
  font-size: 14px; padding: 6px 28px 6px 10px; border: 1px solid #90A4AE; border-radius: 0; color: #37474F;
  background: #FFF url("data:image/svg+xml,%3Csvg xmlns='http://www.w3.org/2000/svg' width='10' height='6'%3E%3Cpath d='M0 0l5 6 5-6z' fill='%2337474F'/%3E%3C/svg%3E") no-repeat right 10px center;
}
.members-count { margin-top: 14px; font-size: 14px; color: #78909C; }
.members-count span { font-size: 20px; font-weight: 700; color: #37474F; margin-right: 2px; }

.members-year { margin-bottom: 36px; }
.members-year-title { font-size: 18px; font-weight: 700; color: #37474F; border-bottom: 2px solid #37474F; padding-bottom: 6px; margin-bottom: 4px; }
.members-list { list-style: none; margin: 0; padding: 0; }
.members-item { border-bottom: 1px solid #E3E8EB; background: #FFF; }
.members-item > a { display: flex; flex-wrap: wrap; align-items: baseline; gap: 4px 14px; padding: 14px 16px; color: #37474F; }
.members-item > a:hover { background: #F7F9F9; }
.members-item > a:hover .members-item-title { color: #017FF7; text-decoration: underline; }
.members-item-date { font-size: 13px; color: #78909C; min-width: 6.5em; }
.members-item-kind { font-size: 12px; padding: 1px 8px; border: 1px solid #90A4AE; color: #37474F; white-space: nowrap; }
.members-item-title { flex: 1 1 20em; font-size: 15px; line-height: 1.6; }
.members-item-docs { font-size: 12px; color: #FFF; background: #2085E6; padding: 1px 8px; white-space: nowrap; }

.members-files { list-style: none; margin: 0; padding: 0 16px 14px 16px; }
.members-files li { display: flex; flex-wrap: wrap; gap: 4px 12px; font-size: 14px; padding: 4px 0 4px 1.2em; position: relative; }
.members-files li::before { content: ""; position: absolute; left: 0; top: 0.85em; width: 6px; height: 6px; background: #2085E6; }
.members-files a { color: #017FF7; text-decoration: underline; word-break: break-all; }
.members-files span { color: #78909C; font-size: 12px; }
.members-empty { padding: 30px 0; text-align: center; color: #78909C; }

.members-login-error { color: #D32F2F !important; }
.members-login-note { font-weight: 400 !important; font-size: 13px; color: #78909C; margin-top: 20px; }

@media (max-width: 767px) {
  .members-tools { padding: 16px; }
  .members-links { text-align: left; }
  .members-links a { margin: 0 1.5em 0 0; }
  .members-item > a { padding: 12px; }
}
