figure,
p {
  margin: 0;
}
body {
  color: #353737;
  font-weight: 300;
}
h2,
h3 {
  line-height: normal;
  font-weight: 300;
  border: 0 none;
  padding-top: 0;
}
#main {
  margin-top: 0;
  margin-bottom: 0;
}
#main > .row {
  max-width: none;
}
#primary.column {
  padding-left: 0 !important;
  padding-right: 0 !important;
}

/*--== revitalizer-n_special(1400-767) ====================--*/
@import url("https://fonts.googleapis.com/css2?family=Libre+Franklin:ital,wght@0,100..900;1,100..900&display=swap");
/*--== common ==--*/
#revitalizer-n_special {
  --font-lf: "Libre Franklin", sans-serif;
  --color-glay-01: #353737;
  --color-glay-02: #a0a0a0;
  --color-glay-03: #585858;
  --color-glay-04: #cbccce;
  --color-white: #fff;
  --color-Black: #000;
  --fs-50-30: clamp(30px, calc(5.76619273301738px + 3.15955766192733vw), 50px);
  --fs-30-22: clamp(22px, calc(12.30647709320695px + 1.263823064770932vw), 30px);
  --fs-28-18: clamp(16px, calc(1.459715639810426px + 1.8957345971563981vw), 28px);
  --fs-24-22: clamp(22px, calc(19.576619273301738px + 0.315955766192733vw), 24px);
  --fs-22-18: clamp(18px, calc(13.153238546603475px + 0.631911532385466vw), 22px);
  --fs-18-16: clamp(16px, calc(13.576619273301738px + 0.315955766192733vw), 18px);
  --fs-16-14: clamp(14px, calc(11.576619273301738px + 0.315955766192733vw), 16px);
  --fs-14-12: clamp(12px, calc(9.576619273301738px + 0.315955766192733vw), 14px);
  --fs-16: 16px;
  --fs-14: 14px;
  --fs-12: 12px;
  --fs-10: 10px;
}

/*-- layout --*/
#revitalizer-n_special .l-inner-cont {
  max-width: 1200px;
  margin: 0 auto;
}
#revitalizer-n_special .l-inner-cont-s {
  max-width: 800px;
  margin: 0 auto;
}
#revitalizer-n_special .l-grid-2 {
  display: grid;
  grid-template-columns: repeat(2, 1fr);
}
@media screen and (max-width: 767px) {
  #revitalizer-n_special .l-inner-cont {
    max-width: initial;
    width: 89.3vw;
  }
  #revitalizer-n_special .l-inner-cont-s {
    max-width: initial;
    width: 89.3vw;
  }
}

/*-- img --*/
#revitalizer-n_special picture {
  display: block;

  img {
    display: block;
    width: 100%;
    height: auto;
  }
}
/*-- video --*/
#revitalizer-n_special video {
  width: 100%;
}

/*-- font --*/
#revitalizer-n_special .h-large {
  font-size: var(--fs-50-30);
}
#revitalizer-n_special .h-middle {
  font-size: var(--fs-30-22);
}
#revitalizer-n_special .h-small {
  font-size: var(--fs-28-18);
}
#revitalizer-n_special .prname {
  color: var(--color-glay-01);
  font-size: var(--fs-22-18);
}
#revitalizer-n_special .type {
  display: block;
  color: var(--color-glay-01);
  font-size: var(--fs-16-14);
}
#revitalizer-n_special .description {
  color: var(--color-glay-01);
  font-size: var(--fs-14);
}
#revitalizer-n_special .price {
  color: var(--color-glay-01);
  font-size: var(--fs-16-14);
}
#revitalizer-n_special .notes {
  font-size: var(--fs-12);
}
@media screen and (max-width: 767px) {
  #revitalizer-n_special .prname,
  #revitalizer-n_special .price {
    text-align: center;
  }
}

/*-- btn --*/
#revitalizer-n_special .btn-group {
  display: grid;
  grid-template-columns: 1fr;
  gap: 13px;
  width: 218px;

  a.btn-detail,
  a.btn-online {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 40px;
    transition: all 0.4s ease 0s;
  }
  a.btn-detail {
    color: var(--color-Black);
    text-align: center;
    background: var(--color-white);
    border: 1px solid var(--color-Black);
  }
  a.btn-online {
    color: var(--color-white);
    text-align: center;
    background: var(--color-Black);

    &:hover {
      opacity: 0.8;
    }
  }
}
@media screen and (max-width: 767px) {
  #revitalizer-n_special .btn-group {
    margin-inline: auto;
  }
}
#revitalizer-n_special .shop-list-btn {
  max-width: 180px;
  margin-inline: auto;

  a {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 35px;
    color: var(--color-white);
    font-size: var(--fs-16);
    text-align: center;
    background: var(--color-Black);
    transition: all 0.4s ease 0s;

    &:hover {
      opacity: 0.8;
    }
  }
}
@media screen and (max-width: 767px) {
}

/*--pc←→sp--*/
#revitalizer-n_special .sp {
  display: none;
}
@media screen and (max-width: 767px) {
  #revitalizer-n_special .pc {
    display: none;
  }
  #revitalizer-n_special .sp {
    display: block;
  }
}

/*--fade--*/
#revitalizer-n_special .fade {
  transition: 1s;
}
#revitalizer-n_special .fade_dl {
  transition-delay: 0.5s;
}
#revitalizer-n_special .fade_in {
  transform: translate3d(0, 0, 0);
  opacity: 0;
}
#revitalizer-n_special .fade.act {
  transform: translate3d(0, 0, 0);
  opacity: 1;
}
#revitalizer-n_special .fade_up {
  transform: translate3d(0, -50px, 0);
  opacity: 0;
}
#revitalizer-n_special .fade_left {
  transform: translate3d(-50px, 0, 0);
  opacity: 0;
}
#revitalizer-n_special .fade_right {
  transform: translate3d(50px, 0, 0);
  opacity: 0;
}
/*--==//common==--*/

/*--==kv==--*/
#revitalizer-n_special #kv {
  position: relative;
  overflow: hidden;

  picture {
    opacity: 0;
    animation: fadein ease-out 3s forwards 0s;
  }
}
@keyframes fadein {
  0% {
    opacity: 0;
    transform: scale(1.3);
  }
  100% {
    opacity: 1;
    transform: scale(1);
  }
}
/*--==//kv==--*/

/*--==product==--*/
#revitalizer-n_special #product {
  padding-block: clamp(31px, calc(-28.37282780410743px + 7.740916271721959vw), 80px) clamp(44px, calc(66.1169036334913px + -1.579778830963665vw), 54px);

  h2 {
    text-align: center;
    margin-bottom: clamp(10px, calc(-2.11690363349131px + 1.579778830963665vw), 20px);
  }
  .product-img {
    max-width: 360px;
    margin-inline: auto;

    &.f-img {
      max-width: 260px;
      margin-inline: auto;
    }
  }
  @media screen and (max-width: 767px) {
    .l-grid-2 {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    .product-img {
      max-width: 250px;

      &.f-img {
        max-width: 250px;
      }
    }
  }
}
/*--==//product==--*/

/*--==video==--*/
#revitalizer-n_special #video {
  video {
    margin-block: 0 clamp(45px, calc(25.6129541864139px + 2.527646129541864vw), 61px);
  }
  h2 {
    color: var(--color-glay-04);
    text-align: center;
    margin-bottom: clamp(35px, calc(32.57661927330174px + 0.315955766192733vw), 37px);
  }
  p {
    text-align: center;
    line-height: 1.8;

    &:last-of-type {
      margin-block: 2rem;
    }
  }
  .notes {
    text-align: center;
  }
  @media screen and (max-width: 767px) {
    .l-inner-cont {
      width: 100%;
    }
    .notes {
      width: 90vw;
      text-align: left;
      text-indent: -0.3rem;
      padding-left: 0.5rem;
      margin-inline: auto;
    }
  }
}
/*--==//video==--*/

/*--==key-innovation==--*/
#revitalizer-n_special #key-innovation {
  padding-top: clamp(48px, calc(27.40126382306477px + 2.6856240126382307vw), 65px);

  h2 {
    font-family: var(--font-lf);
    color: var(--color-glay-02);

    span {
      font-size: clamp(40px, calc(3.6492890995260723px + 4.739336492890995vw), 70px);
    }
  }
  h3 {
    color: var(--color-glay-03);
    line-height: 1.5;
    margin-bottom: 3rem;
  }
  [class*="key-innovation-0"] {
    min-height: 700px;
    padding-top: clamp(15px, calc(2.88309636650869px + 1.579778830963665vw), 15px);
  }
  .key-innovation-img {
    position: relative;

    [class*="key-innovation--img-"] {
      position: absolute;

      span {
        display: block;
        font-size: var(--fs-12);
        text-align: right;
      }
    }
  }
  @media screen and (max-width: 767px) {
    h2 {
      text-align: left;
    }
    h3 {
      text-align: center;
      margin-bottom: 2rem;
    }
    [class*="key-innovation-0"] {
      min-height: initial;
    }
    .l-grid-2 {
      display: block;
    }
  }
  @media screen and (max-width: 576px) {
    .key-innovation-img {
      [class*="key-innovation--img-"] {
        width: 117px;
        height: auto;

        span {
          font-size: var(--fs-10);
        }
      }
    }
  }
}
.key-innovation-01 {
  padding-bottom: clamp(34px, calc(20.671406003159557px + 1.7377567140600316vw), 45px);
  background-image: url(../images/revitalizer-n_special/key-innovation01_bk_pc.jpg);
  background-size: cover;

  h2 {
    text-align: right;
  }
  .l-grid-2 {
    margin-top: -10px;
  }
  .key-innovation-txt {
    padding-top: clamp(48px, calc(-28.33649289099526px + 9.95260663507109vw), 100px);
    padding-left: clamp(20px, calc(-16.350710900473928px + 4.739336492890995vw), 50px);
  }
  .key-innovation--img-01 {
    top: 38px;
    right: 131px;
  }
  .key-innovation--img-02 {
    bottom: 156px;
    right: 52px;
  }
  .key-innovation--img-03 {
    bottom: -18px;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .key-innovation-01 {
    background-image: url(../images/revitalizer-n_special/key-innovation01_bk_sp.jpg);

    .l-grid-2 {
      margin-top: 0;
    }
    .key-innovation-txt {
      padding-left: 0;
    }
    p {
      text-align: center;
    }
    .notes {
      text-indent: -0.3rem;
      padding-left: 0.5rem;
    }
  }
}
@media screen and (max-width: 576px) {
  .key-innovation-01 {
    h2 {
      margin-bottom: 8.215vw;
    }
    .key-innovation-img {
      width: 100vw;
      margin-left: -10.7vw;
    }
    .key-innovation--img {
      width: 197px;
      height: auto;
    }
    .key-innovation--img-01 {
      top: -3.566vw;
      right: 24.952vw;
    }
    .key-innovation--img-02 {
      bottom: 22.434vw;
      right: 13.952vw;
    }
    .key-innovation--img-03 {
      bottom: -10vw;
      right: 0;
    }
  }
}
.key-innovation-02 {
  padding-bottom: clamp(90px, calc(77.8830963665087px + 1.579778830963665vw), 100px);
  background-image: url(../images/revitalizer-n_special/key-innovation02_bk_pc.jpg);
  background-size: cover;

  .key-innovation-txt {
    padding-top: clamp(48px, calc(-56.20537124802529px + 13.58609794628752vw), 134px);
    padding-right: clamp(20px, calc(-149.63665086887835px + 22.11690363349131vw), 100px);

    p > strong {
      font-weight: 600;
    }
  }
  .key-innovation-img {
    padding-left: 100px;
    margin-top: -20px;
  }
  figure {
    max-width: 354px;
    figcaption {
      font-size: clamp(18px, calc(15.576619273301738px + 0.315955766192733vw), 20px);
      text-align: center;
      margin-bottom: 95px;
    }
  }
  .key-innovation--img-01 {
    top: 50px;
    left: -37px;
  }
  .key-innovation--img-02 {
    top: 50px;
    right: 0;
  }
  .key-innovation--img-03 {
    bottom: -70px;
    left: -37px;
  }
  .key-innovation--img-04 {
    bottom: -70px;
    right: 0;
  }
}
@media screen and (max-width: 767px) {
  .key-innovation-02 {
    background-image: url(../images/revitalizer-n_special/key-innovation02_bk_sp.jpg);

    .l-grid-2 {
      display: flex !important;
      flex-direction: column-reverse;
    }
    .key-innovation-txt {
      margin-top: 8vw;
      padding-right: 0;
    }
    .key-innovation-img {
      margin-top: 3.129vw;
      padding-left: 0;
    }
    figure {
      max-width: initial;
      margin-inline: auto;

      img {
        display: block;
        margin-inline: auto;
      }
    }
    .key-innovation--img-01 {
      left: 0;
    }
    .key-innovation--img-03 {
      left: 0;
    }
  }
}
@media screen and (max-width: 576px) {
  .key-innovation-02 {
    .key-innovation-txt {
      margin-top: 20vw;
    }
    figure {
      img {
        width: 188px;
        height: auto;
      }
      figcaption {
        margin-bottom: 25.559vw;
      }
    }
    .key-innovation--img-01 {
      top: 9vw;
      left: 0vw;
    }
    .key-innovation--img-02 {
      top: 9vw;
      right: 0vw;
    }
    .key-innovation--img-03 {
      bottom: -26vw;
      left: 0vw;
    }
    .key-innovation--img-04 {
      bottom: -26vw;
      right: 0vw;
    }
  }
}
.key-innovation-03 {
  background-image: url(../images/revitalizer-n_special/key-innovation03_bk_pc.jpg);
  background-position: center left;
  background-size: cover;

  h2 {
    text-align: right;
  }
  .l-inner-cont {
    display: flex;
    flex-direction: column;
    align-items: flex-end;
  }
  .key-innovation-txt {
    padding-top: clamp(100px, calc(44.262243285939974px + 7.266982622432859vw), 146px);

    h3,
    p {
      margin-left: clamp(20px, calc(-126.61453396524487px + 19.11532385466035vw), 50px);
    }
  }
}
@media screen and (max-width: 767px) {
  .key-innovation-03 {
    position: relative;
    min-height: 860px !important;
    padding-bottom: clamp(20px, calc(-28.46761453396524px + 6.31911532385466vw), 60px);
    background-image: url(../images/revitalizer-n_special/key-innovation03_bk_sp.jpg);
    background-position: top -5vw center;

    h2 {
      text-align: left;
    }
    .l-inner-cont {
      position: absolute;
      inset: 0;
      flex-direction: column;
      align-items: flex-start;
      justify-content: space-between;
      min-height: 100vh;
      padding-top: 15px;
    }
    .key-innovation-txt {
      width: 100%;
      padding-top: 0;

      h3,
      p {
        text-align: center;
        margin-left: 0;
      }
    }
  }
}
/*--==//key-innovation==--*/

/*--==use==--*/
#revitalizer-n_special #use {
  padding-block: clamp(47px, calc(26.40126382306477px + 2.6856240126382307vw), 64px);

  h2 {
    font-family: var(--font-lf);
    color: var(--color-glay-01);
    font-size: var(--fs-24-22);
    text-align: center;
  }
  p {
    font-size: var(--fs-18-16);
    text-align: center;
    padding-bottom: clamp(25px, calc(15.30647709320695px + 1.263823064770932vw), 33px);
    border-bottom: 1px solid #a5a5a5;
  }
  ul {
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: clamp(11px, calc(-31.409162717219587px + 5.529225908372828vw), 46px);
    max-width: 852px;
    margin-inline: auto;

    li {
      display: flex;
      flex-direction: column;
      justify-content: center;
      align-items: center;
      height: 65px;
      color: var(--color-glay-03);
      font-size: var(--fs-18-16);
      background-color: #f7f8fa;
      cursor: pointer;

      &.js-act {
        background-color: #d8d8d8;
      }
      span {
        font-size: var(--fs-14);
      }
    }
    @media screen and (max-width: 767px) {
      li {
        height: 60px;
        font-size: var(--fs-14);

        span {
          font-size: var(--fs-10);
          line-height: 1.2;
        }
      }
    }
    @media screen and (max-width: 576px) {
      li {
        width: 150px;
      }
    }
  }
}
.use-tab-group {
  display: grid;
  grid-template-areas: "stack";
  max-width: 852px;
  margin-inline: auto;

  .use-tab-item {
    grid-area: stack;
    opacity: 0;
    visibility: hidden;
    height: 0;
    transition:
      opacity 0.5s ease,
      visibility 0.5s ease;

    &.js-open {
      opacity: 1;
      visibility: visible;
      height: auto;
    }
    .l-grid-2 {
      gap: clamp(11px, calc(-31.409162717219587px + 5.529225908372828vw), 46px);
    }
    dl {
      display: flex;
      flex-direction: column;
      align-items: center;
    }
    dt {
      margin-bottom: clamp(18px, calc(-1.3870458135860986px + 2.527646129541864vw), 34px);
    }
    @media screen and (max-width: 576px) {
      dd {
        font-size: var(--fs-12);
        line-height: 1.5;
      }
    }
  }
}
/*--==//use==--*/

/*--==science==--*/
#revitalizer-n_special #science {
  padding-bottom: clamp(42px, calc(-11.314375987361771px + 6.9510268562401265vw), 86px);

  h3 {
    color: var(--color-glay-03);
    font-size: var(--fs-18-16);
    margin-bottom: 18px;
    text-align: left;
  }
  picture {
    display: block;
  }
  .swiper-wrapper dl {
    display: grid;
    grid-template-columns: 134px minmax(0, 1fr);
    gap: 30px;
    width: 100%;
    margin-top: 0;
  }
  dt {
    max-width: 134px;
    width: 16.75vw;
    text-align: center;
    padding: 0;
  }
  dd {
    padding-top: clamp(19px, calc(15.364928909952607px + 0.47393364928909953vw), 22px);
  }
  ul.int {
    margin-top: 25px;
    margin-left: 3em;
  }
  ul.int li {
    text-indent: -0.9rem;
  }
  @media screen and (min-width: 768px) {
    .swiper-slide:nth-of-type(even) {
      margin-block: 35px;
    }
    /*-- :swiper --*/
    .swiper-wrapper {
      display: block;
    }
    .swiper-pagination,
    .swiper-button-prev,
    .swiper-button-next {
      display: none;
    }
  }
  @media screen and (max-width: 767px) {
    h3 {
      text-align: center;
    }
    .swiper-wrapper dl {
      display: block;
    }
    dt {
      max-width: initial;
      width: 100%;
    }
    picture {
      width: 38.095vw;
      display: block;
      margin: 0 auto 1.956vw;
    }
    dd {
      width: 100%;
      padding-left: 0;
    }
    ul.int {
      margin-left: 0;
    }
    /*-- :swiper --*/
    .swiper-pagination {
      display: block;
    }
    .swiper-pagination-bullet {
      width: 10px;
      height: 10px;
    }
    .swiper-pagination-bullet-active {
      background: #9f9f9f;
    }
    .swiper-button-next,
    .swiper-button-prev {
      display: flex;
      justify-content: center;
      align-items: center;
      top: 30vw;
      width: 7vw;
      height: 7vw;
      color: #fff;
      background: #9f9f9f;
      border-radius: 5vw;
      z-index: 100;
    }
    .swiper-button-next:after {
      font-size: clamp(12px, calc(-12.12565445026178px + 4.18848167539267vw), 20px);
      font-weight: 600;
    }
    .swiper-button-prev:after {
      font-size: clamp(12px, calc(-12.12565445026178px + 4.18848167539267vw), 20px);
      font-weight: 600;
    }
  }
}
/*--==//science==--*/
