/* Additional style for member page */
.btn-big-green > img {
  margin-top: 3px;
}
.row-member {
  --bs-gutter-x: 4px;
  --bs-gutter-y: 4px;
  align-items: center;
  justify-content: center;
}
.row-member > .col {
  flex: 0 0 auto;
  width: 33%;
}
section.plan h4 {
  font-size: 20px;
  font-weight: 700;
  text-align: center;
}
.ico-plan {
  width: 40px;
  height: 40px;
}
.table td {
  font-weight: 400;
}
.table td b {
  font-weight: 700;
}
.table-responsive::-webkit-scrollbar {
  display: none;
}
.table-responsive {
  scrollbar-width: none;
}
.table-responsive {
  -ms-overflow-style: none;
}
.table-rounded {
  border-radius: 4px;
  overflow: hidden;
  margin-bottom: 4px;
}
.table-rounded th {
  background-color: #45c4b7;
  color: #fff;
  border-color: #45c4b7;
  font-weight: 700;
}
.table-rounded th,
.table-rounded td {
  text-align: center;
}
.table-rounded thead {
  border: 1px solid #45c4b7;
}
.table-rounded th:first-child {
  min-width: 170px;
}
.table-rounded th:not(:first-child) {
  min-width: 146px;
}
.table-rounded td {
  border-bottom: 1px solid #ededed;
  border-left: 1px solid #ededed;
}
.table-rounded td:last-child {
  border-right: 1px solid #ededed;
}
#saving .table-rounded td:nth-child(2) {
  padding: 7px 24px;
}
#saving .table-rounded th:last-child {
  min-width: 180px;
}
.list-group.bg-lightgrey {
  --bs-list-group-bg: #f5f5f5;
}
.list-group-item:first-child {
  border-top-left-radius: 0;
  border-top-right-radius: 0;
}
.list-group-item:last-child {
  border-bottom-right-radius: 0;
  border-bottom-left-radius: 0;
}
.list-group li {
  display: flex;
}
.list-group li:before {
  flex: 0 0 14px;
}
ul.list-group {
  list-style: none;
  padding: 0;
  margin: 0;
}
ol.list-group li,
ul.list-group li {
  padding: 0px;
}
ul.list-group li::before {
  content: '・';
  padding-right: 8px;
}
p.share {
  color: #45c4b7;
  font-size: 22px;
  font-weight: 700;
  margin-bottom: 0px;
  text-align: center;
}
section.benefit h4 {
  text-align: center;
  font-weight: bold;
}
.benefit .table-rounded thead {
  border: none;
}
.benefit .table-rounded th,
.benefit .table-rounded td {
  padding: 6px 16px;
}
.benefit .table-rounded td,
.benefit .table-rounded td span {
  text-align: left;
  vertical-align: middle;
}
.benefit .table-rounded th:first-child {
  min-width: 316px;
  border: 1px solid #f5f5f5;
  border-bottom: 1px solid #ededed;
}
.benefit .table-rounded th:not(:first-child) {
  min-width: 196px;
  border: 1px solid #92c41d;
  border-bottom: 1px solid #ededed;
}
.benefit .table-rounded th:last-child {
  border: 1px solid #8b8b8b;
  border-bottom: 1px solid #ededed;
}
.benefit .table tr b {
  color: #92c41d;
}
.benefit .table tr td:last-child,
.benefit .table tr td:last-child b {
  color: #8b8b8b;
  background-color: #f5f5f5;
}
.benefit .table tr p,
.benefit .table tr .right {
  margin-bottom: 0px;
}
.td-mh {
  min-height: 55.04px;
}

@media only screen and (min-width: 992px) {
  .member .intro {
    padding-bottom: 160px;
  }
  .member .intro .card .c-left,
  .member .intro .card .c-right {
    width: 48.3606557%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    min-height: 149px;
  }
  .member .intro .card .c-left p:first-child {
    font-size: 18px;
  }
  .member .intro .card .row-member > .col {
    flex: 0 0 auto;
    width: 20%;
  }
  .member .intro .btn-big-green {
    position: absolute;
    bottom: -85px;
    left: 50%;
    transform: translateX(-50%);
  }
  .member .plan img.mx-auto {
    width: 55px;
    margin-bottom: 8px;
  }
  section.plan h4 {
    font-size: 22px;
  }
  section.plan .card.first-card {
    padding: 32px 48px;
  }
  .row-member {
    --bs-gutter-x: 12px !important;
    --bs-gutter-y: 0px !important;
  }
  #saving .table-rounded th,
  #saving .table-rounded td {
    padding: 8.5px 0;
  }
  #saving .table-rounded th:first-child {
    width: 280px;
    min-width: 280px;
  }
  #saving .table-rounded th:nth-child(3) {
    width: 200px;
    min-width: 200px;
  }
  #saving .table-rounded th:last-child {
    width: 180px;
    min-width: 180px;
  }
  #saving .table-rounded td b {
    font-size: 18px;
  }
  .table-note {
    font-size: 12px;
  }
  .sub-page .card-cyan h3.card-title {
    font-size: 16px;
    height: 42px;
    line-height: 42px;
  }
  .list-group li {
    letter-spacing: 0.07rem;
  }
  p.share {
    font-size: 18px;
  }
  #family,
  #funeral,
  #maturity,
  #cancellation {
    width: 50%;
    float: left;
  }
  #funeral,
  #cancellation {
    float: right;
  }
  #family,
  #funeral {
    padding-top: 32px;
    padding-bottom: 40px;
    height: 450px;
  }
  #maturity,
  #cancellation {
    padding-top: 0px;
    height: 423px;
  }
  #maturity,
  .benefit {
    clear: both;
  }
  #family .container,
  #maturity .container,
  #funeral .container,
  #cancellation .container {
    max-width: 95%;
    width: 95%;
  }
  #family .container,
  #maturity .container {
    padding-left: 25%;
  }
  #funeral .container,
  #cancellation .container {
    padding-right: 25%;
  }
  #family .container p.subtitle-section,
  #maturity .container p.subtitle-section,
  #funeral .container p.subtitle-section,
  #cancellation .container p.subtitle-section {
    text-align: left;
    margin-bottom: 16px;
  }
  #family h3.card-title {
    font-size: 16px;
  }
  section.benefit h4 {
    margin-bottom: 24px;
  }
  .benefit .table-rounded th {
    min-width: 280px !important;
  }
  .benefit .table-rounded th:first-child {
    min-width: 480px !important;
  }
  .benefit .table-rounded th,
  .benefit .table-rounded td {
    padding: 8.45px 24px;
  }
  .benefit .table-rounded td {
    padding: 12.952px 24px;
  }
  .benefit .table tr p,
  .benefit .table tr .right {
    font-size: 12px;
  }
  .benefit .table tr b {
    font-size: 22px;
  }
  .benefit .fs-8px {
    font-size: 12px !important;
  }
}

@media only screen and (max-width: 991px) {
  .sub-page section .container {
    max-width: 1040px;
    padding-left: 0px;
    padding-right: 0px;
  }
  .member .intro .card .c-right img {
    width: 100%;
  }
  .btn-big-green {
    min-width: 100%;
  }
  section.plan img,
  section.plan h4 {
    font-size: 14px;
    margin-bottom: 4px;
  }
  .table-note {
    font-size: 7px;
  }
  p.share {
    font-size: 16px;
  }
  section.benefit h4 {
    font-size: 16px;
  }
  .benefit .table tr b {
    font-size: 16px;
  }
  .benefit .table tr p,
  .benefit .table tr .right {
    font-size: 8px;
  }
}
