/*!
 * theme1.css - 背景色:白 文字色:黒
 *
 * Bootstrap 5 + fix_bootstrap5.css の後に読み込み、色（文字色・背景色・
 * 枠線色・影）のみを Bootstrap 3.3.5 の配色に上書きする。
 * 寸法・余白・文字サイズはこのファイルでは扱わない（fix_bootstrap5.css）。
 *
 * 構成:
 *   A. 共通色  … Bootstrap 3.3.5 デフォルト配色 + 本システムの自作スタイルの色
 *                （全テーマ共通。theme1 は A のみ）
 *   B. テーマ固有色 … theme1 は無し
 *
 * Bootstrap 5 はコンポーネントの色を CSS カスタムプロパティ（--bs-*）
 * 経由で参照するため、プロパティの直接指定に加えてカスタムプロパティも
 * 上書きしている。
 */

/* ==================================================================
 * A. 共通色
 * ================================================================== */

/* ------------------------------------------------------------------
 * A-1. ルート・本文・リンク
 * ------------------------------------------------------------------ */
:root,
[data-bs-theme=light] {
  --bs-body-color: #333;
  --bs-body-color-rgb: 51, 51, 51;
  --bs-body-bg: #fff;
  --bs-body-bg-rgb: 255, 255, 255;
  --bs-emphasis-color: #000;
  --bs-secondary-color: #777;
  --bs-heading-color: inherit;
  --bs-link-color: #337ab7;
  --bs-link-color-rgb: 51, 122, 183;
  --bs-link-hover-color: #23527c;
  --bs-link-hover-color-rgb: 35, 82, 124;
  --bs-border-color: #ddd;
  --bs-code-color: #c7254e;
  --bs-highlight-bg: #fcf8e3;
  --bs-form-invalid-color: #a94442;
  --bs-form-invalid-border-color: #a94442;
  --bs-form-valid-color: #3c763d;
  --bs-form-valid-border-color: #3c763d;
  /* 本システム独自の色変数 */
  --sb-blue: #009edb;
  --sb-grey-100: #eef8ff;
}
body {
  color: #333;
  background-color: #fff;
}
a {
  color: #337ab7;
}
a:hover,
a:focus {
  color: #23527c;
}
hr {
  border-color: #a9a9a9;
  opacity: 1;
}
h1 small, h2 small, h3 small, h4 small, h5 small, h6 small,
.h1 small, .h2 small, .h3 small, .h4 small, .h5 small, .h6 small,
h1 .small, h2 .small, h3 .small, h4 .small, h5 .small, h6 .small,
.h1 .small, .h2 .small, .h3 .small, .h4 .small, .h5 .small, .h6 .small {
  color: #777;
}
mark,
.mark {
  color: #000;
  background-color: #fcf8e3;
}
abbr[title] {
  border-bottom-color: #777;
}
blockquote {
  border-left-color: #eee;
}
blockquote footer,
blockquote small,
blockquote .small,
.blockquote-footer {
  color: #777;
}
code {
  color: #c7254e;
  background-color: #f9f2f4;
}
kbd {
  color: #fff;
  background-color: #333;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .25);
}
kbd kbd {
  box-shadow: none;
}
pre {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ccc;
}
pre code {
  color: inherit;
  background-color: transparent;
}
caption {
  color: #777;
}
fieldset {
  border-color: #c0c0c0;
}
legend {
  color: #333;
  border-bottom-color: #e5e5e5;
}
/* page-header 相当（border-bottom pb-2 mb-4） */
.border-bottom.pb-2.mb-4 {
  border-bottom-color: #eee !important;
}
.img-thumbnail {
  background-color: #fff;
  border-color: #ddd;
}

/* ------------------------------------------------------------------
 * A-2. 文字色・背景色ユーティリティ（Bootstrap 5 は !important 付き）
 * ------------------------------------------------------------------ */
.text-muted { color: #777 !important; }
.text-primary { color: #337ab7 !important; }
a.text-primary:hover, a.text-primary:focus { color: #286090 !important; }
.text-success { color: #3c763d !important; }
a.text-success:hover, a.text-success:focus { color: #2b542c !important; }
.text-info { color: #31708f !important; }
a.text-info:hover, a.text-info:focus { color: #245269 !important; }
.text-warning { color: #8a6d3b !important; }
a.text-warning:hover, a.text-warning:focus { color: #66512c !important; }
.text-danger { color: #a94442 !important; }
a.text-danger:hover, a.text-danger:focus { color: #843534 !important; }
.text-dark { color: #333 !important; }
.text-white { color: #fff !important; }
.bg-primary { color: #fff !important; background-color: #337ab7 !important; }
a.bg-primary:hover, a.bg-primary:focus { background-color: #286090 !important; }
.bg-success { background-color: #dff0d8 !important; }
a.bg-success:hover, a.bg-success:focus { background-color: #c1e2b3 !important; }
.bg-info { background-color: #d9edf7 !important; }
a.bg-info:hover, a.bg-info:focus { background-color: #afd9ee !important; }
.bg-warning { background-color: #fcf8e3 !important; }
a.bg-warning:hover, a.bg-warning:focus { background-color: #f7ecb5 !important; }
.bg-danger { background-color: #f2dede !important; }
a.bg-danger:hover, a.bg-danger:focus { background-color: #e4b9b9 !important; }
.text-hide {
  color: transparent;
  text-shadow: none;
  background-color: transparent;
}

/* ------------------------------------------------------------------
 * A-3. テーブル
 * ------------------------------------------------------------------ */
table {
  background-color: transparent;
}
.table {
  --bs-table-color: inherit;
  --bs-table-bg: transparent;
  --bs-table-border-color: #ddd;
  --bs-table-accent-bg: transparent;
  --bs-table-striped-color: inherit;
  --bs-table-striped-bg: #f9f9f9;
  --bs-table-active-color: inherit;
  --bs-table-active-bg: #f5f5f5;
  --bs-table-hover-color: inherit;
  --bs-table-hover-bg: #f5f5f5;
  color: inherit;
  border-color: #ddd;
}
.table > :not(caption) > * > * {
  color: inherit;
  border-color: #ddd;
}
.table .table {
  background-color: #fff;
}
.table-bordered {
  border-color: #ddd;
}
.table-bordered > :not(caption) > * > * {
  border-color: #ddd;
}
.table-striped > tbody > tr:nth-of-type(odd) > * {
  background-color: #f9f9f9;
}
.table-hover > tbody > tr:hover > * {
  background-color: #f5f5f5;
}
/* Bootstrap 3 の行・セルの状態色（.active .success .info .warning .danger） */
.table > tbody > tr > td.active, .table > tbody > tr > th.active,
.table > tbody > tr.active > td, .table > tbody > tr.active > th,
.table > thead > tr > th.active, .table > thead > tr.active > th {
  background-color: #f5f5f5;
}
.table > tbody > tr > td.success, .table > tbody > tr > th.success,
.table > tbody > tr.success > td, .table > tbody > tr.success > th {
  background-color: #dff0d8;
}
.table > tbody > tr > td.info, .table > tbody > tr > th.info,
.table > tbody > tr.info > td, .table > tbody > tr.info > th {
  background-color: #d9edf7;
}
.table > tbody > tr > td.warning, .table > tbody > tr > th.warning,
.table > tbody > tr.warning > td, .table > tbody > tr.warning > th {
  background-color: #fcf8e3;
}
.table > tbody > tr > td.danger, .table > tbody > tr > th.danger,
.table > tbody > tr.danger > td, .table > tbody > tr.danger > th {
  background-color: #f2dede;
}
@media screen and (max-width: 767px) {
  .table-responsive {
    border-color: #ddd;
  }
}

/* ------------------------------------------------------------------
 * A-4. フォーム
 * ------------------------------------------------------------------ */
output {
  color: #555;
}
.form-control,
.form-select {
  color: #555;
  background-color: #fff;
  border-color: #ccc;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
select {
  background-color: #f5f5f5;
  color: #000000;
}
.form-control:focus,
.form-select:focus {
  color: #555;
  background-color: #fff;
  border-color: #66afe9;
  outline: 0;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 8px rgba(102, 175, 233, .6);
}
.form-control::placeholder {
  color: #999;
  opacity: 1;
}
.form-control:disabled,
.form-control[readonly],
.form-select:disabled,
fieldset:disabled .form-control {
  color: #555;
  background-color: #eee;
  opacity: 1;
}
.form-control-plaintext {
  color: #333;
}
.form-text,
.help-block,
.invalid-feedback,
.valid-feedback {
  color: #737373;
}
.input-group-text {
  color: #555;
  background-color: #eee;
  border-color: #ccc;
}
/* 検証状態（Bootstrap 3 の .has-success / .has-warning / .has-error） */
.has-success label, .has-success .form-label, .has-success .col-form-label,
.has-success .help-block, .has-success .form-text, .has-success .valid-feedback,
.has-success .invalid-feedback, .has-success .radio, .has-success .checkbox {
  color: #3c763d;
}
.has-success .form-control, .has-success .form-select {
  border-color: #3c763d;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-success .form-control:focus, .has-success .form-select:focus {
  border-color: #2b542c;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
}
.has-warning label, .has-warning .form-label, .has-warning .col-form-label,
.has-warning .help-block, .has-warning .form-text, .has-warning .invalid-feedback,
.has-warning .radio, .has-warning .checkbox {
  color: #8a6d3b;
}
.has-warning .form-control, .has-warning .form-select {
  border-color: #8a6d3b;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-warning .form-control:focus, .has-warning .form-select:focus {
  border-color: #66512c;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #c0a16b;
}
.has-error label, .has-error .form-label, .has-error .col-form-label,
.has-error .help-block, .has-error .form-text, .has-error .invalid-feedback,
.has-error .radio, .has-error .checkbox {
  color: #a94442;
}
.has-error .form-control, .has-error .form-select {
  border-color: #a94442;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075);
}
.has-error .form-control:focus, .has-error .form-select:focus {
  border-color: #843534;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
/* Bootstrap 5 の .is-invalid / .is-valid にも同じ色を適用 */
.form-control.is-invalid, .form-select.is-invalid {
  border-color: #a94442;
}
.form-control.is-invalid:focus, .form-select.is-invalid:focus {
  border-color: #843534;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #ce8483;
}
.form-control.is-valid, .form-select.is-valid {
  border-color: #3c763d;
}
.form-control.is-valid:focus, .form-select.is-valid:focus {
  border-color: #2b542c;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .075), 0 0 6px #67b168;
}
.form-check-input:checked {
  background-color: #337ab7;
  border-color: #337ab7;
}
.form-check-input:focus {
  border-color: #66afe9;
  box-shadow: 0 0 8px rgba(102, 175, 233, .6);
}

/* ------------------------------------------------------------------
 * A-5. ボタン
 *   Bootstrap 5 は .btn の色を --bs-btn-* で参照するため変数ごと上書き
 * ------------------------------------------------------------------ */
.btn {
  --bs-btn-focus-box-shadow: none;
  border-color: transparent;
}
.btn:focus-visible {
  box-shadow: none;
  outline: 5px auto -webkit-focus-ring-color;
  outline-offset: -2px;
}
.btn:active,
.btn.active {
  box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn.disabled,
.btn:disabled,
fieldset:disabled .btn {
  box-shadow: none;
  opacity: .65;
}
/* .btn-secondary（Bootstrap 3 の .btn-default） */
.btn-secondary {
  --bs-btn-color: #333;
  --bs-btn-bg: #fff;
  --bs-btn-border-color: #ccc;
  --bs-btn-hover-color: #333;
  --bs-btn-hover-bg: #e6e6e6;
  --bs-btn-hover-border-color: #adadad;
  --bs-btn-focus-shadow-rgb: 140, 140, 140;
  --bs-btn-active-color: #333;
  --bs-btn-active-bg: #d4d4d4;
  --bs-btn-active-border-color: #8c8c8c;
  --bs-btn-disabled-color: #333;
  --bs-btn-disabled-bg: #fff;
  --bs-btn-disabled-border-color: #ccc;
  color: #333;
  background-color: #fff;
  border-color: #ccc;
}
.btn-secondary:hover {
  color: #333;
  background-color: #e6e6e6;
  border-color: #adadad;
}
.btn-secondary:focus,
.btn-secondary:focus-visible {
  color: #333;
  background-color: #e6e6e6;
  border-color: #8c8c8c;
}
.btn-secondary .badge {
  color: #fff;
  background-color: #333;
}
.btn-primary {
  --bs-btn-color: #fff;
  --bs-btn-bg: #337ab7;
  --bs-btn-border-color: #2e6da4;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #286090;
  --bs-btn-hover-border-color: #204d74;
  --bs-btn-focus-shadow-rgb: 18, 43, 64;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #204d74;
  --bs-btn-active-border-color: #122b40;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #337ab7;
  --bs-btn-disabled-border-color: #2e6da4;
  color: #fff;
  background-color: #337ab7;
  border-color: #2e6da4;
}
.btn-primary:hover {
  color: #fff;
  background-color: #286090;
  border-color: #204d74;
}
.btn-primary:focus,
.btn-primary:focus-visible {
  color: #fff;
  background-color: #286090;
  border-color: #122b40;
}
.btn-primary .badge {
  color: #337ab7;
  background-color: #fff;
}
.btn-success {
  --bs-btn-color: #fff;
  --bs-btn-bg: #5cb85c;
  --bs-btn-border-color: #4cae4c;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #449d44;
  --bs-btn-hover-border-color: #398439;
  --bs-btn-focus-shadow-rgb: 37, 86, 37;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #398439;
  --bs-btn-active-border-color: #255625;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #5cb85c;
  --bs-btn-disabled-border-color: #4cae4c;
  color: #fff;
  background-color: #5cb85c;
  border-color: #4cae4c;
}
.btn-success:hover {
  color: #fff;
  background-color: #449d44;
  border-color: #398439;
}
.btn-success:focus,
.btn-success:focus-visible {
  color: #fff;
  background-color: #449d44;
  border-color: #255625;
}
.btn-success .badge {
  color: #5cb85c;
  background-color: #fff;
}
.btn-info {
  --bs-btn-color: #fff;
  --bs-btn-bg: #5bc0de;
  --bs-btn-border-color: #46b8da;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #31b0d5;
  --bs-btn-hover-border-color: #269abc;
  --bs-btn-focus-shadow-rgb: 27, 109, 133;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #269abc;
  --bs-btn-active-border-color: #1b6d85;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #5bc0de;
  --bs-btn-disabled-border-color: #46b8da;
  color: #fff;
  background-color: #5bc0de;
  border-color: #46b8da;
}
.btn-info:hover {
  color: #fff;
  background-color: #31b0d5;
  border-color: #269abc;
}
.btn-info:focus,
.btn-info:focus-visible {
  color: #fff;
  background-color: #31b0d5;
  border-color: #1b6d85;
}
.btn-info .badge {
  color: #5bc0de;
  background-color: #fff;
}
.btn-warning {
  --bs-btn-color: #fff;
  --bs-btn-bg: #f0ad4e;
  --bs-btn-border-color: #eea236;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #ec971f;
  --bs-btn-hover-border-color: #d58512;
  --bs-btn-focus-shadow-rgb: 152, 95, 13;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #d58512;
  --bs-btn-active-border-color: #985f0d;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #f0ad4e;
  --bs-btn-disabled-border-color: #eea236;
  color: #fff;
  background-color: #f0ad4e;
  border-color: #eea236;
}
.btn-warning:hover {
  color: #fff;
  background-color: #ec971f;
  border-color: #d58512;
}
.btn-warning:focus,
.btn-warning:focus-visible {
  color: #fff;
  background-color: #ec971f;
  border-color: #985f0d;
}
.btn-warning .badge {
  color: #f0ad4e;
  background-color: #fff;
}
.btn-danger {
  --bs-btn-color: #fff;
  --bs-btn-bg: #d9534f;
  --bs-btn-border-color: #d43f3a;
  --bs-btn-hover-color: #fff;
  --bs-btn-hover-bg: #c9302c;
  --bs-btn-hover-border-color: #ac2925;
  --bs-btn-focus-shadow-rgb: 118, 28, 25;
  --bs-btn-active-color: #fff;
  --bs-btn-active-bg: #ac2925;
  --bs-btn-active-border-color: #761c19;
  --bs-btn-disabled-color: #fff;
  --bs-btn-disabled-bg: #d9534f;
  --bs-btn-disabled-border-color: #d43f3a;
  color: #fff;
  background-color: #d9534f;
  border-color: #d43f3a;
}
.btn-danger:hover {
  color: #fff;
  background-color: #c9302c;
  border-color: #ac2925;
}
.btn-danger:focus,
.btn-danger:focus-visible {
  color: #fff;
  background-color: #c9302c;
  border-color: #761c19;
}
.btn-danger .badge {
  color: #d9534f;
  background-color: #fff;
}
.btn-link {
  --bs-btn-color: #337ab7;
  --bs-btn-hover-color: #23527c;
  --bs-btn-active-color: #23527c;
  --bs-btn-disabled-color: #777;
  color: #337ab7;
  background-color: transparent;
  border-color: transparent;
  box-shadow: none;
}
.btn-link:hover,
.btn-link:focus {
  color: #23527c;
  background-color: transparent;
  border-color: transparent;
}
.btn-link:disabled,
.btn-link.disabled,
fieldset:disabled .btn-link {
  color: #777;
}

/* ------------------------------------------------------------------
 * A-6. ナビゲーションバー（Bootstrap 3 の .navbar-inverse 配色）
 * ------------------------------------------------------------------ */
.navbar {
  --bs-navbar-color: #ffffff;
  --bs-navbar-hover-color: #fff;
  --bs-navbar-disabled-color: #444;
  --bs-navbar-active-color: #fff;
  --bs-navbar-brand-color: #ffffff;
  --bs-navbar-brand-hover-color: #fff;
  --bs-navbar-toggler-border-color: #333;
  --bs-navbar-toggler-icon-bg: url("data:image/svg+xml,%3csvg xmlns='http://www.w3.org/2000/svg' viewBox='0 0 30 30'%3e%3cpath stroke='rgba%28255, 255, 255, 1%29' stroke-linecap='round' stroke-miterlimit='10' stroke-width='2' d='M4 7h22M4 15h22M4 23h22'/%3e%3c/svg%3e");
  background-color: #222;
  border-color: #080808;
}
.navbar.bg-dark {
  background-color: #222 !important;
}
.navbar-collapse {
  border-top-color: transparent;
  box-shadow: inset 0 1px 0 rgba(255, 255, 255, .1);
}
@media (min-width: 768px) {
  .navbar-collapse {
    box-shadow: none;
  }
}
.navbar .navbar-collapse {
  border-color: #101010;
}
.navbar .navbar-brand {
  color: #ffffff;
}
.navbar .navbar-brand:hover,
.navbar .navbar-brand:focus {
  color: #fff;
  background-color: transparent;
}
.navbar .navbar-text {
  color: #9d9d9d;
}
/* ナビバー直下のリンク（ドロップダウン内の項目は A-7 の色を使う） */
.navbar .navbar-nav > li > a,
.navbar .navbar-nav > li > .nav-link,
.navbar .navbar-nav > .nav-item > .nav-link {
  color: #ffffff;
}
.navbar .navbar-nav > li > a:hover,
.navbar .navbar-nav > li > a:focus,
.navbar .navbar-nav > li > .nav-link:hover,
.navbar .navbar-nav > li > .nav-link:focus {
  color: #fff;
  background-color: transparent;
}
.navbar .navbar-nav > .active > a,
.navbar .navbar-nav > li > .nav-link.active,
.navbar .navbar-nav > .show > .nav-link {
  color: #fff;
  background-color: #080808;
}
.navbar .navbar-nav > .disabled > a,
.navbar .navbar-nav > li > .nav-link.disabled {
  color: #444;
  background-color: transparent;
}
.navbar .navbar-toggler {
  background-color: transparent;
  border-color: #333;
}
.navbar .navbar-toggler:hover,
.navbar .navbar-toggler:focus {
  background-color: #333;
  box-shadow: none;
}
.navbar .navbar-toggler .icon-bar,
.navbar .icon-bar {
  background-color: #fff;
}
.navbar .btn-link {
  color: #9d9d9d;
}
.navbar .btn-link:hover,
.navbar .btn-link:focus {
  color: #fff;
}
.navbar .btn-link:disabled,
fieldset:disabled .navbar .btn-link {
  color: #444;
}
/* Bootstrap 3 の .caret（境界線の色は文字色を継承） */
.caret {
  border-right-color: transparent;
  border-left-color: transparent;
}

/* ------------------------------------------------------------------
 * A-7. ドロップダウンメニュー
 * ------------------------------------------------------------------ */
.dropdown-menu {
  --bs-dropdown-color: #333;
  --bs-dropdown-bg: #fff;
  --bs-dropdown-border-color: rgba(0, 0, 0, .15);
  --bs-dropdown-divider-bg: #e5e5e5;
  --bs-dropdown-box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
  --bs-dropdown-link-color: #333;
  --bs-dropdown-link-hover-color: #262626;
  --bs-dropdown-link-hover-bg: #f5f5f5;
  --bs-dropdown-link-active-color: #fff;
  --bs-dropdown-link-active-bg: #337ab7;
  --bs-dropdown-link-disabled-color: #777;
  --bs-dropdown-header-color: #777;
  color: #333;
  background-color: #fff;
  border-color: rgba(0, 0, 0, .15);
  box-shadow: 0 6px 12px rgba(0, 0, 0, .175);
}
.dropdown-divider {
  background-color: #e5e5e5;
  border-top-color: #e5e5e5;
  opacity: 1;
}
.dropdown-item {
  color: #333;
}
.dropdown-item:hover,
.dropdown-item:focus {
  color: #262626;
  background-color: #f5f5f5;
}
.dropdown-item.active,
.dropdown-item:active {
  color: #fff;
  background-color: #337ab7;
}
.dropdown-item.disabled,
.dropdown-item:disabled {
  color: #777;
  background-color: transparent;
}
.dropdown-header {
  color: #777;
}

/* ------------------------------------------------------------------
 * A-8. ナビ（タブ・ピル）
 * ------------------------------------------------------------------ */
.nav {
  --bs-nav-link-color: #337ab7;
  --bs-nav-link-hover-color: #23527c;
  --bs-nav-link-disabled-color: #777;
}
.nav-link {
  color: #337ab7;
}
.nav-link:hover,
.nav-link:focus {
  color: #23527c;
  background-color: #eee;
}
.nav-link.disabled,
.nav-link:disabled {
  color: #777;
  background-color: transparent;
}
.nav-tabs {
  --bs-nav-tabs-border-color: #ddd;
  --bs-nav-tabs-link-hover-border-color: #eee #eee #ddd;
  --bs-nav-tabs-link-active-color: #555;
  --bs-nav-tabs-link-active-bg: #fff;
  --bs-nav-tabs-link-active-border-color: #ddd #ddd transparent;
  border-bottom-color: #ddd;
}
.nav-tabs .nav-link {
  border-color: transparent;
}
.nav-tabs .nav-link:hover,
.nav-tabs .nav-link:focus {
  border-color: #eee #eee #ddd;
}
.nav-tabs .nav-link.active,
.nav-tabs .nav-item.show .nav-link {
  color: #555;
  background-color: #fff;
  border-color: #ddd;
  border-bottom-color: transparent;
}
.nav-pills {
  --bs-nav-pills-link-active-color: #fff;
  --bs-nav-pills-link-active-bg: #337ab7;
}
.nav-pills .nav-link.active,
.nav-pills .show > .nav-link {
  color: #fff;
  background-color: #337ab7;
}

/* ------------------------------------------------------------------
 * A-9. パンくずリスト
 * ------------------------------------------------------------------ */
.breadcrumb {
  --bs-breadcrumb-bg: var(--sb-grey-100);
  --bs-breadcrumb-divider-color: #ccc;
  --bs-breadcrumb-item-active-color: #212529;
  background-color: var(--sb-grey-100);
}
.breadcrumb-item + .breadcrumb-item::before {
  color: #ccc;
}
.breadcrumb-item.active {
  color: #212529;
}

/* ------------------------------------------------------------------
 * A-10. ページネーション
 * ------------------------------------------------------------------ */
.pagination {
  --bs-pagination-color: #337ab7;
  --bs-pagination-bg: #fff;
  --bs-pagination-border-color: #ddd;
  --bs-pagination-hover-color: #23527c;
  --bs-pagination-hover-bg: #eee;
  --bs-pagination-hover-border-color: #ddd;
  --bs-pagination-focus-color: #23527c;
  --bs-pagination-focus-bg: #eee;
  --bs-pagination-focus-box-shadow: none;
  --bs-pagination-active-color: #fff;
  --bs-pagination-active-bg: #337ab7;
  --bs-pagination-active-border-color: #337ab7;
  --bs-pagination-disabled-color: #777;
  --bs-pagination-disabled-bg: #fff;
  --bs-pagination-disabled-border-color: #ddd;
}
.page-link {
  color: #337ab7;
  background-color: #fff;
  border-color: #ddd;
}
.page-link:hover,
.page-link:focus {
  color: #23527c;
  background-color: #eee;
  border-color: #ddd;
  box-shadow: none;
}
.page-item.active .page-link,
.active > .page-link,
.page-link.active {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.page-item.disabled .page-link,
.disabled > .page-link,
.page-link.disabled {
  color: #777;
  background-color: #fff;
  border-color: #ddd;
}

/* ------------------------------------------------------------------
 * A-11. ラベル・バッジ
 * ------------------------------------------------------------------ */
.label {
  color: #fff;
}
a.label:hover, a.label:focus { color: #fff; }
.label-default { background-color: #777; }
.label-default[href]:hover, .label-default[href]:focus { background-color: #5e5e5e; }
.label-primary { background-color: #337ab7; }
.label-primary[href]:hover, .label-primary[href]:focus { background-color: #286090; }
.label-success { background-color: #5cb85c; }
.label-success[href]:hover, .label-success[href]:focus { background-color: #449d44; }
.label-info { background-color: #5bc0de; }
.label-info[href]:hover, .label-info[href]:focus { background-color: #31b0d5; }
.label-warning { background-color: #f0ad4e; }
.label-warning[href]:hover, .label-warning[href]:focus { background-color: #ec971f; }
.label-danger { background-color: #d9534f; }
.label-danger[href]:hover, .label-danger[href]:focus { background-color: #c9302c; }
.badge {
  color: #fff;
  background-color: #777;
}
a.badge:hover,
a.badge:focus {
  color: #fff;
}
.list-group-item.active > .badge,
.nav-pills > .active > a > .badge,
.nav-pills .nav-link.active > .badge {
  color: #337ab7;
  background-color: #fff;
}

/* ------------------------------------------------------------------
 * A-12. アラート
 * ------------------------------------------------------------------ */
.alert {
  border-color: transparent;
}
.alert h4 {
  color: inherit;
}
.alert-success {
  --bs-alert-color: #3c763d;
  --bs-alert-bg: #dff0d8;
  --bs-alert-border-color: #d6e9c6;
  --bs-alert-link-color: #2b542c;
  color: #3c763d;
  background-color: #dff0d8;
  border-color: #d6e9c6;
}
.alert-success hr { border-top-color: #c9e2b3; }
.alert-success .alert-link { color: #2b542c; }
.alert-info {
  --bs-alert-color: #31708f;
  --bs-alert-bg: #d9edf7;
  --bs-alert-border-color: #bce8f1;
  --bs-alert-link-color: #245269;
  color: #31708f;
  background-color: #d9edf7;
  border-color: #bce8f1;
}
.alert-info hr { border-top-color: #a6e1ec; }
.alert-info .alert-link { color: #245269; }
/* 本システムでは flash メッセージ用に赤背景・白文字に変更している */
.alert-warning {
  --bs-alert-color: #ffffff;
  --bs-alert-bg: #cc0000;
  --bs-alert-border-color: #ffffff;
  --bs-alert-link-color: #66512c;
  color: #ffffff;
  background-color: #cc0000;
  border-color: #ffffff;
}
.alert-warning hr { border-top-color: #f7e1b5; }
.alert-warning .alert-link { color: #66512c; }
.alert-danger {
  --bs-alert-color: #a94442;
  --bs-alert-bg: #f2dede;
  --bs-alert-border-color: #ebccd1;
  --bs-alert-link-color: #843534;
  color: #a94442;
  background-color: #f2dede;
  border-color: #ebccd1;
}
.alert-danger hr { border-top-color: #e4b9c0; }
.alert-danger .alert-link { color: #843534; }
/* Bootstrap 3 の .close は白（#ffffff）に変更されていたため、
   アラート内の閉じるボタン（SVG）は白に反転する */
.alert .btn-close {
  filter: invert(1) grayscale(100%) brightness(200%);
  opacity: 1;
}
.alert .btn-close:hover,
.alert .btn-close:focus {
  opacity: .8;
  box-shadow: none;
}

/* ------------------------------------------------------------------
 * A-13. カード（Bootstrap 3 の .panel-default 配色）
 * ------------------------------------------------------------------ */
.card {
  --bs-card-color: inherit;
  --bs-card-bg: #fff;
  --bs-card-border-color: #ddd;
  --bs-card-cap-color: #333;
  --bs-card-cap-bg: #f5f5f5;
  color: inherit;
  background-color: #fff;
  border-color: #ddd;
  box-shadow: 0 1px 1px rgba(0, 0, 0, .05);
}
.card > .card-header {
  color: #333;
  background-color: #f5f5f5;
  border-color: #ddd;
}
.card-header > .dropdown .dropdown-toggle,
.card-title,
.card-title > a,
.card-title > small,
.card-title > .small {
  color: inherit;
}
.card > .card-header .badge {
  color: #f5f5f5;
  background-color: #333;
}
.card-footer {
  background-color: #f5f5f5;
  border-top-color: #ddd;
}
.card > .card-body + .table,
.card > .card-body + .table-responsive,
.card > .table + .card-body,
.card > .table-responsive + .card-body {
  border-top-color: #ddd;
}
/* パネルの状態色（.panel-primary 等）: Bootstrap 5 の .border-* は !important */
.card.border-primary { border-color: #337ab7 !important; }
.card.border-primary > .card-header { color: #fff; background-color: #337ab7; border-color: #337ab7; }
.card.border-primary > .card-header .badge { color: #337ab7; background-color: #fff; }
.card.border-success { border-color: #d6e9c6 !important; }
.card.border-success > .card-header { color: #3c763d; background-color: #dff0d8; border-color: #d6e9c6; }
.card.border-success > .card-header .badge { color: #dff0d8; background-color: #3c763d; }
.card.border-info { border-color: #bce8f1 !important; }
.card.border-info > .card-header { color: #31708f; background-color: #d9edf7; border-color: #bce8f1; }
.card.border-info > .card-header .badge { color: #d9edf7; background-color: #31708f; }
.card.border-warning { border-color: #faebcc !important; }
.card.border-warning > .card-header { color: #8a6d3b; background-color: #fcf8e3; border-color: #faebcc; }
.card.border-warning > .card-header .badge { color: #fcf8e3; background-color: #8a6d3b; }
.card.border-danger { border-color: #ebccd1 !important; }
.card.border-danger > .card-header { color: #a94442; background-color: #f2dede; border-color: #ebccd1; }
.card.border-danger > .card-header .badge { color: #f2dede; background-color: #a94442; }
/* 本システムの自作クラス（.panel-primary 相当） */
.border-panel-primary {
  border-color: #337ab7;
}
.card-header.panel-primary-header {
  background-color: #337ab7;
  color: white;
}

/* ------------------------------------------------------------------
 * A-14. リストグループ
 * ------------------------------------------------------------------ */
.list-group {
  --bs-list-group-color: inherit;
  --bs-list-group-bg: #fff;
  --bs-list-group-border-color: #ddd;
  --bs-list-group-action-color: #555;
  --bs-list-group-action-hover-color: #555;
  --bs-list-group-action-hover-bg: #f5f5f5;
  --bs-list-group-action-active-color: #555;
  --bs-list-group-action-active-bg: #f5f5f5;
  --bs-list-group-disabled-color: #777;
  --bs-list-group-disabled-bg: #eee;
  --bs-list-group-active-color: #fff;
  --bs-list-group-active-bg: #337ab7;
  --bs-list-group-active-border-color: #337ab7;
}
.list-group-item {
  color: inherit;
  background-color: #fff;
  border-color: #ddd;
}
a.list-group-item,
button.list-group-item,
.list-group-item-action {
  color: #555;
}
a.list-group-item .list-group-item-heading,
button.list-group-item .list-group-item-heading {
  color: #333;
}
a.list-group-item:hover,
button.list-group-item:hover,
a.list-group-item:focus,
button.list-group-item:focus,
.list-group-item-action:hover,
.list-group-item-action:focus {
  color: #555;
  background-color: #f5f5f5;
}
.list-group-item.disabled,
.list-group-item:disabled {
  color: #777;
  background-color: #eee;
}
.list-group-item.active {
  color: #fff;
  background-color: #337ab7;
  border-color: #337ab7;
}
.list-group-item.active .list-group-item-text {
  color: #c7ddef;
}
.list-group-item-success { color: #3c763d; background-color: #dff0d8; }
.list-group-item-info { color: #31708f; background-color: #d9edf7; }
.list-group-item-warning { color: #8a6d3b; background-color: #fcf8e3; }
.list-group-item-danger { color: #a94442; background-color: #f2dede; }

/* ------------------------------------------------------------------
 * A-15. モーダル
 * ------------------------------------------------------------------ */
.modal {
  --bs-modal-color: inherit;
  --bs-modal-bg: #fff;
  --bs-modal-border-color: rgba(0, 0, 0, .2);
  --bs-modal-box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
  --bs-modal-header-border-color: #e5e5e5;
  --bs-modal-footer-border-color: #e5e5e5;
}
.modal-content {
  color: inherit;
  background-color: #fff;
  border-color: rgba(0, 0, 0, .2);
  box-shadow: 0 3px 9px rgba(0, 0, 0, .5);
}
@media (min-width: 768px) {
  .modal-content {
    box-shadow: 0 5px 15px rgba(0, 0, 0, .5);
  }
}
.modal-header {
  border-bottom-color: #e5e5e5;
}
.modal-footer {
  border-top-color: #e5e5e5;
}
.modal-backdrop {
  --bs-backdrop-bg: #000;
  --bs-backdrop-opacity: .5;
  background-color: #000;
}
.modal-backdrop.show {
  opacity: .5;
}

/* ------------------------------------------------------------------
 * A-16. ツールチップ・ポップオーバー・プログレスバー
 * ------------------------------------------------------------------ */
.tooltip {
  --bs-tooltip-color: #fff;
  --bs-tooltip-bg: #000;
  --bs-tooltip-opacity: .9;
  text-shadow: none;
}
.tooltip-inner {
  color: #fff;
  background-color: #000;
}
.popover {
  --bs-popover-bg: #fff;
  --bs-popover-border-color: rgba(0, 0, 0, .2);
  --bs-popover-box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
  --bs-popover-header-bg: #f7f7f7;
  --bs-popover-header-color: inherit;
  --bs-popover-body-color: inherit;
  --bs-popover-arrow-border: rgba(0, 0, 0, .25);
  text-shadow: none;
  background-color: #fff;
  border-color: rgba(0, 0, 0, .2);
  box-shadow: 0 5px 10px rgba(0, 0, 0, .2);
}
.popover-header {
  background-color: #f7f7f7;
  border-bottom-color: #ebebeb;
}
.progress {
  --bs-progress-bg: #f5f5f5;
  --bs-progress-box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
  --bs-progress-bar-color: #fff;
  --bs-progress-bar-bg: #337ab7;
  background-color: #f5f5f5;
  box-shadow: inset 0 1px 2px rgba(0, 0, 0, .1);
}
.progress-bar {
  color: #fff;
  background-color: #337ab7;
  box-shadow: inset 0 -1px 0 rgba(0, 0, 0, .15);
}
.progress-bar-striped {
  background-image: linear-gradient(45deg, rgba(255, 255, 255, .15) 25%, transparent 25%, transparent 50%, rgba(255, 255, 255, .15) 50%, rgba(255, 255, 255, .15) 75%, transparent 75%, transparent);
}
.progress-bar-success { background-color: #5cb85c; }
.progress-bar-info { background-color: #5bc0de; }
.progress-bar-warning { background-color: #f0ad4e; }
.progress-bar-danger { background-color: #d9534f; }

/* ------------------------------------------------------------------
 * A-17. その他（well、jumbotron、thumbnail）
 * ------------------------------------------------------------------ */
.well {
  background-color: #f5f5f5;
  border-color: #e3e3e3;
  box-shadow: inset 0 1px 1px rgba(0, 0, 0, .05);
}
.well blockquote {
  border-color: rgba(0, 0, 0, .15);
}
.jumbotron {
  color: inherit;
  background-color: #eee;
}
.jumbotron h1,
.jumbotron .h1 {
  color: inherit;
}
.jumbotron > hr {
  border-top-color: #d5d5d5;
}
.thumbnail {
  background-color: #fff;
  border-color: #ddd;
}
a.thumbnail:hover,
a.thumbnail:focus,
a.thumbnail.active {
  border-color: #337ab7;
}
.thumbnail .caption {
  color: #333;
}

/* ------------------------------------------------------------------
 * A-18. 本システムの自作スタイルの色（styles.css の寸法指定と対）
 * ------------------------------------------------------------------ */
div.title {
  border-bottom-color: #ddd;
}
div.striped {
  border-top-color: #ddd;
}
div.striped:nth-of-type(2n) {
  background-color: #f9f9f9;
}

/* ------------------------------------------------------------------
 * A-19. 印刷（Bootstrap 3 の印刷用配色）
 * ------------------------------------------------------------------ */
@media print {
  *,
  *::before,
  *::after {
    color: #000 !important;
    text-shadow: none !important;
    background: transparent !important;
    box-shadow: none !important;
  }
  pre,
  blockquote {
    border-color: #999;
  }
  .btn > .caret,
  .dropup > .btn > .caret {
    border-top-color: #000 !important;
  }
  .label {
    border-color: #000;
  }
  .table td,
  .table th {
    background-color: #fff !important;
  }
  .table-bordered th,
  .table-bordered td {
    border-color: #ddd !important;
  }
}

/* ==================================================================
 * B. テーマ固有色（theme1: 無し）
 * ================================================================== */
