/*****************************************************************************
CSS only for 20250718_01 page
*****************************************************************************/

/* .TblData
-----------------------------------------*/
.TblData {
  background-color: #fff;
  border: solid 1px #d6d6d6;
  border-bottom: none;
  margin-bottom: 6px;
}

@media screen and (max-width: 767px) {
  .TblData {
    overflow-x: scroll;
    white-space: nowrap;
    -webkit-overflow-scrolling: touch;
  }
}

.TblData table {
  width: 100%;
}

@media screen and (max-width: 767px) {
  .TblData table {
    table-layout: fixed;
  }
}

.TblData th {
  font-size: 14px;
  font-size: 1.4rem;
  text-align: center;
  vertical-align: middle;
  height: 30px;
  font-weight: bold;
  background-color: #d6d6d6;
  border: solid 1px #fff;
  padding: 5px;
}

@media screen and (max-width: 976px) {
  .TblData th {
    font-size: 12px;
    font-size: 1.2rem;
    height: auto;
  }
}

.TblData th:first-child {
  width: 13.5%;
}

@media screen and (max-width: 767px) {
  .TblData th:first-child {
    width: 110px;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    left: 0;
    border-right: none;
    z-index: 1;
  }
  .TblData th:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-right: 1px solid #fff;
  }
}

.TblData th:nth-child(2) {
  width: 13%;
}

@media screen and (max-width: 767px) {
  .TblData th:nth-child(2) {
    width: 106px;
    border-left: none;
  }
}

.TblData th:nth-child(3) {
  width: 12%;
}

@media screen and (max-width: 767px) {
  .TblData th:nth-child(3) {
    width: 106px;
  }
}

.TblData th:nth-child(4),
.TblData th:nth-child(5),
.TblData th:nth-child(6),
.TblData th:nth-child(7),
.TblData th:nth-child(8) {
  width: 12%;
}

@media screen and (max-width: 767px) {
  .TblData th:nth-child(4),
  .TblData th:nth-child(5),
  .TblData th:nth-child(6),
  .TblData th:nth-child(7),
  .TblData th:nth-child(8) {
    width: 110px;
  }
}

.TblData td {
  font-size: 12px;
  font-size: 1.2rem;
  padding: 10px 1%;
  line-height: 1.5;
  text-align: center;
  vertical-align: middle;
  border-bottom: solid 1px #d6d6d6;
  border-right: dashed 1px #999999;
}

@media screen and (max-width: 767px) {
  .TblData td:first-child {
    background-color: #fff;
    position: sticky;
    position: -webkit-sticky;
    top: 0;
    left: 0;
    border-right: none;
    border-bottom: none;
    z-index: 1;
  }
  .TblData td:first-child::after {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-right: 1px dashed #999999;
    border-bottom: 1px solid #d6d6d6;
  }
}

.TblData td:nth-child(7) {
  border-right: none;
}