html {
  font-size: 62.5%;
  --clr-white: #fff;
  --clr-ttl-black: #333333;
  --clr-black: #000;
  --clr-red: #ed2446;
  --clr-glay: #f1f1f1;
  --clr-bg-glay: #bdbdbd;
  --clr-header-bg: rgba(0, 0, 0, 0.25);
  --clr-footer-bg: #222222;
}

.ttl_h2 {
    text-align: center;
}
.ttl_h2_eng {
    justify-content: center;
    gap: min(13px, calc(13 / 1440 * 100vw));
    padding-left: 0;
    margin-bottom: min(80px, calc(80 / 1440 * 100vw));
    color: var(--clr-red);
}
.ttl_h2_eng::before {
    position: relative;
    left: 0;
}
.ttl_lead {
    max-width: 768px;
    width: 100%;
    text-align: center;
    letter-spacing: 0.05em;
    line-height: 1.5;
    margin: 0 auto min(150px, calc(150 / 1440 * 100vw));
}
.product_list {
      margin-bottom: min(343px, calc(343 / 1440 * 100vw));
}
.product_item {
    position: relative;
    background-color: var(--clr-glay);
    margin-bottom: min(110px, calc(110 / 1440 * 100vw));
}
.product_item_inner {
  width: min(1312px, calc(1312 / 1440 * 100vw));
      display: flex;
    justify-content: center;
    align-items: center;
    gap: min(123px, calc(123 / 1440 * 100vw));
    margin: 0 auto;
}
.product_item::before {
    position: absolute;
    top: 0;
    right: 0;
    content: "";
    width: calc(1000 / 1440 * 100vw);
    height: min(8px, calc(8 / 1440 * 100vw));
    background: var(--clr-red);

}
.product_item img {
    position: relative;
    top: max(-80px, calc(-80 / 1440 * 100vw));
    width: min(370px, calc(370 / 1440 * 100vw));
}
.product_text {
    width: min(715px, calc(715 / 1440 * 100vw));
    margin-top: min(28px, calc(28 / 1440 * 100vw));
}
.product_item ._name {
    font-size: min(36px, calc(36 / 1440 * 100vw));
    font-weight: bold;
    margin-bottom: min(24px, calc(24 / 1440 * 100vw));
}
.product_item ._disc {
    font-size: min(20px, calc(20 / 1440 * 100vw));
    line-height: 1.5;
    margin-bottom: min(41px, calc(41 / 1440 * 100vw));
}
.product_item .btn {
    max-width: 250px;
    margin-right: min(130px, calc(130 / 1440 * 100vw));
    margin-left: auto;
}
.product_item .btn a {
    font-size: 1.6rem;
    gap: 54px;
    padding: 0.8rem 0;
}

@media screen and (max-width:767px) {
  .ttl_h2 {
    font-size: calc(24/375*100vw);
  }
  .ttl_h2_eng {
    justify-content: center;
    gap: calc(13 / 375 * 100vw);
    padding-left: 0;
    margin-bottom: calc(12 / 375 * 100vw);
    color: var(--clr-red);
    font-size: calc(16 / 375 * 100vw);
  }
  .ttl_h2_eng::before {
    position: relative;
    left: 0;
  }
  .ttl_lead {
    max-width: 100%;
    width: 100%;
    text-align: center;
    padding: 0 calc(20 / 375 * 100vw);
    margin: 0 auto calc(42 / 375 * 100vw);
  }
.product_list {
  padding: 0 calc(20 / 375 * 100vw);
    margin-bottom: 0;
}
  .product_item {
    background-color: var(--clr-glay);
    margin-bottom: calc(32 / 375 * 100vw);
  }
  .product_item_inner {
    width: 100%;
    display: flex;
    justify-content: center;
    align-items: center;
    flex-direction: column;
    gap: 0;
    padding: calc(42 / 375 * 100vw) calc(20 / 375 * 100vw) calc(30 / 375 * 100vw);
    margin: 0 auto;
}
  .product_item::before {
      position: absolute;
      top: 0;
      right: 0;
      content: "";
      width: 100%;
      height: calc(8 / 375 * 100vw);
      background: var(--clr-red);

  }
  .product_item img {
      position: relative;
      top: 0;
      width: 100%;
  }
  .product_text {
      width: 100%;
      margin-top: calc(28 / 375 * 100vw);
  }
  .product_item ._name {
      font-size: calc(20 / 375 * 100vw);
      text-align: center;
      margin-bottom: calc(18 / 375 * 100vw);
  }
  .product_item ._disc {
      font-size: calc(18 / 375 * 100vw);
      margin-bottom: 0;
  }
  .btn {
    max-width: 100%;
      width: calc(250 / 375 * 100vw);
      margin: 0 auto calc(80 / 375 * 100vw);
  }
  .btn:last-of-type {
    margin-bottom: calc(130 / 375 * 100vw);
  }
  .btn a {
      font-size: calc(16 / 375 * 100vw);
      gap: calc(38 / 375 * 100vw);
      padding: calc(9 / 375 * 100vw) 0;
  }
}