@charset "utf-8";

.font-yumin {
  font-family: "游明朝", YuMincho, 'Yu Mincho', "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "Noto Serif JP", "serif" !important;
}

.font-garamond {
  font-family: 'EB Garamond', serif !important;
}

.font-arno {
  font-family: arno-pro, serif !important;
}

.font-petrona {
  font-family: Petrona, serif !important;
}

.inview {
  opacity: 0;
}

.scrolled main {
  padding-top: calc(130px + var(--fsBannerHeight));
}

html {
  scroll-padding-top: 0px
}

main a:hover {
  text-decoration: none;
}

#fp {
  margin: 0px;
  padding: 0px;
  color: #463a32;
}

#fp img {
  image-rendering: -webkit-optimize-contrast;
}

_::-webkit-full-page-media,
_:future,
:root #fp img {
  /*safari*/
  image-rendering: auto;
}

footer {
  margin-top: 0px;
}

html {
  -webkit-font-smoothing: antialiased;
}

body {
  -webkit-font-smoothing: subpixel-antialiased;
}

sup {
  vertical-align: top;
}

.wrapper {
  display: block;
}

#fp .cbg {
  margin: 0px;
  padding: 0px;
  overflow: hidden;
  position: relative;
}

/* =========================
          共通
========================= */
.font-uppercase {
  text-transform: uppercase;
}

.font-capitalize {
  text-transform: capitalize;
}

.common__title {
  color: #9c8743;
  font-size: 6rem;
  font-feature-settings: "palt";
  font-weight: 500;
  line-height: 1;
  text-align: center;
}

.common__text {
  font-size: 2rem;
  line-height: 1.5;
  text-align: center;
}

.name-and-price {
  margin: 0;
  padding: 15px 0 0;
}

.common__name {
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: normal;
}

.common__name sup {
  font-size: 1rem;
}

.common__price {
  font-size: 1.4rem;
  line-height: 1.4;
}

.cart__link {
  display: inline-block;
  width: 150px;
  background-color: #9c894c;
  cursor: pointer;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  margin: 0px;
  padding: 14px 0px;
  position: relative;
}

.cart__link svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-size: 1.1rem;
}

.all-lineup .lineup-slider ul li .bcs {
  padding: 14px 0 0;
}

.bbg {
  padding: 14px 0;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #FFF;
  width: 215px;
  border: 1px solid #9c894c;
}

.common__link {
  padding: 15px 0 0;
}

.detail__link {
  display: inline-block;
  border-bottom: 1px solid #463a32;
  color: #463a32;
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  text-decoration: none;
  padding: 0 0 5px 2px;
  position: relative;
}

.detail__link svg {
  color: #9c894d;
  margin-left: 6px;
}

.common__notes {
  font-size: 1.2rem;
  line-height: 1;
}

.limited {
  width: 61px;
  height: 61px;
  background-color: #b9973c;
  border-radius: 50%;
  padding: 3px;
  box-sizing: border-box;
  position: absolute;
  top: 0;
  right: -12px;
  z-index: 15;

}

.limited .limited-in {
  width: 100%;
  height: 100%;
  display: block;
  border: 1px solid #FFF;
  border-radius: 50%;
  box-sizing: border-box;
}

.ltext {
  width: 100%;
  display: inline-block;
  color: #FFF;
  letter-spacing: 0.05em;
  line-height: 1.1em;
  text-align: center;
  margin-top: 0px;
  position: absolute;
  left: 0px;
  top: 51%;
  -webkit-transform: translateY(-51%);
  transform: translateY(-51%);
}

.new {
  width: 88px;
  height: 88px;
  border-radius: 50%;
  padding: 3px;
  box-sizing: border-box;
  position: absolute;
  top: 14px;
  left: 14px;
  z-index: 15;
}

.new-text {
  display: inline-block;
  width: 100%;
  font-size: 2.3rem;
  letter-spacing: 0.06em;
  line-height: 1.1em;
  text-align: center;
  margin-top: 0;
  position: absolute;
  left: 0;
  top: 51%;
  -webkit-transform: translateY(-51%);
  transform: translateY(-51%);
}

.obj {
  position: absolute;
}

/* =========================
            mv
========================= */
.mv {
  overflow: visible;
  z-index: 10;
  position: relative;
}

.mv__inner {
  width: 100%;
  position: relative;
}

.mv-text__wrapper {
  width: 55.7vw;
  color: #8b734b;
  text-align: center;
  position: absolute;
  top: 7.7vw;
}

.mv__sub-title {
  width: fit-content;
  font-size: 1.3vw;
  line-height: 1;
  letter-spacing: 0.02em;
  margin: 0 auto;
  position: relative;
}

.mv__title {
  font-size: 4.5vw;
  font-weight: 600;
  letter-spacing: 0.05em;
  line-height: 1;
  margin-top: 1.2vw;
  /* ▼ 画像書き出し */
  width: 28.9vw;
  margin: 1.2vw auto 0;
}

.mv__lead {
  font-size: 1.35vw;
  line-height: 1;
  margin-top: 1.3vw;
}

.mv__label {
  margin-top: 0.8vw;
}

.mv__label img {
  width: 17.8vw;
}

.mv__notes {
  color: #463a32;
  font-size: 0.98vw;
  line-height: 1;
  letter-spacing: 0.02em;
}

.mv__sub-title::before,
.mv__sub-title::after {
  content: "";
  width: 20px;
  height: 22px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.mv__sub-title::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_product_title_l.svg);
  left: -36px;
}

.mv__sub-title::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_product_title_r.svg);
  right: -36px;
}

/* =========================
          リード
========================= */
.mlead {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_mlead.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  box-sizing: border-box;
  z-index: 5;
}

.mlead__inner {
  padding: 68px 0 95px;
}

.campaign-banner__wrapper {
  width: 748px;
  margin: 0 auto 44px;
}

.nav__wrapper {
  position: relative;
}

.nav__list {
  /* width: 459px; */
  width: 615px;
  display: flex;
  column-gap: 18px;
  margin: 0 auto;
}

.nav__item {
  /* width: 141px; */
  width: 195px;
  background: linear-gradient(#c4a557, #ddc589);
  border-radius: 50px;
  text-align: center;
  padding: 15px 0 30px;
  position: relative;
}

.nav__link {
  color: #fff;
  /* font-size: 1.7rem; */
  font-size: 1.4rem;
  letter-spacing: -0.025em;
}

.fa-chevron-down {
  color: #fff;
  font-size: 20px;
  position: absolute;
  bottom: 7px;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

.mlead__text {
  margin-top: 35px;
}

.mlead__text span {
  display: block;
  font-size: 1.6rem;
  margin-top: 5px;
}

/* --------------------
      All Lineup
-------------------- */
.all-lineup {
  width: 1060px;
  background-image: url(../../images/special_contents/FacePolisher/20250515/all_line_up.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  margin: 0 auto;
}

.all-lineup__inner {
  padding: 100px 0;
  position: relative;
}

.all-lineup__inner::before,
.all-lineup__inner::after {
  content: "";
  display: inline-block;
  width: 1010px;
  height: 30px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
}

.all-lineup__inner::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_top_all_lineup.png);
  top: 26px;
}

.all-lineup__inner::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_bottom_all_lineup.png);
  bottom: 27px;
}

.all-lineup__text {
  text-align: center;
  font-weight: 600;
  font-size: 2rem;
  line-height: 1;
  margin-top: 11px;
}

.lineup-slider {
  width: 1000px;
  margin: 0 auto;
  position: relative;
}

.lineup__list {
  width: 806px;
  text-align: center;
  margin: 48px auto 0;
  padding: 0 0 50px;
  position: relative;
}

.lineup__item {
  display: inline-block;
  padding: 0 0 2px;
  width: 284px;
  vertical-align: top;
  position: relative;
}

.lineup-item__text {
  font-size: 2rem;
  line-height: 1.6;
  font-weight: 600;
  text-align: center;
  letter-spacing: -0.06em;
}

.lineup-item__text sup {
  font-size: 1.4rem;
}

.lineup-item__text--ref {
  color: #419394;
}

.lineup-item__text--rel {
  color: #595fb5;
}

.lineup-item__text--cr {
  color: #b74e5d;
}

.lineup-item__text--fm {
  color: #598f40
}

.lineup-item__text--gen {
  color: #3c3f40;
}

.all__img {
  position: relative;
}

.all-lineup__img {
  display: block;
  width: 219px;
  margin: 18px auto 0;
}

.type__list {
  display: flex;
  column-gap: 9px;
  justify-content: center;
}

.type__item {
  font-size: 1.4rem;
  line-height: 1;
  text-align: center;
  margin-top: 12px;
  padding: 7px 0;
}

.type-item__fra {
  color: #fff;
}

.type-item__fra sup {
  font-size: 0.9rem;
}

.type-item__fra--ref {
  width: 69px;
  background-color: #77bbbc;
}

.type-item__fra--rel {
  width: 91px;
  background-color: #9ca0d7;
}

.type-item__fra--cr {
  width: 69px;
  background-color: #d57b88;
}

.type-item__fra--fm {
  width: 110px;
  background-color: #98c484;
}

.type-item__fra--gen {
  width: 140px;
  background-color: #8b8b8b;
  font-feature-settings: "palt";
}

.type-item__face {
  width: 89px;
  background-color: #fff;
  font-weight: 600;
}

.type-item__face--ref,
.type-item__face--rel,
.type-item__face--gen {
  width: 89px;
}

.type-item__face--ref {
  border: 1px solid #419394;
  color: #419394;
}

.type-item__face--rel {
  border: 1px solid #595fb5;
  color: #595fb5;
}

.type-item__face--cr {
  width: 94px;
  border: 1px solid #b74e5d;
  color: #b74e5d;
}

.type-item__face--fm {
  width: 75px;
  border: 1px solid #598f40;
  color: #598f40;
}

.type-item__face--gen {
  border: 1px solid #3c3f40;
  color: #3c3f40;
}

.all-lineup .lineup-slider ul li .btn,
.all-lineup .lineup-slider ul li .bcs {
  margin: 0px;
  padding: 14px 0px 0px;
}

.all-lineup .lineup-slider ul li .bcs .bbg {
  margin: 0px;
  padding: 14px 0px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #FFF;
  width: 215px;
  border: 1px solid #9c894c;
}

.lineup__slick-arrow,
.review__slick-arrow,
.special-kit-arrow {
  position: absolute;
  top: 245px;
  width: 39px;
  height: 40px;
  font-size: 0;
  cursor: pointer;
  outline: none;
  z-index: 50;

  background-size: contain;
  background-position: 0 0;
  background-repeat: no-repeat;
  transition: unset;
  border-width: 0px;
  border-style: none;
  cursor: pointer;
  opacity: 1;
}

.special-kit-arrow {
  top: 50%;
}

.slick-arrow.lineup__slick-prev,
.slick-arrow.review__slick-prev,
.slick-arrow.special-kit-prev {
  left: 30px;
  background-image: url(../../images/special_contents/FacePolisher/20250515/lineup_prev.svg);
}

.slick-arrow.lineup__slick-next,
.slick-arrow.review__slick-next,
.slick-arrow.special-kit-next {
  right: 30px;
  background-image: url(../../images/special_contents/FacePolisher/20250515/lineup_next.svg);
}

.slick-arrow.special-kit-prev {
  left: 60px;
}

.slick-arrow.special-kit-next {
  right: 60px;
}

.lineup__slick-prev:after,
.lineup__slick-next:after,
.review__slick-prev:after,
.review__slick-next:after,
.special-kit-prev:after,
.special-kit-next:after {
  display: none;
}

.all-lineup .lineup-slider .slick-dots {
  position: absolute;
  bottom: 0px;
  left: 0;
  width: 100%;
  font-size: 0;
  text-align: center;
  list-style: none;
  display: block;
  margin: 0px;
  padding: 0px;
}

.all-lineup .lineup-slider .slick-dots li,
.review-slider .slick-dots li,
.special-kit-slider .slick-dots li {
  display: inline-block;
  margin: 0 5px;
  width: auto;
}

.lineup-slider .slick-dots li button,
.review-slider .slick-dots li button,
.special-kit-slider .slick-dots li button {
  display: block;
  line-height: 0;
  width: 8px;
  height: 8px;
  background: #e1d2b1;
  border: 0;
  border-radius: 50%;
  color: transparent;
  cursor: pointer;
  font-size: 0;
  outline: none;
  padding: 0;
}

.lineup-slider .slick-dots .slick-active button,
.lineup-slider .slick-dots li button:hover,
.review-slider .slick-dots .slick-active button,
.review-slider .slick-dots li button:hover,
.special-kit-slider .slick-dots .slick-active button,
.special-kit-slider .slick-dots li button:hover {
  background: #a39161;
}

.lineup-slider .slick-dots>li>button::before,
.review-slider .slick-dots>li>button::before,
.special-kit-slider .slick-dots>li>button::before {
  background-color: transparent;
}

.all-lineup__notes {
  letter-spacing: 0.02em;
  line-height: 1.8;
  margin-top: 47px;
  padding-left: 80px;
}

.new-lineup {
  width: 61px;
  height: 61px;
  top: 90px;
}

.new-lineup-text {
  font-size: 1.5rem;
}

/* =========================
          レビュー
========================= */
.review__inner {
  padding: 72px 0 84px;
}

.review-title__obj {
  width: 152px;
  line-height: 1;
  margin: 0 auto;
}

.review__title {
  margin-top: 23px;
}

.review__text {
  margin-top: 30px;
}

.review-slider {
  width: 1065px;
  margin: 0 auto;
  position: relative;
}

.review__list {
  width: 940px;
  margin: 40px auto 0;
}

.review__item {
  position: relative;
}

.review-img__wrapper {
  width: 290px;
  margin: 0 auto;
  padding: 0 0 10px;
}

.review__img {
  width: 290px;
}

.review__item-img {
  position: absolute;

}

.review__item-img--ref,
.review__item-img--rel,
.review__item-img--cr {
  width: 116px;
  right: 6px;
  bottom: 0;
}

.review__item-img--fm {
  width: 57px;
  right: 15px;
  bottom: 2px;
}

.slick-arrow.review__slick-prev {
  left: 0;
}

.slick-arrow.review__slick-next {
  right: 0;
}

/* =========================
          REASONS
========================= */
.reasons {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_reasons.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}

.reasons__inner {
  padding: 78px 0 125px;
}

.reasons-number {
  width: 97px;
  height: 97px;
  background-color: #62a669;
  border-radius: 50%;
  color: #fff;
  font-style: italic;
  font-weight: 200;
  text-align: center;
  font-size: 7rem;
  margin: 0 auto;
}

.reasons__title {
  color: #8b734b;
  font-size: 5rem;
  font-style: italic;
  font-weight: 400;
  margin-top: 13px;
}

.reasons__text {
  margin-top: 30px;
}

.reasons__list {
  width: 970px;
  display: flex;
  column-gap: 30px;
  margin: 63px auto 0;
}

.reasons__item {
  width: 170px;
}

.reasons__img {
  display: block;
  width: 104px;
  margin: 0 auto;
}

.reasons__item-text {
  font-size: 18px;
  line-height: 1.3;
  text-align: center;
  margin-top: 25px;
}

/* =========================
    潤いで磨く繊細スクラブ
========================= */
.explanation {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_explanation.jpg);
  background-size: cover;
  background-repeat: no-repeat;
  border-top: 1px solid #bca774;
  position: relative;
}

.explanation__line {
  width: 145px;
  margin: 0 auto;
}

.explanation__inner {
  padding: 51px 0 79px;
}

.explanation__title {
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1;
  position: relative;
}

.explanation__text {
  margin-top: 30px;
}

.explanation-item__wrapper {
  width: 827px;
  margin: 50px auto 0;
}

.explanation__item {
  background-size: cover;
  background-repeat: no-repeat;
  padding-top: 33px;
}

.explanation__item--remove {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_explanation_remove.png);
  padding-bottom: 91px;
}

.explanation-item__title {
  width: fit-content;
  color: #8b734b;
  font-size: 3.6rem;
  font-weight: 400;
  letter-spacing: 0.06em;
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.explanation-item__title::before,
.explanation-item__title::after {
  content: "";
  width: 20px;
  height: 21px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.explanation-item__title::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_explanation_title_l.svg);
  left: -30px;
}

.explanation-item__title::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_explanation_title_r.svg);
  right: -30px;
}

.explanation-remove__wrapper {
  display: flex;
  column-gap: 20px;
  text-align: center;
  margin: 28px 0 0 430px;
}

.explanation-item__sub-title {
  color: #c0a050;
  font-size: 2.4rem;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
}

.explanation-item__text {
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  margin-top: 10px;
}

.explanation__item--give {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_explanation_give.png);
  margin-top: -20px;
  padding-bottom: 34px;
}

.explanation-give__wrapper {
  width: 768px;
  display: flex;
  /* column-gap: 50px; */
  /* justify-content: center; */
  margin: 23px auto 0;
}

.explanation-give__item {
  width: 256px;
  margin: 0 auto;
}

.explanation-give__sub-title {
  font-size: 3.6rem;
  font-style: italic;
}

.explanation-give__text {
  width: 205px;
  margin: 0 auto;
}

.explanation-give__text--ju {
  text-align: justify;
}

.explanation-give__img {
  width: 112px;
  margin: 5px auto 0;
}

.explanation__item--feeling {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_explanation_feeling.png);
  margin-top: -20px;
  padding-bottom: 64px;
}

.refresh__item {
  position: relative;
}

.refresh__text1,
.refresh__text3 {
  font-size: 2rem;
  letter-spacing: 0.02em;
  line-height: 1.1;
  font-weight: 400;
  text-align: center;
  position: absolute;
}

.refresh__text1 {
  left: 239px;
  top: 10px;
}

.refresh__text2 {
  text-align: center;
}

.refresh__text3 {
  right: 249px;
  bottom: 0;
}

.refresh-item__wrapper {
  margin-top: 30px;
}

.explanation__icon-plus {
  width: 62px;
  margin: -20px auto 0;
}

/* how to use */
.how-to-use,
.prescription {
  margin: 44px auto 0;
  width: 946px;
  position: relative;
}

.how-to-use-in,
.prescription-in {
  margin: 0;
  padding: 0px;
  position: relative;
}

.how-to-use-in h4,
.prescription-in h4 {
  margin: 0px;
  padding: 0px;
  text-align: center;
}

.how-to-use-in h4 a,
.prescription-in h4 a {
  padding: 10px 0px;
  font-size: 2.6rem;
  line-height: 1;
  font-weight: 600;
  display: block;
  position: relative;
  text-decoration: none;
  background-color: #9c894c;
  color: #FFF;
  font-style: italic;
}

.how-to-use .how-to-use-in h4 a .ja {
  font-size: 2rem;
}

.how-to-use .how-to-use-in h4 a .icon,
.prescription-in h4 a .icon {
  font-size: 3.2rem;
  line-height: 1;
  font-style: normal;
  text-decoration: none;
  position: absolute;
  top: 50%;
  right: 288px;

  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-weight: 400;
  display: inline-block;
}

.how-to-use .how-to-use-in h4 a .plus {
  display: block;
}

.how-to-use .how-to-use-in h4 a .minus {
  display: none;
}

.how-to-use.open .how-to-use-in h4 a .plus {
  display: none;
}

.how-to-use.open .how-to-use-in h4 a .minus {
  display: block;
}

.how-to-use-more {
  padding: 90px 0px 60px;
  display: none;
  margin: 0px;
  width: 100%;
  background-color: #FFF;
  position: relative;
  border-bottom: 2px solid #ab9152;
}

.how-to-use-more .howto-head {
  margin: 0;
  padding: 0px 0px 0px 95px;
  position: relative;
}

.how-to-use-more h5 {
  margin: 0px;
  padding: 0px 0px 20px;
  font-size: 5.5rem;
  line-height: 0.9;
  text-align: center;
  font-weight: 600;
  background-image: url(../../images/special_contents/FacePolisher/20230519/t_howto.png);
  background-repeat: no-repeat;
  background-position: center bottom;
  width: 322px;
  font-style: italic;
  position: relative;
}

.how-to-use-more h5 .t1 {
  display: block;
  color: #9c8743;
  font-size: 3.3rem;
}

.how-to-use-more h5 .t2 {
  display: block;
  color: #433a31;
}

.how-to-use-more .howto-head .howto-img {
  position: absolute;
  top: -53px;
  left: 477px;
}

.how-to-use-more .howto-body {
  width: 812px;
  margin: 60px auto 0;
  padding: 0px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.how-to-use-more .howto-body .howto-detail {
  margin: 0px;
  padding: 0px;
  width: 404px;
}

.how-to-use-more .howto-body .howto-detail h6 {
  text-align: center;
  font-size: 2rem;
  line-height: 1;
  font-weight: 600;
  margin: 0px;
  padding: 0px;
  letter-spacing: -0.05em;
  color: #9c8743;
  height: 62px;
  box-sizing: border-box;
}

.how-to-use-more .howto-body .howto-detail.d2 h6 {
  padding: 15px 0 0;
}

.how-to-use-more .howto-body .howto-detail h6 span {
  margin: 0px;
  padding: 0px 13px;
  display: inline-block;
  font-size: 2rem;
  position: relative;
}

.how-to-use-more .howto-body .howto-detail.d1 h6 span {
  padding: 0px 35px;
  line-height: 1.3;
}

.how-to-use-more .howto-body .howto-detail.d2 h6 span {
  padding: 0px 25px;
}

.how-to-use-more .howto-body .howto-detail.d2 h6.fm span {
  line-height: 2;
}

.how-to-use-more .howto-body .howto-detail h6 span:before {
  content: "";
  width: 6px;
  height: 24px;
  background-image: url(../../images/special_contents/FacePolisher/20231226/kakko_l2.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.how-to-use-more .howto-body .howto-detail h6 span:after {
  content: "";
  width: 6px;
  height: 24px;
  background-image: url(../../images/special_contents/FacePolisher/20231226/kakko_r2.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.how-to-use-more .howto-body .howto-detail.d1 h6 span:before {
  content: "";
  width: 6px;
  height: 41px;
  background-image: url(../../images/special_contents/FacePolisher/20231226/kakko_l.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  left: 0px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.how-to-use-more .howto-body .howto-detail.d1 h6 span:after {
  content: "";
  width: 6px;
  height: 41px;
  background-image: url(../../images/special_contents/FacePolisher/20231226/kakko_r.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  position: absolute;
  top: 50%;
  right: 0px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.how-to-use-more .howto-body .howto-detail .text1 {
  text-align: center;
  font-size: 1.6rem;
  line-height: 1.6;
  font-weight: 600;
  margin: 0px;
  padding: 0px;
  letter-spacing: -0.05em;
}

.how-to-use-more .howto-body .howto-detail .use {
  text-align: center;
  margin: 20px auto 0px;
  padding: 25px 0px 30px;
  width: 342px;
  background-color: #f8f7f2;
}

.how-to-use-more .howto-body .howto-detail h7 {
  text-align: center;
  margin: 0px auto;
  padding: 0px;
  width: 280px;
  position: relative;
  display: flex;
  align-items: center;
  font-size: 1.2rem;
  line-height: 1;
  font-weight: 600;
}

.how-to-use-more .howto-body .howto-detail h7:before,
.how-to-use-more .howto-body .howto-detail h7:after {
  border-top: 1px solid #9c8743;
  content: "";
  flex-grow: 1;
}

.how-to-use-more .howto-body .howto-detail h7:before {
  margin-right: 14px;
}

.how-to-use-more .howto-body .howto-detail h7:after {
  margin-left: 14px;
}

.how-to-use-more .howto-body .howto-detail .text2 {
  text-align: center;
  margin: 0px;
  padding: 12px 0px 0px;
  color: #9c8743;
  font-size: 1.4rem;
  line-height: 1.5;
}

.how-to-use-more .notes {
  width: 750px;
  margin: 0px auto;
  padding: 23px 0px 0px;
  font-size: 1.1rem;
  line-height: 1;
}

/* 処方 */
.prescription-more {
  background-color: #f6f1ef;
  padding: 31px 29px 36px;
  display: none;
}

.prescription__title {
  width: fit-content;
  font-size: 2.1rem;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: center;
  margin: 0 auto;
  position: relative;
}

.prescription__title::before,
.prescription__title::after {
  content: '';
  display: inline-block;
  width: 381px;
  height: 1px;
  background-color: #3d3027;
  position: absolute;
  top: calc(50% - 2px);
}

.prescription__title::before {
  right: calc(50% + 64px);
}

.prescription__title::after {
  left: calc(50% + 64px);
}

.scrub-agent__title::before,
.scrub-agent__title::after {
  width: 377px;
}

.prescription__wrapper {
  display: flex;
  column-gap: 21px;
  margin-top: 36px;
}

.prescription__in {
  display: flex;
  margin-top: 15px;
}

.common-prescription__item {
  width: 432px;
}

.prescription__sub-title {
  width: 432px;
  background-color: #fff;
  font-size: 2.1rem;
  letter-spacing: 0.04em;
  line-height: 1;
  text-align: center;
  padding: 12px 0;
}

.prescription__sub-title sup {
  font-size: 1.4rem;
}

.prescription__sub-title span {
  display: block;
  font-size: 1.6rem;
  margin-top: 6px;
}

.prescription__text {
  width: 310px;
  font-size: 1.5rem;
  letter-spacing: 0.02em;
  text-align: justify;
  padding-left: 4px;
}

.prescription__text span {
  font-size: 11px;
}

.common_prescription1__img {
  width: 104px;
  padding-left: 15px;
}

.common_prescription2__img {
  width: 101px;
  padding-left: 9px;
}

.common_prescription3__img {
  width: 104px;
  padding-left: 6px;
}

.common_prescription4__img {
  width: 94px;
  padding-left: 14px;
}

.scrub-agent {
  margin-top: 45px;
}

.prescription h4 a .plus {
  display: block;
}

.prescription h4 a .minus {
  display: none;
}

.prescription.open h4 a .plus {
  display: none;
}

.prescription.open h4 a .minus {
  display: block;
}

/* =========================
ローズウォーター イン オイルとのハーモニー
========================= */
.set-item {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_set.jpg);
  background-position: center;
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
}

.set-item__inner {
  padding: 109px 0 91px;
}

.set-item__box {
  width: 436px;
  text-align: center;
  font-feature-settings: "palt";
  margin-left: 280px;
}

.set-item__title {
  color: #8b734b;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1.06;
}

.set-item__line {
  margin-top: 25px;
}

.set-item__text {
  font-feature-settings: "palt";
  margin-top: 22px;
}

.set-item__btn {
  margin-top: 44px;
}

/* =========================
          各製品
========================= */
.common-products {
  /* background-size: 100% 100%; */
  background-size: cover;
  background-repeat: no-repeat;
  position: relative;
  border-top: 1px solid #bca774;
}

.common-products__inner {
  padding: 85px 0 120px;
}

.common-products__top-obj {
  width: 88px;
  line-height: 1;
  margin: 0 auto;
}

.common-products__title {
  color: #9c8743;
  font-size: 6rem;
  font-feature-settings: "palt";
  line-height: 1;
  text-align: center;
}

.products__title {
  display: block;
  width: fit-content;
  box-sizing: border-box;
  font-size: 3.6rem;
  letter-spacing: 0.02em;
  margin: 0 auto;
  position: relative;
}

.products__title::before,
.products__title::after {
  content: "";
  width: 20px;
  height: 22px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.products__title::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_product_title_l.svg);
  left: -36px;
}

.products__title::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_product_title_r.svg);
  right: -36px;
}

.reservation__text {
  width: fit-content;
  color: #a78b3e;
  font-size: 2.6rem;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  margin: 28px auto 0;
  position: relative;
}

.reservation__text::before,
.reservation__text::after {
  content: "";
  width: 95px;
  height: 10px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.reservation__text::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_reservation_l.svg);
  left: -105px;
}

.reservation__text::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_reservation_r.svg);
  right: -105px;
}

.reservation__text span {
  font-size: 1.8rem;
}

.date__notes {
  font-size: 1.9rem;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  margin-top: 15px;
}

.products-in__wrapper {
  width: 1050px;
  display: flex;
  column-gap: 32px;
  text-align: center;
  margin: 75px auto 0;
  padding: 0 58px 0 20px;
}

.item__img {
  width: 500px;
  position: relative;
}

.texture__img {
  width: 159px;
  position: absolute;
  bottom: 0;
  left: 0;
}

.products__data {
  padding-top: 10px;
}

.products__catch {
  font-size: 2.4rem;
  font-weight: 400;
  letter-spacing: 0.06rem;
  line-height: 1.4;
}

.products__catch sup {
  font-size: 1.4rem;
}

.products-type__item {
  font-size: 2rem;
  padding: 9px 0;
}

.product-cart__link {
  width: 194px;
  margin-top: 19px;
}

.small-size__wrapper {
  width: 448px;
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_item_s.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  margin: 30px auto 0;
}

.small-size__inner {
  display: flex;
  width: 365px;
  align-items: center;
  /* column-gap: 25px; */
  margin: 0 auto;
  padding: 22px 0 20px;
}

.img__small {
  width: 108px;
}

.name-and-price--small {
  padding-top: 0;
}

.products__data--s {
  font-size: 1.4rem;
}

.cart__link--small {
  margin-top: 15px;
}

.common__link--small {
  padding-top: 12px;
}

.products__notes {
  width: 1050px;
  font-size: 1.2rem;
  margin: 17px auto 0;
}

/* Special Kit */
.special-kit {
  width: 1000px;
  background-size: 100% 100%;
  background-repeat: no-repeat;
  margin: 38px auto 0;
}

.special-kit__inner {
  text-align: center;
  padding: 88px 0;
  position: relative;
}

.special-kit__title {
  font-size: 5rem;
  line-height: 1;
}

.special-kit__list,
.special-kit__list--cr {
  width: 750px;
  margin: 46px auto 0;
  position: relative;
}

.special-kit__item {
  width: 304px;
  margin: 0 auto;
}

.special-kit__catch {
  font-size: 2rem;
  letter-spacing: 0.06em;
  font-feature-settings: "palt";

  line-height: 1.4;
}

.special-kit__img {
  width: 210px;
  margin: 16px auto 0;
  position: relative;

}

.special-kit__img .rel::before {
  content: "";
  width: 182px;
  height: 182px;
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_sk_ref.png);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  position: absolute;
  top: 0%;
  left: 50%;
  transform: translateX(-50%);
  z-index: 5;
}

.kit__img .rel {
  display: block;
  position: relative;
}

.kit-common__img {
  margin: 0 auto;
  position: relative;
  z-index: 30;
}

.special-kit__name-and-price {
  margin-top: 19px;
}

.kit__wrapper {
  width: 304px;
  min-height: 140px;
  text-align: center;
  margin: 22px auto 0;
  padding: 19px 0;
}

.kit-detail__title {
  font-size: 1.2rem;
  font-weight: bold;
}

.kit-detail__text {
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 6px;
  padding: 0 15px;
}

.kit-detail__text sup {
  font-size: 0.8rem;
}

.special-kit__notes {
  font-size: 1.2rem;
  text-align: left;
  margin-top: 40px;
  padding-left: 60px;
}

/* リフレッシング */
.refreshing {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_ref.jpg);
}

.products-type-item__fra--ref {
  width: 89px;
}

.products-type-item__face--ref {
  width: 129px;
}

.special-kit--ref {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_sk_ref.jpg);
}

.special-kit__title--ref,
.special-kit__catch--ref {
  color: #419394;
}

.special-kit__img--ref .rel::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_sk_ref.png);
}

.special-kit-ref__img1 {
  width: 139px;
  padding-top: 9px;
}

.special-kit-ref__img2 {
  width: 185px;
  padding-top: 63px;
}

.special-kit-ref__img3 {
  width: 185px;
  padding-top: 50px;
  z-index: 12;
}

.new--ref {
  border: 1px solid #419394;
}

.new-text--ref {
  color: #419394;
}

.product-cart__link--ref {
  background-color: #419394;
}

.kit__wrapper--ref {
  background-color: #eef2f1;
}


.refreshing .special-kit-arrow {
  display: block;
  top: 46%;
}

.refreshing .special-kit-arrow {
  display: none;
}

/* .refreshing .slick-arrow.special-kit-prev {
  background-image: url(../../images/special_contents/FacePolisher/20250515/lineup_prev.svg); 
  left: 70px;
}

.refreshing .slick-arrow.special-kit-next {
  background-image: url(../../images/special_contents/FacePolisher/20250515/lineup_next.svg);
  right: 70px;
} */

/* リラクシング */
.relaxing {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_rel.jpg);
  /* background-image: url(../../images/special_contents/FacePolisher/20250516/bg_rel_ad.jpg); */
}

.products-type-item__fra--rel {
  width: 132px;
}

.products-type-item__face--rel {
  width: 132px;
}

.special-kit--rel {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_sk_rel.jpg);
}

.special-kit__title--rel,
.special-kit__catch--rel {
  color: #595fb5;
}

.special-kit__img--rel .rel::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_sk_rel.png);
}

.special-kit-rel__img2 {
  width: 175px;
  padding-top: 63px;
}

.new--rel {
  border: 1px solid #595fb5;
}

.new-text--rel {
  color: #595fb5;
}

.product-cart__link--rel {
  background-color: #595fb5;
}

.kit__wrapper--rel {
  background-color: #f6f4ff;
}

/* ローズ */
.comforting-rose {
  background-size: cover;
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_cr.jpg);
  /* background-image: url(../../images/special_contents/FacePolisher/20250516/bg_cr_ad.jpg); */
}

.products-type-item__fra--cr {
  width: 106px;
}

.products-type-item__face--cr {
  width: 232px;
}

.special-kit--cr {
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_sk_cr.jpg);
}

.special-kit__title--cr,
.special-kit__catch--cr {
  color: #b74e5d;
}

.special-kit__img--cr .rel::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_sk_cr.png);
}

.product-cart__link--cr {
  background-color: #b74e5d;
}

.kit__wrapper--cr {
  background-color: #f8eeeb;
}

.cr-products__data--s {
  padding-left: 20px;
}

.texture__img--cr {
  bottom: 20px;
}

/* フォーミング */
.forming {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_fm.jpg);
}

.products__data--fm {
  margin-left: 25px;
}

.products__catch--fm {
  margin-top: 90px;
}

.products-type-item__fra--fm {
  width: 148px;
}

.products-type-item__face--fm {
  width: 230px;
}

.product-cart__link--fm {
  background-color: #598f40;
}

.new--fm {
  border: 1px solid #598f40;
}

.new-text--fm {
  color: #598f40;
}

/* ジェントルマン */
.gentleman {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_gen.jpg);
}

.products__title--gen::before,
.products__title--gen::after {
  width: 55px;
  height: 29px;
}

.products__title--gen::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_gen_title_l.svg);
  left: -76px;
}

.products__title--gen::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/obj_gen_title_r.svg);
  right: -76px;
}

.products__data--gen {
  margin-left: 25px;
}

.products__catch--gen {
  margin-top: 90px;
}

.products-type-item__fra--gen {
  width: 206px;
}

.products-type-item__face--gen {
  width: 135px;
}

.product-cart__link--gen {
  background-color: #3c3f40;
}

/* =========================
          Campaign
========================= */
.campaign {
  background-color: #f6efe2;
  position: relative;
}

.campaign__inner {
  padding: 80px 0 85px;
}

.campaign__contents {
  width: 1047px;
  background-color: #fff;
  border: 3px solid #bda672;
  border-radius: 30px;
  margin: 0 auto;
  padding: 65px 0 90px;
  position: relative;
}

/* .campaign__contents::before,
.campaign__contents::after {
  content: "";
  display: inline-block;
  width: 1048px;
  height: 36px;
  background-size: contain;
  background-repeat: no-repeat;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
} */

.sg__obj1,
.sg__obj2 {
  width: 152px;
  left: 50%;
  transform: translateX(-50%);
  line-height: 1;
}

.sg__obj1 {
  top: 0;
}

.sg__obj2 {
  bottom: 0;
}

.sg__obj3,
.sg__obj4 {
  width: 56px;
  top: 50%;
  transform: translateY(-50%);
}

.sg__obj3 {
  left: 0;
}

.sg__obj4 {
  right: 0;
}

/* .campaign__contents::before {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_top_campaign.png);
  top: -10px;
}

.campaign__contents::after {
  background-image: url(../../images/special_contents/FacePolisher/20250515/line_bottom_campaign.png);
  bottom: -10px;
} */

.campaign__title {
  margin-top: 25px;
}

.campaign__label {
  width: 256px;
  margin: 0 auto;
}

.campaign-notes {
  font-size: 1.5rem;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
  margin-top: 10px;
}

.campaign__detail {
  display: flex;
  align-items: center;
  /* justify-content: center; */
  column-gap: 69px;
  margin-top: 45px;
  padding-left: 161px;
}

.campaign-text__s {
  font-size: 1.8rem;
  font-feature-settings: "palt";
  line-height: 1.5;
  text-align: center;
}

.campaign-text__l {
  font-size: 3rem;
  font-feature-settings: "palt";
  line-height: 1.2;
  margin-top: 14px;
  text-align: center;
}

.campaign-text__vol {
  font-size: 2.8rem;
}

.campaign-size {
  font-size: 1.4rem;
  line-height: 1.4;
  margin-top: 21px;
}

.campaign__img {
  width: 366px;
  position: relative;
}

.sc-accordion__wrapper {
  width: 723px;
  text-align: center;
  margin: 35px auto 0;
}

.accordion__title {
  font-size: 1.6rem;
  line-height: 1;
}

.sc-accordion {
  background-color: #fff;
  border-top: 1px solid #9a8a5b;
  border-bottom: 1px solid #9a8a5b;
  color: #403f3e;
  font-weight: 400;
  display: block;
  text-decoration: none;
  padding: 12px 0px;
  position: relative;
}

.sc-accordion-more {
  border-bottom: none;
  padding-bottom: 0;
}

.sc-accordion__title {
  background-color: #fff;
}

.sc-accordion-more__in {
  background-color: #f6f3ec;
}

.sc-comment__list {
  text-align-last: left;
  padding: 25px 17px 30px 17px;
}

.sc-comment__item {
  font-size: 1.4rem;
  line-height: 1.7;
}

.open .common-icon-plus {
  display: none;
}

.open .common-icon-minus {
  display: block;
}

.open .fragrance-accordion {
  border-bottom: none;
}

.reverse-icon .common-icon-plus {
  display: block;
}

/* アコーディオン初期開いた状態 */
.reverse-icon .common-icon-minus {
  display: none;
}

.reverse-icon.open .common-icon-plus {
  display: none;
}

.reverse-icon.open .common-icon-minus {
  display: block;
}

.open .ki-accordion {
  border-bottom: none;
}

.common-icon {
  font-size: 3rem;
  position: absolute;
  top: 50%;
  right: 3px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.limited--cp {
  width: 76px;
  height: 76px;
  background-color: #f06781;
  top: -15px;
  right: -2px;
}

.ltext--cp {
  font-size: 1.8rem;
}

.sc-comment__item-name {
  margin-bottom: 10px;
}

/* =========================
            Quiz
========================= */
.quiz {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_quiz.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
}

.quiz__inner {
  padding: 87px 0 105px;
}

.quiz-in__wrapper {
  width: 899px;
  margin: 67px auto 0;
  background-image: url(../../images/special_contents/FacePolisher/20250515/frame_quiz.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  box-sizing: border-box;
  padding: 133px 0 117px;
  position: relative;
}

.quiz-in__title {
  color: #9c8743;
  font-size: 3rem;
  font-weight: 400;
  line-height: 1;
  letter-spacing: 0.04em;
  text-align: center;
}

.quiz-in__text {
  text-align: center;
  font-size: 1.8rem;
  letter-spacing: 0.04em;
  line-height: 1.5;
  font-weight: 400;
  margin: 44px auto 0px;
}

.quiz-btn__wrapper {
  width: 305px;
  background-image: linear-gradient(90deg, #e2b955, #bca774);
  border-radius: 50px;
  font-size: 1.7rem;
  letter-spacing: -0.025em;
  line-height: 1;
  text-align: center;
  margin: 53px auto 0;
  position: relative;
}

.quiz__btn {
  width: 100%;
  display: inline-block;
  height: 100%;
  color: #fff;
  padding: 23px 0;
}

.quiz__btn svg {
  position: absolute;
  right: 20px;
}

/* =========================
          コメント
========================= */
.comment {
  background-image: url(../../images/special_contents/FacePolisher/20250515/bg_comment.jpg);
  background-size: 100% 100%;
  background-repeat: no-repeat;
  border-top: 1px solid #bca774;
}

.comment__inner {
  text-align: center;
  padding: 130px 0;
}

.comment-in__wrapper {
  display: flex;
  column-gap: 71px;
  justify-content: center;
}

.comment-text__wrapper {
  padding-top: 130px;
}

.comment__title {
  color: #8b734b;
  font-size: 4rem;
  font-weight: 400;
  letter-spacing: 0.04em;
  line-height: 1;
}

.comment__text {
  margin-top: 45px;
}

/* =========================
            Movie
========================= */
.movie__inner {
  padding: 82px 0 111px;
}

.movie__title {
  margin-top: 30px;
}

.movie__wrapper {
  width: 851px;
  margin: 48px auto 0;
}

.movie__text {
  line-height: 1;
  margin-top: 25px;
}

/* =========================
            LINE
========================= */
#fp .line {
  margin: 0;
  padding: 0px;
  position: relative;
  background-image: url(../../images/special_contents/FacePolisher/20220915/bg_line.jpg);
  background-repeat: no-repeat;
  background-size: cover;
}

#fp .line-in {
  margin: 0px auto;
  padding: 80px 0px 0px;
  width: 655px;
  height: 333px;
  position: relative;
  box-sizing: border-box;
  background-image: url(../../images/special_contents/FacePolisher/20220915/frame_line.png);
}

#fp .line h2 {
  margin: 0px;
  padding: 0px;
  font-size: 3.2rem;
  line-height: 1;
  text-align: center;
}

#fp .line .text {
  margin: 0px;
  padding: 20px 0px 0px;
  font-size: 2rem;
  line-height: 1em;
  text-align: center;
}

#fp .line .btn {
  margin: 0px;
  padding: 40px 0px 0px;
  text-align: center;
}

#fp .line .btn a {
  margin: 0px;
  padding: 26px 0px 0px 70px;
  text-align: center;
  color: #FFF;
  font-size: 2rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #00b900;
  width: 272px;
  height: 70px;
  border-radius: 10px;
  box-sizing: border-box;
  font-weight: 600;
}

#fp .line .btn a:before {
  content: "";
  background: url(../../images/special_contents/HolidayCollection/20211014/icon_line.png?a=20211014) no-repeat center center;
  background-size: 50px auto;
  margin: 0px;
  padding: 0px;
  border-right: 1px solid #009e00;
  width: 70px;
  height: 70px;
  position: absolute;
  left: 0px;
  top: 0px;
}

#fp .bg-line5 {
  margin: 0;
  padding: 0px;
  position: relative;
  background-image: url(../../images/special_contents/FacePolisher/20220915/line5.png);
  background-repeat: repeat-x;
  background-position: center top;
}

#fp .bg-line6 {
  margin: 0;
  padding: 95px 0px 90px;
  position: relative;
  background-image: url(../../images/special_contents/FacePolisher/20220915/line5.png);
  background-repeat: repeat-x;
  background-position: center bottom;
}

/* =========================
            sns
========================= */
.sns {
  margin: 0px;
  padding: 50px 0px 57px;
  background-image: url(../../images/special_contents/FacePolisher/20220915/bg_share.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.sns .sns-frame {
  margin: 0px auto;
  padding: 65px 0px 0px;
  width: 715px;
  height: 203px;
  position: relative;
  box-sizing: border-box;
  background-image: url(../../images/special_contents/FacePolisher/20220915/frame_share.png);
}

.sns .sns-frame2 {
  margin: 0px;
  padding: 0px;
}

.sns h3 {
  margin: 0px;
  padding: 0px;
  text-align: center;
  font-size: 3.6rem;
  line-height: 1;
  color: #a39161;
  font-weight: 600;
}

.sns .social-btn {
  margin-top: 20px;
  position: relative;
  z-index: 20;
  font-size: 0;
}

.fb-like>span {
  width: 162px !important;
}

.fb-like iframe {
  width: 162px !important;
}

.sns .all-notes {
  text-align: center;
  margin: 0px;
  padding: 40px 0px 0px;
  font-size: 1.2rem;
  line-height: 1;
}




#fp .open-menu-out {
  z-index: 110;
  /*transition: none;
  display: none;*/
  position: relative;
}

#fp .open-menu {
  position: fixed;
  top: 160px;
  right: -80px;
  transition: all 0.8s cubic-bezier(.165, .84, .44, 1);
}

#fp .open-menu-out .open-menu.open {
  right: -400px;
}

#fp .open-menu-out.view .open-menu {
  right: 0px;
}

#fp .open-menu .open-menu-in {
  transform: translateX(0%);
  transition: all 0.8s cubic-bezier(.165, .84, .44, 1);
}

#fp .open-menu.open .open-menu-in {
  transform: translateX(-320px);
}

#fp .open-menu .btn {
  position: relative;
  z-index: 80;
}

#fp .open-menu .btn a {
  opacity: 1;
  display: block;
  transition: unset;
}

#fp .open-menu .btn a span.open-text {
  display: none;
}

#fp .open-menu .btn a span.close-text {
  display: inline-block;
}

#fp .open-menu.open .btn a span.open-text {
  display: inline-block;
}

#fp .open-menu.open .btn a span.close-text {
  display: none;
}

#fp .open-menu .open-menu-list {
  margin: 0px;
  padding: 0px;
  position: absolute;
  top: 5px;
  right: -320px;
  /*right: 0px;*/
  z-index: 50;
  overflow: hidden;
  width: 320px;
  background-image: url(../../images/special_contents/FacePolisher/20230720/bg_menu_2.png);
  background-repeat: repeat-y;
  background-size: 100% auto;
}

#fp .open-menu.open .open-menu-list {
  box-shadow: 0px 0px 3px 2px rgba(0, 0, 0, 0.17);
}

#fp .open-menu .open-menu-frame1 {
  margin: 0px;
  padding: 0px;
  background-image: url(../../images/special_contents/FacePolisher/20230720/bg_menu_1.png);
  background-repeat: no-repeat;
  background-position: left top;
  background-size: 100% auto;
}

#fp .open-menu .open-menu-frame2 {
  margin: 0px;
  padding: 23px 0px 20px;
  background-image: url(../../images/special_contents/FacePolisher/20230720/bg_menu_3.png);
  background-repeat: no-repeat;
  background-position: left bottom;
  background-size: 100% auto;
}

#fp .open-menu .open-menu-list-iner {
  margin: 0px;
  padding: 0px;

}

#fp .open-menu .open-menu-list ul li {
  margin: 0px;
  padding: 0px;
  width: 100%;
}

#fp .open-menu .open-menu-list ul li a {
  margin: 0px;
  padding: 0px 24px 0px 24px;
  display: block;
  position: relative;
  color: #FFF;
  font-size: 1.4rem;
  line-height: 2rem;
  letter-spacing: -0.02em;
  text-align: left;
  text-decoration: none;
  opacity: 1;
  width: 100%;
  box-sizing: border-box;
}


#fp .open-menu .open-menu-list ul li a svg {
  font-size: 1.1rem;
  position: absolute;
  top: 50%;
  left: 20px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

#fp .open-menu .open-menu-list ul li a:hover {
  background-image: url(../../images/special_contents/FacePolisher/20230720/nav_current.png);
  background-repeat: no-repeat;
  background-position: center center;
}

#fp .open-menu .open-menu-list ul li a span {
  display: block;
  margin: 0px;
  padding: 14px 0px 14px 55px;
  border-bottom: 1px solid rgba(120, 99, 32, 0.5);
  position: relative;
  box-sizing: border-box;
}

#fp .open-menu .open-menu-list ul li:last-child a span {
  border-bottom: 0px none;
}

#fp .pagetop {
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 12px;
  left: 12px;
  z-index: 500;
  display: none;
}

#fp .pagetop .pagetop-link {
  margin: 0;
  padding: 0;
  width: 62px;
}

#fp .pagetop .pagetop-link a {
  margin: 0;
  padding: 35px 0px 0;
  width: 62px;
  height: 62px;
  box-sizing: border-box;
  border-radius: 50%;
  display: block;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  background-color: #000;
  color: #FFF;
  font-style: italic;
  font-weight: 600;
  background-image: url(../../images/sp/special_contents/FacePolisher/20230720/page_top2.svg);
  background-repeat: no-repeat;
  background-position: center top 16px;
  background-size: 19px auto;
  box-shadow: 0 0 12.1px 0.9px rgba(0, 0, 0, 0.15);
  text-decoration: none;
}

/* 予約特典対応追加 */
.label__subject {
  width: 285px;
  margin: 0 auto 15px;
}

.label__sp {
  width: 252px;
  margin: 17px auto 0;
}

.campaign-text__b {
  font-weight: bold;
  font-size: 1.6rem;
  text-align: center;
  margin-bottom: 15px;
}

/* 美的 */
.biteki__inner {
  padding: 80px 0;
}

.biteki__logo {
  width: 246px;
  margin: 0 auto;
}

.biteki__title {
  font-size: 2.4rem;
  line-height: 1;
  text-align: center;
  margin-top: 45px;
}

.biteki__line {
  width: 715px;
  margin: 20px auto 0;
}

.biteki__text {
  font-size: 2rem;
  line-height: 1.3;
  text-align: center;
  margin-top: 30px;
}

.biteki__img {
  width: 500px;
  margin: 30px auto 0;
}

.biteki__comment {
  width: 750px;
  background-color: #e6f1f0;
  font-size: 1.6rem;
  letter-spacing: 0.02em;
  line-height: 1.5;
  text-align: center;
  margin: 0 auto;
  padding: 40px 0;
}

.biteki-triangle {
  width: 0;
  height: 0;
  border-style: solid;
  border-right: 20px solid transparent;
  border-left: 20px solid transparent;
  border-bottom: 20px solid #e6f1f0;
  border-top: 0;
  margin: 20px auto 0;
}

.biteki__btn {
  width: 300px;
  background-color: #E4007F;
  line-height: 1.3;
  text-align: center;
  margin: 30px auto 0;
  position: relative;
}

.biteki__btn a {
  display: inline-block;
  width: 100%;
  height: 100%;
  color: #fff;
  font-size: 1.8rem;
  padding: 15px 0;
}

.biteki__btn a svg {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: 15px;
}

.end {
              width: 100%;
              height: 100%;
              position: absolute;
              top: 0px;
              left: 0px;
              display: flex;
              justify-content: center;
              align-items: center;
              background-color: rgba(100, 100, 100, 0.75);
              font-size: 1.6rem;
              line-height: 1;
              color: #FFF;
              z-index: 50;
            }

            .product-cart__btn .bcs {
              margin-top: 19px;
            }
            .release-date {
              font-size: 1.4rem;
              padding-top: 15px;
            }