@charset "UTF-8";
@import url("https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css");
html,
body {
  height: 100%;
  font-size: 14px;
  background-color: #F8F9FA;
}
html#company-list #side-nav .company-list,
body#company-list #side-nav .company-list {
  background-color: #373e44;
}
html#company-list #side-nav .company-list a,
body#company-list #side-nav .company-list a {
  color: #3c8fb5;
}
html#dashboard #side-nav .dashboard,
body#dashboard #side-nav .dashboard {
  background-color: #373e44;
}
html#dashboard #side-nav .dashboard a,
body#dashboard #side-nav .dashboard a {
  color: #3c8fb5;
}
html#user-list #side-nav .user-list,
body#user-list #side-nav .user-list {
  background-color: #373e44;
}
html#user-list #side-nav .user-list a,
body#user-list #side-nav .user-list a {
  color: #3c8fb5;
}
html#user-alert #side-nav .user-alert,
body#user-alert #side-nav .user-alert {
  background-color: #373e44;
}
html#user-alert #side-nav .user-alert a,
body#user-alert #side-nav .user-alert a {
  color: #3c8fb5;
}

ul {
  margin: 0;
  padding: 0;
}

.h-100p {
  height: 100px;
}
.h-200 {
  height: 200px;
}
.h-228 {
  height: 228px;
}

.realonly {
  background-color: #eee;
  color: #aaa;
}

.form-signin {
  max-width: 330px;
  padding: 1rem;
}
.form-signin .form-floating:focus-within {
  z-index: 2;
}
.form-signin input.upper {
  margin-bottom: -1px;
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.form-signin input.bottom {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.form-signin .login-logo {
  width: 8rem;
}

@media screen and (max-width: 991px) {
  .contents {
    padding-left: 1rem;
    padding-right: 1rem;
    width: 100%;
  }
  .contents.fixd {
    width: 100%;
  }
  #side-nav {
    display: none;
  }
  .navbar-side {
    display: block;
  }
}
@media screen and (min-width: 992px) {
  #side-nav {
    position: relative;
    background-color: #212529;
    white-space: nowrap;
    width: 200px;
    min-width: 150px;
  }
  #side-nav h3 {
    text-align: center;
    color: #a1a1a1;
    background-color: #000;
    font-size: 0.8rem;
    padding: 0.5rem 0rem;
  }
  #side-nav ul {
    margin-bottom: 1rem;
  }
  #side-nav .parent::after {
    content: "▼";
    margin-left: 0.5rem;
    font-size: 0.8rem;
  }
  #side-nav .parent:has(+ .show)::after {
    content: "▲";
  }
  #side-nav .sub {
    display: none;
  }
  #side-nav .sub.show {
    display: block;
  }
  #side-nav a {
    display: block;
    color: white;
    line-height: 2.2rem;
    padding-left: 1rem;
    text-decoration: none;
  }
  #side-nav a:hover {
    color: white;
    background-color: #3a3f45;
  }
  #side-nav a.link::before {
    content: "-";
    margin-right: 0.5rem;
  }
  .swal2-modal {
    width: 800px !important;
    /* Limit the maximum width on larger screens */
  }
  .contents {
    padding-left: 1rem;
    padding-right: 1rem;
    overflow-x: auto;
    width: 100%;
  }
  .contents.fixd {
    width: 1340px;
    min-width: 1060px;
  }
  .d-half {
    height: 127px;
  }
  .d-half-user {
    height: 139px;
  }
  .stackedBarChart,
  .radarChart {
    height: 356px;
  }
  .navbar-side {
    display: none;
  }
  .transitionLine {
    height: 356px;
  }
  .categoryScore {
    height: 298px;
  }
  .situationTotal {
    height: 300px;
  }
}
footer {
  position: absolute;
  bottom: 1rem;
  left: 50%;
  background-color: #212529;
  color: #eff7ff;
  transform: translateX(-50%);
}

table {
  width: 100%;
  font-size: 0.9rem;
}
table.table thead th {
  background-color: #212529;
  color: white;
  font-weight: normal;
  padding-top: 2px;
  padding-bottom: 2px;
}
table.table tbody td.current {
  background-color: #ffeaec;
}
table#user-table {
  margin-bottom: 2px;
}
table#user-table th {
  font-size: 0.8rem;
  background-color: #eeeeee;
}
table#user-table td {
  font-size: 1.5rem;
}
table#user-table tr:last-child {
  border-bottom-color: white;
}
table#displayComment {
  margin-bottom: 3px;
}
table#displayComment tr:last-child {
  border-bottom-color: white;
}
table#score-transition {
  margin-bottom: 3px;
}
table thead th {
  font-size: 0.8rem;
}
table thead#transitionThead th {
  background-color: #eeeeee;
  text-align: center;
  color: #212529;
}
table tbody#transitionTbody th,
table tbody#transitionTbody td {
  text-align: center;
  padding-top: 3px;
  padding-bottom: 3px;
  vertical-align: middle;
}
table tbody#transitionTbody tr {
  border-bottom: 1px solid #d2d2d2;
}
table tbody#transitionTbody tr:last-child {
  border-bottom-color: white;
}
table tbody#transitionTbody tr td:last-child {
  border-bottom: none;
}
table.user-list thead th {
  text-align: center;
  border: 1px solid #dee2e6;
}
table.user-list tbody td .td-scroll {
  height: 50px;
  overflow-y: auto;
}
table th.sort {
  cursor: pointer;
}
table th.sort.desc::after {
  content: "▼";
  color: #bd4141;
  margin-left: 5px;
}
table th.sort.asc::after {
  content: "▲";
  color: #bd4141;
  margin-left: 5px;
}
table button.btn,
table a.btn {
  font-size: 0.9rem;
  padding: 2px 5px;
}
table#surveyQuestion, table #scoreCategory {
  table-layout: fixed;
  width: -moz-max-content;
  width: max-content;
  /* 横幅を内容分だけ広げる */
  min-width: 100%;
}

#listClear {
  font-size: small;
}

.pager {
  margin-bottom: 1rem;
}
.pager .recordCountBox {
  display: block;
  padding-left: 5px;
  padding-right: 5px;
  border-radius: 5px;
  line-height: 33px;
  background-color: #212529;
  color: white;
  font-size: 0.8rem;
}
.pager ul {
  list-style: none;
}
.pager ul li {
  margin: 0 5px;
}
.pager ul li span,
.pager ul li a {
  display: block;
  padding: 6px 12px;
  border-radius: 5px;
}
.pager ul li a {
  background-color: #EEE;
  color: #000;
  text-decoration: none;
}
.pager ul li a:hover {
  background-color: #333;
  color: #FFF;
}
.pager ul li.active a {
  font-weight: bold;
  background-color: #ccc;
}
.pager ul li.active a:hover {
  background-color: #333;
  color: #FFF;
}

.navbar-brand .logo {
  height: 30px;
}

.form-signin .logo {
  width: 150px;
}

.circle-width {
  width: 3rem;
  height: 3rem;
  line-height: 3rem;
  text-align: center;
  display: inline-block;
  font-family: Georgia, "Times New Roman", Times, serif;
}

#riskMark .circle-width,
#situationTotal .circle-width {
  width: 5rem;
  height: 5rem;
  font-size: 2.4rem;
  line-height: 5rem;
}
#riskMarkEngage, #riskMarkRelationship, #riskMarkPersonal, #riskMarkEnvironment,
#situationTotalEngage,
#situationTotalRelationship,
#situationTotalPersonal,
#situationTotalEnvironment {
  font-size: 1.1rem;
  text-align: center;
  border-bottom: 1px solid #d2d2d2;
  padding: 0.5rem;
}
#riskMarkUser,
#situationTotalUser {
  font-size: 1.5rem;
  font-weight: bold;
  border-bottom: 1px solid #d2d2d2;
  padding: 0.5rem;
}

#monthDifference {
  text-align: center;
  font-weight: bold;
  font-size: 4rem;
}
#monthDifferenceEngage, #monthDifferenceRelationship, #monthDifferencePersonal, #monthDifferenceEnvironment {
  font-size: 2rem;
  text-align: center;
  font-weight: bold;
}

.form-label {
  margin-bottom: 0;
  font-size: 0.8rem;
}

.tooltip-multiline .tooltip-inner {
  text-align: left;
}

form .required::after {
  content: "*必須";
  color: #bd4141;
  margin-left: 0.5rem;
}

input.search {
  border-color: #6c757d;
}

input:-moz-read-only, textarea:-moz-read-only {
  background-color: #f0f0f0;
}

input:read-only,
textarea:read-only {
  background-color: #f0f0f0;
}

.select-label {
  background-color: #212529;
  color: white;
  border-color: #000;
}

select {
  border-radius: 0.3rem;
}

select[multiple] option:checked {
  background-color: #005eca;
  color: #fff;
}

.text-bg-logo {
  color: white;
  background-color: #212529;
  font-size: 0.9rem;
  padding-top: 3px;
  padding-bottom: 3px;
}

.main {
  padding-top: 40px;
}

.w200 {
  width: 200px;
}

.w140 {
  width: 140px;
}

.w100 {
  width: 100px;
}

.w70 {
  width: 70px;
}

.w60 {
  width: 60px;
}

.yn-textbox {
  display: none;
}

.i-bold .bi::before,
.i-bold [class*=" bi-"]::before,
.i-bold [class^=bi-]::before {
  font-weight: bold !important;
}

.risk {
  font-family: sans-serif;
  font-weight: bold;
  display: block;
}
.risk.risk-rem {
  font-size: 2rem;
}
.risk-a {
  color: #298de0;
}
.risk-a-pp {
  background-color: #73b0e2;
}
.risk-a-p {
  background-color: #73b0e2;
}
.risk-b {
  color: #328754;
}
.risk-b-pp {
  background-color: #328754;
}
.risk-b-p {
  background-color: #328754;
}
.risk-c {
  color: #fdc108;
}
.risk-c-pp {
  background-color: #fdc108;
}
.risk-c-p {
  background-color: #fdc108;
}
.risk-d {
  color: #dc3545;
}
.risk-d-pp {
  background-color: #dc3545;
}
.risk-d-p {
  background-color: #dc3545;
}

.survey-content .section-line {
  border: 1px solid #adb5bd;
}
.survey-content .section-line-danger {
  border-color: #ff8e8e;
  background-color: #ffdfdf;
}