@charset "UTF-8";
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100..900&family=Noto+Serif+JP:wght@200..900&display=swap");
.contents {
  overflow: unset;
  font-family: "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "ヒラギノ角ゴ Pro W3", "メイリオ", Meiryo, "MS Pゴシック", "MS PGothic", sans-serif;
  color: #000000;
}
.contents img {
  width: 100%;
  max-width: 100%;
  height: auto;
}
.contents a {
  text-decoration: none;
  transition: all 0.3s;
}
@media screen and (min-width: 768px) {
  .contents a:hover {
    opacity: 0.7;
  }
}
.contents sup {
  font-size: 60%;
}
.contents button {
  appearance: none;
  border: 0;
  background: transparent;
  box-shadow: none;
  cursor: pointer;
}
@media screen and (min-width: 768px) {
  .contents .is-sp {
    display: none;
  }
}
@media screen and (max-width: 767px) {
  .contents .is-pc {
    display: none;
  }
}
.contents .u-min {
  font-family: "Noto Serif JP", serif;
}
.contents .l-inner {
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .l-inner {
    max-width: min(1215px, 82.0945945946vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .l-inner {
    max-width: 89.3333333333vw;
  }
}
.contents .c-ttl {
  text-align: center;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .c-ttl {
    font-size: clamp(26px, 3.5135135135vw, 52px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-ttl {
    font-size: calc(52 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .c-text-note {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.2857142857;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-text-note {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .c-btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000000;
  color: #fff;
  position: relative;
}
.contents .c-btn--disabled {
  background-color: #bebebe;
  pointer-events: none;
}
.contents .c-btn--cart {
  width: 100%;
  justify-content: flex-start;
}
@media screen and (min-width: 768px) {
  .contents .c-btn--cart {
    font-size: clamp(9px, 1.2162162162vw, 18px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn--cart {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .c-btn--cart {
    height: min(56px, 3.7837837838vw);
    padding-left: min(101px, 6.8243243243vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn--cart {
    height: 13.3333333333vw;
    padding-left: 26.9333333333vw;
  }
}
.contents .c-btn--cart::before {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-cart.png);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .c-btn--cart::before {
    width: min(16px, 1.0810810811vw);
    height: min(16px, 1.0810810811vw);
    left: min(81px, 5.472972973vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .c-btn--cart::before {
    width: 3.0666666667vw;
    height: 3.0666666667vw;
    left: 22.5333333333vw;
  }
}
.contents .p-kv {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-kv {
    margin: 0 auto;
    max-width: min(1480px, 100vw);
  }
}
.contents .p-kv__wrap {
  display: flex;
  position: relative;
}
.contents .p-kv__main {
  opacity: 0;
  animation: fadein 1s forwards;
  animation-delay: 0.3s;
}
.contents .p-kv__logo {
  position: absolute;
  z-index: 1;
  opacity: 0;
  animation: fadein 1s forwards;
  animation-delay: 0.8s;
  width: min(356px, 24.0540540541vw);
  right: min(50px, 3.3783783784vw);
  top: min(433px, 29.2567567568vw);
}
.contents .p-kv__txt {
  position: absolute;
  z-index: 1;
  opacity: 0;
  animation: fadein 1s forwards;
  animation-delay: 0.8s;
  width: min(310px, 20.9459459459vw);
  left: min(90px, 6.0810810811vw);
  top: min(490px, 33.1081081081vw);
}
.contents .p-kv__btnwrap {
  display: flex;
  position: absolute;
  z-index: 1;
  left: 0;
  right: 0;
  bottom: 0;
  width: 100%;
  background: rgba(0, 0, 0, 0.44);
  display: flex;
  justify-content: flex-end;
}
.contents .p-kv__btn {
  display: flex;
  align-items: center;
  justify-content: center;
  background-color: #000;
  color: #fff;
}
@media screen and (min-width: 768px) {
  .contents .p-kv__btn {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-kv__btn {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-kv__btn {
    width: min(468px, 31.6216216216vw);
    height: min(80px, 5.4054054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-kv__btn {
    width: 62.4vw;
    height: 10.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead {
    max-width: min(1480px, 100vw);
    margin: 0 auto min(84px, 5.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead {
    margin-bottom: 10vw;
  }
}
.contents .p-lead__kv {
  position: relative;
}
.contents .p-lead__kv-text {
  position: absolute;
  z-index: 1;
  font-family: "Noto Serif JP", serif;
  transition-delay: 0.6s !important;
}
@media screen and (min-width: 768px) {
  .contents .p-lead__kv-text {
    top: min(150px, 10.1351351351vw);
    left: min(120px, 8.1081081081vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-text {
    width: 100%;
    text-align: center;
    top: 3.7333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__kv-sub {
    font-size: clamp(18px, 2.4324324324vw, 36px);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-sub {
    font-size: calc(36 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__kv-sub {
    margin-bottom: min(24px, 1.6216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-sub {
    margin-bottom: 1.2vw;
  }
}
.contents .p-lead__kv-sub sup {
  font-size: 30%;
  display: inline-block;
  width: 0;
  top: -2em;
  right: 1.5em;
}
@media screen and (min-width: 768px) {
  .contents .p-lead__kv-main {
    font-size: clamp(24px, 3.2432432432vw, 48px);
    line-height: 2.0052083333;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-main {
    font-size: calc(48 / 750 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-main {
    padding-left: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__kv-main .large {
    font-size: clamp(27.5px, 3.7162162162vw, 55px);
    line-height: 1.75;
    letter-spacing: 0.2em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__kv-main .large {
    font-size: calc(55 / 750 * 100vw);
    line-height: 1.4545454545;
    letter-spacing: 0.2em;
    font-weight: 700;
  }
}
.contents .p-lead__text {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-lead__text {
    padding-top: min(90px, 6.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__text {
    padding-top: 8vw;
  }
}
.contents .p-lead__text-title {
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 768px) {
  .contents .p-lead__text-title {
    font-size: clamp(15px, 2.027027027vw, 30px);
    line-height: 2.4;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__text-title {
    font-size: calc(37 / 750 * 100vw);
    line-height: 1.85;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__text-title {
    margin-bottom: min(48px, 3.2432432432vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__text-title {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__text-txt {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 2.0833333333;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__text-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8461538462;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-lead__text-note {
    margin-top: min(42px, 2.8378378378vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-lead__text-note {
    text-align: left;
    margin-top: 6.4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series {
    margin-bottom: min(80px, 5.4054054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series {
    margin-bottom: 7.2vw;
  }
}
.contents .p-series__title {
  position: relative;
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-series__title {
    margin-bottom: min(45px, 3.0405405405vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title {
    margin-bottom: 10.6666666667vw;
  }
}
.contents .p-series__title::before {
  position: absolute;
  content: "";
  display: block;
  z-index: 1;
  background-color: #000000;
  height: 1px;
  width: 100%;
  left: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-series__title::before {
    top: min(10px, 0.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title::before {
    top: 1.2vw;
  }
}
.contents .p-series__title-en {
  position: relative;
  z-index: 2;
  display: block;
  background-color: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
  width: max-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-series__title-en {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title-en {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__title-en {
    padding: 0 min(20px, 1.3513513514vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title-en {
    padding: 0 2.6666666667vw;
  }
}
.contents .p-series__title-jp {
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-series__title-jp {
    font-size: clamp(8px, 1.0810810811vw, 16px);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title-jp {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__title-jp {
    margin-top: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__title-jp {
    margin-top: 1.0666666667vw;
  }
}
.contents .p-series__list {
  display: flex;
  justify-content: center;
}
@media screen and (min-width: 768px) {
  .contents .p-series__list {
    column-gap: min(120px, 8.1081081081vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list {
    flex-wrap: wrap;
    row-gap: 10.6666666667vw;
  }
}
.contents .p-series__list-item {
  display: flex;
  flex-direction: column;
  text-align: center;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-item {
    width: min(181px, 12.2297297297vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-item {
    width: 46%;
  }
}
.contents .p-series__list-img {
  display: block;
  margin-top: auto;
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-img.shampoo, .contents .p-series__list-img.treatment {
    width: min(175px, 11.8243243243vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-img.shampoo, .contents .p-series__list-img.treatment {
    width: 23.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-img.outbath, .contents .p-series__list-img.scalp {
    width: min(108px, 7.2972972973vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-img.outbath, .contents .p-series__list-img.scalp {
    width: 14.4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-txt {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.75;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-txt {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.75;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-txt {
    white-space: nowrap;
    margin-top: min(36px, 2.4324324324vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-txt {
    margin-top: 4.8vw;
  }
}
.contents .p-series__list-btn {
  position: relative;
  display: inline-block;
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-btn {
    font-size: clamp(9.6px, 1.2972972973vw, 19.2px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-btn {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-btn {
    padding-right: min(30px, 2.027027027vw);
    margin-top: min(20px, 1.3513513514vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-btn {
    padding-right: 4.8vw;
    margin-top: 2.6666666667vw;
  }
}
.contents .p-series__list-btn::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-bk.png);
  top: 50%;
  transform: translateY(-50%);
  right: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-series__list-btn::after {
    width: min(24.5px, 1.6554054054vw);
    height: min(24.5px, 1.6554054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-series__list-btn::after {
    width: 4vw;
    height: 4vw;
  }
}
.contents .js-sticky-trigger {
  height: 1px;
}
.contents .p-stickynav {
  position: sticky;
  top: var(--refa-header-h);
  left: 0;
  z-index: 30;
  transition: all 0.6s;
  background-color: #000;
}
.contents .p-stickynav.is-translated {
  top: 0;
}
.contents .p-stickynav.is-sticky {
  background-color: rgba(0, 0, 0, 0.75);
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav.is-sticky .p-stickynav__list-item a {
    height: min(80px, 5.4054054054vw);
  }
}
.contents .p-stickynav__list {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav__list {
    justify-content: center;
  }
}
.contents .p-stickynav__list-item {
  border-right: 1px solid #fff;
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav__list-item {
    width: min(370px, 25vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-stickynav__list-item {
    width: 25%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav__list-item:first-of-type {
    border-left: 1px solid #fff;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-stickynav__list-item:last-of-type {
    border-right: none;
  }
}
.contents .p-stickynav__list-item a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  color: #fff;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav__list-item a {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-stickynav__list-item a {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-stickynav__list-item a {
    height: min(120px, 8.1081081081vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-stickynav__list-item a {
    height: 9.0666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about {
    margin-bottom: min(84px, 5.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about {
    margin-bottom: 6.6666666667vw;
  }
}
.contents .p-about__kv {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-about__kv {
    max-width: min(1480px, 100vw);
    margin: 0 auto min(90px, 6.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__kv {
    margin-bottom: 12vw;
  }
}
.contents .p-about__title {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-about__title {
    position: absolute;
    z-index: 1;
    bottom: min(154px, 10.4054054054vw);
    right: min(130px, 8.7837837838vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__title {
    margin: 9.3333333333vw 0 13.3333333333vw;
  }
}
.contents .p-about__title-jp {
  display: block;
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 768px) {
  .contents .p-about__title-jp {
    font-size: clamp(24.25px, 3.277027027vw, 48.5px);
    line-height: 1.7525773196;
    letter-spacing: 0.12em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__title-jp {
    font-size: calc(48.5 / 750 * 100vw);
    line-height: 1.7525773196;
    letter-spacing: 0.12em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__title-jp {
    margin-top: min(100px, 6.7567567568vw);
    padding-left: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__title-jp {
    margin-top: 6.4vw;
    padding-left: 4vw;
  }
}
.contents .p-about__wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-about__wrap {
    justify-content: space-between;
    margin-bottom: min(54px, 3.6486486486vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__wrap {
    flex-direction: column;
    margin-bottom: 4vw;
    row-gap: 4.8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__wrap.reverse {
    flex-direction: row-reverse;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__wrap.reverse .p-about__img {
    width: min(578px, 39.0540540541vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__img {
    width: min(607px, 41.0135135135vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__img {
    width: 100%;
  }
}
.contents .p-about__img-title {
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 768px) {
  .contents .p-about__img-title {
    font-size: clamp(19px, 2.5675675676vw, 38px);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__img-title {
    font-size: calc(38 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__img-title {
    margin-bottom: min(10px, 0.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__img-title {
    text-align: center;
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__text {
    width: min(561px, 37.9054054054vw);
    padding-top: min(60px, 4.0540540541vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-txt {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1.75;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8461538462;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
.contents .p-about__text-accordion {
  background-color: #F6F8F7;
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-accordion {
    border-radius: min(12px, 0.8108108108vw);
    margin-top: min(16px, 1.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-accordion {
    border-radius: 1.6vw;
    margin-top: 1.6vw;
  }
}
.contents .p-about__text-head {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-head {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-head {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-head {
    padding: min(20px, 1.3513513514vw) min(50px, 3.3783783784vw) min(20px, 1.3513513514vw) min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-head {
    padding: 2.6666666667vw 6.6666666667vw 2.6666666667vw 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-head .icon {
    width: min(24px, 1.6216216216vw);
    height: min(24px, 1.6216216216vw);
    right: min(24px, 1.6216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-head .icon {
    width: 4vw;
    height: 4vw;
    right: 4vw;
  }
}
.contents .p-about__text-head .icon::before, .contents .p-about__text-head .icon::after {
  background-color: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-body {
    padding: 0 min(30px, 2.027027027vw) min(20px, 1.3513513514vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-body {
    padding: 0 4vw 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__text-body .txt {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 1.75;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__text-body .txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.75;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-about__note {
    margin-top: min(72px, 4.8648648649vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-about__note {
    margin-top: 6.4vw;
  }
}
.contents .p-scene {
  background-color: #F6F8F7;
}
.contents .p-scene__kv {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__kv {
    margin: 0 auto;
    max-width: min(1480px, 100vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv {
    flex-direction: column;
    row-gap: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__kv-img {
    width: 53.31%;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv-img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__kv-text {
    flex: 1;
    margin-top: auto;
    padding-bottom: min(16px, 1.0810810811vw);
    padding-left: min(45px, 3.0405405405vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv-text {
    text-align: center;
    padding-bottom: 4vw;
  }
}
.contents .p-scene__kv-title {
  font-family: "Noto Serif JP", serif;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__kv-title {
    font-size: clamp(15px, 2.027027027vw, 30px);
    line-height: 2.4;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv-title {
    font-size: calc(30 / 750 * 100vw);
    line-height: 2.4;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__kv-title {
    margin-bottom: min(240px, 16.2162162162vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv-title {
    margin-bottom: 4vw;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__kv-title .splarge {
    font-size: calc(40 / 750 * 100vw);
    line-height: 2.5;
    letter-spacing: 0.1em;
    font-weight: 600;
  }
}
.contents .p-scene__wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__wrap {
    align-items: center;
    flex-direction: row-reverse;
    column-gap: min(100px, 6.7567567568vw);
    max-width: min(1480px, 100vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__wrap {
    flex-direction: column;
    row-gap: 6.4vw;
    padding-bottom: 14vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__img {
    width: 51.6892%;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text {
    margin-left: auto;
    width: min(477px, 32.2297297297vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text {
    width: 89.3333333333vw;
    margin: 0 auto;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-txt {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 2;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 2;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-txt {
    margin-bottom: min(15px, 1.0135135135vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-txt {
    margin-bottom: 5.3333333333vw;
  }
}
.contents .p-scene__text-img {
  display: flex;
  position: relative;
}
.contents .p-scene__text-img .c-text-note {
  color: #fff;
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-img .c-text-note {
    bottom: min(5px, 0.3378378378vw);
    right: min(8px, 0.5405405405vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-img .c-text-note {
    bottom: 1.0666666667vw;
    right: 2vw;
  }
}
.contents .p-scene__text-caption {
  text-align: center;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-caption {
    font-size: clamp(10.5px, 1.4189189189vw, 21px);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-caption {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-caption {
    margin-top: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-caption {
    margin-top: 3.2vw;
  }
}
.contents .p-scene__text-list {
  position: relative;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-list {
    margin-top: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-list {
    margin: 4vw auto 0;
    width: 69.3333333333vw;
  }
}
.contents .p-scene__text-list::after {
  position: absolute;
  content: "";
  display: block;
  height: 100%;
  background-color: #F2EAC8;
  clip-path: polygon(0 0, 0% 100%, 100% 100%);
  z-index: -1;
  bottom: 0;
  left: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-list::after {
    width: min(209px, 14.1216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-list::after {
    width: 30.4vw;
  }
}
.contents .p-scene__text-item {
  border-bottom: 0.5px solid #000000;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-item {
    padding: min(28px, 1.8918918919vw) min(10px, 0.6756756757vw) min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-item {
    padding: 3.7333333333vw 1.3333333333vw 1.6vw;
  }
}
.contents .p-scene__text-item .en {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
  color: #666666;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-item .en {
    font-size: clamp(10.5px, 1.4189189189vw, 21px);
    line-height: 1.4523809524;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-item .en {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
.contents .p-scene__text-item .jp {
  display: block;
  font-family: "Noto Sans JP", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-item .jp {
    font-size: clamp(9px, 1.2162162162vw, 18px);
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-item .jp {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-scene__text-item .jp {
    padding-left: min(12px, 0.8108108108vw);
    margin-top: min(6px, 0.4054054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-scene__text-item .jp {
    padding-left: 1.6vw;
    margin-top: 0.8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product {
    margin-bottom: min(100px, 6.7567567568vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product {
    margin-bottom: 10vw;
    padding-top: 4vw;
  }
}
.contents .p-product__ttlwrap {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-product__ttlwrap {
    padding-top: min(130px, 8.7837837838vw);
    padding-bottom: min(65px, 4.3918918919vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__ttlwrap {
    padding-bottom: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__title {
    margin-bottom: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__title {
    margin-bottom: 4vw;
  }
}
.contents .p-product__subttl-en {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-product__subttl-en {
    font-size: clamp(8.8px, 1.1891891892vw, 17.6px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__subttl-en {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__subttl-en {
    margin-bottom: min(14px, 0.9459459459vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__subttl-en {
    margin-bottom: 1.8666666667vw;
  }
}
.contents .p-product__subttl-jp {
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-product__subttl-jp {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__subttl-jp {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
.contents .p-product__wrap {
  display: flex;
}
@media screen and (min-width: 768px) {
  .contents .p-product__wrap {
    align-items: flex-start;
    max-width: min(1480px, 100vw);
    margin: 0 auto;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__wrap {
    flex-direction: column;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__img {
    width: 50%;
    position: sticky;
    top: 0;
    left: 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__img {
    width: 100%;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__toc {
    margin-top: min(60px, 4.0540540541vw);
    padding-left: min(78px, 5.2702702703vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__toc {
    padding: 2.6666666667vw 0;
    width: max-content;
    margin: 0 auto;
  }
}
.contents .p-product__toc-item a {
  color: #A2A1A1;
}
@media screen and (min-width: 768px) {
  .contents .p-product__toc-item a {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 2.0833333333;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__toc-item a {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.25;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
.contents .p-product__toc-item a.is-current {
  color: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-product__content {
    width: 50%;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__content {
    width: 100%;
  }
}
.contents .p-product__box {
  background-color: #F2F2F4;
  width: 100%;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box {
    padding: min(50px, 3.3783783784vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box {
    padding: 6.6666666667vw 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box:not(:last-of-type) {
    margin-bottom: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box:not(:last-of-type) {
    margin-bottom: 6vw;
  }
}
.contents .p-product__box-title {
  text-align: center;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-title {
    font-size: clamp(13px, 1.7567567568vw, 26px);
    line-height: 1.7307692308;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-title {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.7307692308;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
.contents .p-product__box-imgwrap {
  display: flex;
  justify-content: flex-end;
  align-items: flex-start;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-imgwrap {
    height: min(528px, 35.6756756757vw);
    padding-right: min(70px, 4.7297297297vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-imgwrap {
    height: 70.4vw;
    padding-right: 9.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-img.shampoo, .contents .p-product__box-img.treatment {
    width: min(268px, 18.1081081081vw);
    margin-right: min(36px, 2.4324324324vw);
    margin-top: min(60px, 4.0540540541vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-img.shampoo, .contents .p-product__box-img.treatment {
    width: 35.7333333333vw;
    margin-right: 4.8vw;
    margin-top: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-img.outbath, .contents .p-product__box-img.scalp {
    width: min(165px, 11.1486486486vw);
    margin-right: min(85px, 5.7432432432vw);
    margin-top: min(210px, 14.1891891892vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-img.outbath, .contents .p-product__box-img.scalp {
    width: 22vw;
    margin-right: 11.3333333333vw;
    margin-top: 28vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-texture {
    width: min(325px, 21.9594594595vw);
    margin-top: min(153px, 10.3378378378vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-texture {
    width: 43.3333333333vw;
    margin-top: 20.4vw;
  }
}
.contents .p-product__box-textwrap {
  display: flex;
  justify-content: flex-end;
  align-items: center;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-textwrap {
    padding-right: min(80px, 5.4054054054vw);
    column-gap: min(88px, 5.9459459459vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-textwrap {
    padding-right: 10.6666666667vw;
    column-gap: 8vw;
  }
}
.contents .p-product__box-price {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-price .price {
    font-size: clamp(15.5px, 2.0945945946vw, 31px);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-price .price {
    font-size: calc(34 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-price .price {
    margin-bottom: min(10px, 0.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-price .price {
    margin-bottom: 1.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-price .price-tax {
    font-size: clamp(9px, 1.2162162162vw, 18px);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-price .price-tax {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
.contents .p-product__box-price .amount {
  display: inline-block;
  border: 1px solid #000;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-price .amount {
    font-size: clamp(9.6px, 1.2972972973vw, 19.2px);
    line-height: 1.5625;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-price .amount {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-price .amount {
    padding: min(4px, 0.2702702703vw) min(13px, 0.8783783784vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-price .amount {
    padding: 0.5333333333vw 1.7333333333vw;
  }
}
.contents .p-product__box-btn {
  justify-content: flex-start;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-btn {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-btn {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-btn {
    width: min(298px, 20.1351351351vw);
    height: min(76px, 5.1351351351vw);
    border-radius: min(9px, 0.6081081081vw);
    padding-left: min(73px, 4.9324324324vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-btn {
    width: 42.6666666667vw;
    height: 10.6666666667vw;
    border-radius: 1.2vw;
    padding-left: 9.7333333333vw;
  }
}
.contents .p-product__box-btn::before {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-cart.png);
  top: 50%;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-btn::before {
    width: min(36px, 2.4324324324vw);
    height: min(37px, 2.5vw);
    left: min(35px, 2.3648648649vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-btn::before {
    width: 4.8vw;
    height: 4.9333333333vw;
    left: 4.6666666667vw;
  }
}
.contents .p-product__box-accordion {
  background-color: #fff;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-accordion {
    border-radius: min(12px, 0.8108108108vw);
    margin: min(32px, 2.1621621622vw) auto 0;
    width: min(645px, 43.5810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-accordion {
    border-radius: 1.6vw;
    margin: 4.2666666667vw auto 0;
    width: 86vw;
  }
}
.contents .p-product__box-achead {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-achead {
    font-size: clamp(14px, 1.8918918919vw, 28px);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-achead {
    font-size: calc(30 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-achead {
    padding: min(30px, 2.027027027vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-achead {
    padding: 4vw 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-achead .icon {
    width: min(24px, 1.6216216216vw);
    height: min(24px, 1.6216216216vw);
    right: min(21px, 1.4189189189vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-achead .icon {
    width: 3.2vw;
    height: 3.2vw;
    right: 2.8vw;
  }
}
.contents .p-product__box-achead .icon::before, .contents .p-product__box-achead .icon::after {
  background-color: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody {
    padding: 0 min(50px, 3.3783783784vw) min(50px, 3.3783783784vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody {
    padding: 0 6.6666666667vw 6.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .txt {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 1.6842105263;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.6923076923;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .c-text-note {
    margin-top: min(24px, 1.6216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .c-text-note {
    margin-top: 3.2vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .spec {
    margin-top: min(28px, 1.8918918919vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .spec {
    margin-top: 3.7333333333vw;
  }
}
.contents .p-product__box-acbody .spec-title {
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .spec-title {
    font-size: clamp(11px, 1.4864864865vw, 22px);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .spec-title {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.025em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .spec-title {
    margin-bottom: min(24px, 1.6216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .spec-title {
    margin-bottom: 3.2vw;
  }
}
.contents .p-product__box-acbody .spec-title::after {
  position: absolute;
  content: "";
  display: block;
  top: 50%;
  transform: translateY(-50%);
  right: 0;
  height: 1px;
  background-color: #000;
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .spec-title::after {
    width: min(440px, 29.7297297297vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .spec-title::after {
    width: 53.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-product__box-acbody .spec-txt {
    font-size: clamp(8.4px, 1.1351351351vw, 16.8px);
    line-height: 1.4880952381;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-product__box-acbody .spec-txt {
    font-size: calc(21 / 750 * 100vw);
    line-height: 1.4523809524;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__title {
    margin-bottom: min(64px, 4.3243243243vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__title {
    margin-bottom: 8vw;
  }
}
.contents .p-howto__bg {
  background-color: #F2F2F4;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__bg {
    margin-bottom: min(40px, 2.7027027027vw);
    padding: min(50px, 3.3783783784vw) 0;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__bg {
    margin-bottom: 5.3333333333vw;
    padding: 13.3333333333vw 0 6.6666666667vw;
  }
}
.contents .p-howto__box {
  background-color: #fff;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box {
    padding: min(152px, 10.2702702703vw) min(317px, 21.4189189189vw) min(42px, 2.8378378378vw) min(323px, 21.8243243243vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box {
    padding: 5.3333333333vw 36.5333333333vw 6vw 5.3333333333vw;
  }
}
.contents .p-howto__box.pluscare {
  background-color: #F2F2F4;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box.pluscare {
    padding: min(70px, 4.7297297297vw) min(112px, 7.5675675676vw) min(72px, 4.8648648649vw) min(323px, 21.8243243243vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box.pluscare {
    padding-right: 0;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box.pluscare .p-howto__box-txt {
    margin-bottom: min(32px, 2.1621621622vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box.pluscare .p-howto__box-txt {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box.pluscare .p-howto__box-btn {
    bottom: min(67px, 4.527027027vw);
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box:not(:last-of-type) {
    margin-bottom: min(60px, 4.0540540541vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box:not(:last-of-type) {
    margin-bottom: 12.5333333333vw;
  }
}
.contents .p-howto__box:not(:last-of-type)::after {
  position: absolute;
  content: "";
  display: block;
  left: 50%;
  transform: translate(-50%, 100%);
  background-color: #000;
  clip-path: polygon(0 0, 100% 0, 50% 100%);
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box:not(:last-of-type)::after {
    width: min(60px, 4.0540540541vw);
    height: min(37px, 2.5vw);
    bottom: min(-16px, -1.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box:not(:last-of-type)::after {
    width: 8vw;
    height: 4.9333333333vw;
    bottom: -4.8vw;
  }
}
.contents .p-howto__box-num {
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-num {
    font-size: clamp(24px, 3.2432432432vw, 48px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-num {
    font-size: calc(48 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-num {
    margin-bottom: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-num {
    margin-bottom: 9.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-txt {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1.5833333333;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5769230769;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-txt {
    margin-bottom: min(48px, 3.2432432432vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-txt {
    margin-bottom: 8vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-caretxt {
    font-size: clamp(13.5px, 1.8243243243vw, 27px);
    line-height: 1.7407407407;
    letter-spacing: 0.025em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-caretxt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.5769230769;
    letter-spacing: -0.01em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-caretxt {
    margin-bottom: min(48px, 3.2432432432vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-caretxt {
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-point {
    margin-bottom: 8vw;
  }
}
.contents .p-howto__box-point .ttl {
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
  border-left: 1px solid #000;
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-point .ttl {
    font-size: clamp(9.6px, 1.2972972973vw, 19.2px);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-point .ttl {
    font-size: calc(25 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-point .ttl {
    padding-left: min(7px, 0.472972973vw);
    margin-bottom: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-point .ttl {
    padding-left: 1.3333333333vw;
    margin-bottom: 1.6vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-point .txt {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 1.5789473684;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-point .txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0em;
    font-weight: 500;
  }
}
.contents .p-howto__box-btn {
  display: flex;
  align-items: center;
  position: relative;
  border: 0.5px solid #000;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-btn {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-btn {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-btn {
    border-radius: min(7px, 0.472972973vw);
    width: min(250px, 16.8918918919vw);
    height: min(60px, 4.0540540541vw);
    padding-left: min(20px, 1.3513513514vw);
    position: absolute;
    left: min(28px, 1.8918918919vw);
    bottom: min(38px, 2.5675675676vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-btn {
    border-radius: 0.9333333333vw;
    width: 42.6666666667vw;
    height: 10.6666666667vw;
    padding-left: 2.6666666667vw;
  }
}
.contents .p-howto__box-btn::after {
  position: absolute;
  content: "";
  display: block;
  background: center/contain no-repeat url(../img/ic-arrow-bk.png);
  top: 50%;
  transform: translateY(-50%) rotate(-90deg);
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-btn::after {
    width: min(24.5px, 1.6554054054vw);
    height: min(24.5px, 1.6554054054vw);
    right: min(22px, 1.4864864865vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-btn::after {
    width: 4vw;
    height: 4vw;
    right: 2.9333333333vw;
  }
}
.contents .p-howto__box-product {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-product.shampoo, .contents .p-howto__box-product.treatment {
    width: min(202px, 13.6486486486vw);
    left: min(50px, 3.3783783784vw);
    top: min(35px, 2.3648648649vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-product.shampoo, .contents .p-howto__box-product.treatment {
    width: 20.6666666667vw;
    right: 8.2666666667vw;
    bottom: 6vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-product.outbath {
    width: min(125px, 8.4459459459vw);
    left: min(95px, 6.4189189189vw);
    top: min(135px, 9.1216216216vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-product.outbath {
    width: 16.6666666667vw;
    right: 11.4666666667vw;
    bottom: 6.2666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-product.brush {
    width: min(125px, 8.4459459459vw);
    left: min(88px, 5.9459459459vw);
    top: min(142px, 9.5945945946vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-product.brush {
    width: 16.6666666667vw;
    right: 11.4666666667vw;
    bottom: 4.6666666667vw;
  }
}
.contents .p-howto__box-img {
  position: absolute;
  z-index: 1;
}
@media screen and (min-width: 768px) {
  .contents .p-howto__box-img {
    width: min(240px, 16.2162162162vw);
    right: min(52px, 3.5135135135vw);
    bottom: min(38px, 2.5675675676vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-howto__box-img {
    width: 26.6666666667vw;
    top: 20.2666666667vw;
    right: 6.4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy {
    padding-top: min(100px, 6.7567567568vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy {
    padding-top: 13.3333333333vw;
  }
}
.contents .p-buy__ttl {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__ttl {
    font-size: clamp(22px, 2.972972973vw, 44px);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__ttl {
    font-size: calc(44 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__ttl {
    margin-bottom: min(80px, 5.4054054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__ttl {
    margin-bottom: 5.3333333333vw;
  }
}
.contents .p-buy__tab {
  display: flex;
  border: 1px solid #291E1D;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab {
    margin-bottom: min(90px, 6.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab {
    margin-bottom: 12vw;
  }
}
.contents .p-buy__tab-item {
  position: relative;
  z-index: 1;
  width: 50%;
}
.contents .p-buy__tab-item:not(:last-of-type) {
  border-right: 1px solid #291E1D;
}
.contents .p-buy__tab-item a {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab-item a {
    height: min(368px, 24.8648648649vw);
  }
  .contents .p-buy__tab-item a:hover {
    opacity: 1;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab-item a {
    height: 32vw;
  }
}
.contents .p-buy__tab-item a.is-active::after {
  opacity: 1;
}
.contents .p-buy__tab-item a::after {
  position: absolute;
  content: "";
  display: block;
  z-index: -1;
  opacity: 0;
  transition: opacity 0.3s;
  width: 100%;
  height: 100%;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  background: linear-gradient(188deg, rgba(241, 240, 242, 0.3) 0%, rgba(226, 229, 235, 0.3) 100%);
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab-item a .txt {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 1;
    letter-spacing: 0.08em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab-item a .txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-buy__tab-item a .txt-en {
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab-item a .txt-en {
    font-size: clamp(8.8px, 1.1891891892vw, 17.6px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab-item a .txt-en {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.12em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab-item.honey a .product {
    width: min(392px, 26.4864864865vw);
    margin-bottom: min(36px, 2.4324324324vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab-item.honey a .product {
    width: 27.3333333333vw;
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__tab-item.refill a .product {
    width: min(240px, 16.2162162162vw);
    margin-bottom: min(40px, 2.7027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__tab-item.refill a .product {
    width: 20vw;
    margin-bottom: 3.2vw;
  }
}
.contents .p-buy__subttl {
  text-align: center;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__subttl {
    margin-bottom: min(48px, 3.2432432432vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__subttl {
    margin-bottom: 3.7333333333vw;
  }
}
.contents .p-buy__subttl .txt-en {
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__subttl .txt-en {
    font-size: clamp(17.5px, 2.3648648649vw, 35px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__subttl .txt-en {
    font-size: calc(25 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 700;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__subttl .txt-en {
    margin-bottom: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__subttl .txt-en {
    margin-bottom: 2vw;
  }
}
.contents .p-buy__subttl .txt-jp {
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__subttl .txt-jp {
    font-size: clamp(9.5px, 1.2837837838vw, 19px);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__subttl .txt-jp {
    font-size: calc(22 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.12em;
    font-weight: 500;
  }
}
.contents .p-buy__subttl .txt {
  display: block;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__subttl .txt {
    font-size: clamp(16px, 2.1621621622vw, 32px);
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__subttl .txt {
    font-size: calc(32 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
.contents .p-buy__product {
  display: flex;
  flex-wrap: wrap;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product {
    margin-bottom: min(40px, 2.7027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product {
    flex-direction: column;
    align-items: center;
    margin-bottom: 9.3333333333vw;
  }
}
.contents .p-buy__product-item {
  display: flex;
  flex-direction: column;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item {
    border: 1px solid #291E1D;
    margin-bottom: -1px;
    margin-right: -1px;
    width: 33.33333333%;
    padding: min(70px, 4.7297297297vw) min(20px, 1.3513513514vw) min(36px, 2.4324324324vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item {
    border: 1px solid #291E1D;
    margin-bottom: -1px;
    width: 84vw;
    padding: 8vw 4vw 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .img {
    margin-bottom: min(20px, 1.3513513514vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .img {
    margin-bottom: 2.6666666667vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .name {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .name {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.4285714286;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .name {
    margin-bottom: min(16px, 1.0810810811vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .name {
    margin-bottom: 1.6vw;
  }
}
.contents .p-buy__product-item .name-en {
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .name-en {
    font-size: clamp(5px, 0.6756756757vw, 10px);
    line-height: 1.8;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .name-en {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0.1em;
    font-weight: 500;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .name-en {
    margin-bottom: min(15px, 1.0135135135vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .name-en {
    margin-bottom: 2.4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .price {
    margin-top: auto;
    margin-bottom: min(10px, 0.6756756757vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .price {
    margin-bottom: 2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .price span {
    font-size: clamp(14px, 1.8918918919vw, 28px);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .price span {
    font-size: calc(40 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .price span:first-of-type {
    font-size: clamp(12px, 1.6216216216vw, 24px);
    line-height: 1.1666666667;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .price span:first-of-type {
    font-size: calc(28 / 750 * 100vw);
    line-height: 1.4285714286;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .price .tax {
    font-size: clamp(8px, 1.0810810811vw, 16px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .price .tax {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-buy__product-item .cap {
  width: max-content;
  display: inline-block;
  border: 1px solid #CCCCCC;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .cap {
    font-size: clamp(6px, 0.8108108108vw, 12px);
    line-height: 1.3333333333;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .cap {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.25;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .cap {
    padding: min(8px, 0.5405405405vw) min(10px, 0.6756756757vw);
    margin-bottom: min(30px, 2.027027027vw);
    min-height: min(34px, 2.2972972973vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .cap {
    padding: 1.3333333333vw 2.6666666667vw;
    margin-bottom: 5.3333333333vw;
  }
}
.contents .p-buy__product-item .cap.border-none {
  border: none;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .free {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .free {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item .free {
    text-align: center;
    margin-top: min(12px, 0.8108108108vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item .free {
    margin-top: 2.1333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item #goodsspec_body {
    min-height: min(72px, 4.8648648649vw);
  }
}
.contents .p-buy__product-item #goodsspec_body.mt {
  margin-top: 20px;
}
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dt,
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dt {
  color: #FF0000;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dt,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dt {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dt,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dt {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dt,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dt {
    margin-bottom: min(8px, 0.5405405405vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dt,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dt {
    margin-bottom: 1.0666666667vw;
  }
}
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dd,
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dd {
  margin-bottom: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dd,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dd {
    font-size: clamp(7px, 0.9459459459vw, 14px);
    line-height: 1.5;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dd,
  .contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dd {
    font-size: calc(20 / 750 * 100vw);
    line-height: 1.6;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock_ dd span,
.contents .p-buy__product-item #goodsspec_body .goodscomment_ .deliveryBlock2_ dd span {
  font-weight: 400;
}
.contents .p-buy__line .line {
  width: max-content;
  margin: 0 auto;
}
@media screen and (min-width: 768px) {
  .contents .p-faq {
    margin-top: min(100px, 6.7567567568vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq {
    margin-top: 13.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-faq__ttl {
    margin-bottom: min(80px, 5.4054054054vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq__ttl {
    margin-bottom: 10.6666666667vw;
  }
}
.contents .p-faq .faq-item {
  border-bottom: 1px solid #000;
  position: relative;
}
.contents .p-faq .faq-item[data-active=true] .faq-item__q::after {
  height: 0;
}
.contents .p-faq .faq-item::before {
  position: absolute;
  content: "Q";
  display: block;
  left: 0;
  pointer-events: none;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item::before {
    font-size: clamp(21px, 2.8378378378vw, 42px);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item::before {
    font-size: calc(42 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item::before {
    top: min(40px, 2.7027027027vw);
    left: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item::before {
    top: 4vw;
    left: 4vw;
  }
}
.contents .p-faq .faq-item__q {
  cursor: pointer;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__q {
    padding: min(40px, 2.7027027027vw) min(32px, 2.1621621622vw) min(40px, 2.7027027027vw) min(120px, 8.1081081081vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__q {
    padding: 4vw 8.2666666667vw 4vw 12.5333333333vw;
  }
}
.contents .p-faq .faq-item__q::before, .contents .p-faq .faq-item__q::after {
  position: absolute;
  content: "";
  display: block;
  background-color: #000;
  top: 50%;
  transition: width 0.3s, height 0.3s;
}
.contents .p-faq .faq-item__q::before {
  right: 0;
  height: 1px;
  transform: translateY(-50%);
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__q::before {
    width: min(40px, 2.7027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__q::before {
    width: 5.3333333333vw;
  }
}
.contents .p-faq .faq-item__q::after {
  width: 1px;
  transform: translate(-35%, -50%);
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__q::after {
    right: min(20px, 1.3513513514vw);
    height: min(40px, 2.7027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__q::after {
    right: 2.6666666667vw;
    height: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__q .txt {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__q .txt {
    font-size: calc(26 / 750 * 100vw);
    line-height: 1.8461538462;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .p-faq .faq-item__a {
  display: none;
  position: relative;
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__a {
    padding: 0 min(32px, 2.1621621622vw) min(36px, 2.4324324324vw) min(120px, 8.1081081081vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__a {
    padding: 0 8.2666666667vw 5.0666666667vw 12.5333333333vw;
  }
}
.contents .p-faq .faq-item__a::before {
  position: absolute;
  content: "A";
  display: block;
  font-family: "Helvetica Neue", Helvetica, Arial, "MS PGothic", sans-serif;
  top: 0;
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__a::before {
    font-size: clamp(21px, 2.8378378378vw, 42px);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__a::before {
    font-size: calc(42 / 750 * 100vw);
    line-height: 1;
    letter-spacing: 0.05em;
    font-weight: 400;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__a::before {
    left: min(30px, 2.027027027vw);
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__a::before {
    left: 4vw;
  }
}
@media screen and (min-width: 768px) {
  .contents .p-faq .faq-item__a .txt {
    font-size: clamp(10px, 1.3513513514vw, 20px);
    line-height: 2;
    letter-spacing: 0.06em;
    font-weight: 400;
  }
}
@media screen and (max-width: 767px) {
  .contents .p-faq .faq-item__a .txt {
    font-size: calc(24 / 750 * 100vw);
    line-height: 1.6666666667;
    letter-spacing: 0em;
    font-weight: 400;
  }
}
.contents .js-accordion-head {
  cursor: pointer;
  position: relative;
}
.contents .js-accordion-head .icon {
  display: inline-block;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.contents .js-accordion-head .icon::before, .contents .js-accordion-head .icon::after {
  position: absolute;
  content: "";
  display: block;
  transition: all 0.3s;
}
.contents .js-accordion-head .icon::before {
  width: 100%;
  height: 1px;
  left: 0;
  top: 50%;
  transform: translateY(-50%);
}
.contents .js-accordion-head .icon::after {
  width: 1px;
  height: 100%;
  top: 0;
  left: 50%;
  transform: translateX(-50%);
}
.contents .js-accordion-head.is-open .icon::after {
  height: 0;
}
.contents .js-accordion-body {
  display: none;
}
.contents [data-anim] {
  transition: 0.6s transform, 0.6s opacity;
}
.contents [data-anim=false] {
  transform: translateY(2vh);
  opacity: 0;
}

#goodsspec_body .goodscomment_ .deliveryBlock2_ dt:before {
  display: inline-block;
  content: "";
  width: 22px;
  height: 15px;
  vertical-align: middle;
  background: url(/img/usr/common/icon_delivery.png) 0 center no-repeat;
  background-size: 17px 14px;
}

#goodsspec_body .goodscomment_ .deliveryBlock2_ dd span {
  padding: 0 0.2rem;
  text-decoration: underline;
}

@keyframes fadein {
  from {
    opacity: 0;
  }
  to {
    opacity: 1;
  }
}