@import url("https://fonts.googleapis.com/css2?family=Sawarabi+Mincho&display=swap");
.itemCharacterPage {
  --font-sp: "Sawarabi Mincho", serif;
  .l-wrapper {
    &::before {
      content: "";
      position: fixed;
      inset: 0;
      background: #000 url(/assets/item_character/dr-stone/img/bg_page.webp)
        no-repeat right top / cover;
      z-index: 0;
      @media only screen and (max-width: 767px) {
      }
    }
    .seriesInfo__link {
      a,
      button {
        --btnColor: #fff;
        --btnBgColor: #472c12;
      }
    }
  }
  .pageHeading__title {
  }
  .seriesSection__logoBox {
    background: #000 url(/assets/item_character/dr-stone/img/bg_ttl.png)
      no-repeat center top / cover;
    color: #fff;
    padding: calc(30% / 11.2) calc(50% / 11.2) calc(35% / 11.2);
    @media only screen and (max-width: 767px) {
      padding: calc(40% / 6.9) calc(30% / 6.9) calc(40% / 6.9);
    }
  }

  .itemSlide .itemList__item__inner:not(:has(> a)),
  .itemSlide .itemList__item__inner a {
  }

  .seriesInfo__header {
    position: relative;
    padding-bottom: calc(20em / 16);
    @media only screen and (max-width: 767px) {
      padding-bottom: calc(20em / 26);
    }
    &::before {
      content: "";
      position: absolute;
      bottom: 0;
      display: inline-block;
      width: calc(100em / 16);
      height: calc(3em / 16);
      left: 50%;
      transform: translateX(-50%);
      background-color: #dc000c;
    }
  }
  .seriesInfo__title {
  }
  .dsSecWrapper {
    @media only screen and (min-width: 768px) {
      width: calc(1000% / 11.2);
      margin-inline: auto;
      margin-bottom: calc(180% / 11.2);
    }
    @media only screen and (max-width: 767px) {
      margin-bottom: calc(120% / 6.9);
    }
  }
  .dsBrandSec__title {
    margin-bottom: calc(30em / 16);
    @media only screen and (min-width: 768px) {
      width: calc(888% / 10);
      margin-inline: auto;
    }
    @media only screen and (max-width: 767px) {
      margin-bottom: calc(30em / 26);
    }
  }
  .ds_boxarea {
    position: relative;
    padding-top: calc(30% / 10);
    @media only screen and (max-width: 767px) {
      margin-inline: calc(-15% / 6.9);
      padding-top: calc(60% / 6.9);
    }
    * {
      box-sizing: border-box;
    }
    .ds_boxarea_bg {
      width: calc(970% / 10);
      position: absolute;
      left: 0;
      top: 0;
      bottom: 0;
      margin-bottom: calc(30% / 10);
      background: rgba(234, 222, 214, 0.8);
      z-index: 0;
      @media only screen and (max-width: 767px) {
        width: calc(700% / 7.2);
      }
    }
    .ds_boxarea_line {
      width: calc(970% / 10);
      padding: calc(90% / 10) calc(40% / 10) calc(90% / 10);
      position: relative;
      top: 0;
      margin-left: auto;
      z-index: 1;
      border: 1px solid rgba(71, 44, 18, 1);
      @media only screen and (max-width: 767px) {
        width: calc(700% / 7.2);
        padding: calc(90% / 7.2) calc(45% / 7.2) calc(90% / 7.2) calc(30% / 7.2);
      }
      &::before {
        content: "";
        position: absolute;
        top: -1px;
        left: 0;
        width: calc(190% / 9.7);
        height: 1px;
        background: rgba(198, 208, 211, 1);
        @media only screen and (max-width: 767px) {
          width: calc(320% / 7);
        }
      }
      &::after {
        content: "";
        position: absolute;
        top: 0;
        left: -1px;
        width: 1px;
        padding-bottom: calc(90% / 9.7);
        background: rgba(198, 208, 211, 1);
        @media only screen and (max-width: 767px) {
          padding-bottom: calc(90% / 6.9);
        }
      }
    }
    .ds_boxarea_ttl {
      position: absolute;
      top: 0;
      margin-top: calc(-20% / 9.7);
      left: calc(-16% / 9.7);
      z-index: 1;
      width: calc(194% / 9.7);
      @media only screen and (max-width: 767px) {
        width: calc(300% / 7);
        margin-top: calc(-35% / 7);
        left: calc(0% / 7);
      }
    }
    .fzero_area {
      margin-bottom: calc(120% / 8.88);
    }
    .disbox {
      margin-bottom: calc(60% / 8.88);
      @media only screen and (min-width: 768px) {
        display: flex;
        align-items: center;
        justify-content: center;
        gap: calc(50% / 8.88);
      }
      ._logo {
        width: calc(230% / 8.88);
        @media only screen and (max-width: 767px) {
          width: calc(360% / 6.2);
          margin-inline: auto;
          margin-bottom: calc(30% / 6.2);
        }
      }
      ._txt {
        @media only screen and (min-width: 768px) {
          max-width: calc(550% / 8.88);
        }
      }
    }
    .itemBox {
      gap: calc(50% / 8.88);
      margin-bottom: calc(60% / 8.88);
      @media only screen and (min-width: 768px) {
        display: flex;
        align-items: center;
        justify-content: center;
      }
      ._img {
        width: calc(350% / 8.88);
        @media only screen and (max-width: 767px) {
          width: calc(600% / 6.2);
          margin-inline: auto;
          margin-bottom: calc(30% / 6.2);
        }
      }
      ._txtBox {
        font-family: var(--font-sp);
        @media only screen and (min-width: 768px) {
          width: calc(480% / 8.88);
        }
      }
    }
    .ds_bn {
      font-size: calc(24em / 16);
      margin: auto 0;
      font-weight: bold;
      @media only screen and (max-width: 767px) {
        font-size: calc(28em / 26);
      }
    }
    .ds_name {
      font-size: calc(50em / 16);
      line-height: 1.5;
      margin-bottom: calc(5em / 50);
      @media only screen and (max-width: 767px) {
        font-size: calc(64em / 26);
      }
    }
    .price {
      font-size: calc(17em / 16);
      font-weight: bold;
      margin-bottom: calc(10em / 17);
      @media only screen and (max-width: 767px) {
        font-size: calc(24em / 26);
      }
    }
    .sale {
      font-size: calc(32em / 16);
      font-weight: bold;
      margin-bottom: calc(10em / 32);
      @media only screen and (max-width: 767px) {
        font-size: calc(50em / 26);
      }
    }
    .link_btn {
      font-weight: bold;
      /* font-family: var(--font-sp); */
      font-size: calc(18em / 16);
      a {
        --btnBgColor: #ec6619;
        border-radius: 0;
      }
      &.ichiran {
        a {
          margin-inline: auto;
        }
      }
    }
    .gearea {
      background: #ffffff;
      padding: calc(25% / 8.88);
      margin-bottom: calc(50% / 8.88);
      @media only screen and (max-width: 767px) {
        padding: calc(80% / 6.2) calc(30% / 6.2) calc(30% / 6.2);
        margin-bottom: calc(80% / 6.2);
      }
      .gearea_kv {
        margin-bottom: calc(10% / 8.38);
        @media only screen and (min-width: 768px) {
          width: calc(667% / 8.38);
          margin-inline: auto;
        }
      }
      .gearea_ttl {
        font-family: var(--font-sp);
        font-size: calc(40em / 16);
        text-align: center;
        margin-bottom: calc(10em / 40);
        line-height: 1.5;
        @media only screen and (max-width: 767px) {
          font-size: calc(38em / 26);
        }
      }
      .gearea_box {
        @media only screen and (min-width: 768px) {
          display: flex;
          justify-content: center;
          align-items: center;
          gap: 50px;
        }
      }
      .gearea_txtBox {
        @media only screen and (min-width: 768px) {
          width: calc(460% / 8.38);
        }
      }
      .gearea_txt1 {
        font-size: calc(22em / 16);
        font-weight: bold;
        margin-bottom: 0.2em;
        line-height: 1.5;
        @media only screen and (max-width: 767px) {
          font-size: calc(26em / 26);
        }
      }
      .gearea_txt2 {
        font-size: calc(14em / 16);
        font-weight: bold;
        margin-bottom: 0.2em;
        line-height: 1.5;
      }
      .gearea_img {
        @media only screen and (min-width: 768px) {
          width: calc(335% / 8.38);
        }
      }
    }
    .itemListBox {
      font-family: var(--font-sp);
      margin-bottom: calc(60% / 8.38);
      @media only screen and (min-width: 768px) {
        display: flex;
        justify-content: space-between;
      }
      ._item {
        &:nth-child(odd) {
          @media only screen and (min-width: 768px) {
            width: 50%;
            border-right: 2px dotted #000000;
            padding-right: 4%;
          }
          @media only screen and (max-width: 767px) {
            border-bottom: 2px dotted #000000;
            padding-bottom: calc(60% / 6.2);
            margin-bottom: calc(60% / 6.2);
          }
        }
        &:nth-child(even) {
          @media only screen and (min-width: 768px) {
            width: calc(46% - 2px);
          }
        }
      }
    }
  }
}
