p {
  padding-bottom: 8rem;
  font-style: normal;
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 180%;
  letter-spacing: 0.08em;
  color: #000000;
}

.product {
  padding: 16rem 0;
}

.product-top-flex-box-container {
  display: flex;
  justify-content: space-between;
  margin-bottom: 16rem;

  .product-top-box {
    width: 44.8rem;
    padding-top: 3rem;
    border-radius: 0.8rem;
    background-color: #fff;
    box-shadow: 0px 0.2rem 0.4rem rgba(0, 0, 0, 0.15);
    /* max-height: 43.6rem; */
    height: 43.6rem;

    .title-flex-container {
      display: flex;
      justify-content: space-between;
      max-width: 40rem;
      margin: 0 auto 2.1rem;
      align-items: center;

      .text {
        max-width: 32.8rem;
        font-style: normal;
        font-weight: 700;
        font-size: 2.2rem;
        line-height: 150%;
        letter-spacing: 0.05em;
        color: #D62328;
      }

      .btn-icon-container {
        width: 4.4rem;
        transform: rotate(90deg);
      }
    }

    .box-top-img-container {
      width: 100%;
      height: auto;

      & img {
        height: auto;
      }
    }
  }

  .product-top-box-mid {
    padding-top: 3.6rem;

    .title-flex-container {
      margin: 0 auto 3.7rem;
    }
  }
}

.table-mega-container {
  background-color: #fff;
  padding: 8rem;
  border-radius: 1.6rem;
  margin-bottom: 16rem;

  .table-paragraph {
    font-style: normal;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 180%;
    letter-spacing: 0.08em;
    color: #000000;
    padding: 4rem 0 8rem;
  }

  .main-table {
    font-style: normal;
    font-weight: 500;
    font-size: 1.8rem;
    line-height: 180%;
    letter-spacing: 0.08em;
    color: #000000;

    & th {
      display: flex;
      flex-direction: row;
      align-items: center;
      padding: 1.6rem 3.2rem;

      width: 46.9rem;
      height: 6.4rem;
      background: #FFE4E4;
      border-left: 1px solid #FFFFFF;
    }

    & tr {
      display: flex;
    }

    & td {
      display: flex;
      flex-direction: row;
      align-items: center;
      padding: 1.6rem 3.2rem;
      width: 46.9rem;
      position: relative;
      border-bottom: 1px solid #DADADA;

      &:nth-child(3)::after {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 0.2rem;
        height: 85%;
        background: #DADADA;
        bottom: 0;
        margin: auto;
      }
    }

    .first-row-th {
      width: 34.4rem;
    }

    .first-row-td {
      width: 34.4rem;
      display: flex;
      flex-direction: row;
      align-items: center;
      padding: 1.6rem 3.2rem;

    }

    .bold {
      font-weight: 700;
    }

    .white-grey {
      background: #F1F1F1;
    }

    .dark-grey {
      background: #D6D6D6;
    }
  }
}

.table02 {

  .main-table {

    & th {
      width: 93.6rem;
    }

    & td {
      width: 93.6rem;
    }
  }
}

.table02-end {
  margin-bottom: 0;
}

@media screen and (max-width: 767px) {
  p {
    font-size: 1.4rem;
    line-height: 150%;
    padding-bottom: 4rem;
  }

  .product {
    padding: 8rem 0;
  }

  .product-top-flex-box-container {
    margin-bottom: 8rem;
    flex-direction: column;
    gap: 2rem;

    .product-top-box {
      width: 100%;
      padding-top: 2rem;
      border-radius: 0.4rem;
      height: auto;

      .title-flex-container {
        max-width: 30rem;
        margin: 0 auto 2rem;

        .text {
          max-width: 25rem;
          font-size: 1.6rem;
          line-height: 150%;
        }

        .btn-icon-container {
          width: 3rem;
        }
      }

      .box-top-img-container {
        height: auto;
      }
    }
  }

  .table-mega-container {
    padding: 2.5rem 2rem;
    border-radius: 0.8rem;
    margin-bottom: 8rem;

    .table-paragraph {
      font-size: 1.4rem;
      line-height: 150%;
      padding: 2rem 0 4rem;
    }

    .main-table {
      display: block;
      width: 100%;
      overflow-x: auto;
      -webkit-overflow-scrolling: touch;
      white-space: nowrap;
      font-size: 1.4rem;
      padding-bottom: 1rem;

      &::-webkit-scrollbar {
        height: 1.2rem;
      }

      &::-webkit-scrollbar-track {
        background: transparent;
        border-top: 0.5rem solid transparent;
        border-bottom: 0.5rem solid transparent;
        box-shadow: inset 0 2px 0 0 #F1F1F1;
        background-clip: padding-box;
      }

      &::-webkit-scrollbar-thumb {
        background: #D62328 url(../../img/business/swiper-scrollbar-drag.png) no-repeat center center;
        background-size: 3.5rem auto;
        border-radius: 1rem;
        cursor: grab;
      }

      &::-webkit-scrollbar-thumb:active {
        cursor: grabbing;
      }

      & th,
      & td {
        display: inline-block;
        width: auto;
        min-width: 28rem;
        padding: 1.2rem 1.6rem;
        height: auto;
        font-size: 1.4rem;
        line-height: 150%;
        white-space: normal;
      }

      & th {
        padding: 1.2rem 1.6rem;
        background: #FFE4E4;
        border-left: 1px solid #FFFFFF;
      }

      & td {
        &:nth-child(3)::after {
          display: none;
        }
      }

      .first-row-th,
      .first-row-td {
        width: auto;
        padding: 1.2rem 1.6rem;
      }

      & tr {
        display: flex;
      }
    }
  }

  .table02 .main-table {

    & th,
    & td {
      min-width: 40rem;
    }
  }

  .common-title-page {
    .text {
      max-width: 27.4rem;
    }
  }
}