@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;
}

.inview {
  opacity: 0;
}

.scrolled main {
  padding-top: calc(130px + var(--fsBannerHeight));
}

html {
  scroll-padding-top: 0px
}

#hc {
  margin: 0px;
  padding: 0px;
  color: #3f211f;
}

#hcimg {
  image-rendering: -webkit-optimize-contrast;
}

_::-webkit-full-page-media,
_:future,
:root #hcimg {
  /*safari*/
  image-rendering: auto;
}

footer {
  margin-top: 0px;
}

html {
  -webkit-font-smoothing: antialiased;
}

body {
  -webkit-font-smoothing: subpixel-antialiased;
}

main a:hover {
  text-decoration: none;
}

.cbg {
  margin: 0px;
  padding: 0px;
  overflow: hidden;
  position: relative;
}

.font-swear {
  font-family: swear-display, serif;
}

/* -------------------
        mv
------------------- */
.mv {
  margin: 0px;
  padding: 0px;
  overflow: visible;
  z-index: 20;
  position: relative;
}

.mv-in {
  margin: 0px;
  padding: 0px;
  width: 100%;
  position: relative;
}

.mv .mv-base {
  margin: 0px;
  padding: 0px;
}

.mv-title {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 5.15vw;
  left: 0;
  width: 54.5vw;
  text-align: center;
}

.mv-title img {
  width: 29.9vw;
}

.mv-lead__img {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 8.33vw;
  left: 0;
  width: 54.5vw;
  text-align: center;
}

.mv-lead__img img {
  width: 38.8vw;
}

.mv-lead {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 12.5vw;
  left: 0;
  width: 54.5vw;
  font-size: 1.35vw;
  line-height: 1.9;
  text-align: center;
  font-weight: 600;
  color: #f8f4eb;
}

.mv-lead__label {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 16.3vw;
  left: 0;
  width: 54.5vw;
  text-align: center;
}

.mv-lead__label img {
  width: 24.7vw;
}

.mv-lead__netes {
  width: 54.5vw;
  margin: 0;
  padding: 0;
  text-align: center;
  position: absolute;
  left: 0;
  top: 18.9vw;
}

.mv-lead__netes img {
  width: 12.3vw;
}

.mlead {
  width: 100%;
  margin: 0px;
  padding: 57px 0 70px;
  position: relative;
  z-index: 15;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/bg_lead.jpg);
  background-size: cover;
  background-position: bottom;
}

.mlead-text {
  color: #f8f4eb;
  font-size: 1.8rem;
  line-height: 1.8;
  text-align: center;
  margin-top: 30px;
  padding: 0px;
}

.mlead .mlead-link {
  margin: 0px;
  padding: 0px;
  font-size: 1.8rem;
  line-height: 1.7;
  text-align: center;
  font-weight: 600;
}

.mlead .mlead-link a {
  text-decoration: underline;
}

.mlead-obj1,
.mlead-obj2 {
  width: 10.6vw;
  position: absolute;
  top: 0;
}

.mlead-obj1 {
  left: 0;
}

.mlead-obj2 {
  right: 0;
}

.mlead-obj3 {
  width: 7.5vw;
  margin: 0 auto;
}

.mlead__img {
  width: 15.6vw;
  margin: 35px auto 0;
}

.m-line {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 31px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/kv_line.png);
  background-repeat: repeat-x;
  background-position: center top;
  background-size: contain;
  position: absolute;
  bottom: -14px;
  left: 0;
  z-index: 30;
}

.mlead .m-line {
  position: absolute;
  bottom: -21px;
  left: 0;
}

/* -------------------
        LINE
------------------- */
.line-obj1,
.line-obj3,
.line-obj4,
.line-obj5 {
  width: 9.47vw;
  position: absolute;
  z-index: 30;
}

.line-obj1 {
  top: -5px;
  left: 0;
}

.line-obj2 {
  width: 80.9vw;
  position: absolute;
  top: -5px;
  left: 50%;
  transform: translateX(-50%);
}

.line-obj3 {
  top: -5px;
  right: 0;
}

.line-obj4 {
  bottom: -10px;
  left: 0;
}

.line-obj5 {
  bottom: -10px;
  right: 0;
}

.line {
  background-color: #ebe5d2;
  padding: 70px 0px 53px;
  margin: 0;
  position: relative;
  z-index: 30;
}

.line-r {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 20px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/line_line.png);
  background-repeat: repeat-x;
  background-position: center top;
  background-size: contain;
  position: absolute;
  top: -17px;
  left: 0;
}

.line-in {
  margin: 15px auto 0;
  padding: 70px 0px 0px;
  width: 720px;
  height: 305px;
  position: relative;
  box-sizing: border-box;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/bg_line.png);
  background-size: cover;
  background-repeat: no-repeat;
  color: #65001d;
}

.line h2 {
  margin: 0px;
  padding: 0px;
  font-size: 2.6rem;
  line-height: 1.5;
  text-align: center;
}

.line .text {
  margin: 0px;
  padding: 18px 0px 0px;
  font-size: 1.4rem;
  text-align: center;
}

.line .btn {
  margin: 0px;
  padding: 21px 0px 0px;
  text-align: center;
}

.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;
}

.line .btn a:before {
  content: "";
  background: url(../../images/special_contents/HolidayCollection/20211014/icon_line.png) 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;
}

.all-notes {
  text-align: left;
  margin: 0px auto;
  padding: 0px 0px 30px;
  font-size: 1rem;
  line-height: 1;
  width: 1030px;
}

/* -------------------
        SNS
------------------- */
.sns {
  margin: 0px;
  padding: 80px 0px 70px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/bg_share.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  position: relative;
}

.sns .l-line {
  margin: 0;
  padding: 0;
  width: 100%;
  height: 20px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/line_line.png);
  background-repeat: repeat-x;
  background-position: center top;
  background-size: contain;
  position: absolute;
  top: -1px;
  left: 0;
}

.sns .sns-frame {
  margin: 0px auto;
  padding: 65px 0px 0px;
  width: 720px;
  height: 261px;
  position: relative;
  box-sizing: border-box;
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/frame_share.png);
  background-size: cover;
  background-repeat: no-repeat;
}

.sns h3 {
  margin: 0px;
  padding: 0px;
  text-align: center;
  font-size: 5rem;
  line-height: 1.34;
  color: #65001d;
  font-weight: 900;
  font-style: italic;
}

.sns .social-btn {
  margin-top: 25px;
  position: relative;
  z-index: 20;
  font-size: 0;
}

.fb-like>span {
  width: 162px !important;
}

.fb-like iframe {
  width: 162px !important;
}


/* 20241003 */
/* 背景 */


.campaign-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_campaign_k.png);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 69px 0 86px;
  position: relative;
}
/* -------------------
        共通
------------------- */
.common__lead {
  box-sizing: content-box;
  color: #fff;
  font-size: 2.6rem;
  font-weight: 600;
  line-height: 1.3;
  text-align: center;
  padding: 0px;
  position: absolute;
  top: 50px;
}

.accordion__wrapper {
  text-align: center;
  margin: 0 auto;
}

.accordion__title {
  font-size: 1.6rem;
  line-height: 1;
}

.accordion {
  padding: 16px 0px;
  font-weight: 400;
  display: block;
  position: relative;
  text-decoration: none;
  border-top: 1px solid #3d1a3a;
  border-bottom: 1px solid #3d1a3a;
  color: #3d1a3a;
}

.accordion-more {
  border-bottom: 1px solid #fff;
  padding-bottom: 30px;
}

.data {
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
}

.name-and-price {
  color: #fff;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: normal;
  /* padding: 15px 0px 0px; */
  /* margin-top: 29px; */
}

.price {
  margin: 0px;
  padding: 8px 0px 0px;
  font-size: 1.4rem;
  line-height: 1rem;
  font-weight: 400;
  text-align: center;
}

.btn--cart {
  margin: 0px;
  padding: 20px 0px 0px;
  text-align: center;
}

.btn--cart a {
  width: 150px;
  display: inline-block;
  background: #a18b4f;
  color: #FFF;
  cursor: pointer;
  font-size: 1.4rem;
  line-height: 1.4rem;
  text-align: center;
  text-decoration: none;
  margin: 0px;
  padding: 14px 0px;
  position: relative;
}

.btn--cart a span svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  font-size: 1rem;
}

.bcs {
  margin: 0px;
  padding: 14px 0px 0px;
  color: #0D0721;
}

.bbg {
  padding: 14px 0px;
  text-align: center;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #eee;
  width: 215px;
  border: 2px solid #a18b4f;
}

.link--detail {
  margin: 11px 0px 0px;
  padding: 0px;
}

.link--detail a {
  margin: 0px;
  padding: 0px 20px 5px 2px;
  text-align: center;
  color: #fff;
  font-size: 1.4rem;
  line-height: 1;
  border-bottom: 1px solid #fff;
  text-decoration: none;
  position: relative;
  display: inline-block;
}

.link--detail a:after {
  margin: 0px;
  padding: 0px;
  content: "";
  position: absolute;
  top: 0px;
  right: 0px;
  width: 14px;
  height: 14px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/link_arrow.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.kit-detail__wrapper {
  color: #001d27;
}

.kit-detail--g {
  width: 197px;
  background-color: #001d27;
  /* padding: 20px 0 0 30px ; */
}

.kit-text {
  width: 248px;
  min-height: 156px;
  color: #fff;
  text-align: center;
  margin: 19px auto 0;
  padding: 20px 0;
}

.kit-detail--r {
  width: 248px;
  background-color: #8f1123;
}

.kit-detail--b {
  background-color: #070627;
}

.kit-t {
  font-size: 1.2rem;
  line-height: 1.4;
  margin-top: 6px;
  padding: 0 15px;
}

.common-icon {
  font-size: 3rem;
  position: absolute;
  top: 52%;
  right: 3px;
  transform: translateY(-52%);
}

.plus {
  display: block;
}

.minus {
  display: none;
}

.open h3 a .plus {
  display: none;
}

.open h3 a .minus {
  display: block;
}

.line-r {
  z-index: 20;
}

.title__s {
  color: #a18b4f;
  font-size: 6rem;
  font-weight: 600;
  letter-spacing: 0.02em;
  line-height: 1;
  text-align: center;
}

.title__l {
  color: #a18b4f;
  letter-spacing: 0.02em;
  line-height: 1;
  font-size: 8rem;
  font-weight: 600;
  position: absolute;
  top: 9vw;
  left: 18vw;
}

.obj {
  position: absolute;
}

.obj-b1,
.obj-b3,
.obj-b4,
.obj-b5 {
  width: 9.47vw;
  z-index: 40;
}

.obj-b1 {
  top: 0;
  left: 0;
}

.obj-b2 {
  top: 0;
}

.obj-b3 {
  top: 0;
  right: 0;
}

.obj-b4 {
  bottom: 0;
  left: 0;
}

.obj-b5 {
  bottom: 0;
  right: 0;
}

.accordion__wrapper {
  width: 535px;
  text-align: center;
  margin: 0 auto;
}

.rel {
  display: block;
  position: relative;
}

.limited {
  position: absolute;
  top: 2px;
  right: 0px;
  width: 76px;
  height: 76px;
  background-color: #a18b4f;
  border-radius: 50%;
  z-index: 15;
  padding: 3px;
  box-sizing: border-box;
}

.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;
  font-size: 1.8rem;
  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%);
}

.limited--s {
  width: 64px;
  height: 64px;
}

.ltext--s {
  font-size: 1.5rem;
}




/* -----------------------
    fragrance-block
----------------------- */
.fragrance-block {
  background-image: linear-gradient(#f5efe0 40%, #f0e8d7 60%, #e4d7bd 90%);
  padding: 72px 0;
  position: relative;
  z-index: 20;
}

.fragrance__inner {
  width: 575px;
  margin: 0 auto;
}

.fragrance-accordion__wrapper {
  color: #3d1a3a;
  margin-top: 21px;
}

.fragrance-accordion {
  border-top: 1px solid #3d1a3a;
  border-bottom: 1px solid #3d1a3a;
  color: #3d1a3a;
}

.fragrance-accordion__title {
  font-size: 1.8rem;
}

.fragrance__lead {
  margin-top: 54px;
  font-size: 2.6rem;
  line-height: 1.3;
  letter-spacing: -0.02em;
}

.fragrance__text {
  font-size: 1.8rem;
  line-height: 1.5;
  margin-top: 30px;
}

.fragrance-accordion-icon {
  font-size: 2.5rem;
  text-decoration: none;
  position: absolute;
  top: 52%;
  right: 95px;
  transform: translateY(-52%);
  -webkit-transform: translateY(-52%);
  font-weight: 400;
  display: inline-block;
}

.open .common-icon-plus {
  display: none;
}

.open .common-icon-minus {
  display: block;
}

.open .fragrance-accordion {
  border-bottom: none;
}


.m-line--fragrance {
  bottom: -9px;
  z-index: 30;
}

.fragrance__img {
  width: 533px;
  margin: 38px auto 0;
}

.fragrance-accordion-more {
  border-bottom: 1px solid #3d1a3a;
}

.l-line--fragrance {
  top: -2px;
}

.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;
}

/* ----------------------
    reservation-block
---------------------- */
.reservation-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241107/bg_hc.jpg);
  background-repeat: repeat;
  background-size: 100% auto;
  margin: 0px;
  padding: 60px 0 71px;
  position: relative;
}

.ac-reservation-block {
  width: 810px;
  margin: 0px auto;
  padding: 0px;
  position: relative;
}

.ac-reservation__lead {
  position: absolute;
  right: 0;
}

.ac-img {
  width: 463px;
  position: absolute;
  top: 0px;
  left: 0px;
}

.data--ac {
  box-sizing: content-box;
  color: #fff;
  text-align: center;
  margin: 0px;
  padding: 150px 0px 0px 532px;
}

.ac-reservation__name {
  margin-top: 20px;
}

.kit-accordion__wrapper {
  color: #fff;
  margin-top: 25px;
}

.kit-accordion {
  /* margin-top: 38px; */
  margin-top: 58px;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
  color: #fff;
}

.kit__item {
  font-size: 1.4rem;
  line-height: 1.7;
  margin-top: 30px;
}

.kit__item:not(:first-child) {
  margin-top: 25px;
}

.kit__list {
  text-align: left;
}

.limited--ac1 {
  top: 30px;
  right: 40px;
}

.pb {
  width: 744px;
  height: 226px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_campaign.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin: 45px auto 0;
  padding: 50px 75px;
  position: relative;
}

.pb__title {
  width: fit-content;
  color: #a4915d;
  font-size: 3.6rem;
  font-weight: 600;
  line-height: 1;
  text-align: center;
  padding: 0px 30px;
  position: relative;
  box-sizing: border-box;
  margin: 0 auto;
}

.pb__title::before,
.pb__title::after {
  margin: 0px;
  padding: 0px;
  width: 20px;
  height: 21px;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
}

.pb__title::before {
  content: "";
  background-image: url(../../images/special_contents/FacePolisher/20220915/t_obj1.png);
  background-repeat: no-repeat;
  left: 0px;
}

.pb__title::after {
  content: "";
  background-image: url(../../images/special_contents/FacePolisher/20220915/t_obj2.png);
  background-repeat: no-repeat;
  right: 0px;
}

.pb__in {
  display: flex;
}

.pb__img {
  width: 128px;
  margin-top: -65px;
}

.pb__text {
  color: #3d3027;
  font-size: 2rem;
  line-height: 1.3;
  padding-top: 22px;
}

.notes {
  color: #3d3027;
  font-size: 1.4rem;
}

.obj-ac1 {
  width: 403px;
  top: 0;
  left: 12vw;
}

.obj-ac2 {
  width: 305px;
  top: -9px;
  right: 14vw;
}

.obj-ac3 {
  width: 397px;
  bottom: 77px;
  left: 0;
}

.obj-ac4 {
  width: 596px;
  bottom: -42px;
  right: 0;
}

/* ----------------------
    day7-block
---------------------- */
.day7-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_ac.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 64px 0 114px;
  position: relative;
}

.day7__in {
  width: 776px;
  margin: 20px auto 0;
  padding: 0px;
  position: relative;
}

.label__ac {
  width: 11vw;
  margin: 15px auto 0;
}

.day7__lead {
  left: 0;
}

.ac-day7-img {
  width: 468px;
  position: absolute;
  top: -70px;
  right: 0;
}

.data--ac7 {
  color: #fff;
  padding: 130px 433px 0 0;
}

.limited--day7 {
  top: 50px;
  right: 27px;
}

.limited--ac7 {
  top: 57px;
}

.ac-notes {
  display: block;
  color: #fff;
  font-weight: bold;
  position: absolute;
  top: 275px;
  right: 60px;
}

.store__list {
  margin-top: 30px;
}

/* ---------------------
        sc-block
--------------------- */
.sc-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_sc.png);
  background-repeat: no-repeat;
  background-size: cover;
  background-position: center;
  margin: 0px;
  padding: 113px 0 96px;
  position: relative;
}

.sc__in {
  width: 950px;
  min-height: 450px;
  margin: 0 auto;
  position: relative;
}

.label__sc {
  width: 16vw;
  margin: 7px auto 0;
}

.sc-accordion__wrapper {
  width: 723px;
  margin: 45px auto 0;
}

.sc-accordion {
  margin-top: 38px;
  border-top: 1px solid #9a8a5b;
  border-bottom: 1px solid #9a8a5b;
  color: #3d1a3a;
}

.sc__lead {
  color: #3d1a3a;
  text-align: center;
  position: absolute;
  top: 40px;
}

.sc__lead1 {
  font-size: 2.4rem;
  line-height: 1;
  left: 11%;
  transform: translateX(0%);
}

.sc__lead2 {
  font-size: 4.4rem;
  letter-spacing: -0.05em;
  line-height: 1.2;
  top: 73px;
}

.sc__text {
  font-size: 1.6rem;
  font-weight: 600;
  text-align: center;
  line-height: 1.6;
  padding: 150px 350px 0 0;
}

.tax {
  font-size: 1.8rem;
}

.sc-img {
  position: absolute;
  width: 344px;
  top: 50px;
  right: 0;
}

.sc-accordion__in {
  line-height: 1.7;
}

.sc-accordion-more {
  border-bottom: none;
  padding-bottom: 0;
}

.sc-accordion__title,
.sc-accordion-more__in {
  background-color: #f6f0e4;
}

.sc-comment__list {
  text-align-last: left;
  padding: 25px 17px 30px 17px;
}

.limited--sc {
  top: -32px;
  right: 45px;
}

/* ---------------------
      il-block
--------------------- */
.il-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_il.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 86px 0 136px;
  position: relative;
}

.sub-title {
  display: block;
  font-size: 3.6rem;
}

.frame__il {
  width: 1000px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_step.png);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin: 53px auto 0;
  position: relative;
}

.label__il {
  width: 11vw;
  margin: 22px auto 0;
}

.notes-il {
  width: 972px;
  color: #fff;
  font-size: 1.2rem;
  margin: 35px auto 0;
}

.step-block-in {
  margin: 0 auto;
  padding: 61px 0px 100px;
  width: 812px;
  position: relative;
  box-sizing: border-box;
  /* background-color: transparent; */
}

.step-block-in2 {
  margin: 0 auto;
  padding: 30px 0px 0px 376px;
  position: relative;
  min-height: 382px;
}

.step-block h4 {
  padding: 24px 0px 0px;
  text-align: center;
  box-sizing: border-box;
  color: #65001d;
  z-index: 5;
  position: relative;
}

.step-block .text {
  padding: 24px 0px 0px;
  font-size: 2.6rem;
  line-height: 1.3;
  font-weight: 600;
  text-align: center;
  z-index: 5;
  position: relative;
  color: #65001d;
  letter-spacing: -0.02em;
}

.step-block .img {
  margin: 0px;
  padding: 0px;
  position: absolute;
  top: 0px;
  left: 0px;
  box-sizing: border-box;
  width: 372px;
}

.step-block .img .rel {
  margin: 0px;
  padding: 0px;
  position: relative;
  display: block;
}

.limited--step {
  top: 47px;
  right: 22px;
}

.step-block .data {
  margin: 0px;
  padding: 14px 0px 0px;
}

.step-block .data .name-and-price {
  margin: 0px;
  padding: 0px;
  display: block;
  text-align: center;
  color: #3d1a3a;
}

.step-block .data h5 {
  margin: 0px;
  padding: 0px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: normal;
}

.step-block .data .price {
  margin: 0px;
  padding: 0px;
  font-size: 1.4rem;
  line-height: 1.4;
  font-weight: 400;
  letter-spacing: normal;
}

.step-block .data .btn,
.step-block .data .bcs {
  margin: 0px;
  padding: 16px 0px 0px;
  text-align: center;
}

.step-block .data .btn a {
  margin: 0px;
  padding: 10px 0px;
  text-align: center;
  color: #FFF;
  font-size: 1.4rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #a18b4f;
  width: 150px;
  cursor: pointer;
}

.step-block .data .btn a svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 7px;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  font-size: 1rem;
}

.step-block .data .bcs .bbg {
  margin: 0px;
  padding: 14px 0px;
  text-align: center;
  font-size: 1.3rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #FFF;
  width: 215px;
  border: 1px solid #a18b4f;
}

.step-block .data .link {
  margin: 10px 0px 0px;
  padding: 0px;
}

.step-block .data .link a {
  margin: 0px;
  padding: 0px 20px 5px 2px;
  text-align: center;
  color: #3d1a3a;
  font-size: 1.4rem;
  line-height: 1;
  border-bottom: 1px solid #3d1a3a;
  text-decoration: none;
  position: relative;
  display: inline-block;
}

.link--step a:after {
  margin: 0px;
  padding: 0px;
  content: "";
  position: absolute;
  top: 0px;
  right: 0px;
  width: 14px;
  height: 14px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/link_step_arrow.svg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
}


/* .step-block .small-size {
  margin: 30px auto 0;
  padding: 0px;
  background: #fff4c1;
  width: 526px;
  position: relative;
}

.step-block .small-size:before {
  content: "";
  background-image: url(../../images/special_contents/mango_kiwi_collection/20240701/ssize_line1.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
  position: absolute;
  top: 0px;
  left: 0px;
  width: 100%;
  height: 10px;
}

.step-block .small-size:after {
  content: "";
  background-image: url(../../images/special_contents/mango_kiwi_collection/20240701/ssize_line2.png);
  background-repeat: no-repeat;
  background-position: center top;
  background-size: 100% 100%;
  position: absolute;
  bottom: 0px;
  left: 0px;
  width: 100%;
  height: 10px;
}

.step-block.step3 .small-size {
  background: #ebf2d7;
} */

.bgt {
  position: absolute;
  display: inline-block;
}

.step-block.step1 .bgt {
  width: 72px;
  top: 116px;
  right: 60px;
  z-index: 1;
}

.step-block.step2 .bgt {
  width: 117px;
  top: 120px;
  right: 60px;
}

.step-block.step3 .bgt {
  width: 111px;
  top: 118px;
  right: 23px;
}

.step-block.step4 .bgt {
  width: 108px;
  top: 115px;
  right: 38px;
}

.step-tjp {
  display: block;
  margin: 0px;
  padding: 15px 0px 0px;
  font-size: 4.4rem;
  line-height: 1;
  font-weight: 600;
}

/* .step-ten {
  display: block;
  margin: 0px;
  padding: 2px 0px 0px;
  font-size: 1.5rem;
  line-height: 1;
  letter-spacing: 0.1em;
} */

.step-tbg {
  margin: 0px auto;
  padding: 0px;
  font-size: 2rem;
  line-height: 1;
  font-weight: 600;
  display: flex;
  align-items: center;
  text-align: center;
  width: 77px;
}

.step-tbg:before,
.step-tbg:after {
  border-top: 1px solid #65001d;
  content: "";
  flex-grow: 1;
}

.step-tbg:before {
  margin-right: 6px;
}

.step-tbg::after {
  margin-left: 6px;
}

.link--step {
  position: relative;
}

.obj-k1,
.obj-k2 {
  width: 8.5vw;
  top: 0;
  z-index: 10;
}

.obj-k1 {
  left: 0;
}

.obj-k2 {
  top: 0;
  right: 0;
}

/* ステップスライダー */
.step-slider .slick-dots {
  bottom: 50px;
}

.step-slider .slick-dots li button {
  display: block;
  line-height: 0;
  width: 8px;
  height: 8px;
  background: #95a5a5;
  width: 8px;
  color: transparent;
  font-size: 0;
  outline: none;
  padding: 0;
  border-radius: 50%;
}

.step-slider .slick-dots>li>button::before {
  background-color: transparent;
}

.step-slider .slick-dots .slick-active button,
.step-slider.slick-dots li button:hover {
  background: #033547;
}

.slick-arrow.slick-prev::after,
.slick-arrow.slick-next::after {
  display: none;
}

.step__in:before,
.step__in::after {
  content: "";
  max-width: 1005px;
  height: 100px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

.step__in:before {
  background-image: url(../../images/special_contents/RoseFaceCareLine/20220811/line_frame_top.png);
  background-repeat: no-repeat;
  top: 0%;
}

.step__in::after {
  background-image: url(../../images/special_contents/RoseFaceCareLine/20220811/line_frame_top.png);
  background-repeat: no-repeat;
  bottom: 0%;
}

.step-slider .step-prev {
  left: 0;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/step_arrow_prev.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
}

.step-slider .step-next {
  right: 0;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/step_arrow_next.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
}

/* ----------------
    other-block
---------------- */
.other-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_other.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 50px 0 60px;
  position: relative;
}

.other__title {
  margin-top: 31px;
}

/* アイテムスライダー */
.item-slider {
  margin: 41px auto 0;
  padding: 0px;
  /* width: 980px; */
  width: 745px;
  position: relative;
}

.item-slider ul {
  margin: 0px auto;
  padding: 0px 0 35px;
  text-align: center;
  position: relative;
  width: 745px;
  overflow: visible;
}

.item-slider ul li {
  display: inline-block;
  margin: 0px;
  padding: 0px 0px 2px;
  width: 320px;
  vertical-align: top;
  position: relative;
}

.catchphrase {
  color: #fff;
  font-size: 2.2rem;
  font-weight: 400;
  line-height: 1.2;
  padding: 0px;
  display: flex;
  text-align: center;
  align-items: center;
  justify-content: center;
}

.item-slider ul li .img {
  margin: 25px auto 0px;
  padding: 0px;
  position: relative;
  width: 100%;
  height: 205px;
  text-align: center;
}

.item-slider ul li .img a {
  display: block;
  width: 100%;
  z-index: 10;
  position: relative;
}

.item-slider ul li .img img {
  display: inline;
  width: 205px;
  height: auto;
  z-index: 10;
  position: absolute;
  top: 0px;
  left: 50%;
  transform: translateX(-50%);
  -webkit- transform: translateX(-50%);
}

.limited--item-slider {
  /* top: -8px;
  left: -100px; */
  top: 0px;
  left: -75px;
}

.item-slider ul li .img .ribon .date {
  font-size: 2.3rem;
}

.item-slider ul li .img .ribon .s {
  font-size: 1.7rem;
}

.item-slider .name-and-price {
  margin-top: 0;
}


.item-slider ul li .notes {
  margin: 0px;
  padding: 6px 0px 0px;
  font-size: 1.2rem;
  line-height: 1;
}

.item-slider ul li .btn,
.item-slider ul li .bcs {
  margin: 0px;
  padding: 14px 0px 0px;
}

.item-slider ul li .btn a {
  margin: 0px;
  padding: 14px 0px;
  text-align: center;
  color: #FFF;
  font-size: 1.2rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #a18b4f;
  width: 150px;
}

.item-slider ul li .btn a span svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 10px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  font-size: 1rem;
}

.item-slider ul li .bcs .bbg {
  margin: 0px;
  padding: 14px 0px;
  text-align: center;
  font-size: 1.1rem;
  line-height: 1;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #FFF;
  width: 150px;
  border: 1px solid #a1976a;
}

.item-slider .slick-arrow {
  position: absolute;
  top: 185px;
  width: 14px;
  height: 24px;
  font-size: 0;
  cursor: pointer;
  outline: none;
  z-index: 50;
}

/* .item-slider.item3 .slick-arrow {
  display: none;
} */

.item-slider .other-prev {
  width: 22px;
  height: 42px;
  left: -80px;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/other_arrow_prev.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
  cursor: pointer;
}

.item-slider .other-next {
  width: 22px;
  height: 42px;
  right: -80px;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/other_arrow_next.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  cursor: pointer;
  opacity: 1;
}

.item-slider .slick-prev:after {
  display: none;
}

.item-slider .slick-next:after {
  display: none;
}

.item-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;
}

.item-slider .slick-dots li {
  display: inline-block;
  margin: 0 5px;
  width: auto;
}

.item-slider .slick-dots li button {
  display: block;
  line-height: 0;
  width: 8px;
  height: 8px;
  background: #676e4d;
  border: 0;
  border-radius: 50%;
  color: transparent;
  cursor: pointer;
  font-size: 0;
  outline: none;
  padding: 0;
}

.item-slider .slick-dots .slick-active button,
.item-slider .slick-dots li button:hover {
  background: #a18b4f;
}

.item-slider .slick-dots>li>button::before {
  background-color: transparent;
}

/* -----------------
      sk-block
----------------- */
.sk {
  position: relative;
}

.mv-base--sk {
  padding-bottom: 15px;
}

/* -----------------
  sk-item-block1
----------------- */
.sk__in {
  width: 868px;
  margin: 0 auto;
  position: relative;
}

.label__sk {
  width: 11vw;
  margin: 0 auto;
}

.label__1017 {
  margin: 22px auto 0;
}

.sk__lead {
  width: 100%;
  margin-top: 37px;
  padding: 0px;
}

.data--sk1 {
  width: 453px;
  box-sizing: content-box;
  color: #fff;
  text-align: center;
  margin: 0px;
  padding: 110px 0px 0px 502px;
}

.m-line--sk1 {
  bottom: -14px;
  z-index: 10;
}

.sk-item-block1 {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_sk_item.png);
  background-repeat: no-repeat;
  background-size: auto;
  background-position: center center;
  margin: 0px;
  padding: 63px 0 66px;
  position: relative;
  z-index: 50;
}

.sk1-img {
  width: 534px;
  position: absolute;
  top: 250px;
  left: -20px;
}

/* -----------------
  sk-item-block2
----------------- */
.sk2-img {
  width: 443px;
  position: absolute;
  top: 70px;
  right: 0;
}

.sk-item-block2 {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_sk_item2.jpg);
  background-repeat: no-repeat;
  background-size: 100% 100%;
  margin: 0px;
  padding: 54px 0 85px;
  position: relative;
}

.sk2__lead {
  top: 130px;
}

.sk2__data {
  padding: 180px 537px 0 0;
}

.kit-text--sk-item2 {
  background-color: #13193b;
}

.limited--sk {
  top: 54px;
  right: 24px;
}



/* campaign-block */
.label__campain {
  width: 11vw;
  margin: 10px auto 0;
}

.sc__text--l {
  font-size: 3.6rem;
}

.campaign-present-block {
  width: 675px;
  margin: 0 auto;
  position: relative;
}

.campaign-t1 {
  width: 400px;
  font-size: 2rem;
  line-height: 1.5;
  text-align: center;
  margin-top: 31px;
}

.campaign-t2 {
  width: 400px;
  text-align: center;
  font-size: 3.6rem;
  line-height: 1.1;
  letter-spacing: -0.0em;
  margin-top: 17px;
}

.campaign__text {
  width: 400px;
  font-size: 1.6rem;
  line-height: 1.6;
  text-align: center;
  margin-top: 13px;
}

.ls__warapper {
  width: 723px;
  background-color: #f6f0e4;
  margin: 63px auto 0;
  padding: 22px 0 50px 80px;
  position: relative;
}

.ls__warapper::before {
  top: -8px;
}

.ls__warapper::after {
  bottom: -8px;
}

.ls-t1 {
  font-size: 1.7rem;
  line-height: 1.4;
  padding-left: 25px;
}

.ls-t2 {
  font-size: 2.2rem;
  line-height: 1.4;
  padding-left: 25px;
}

.ls-t2 span {
  font-size: 1.6rem;
}

.ls-obj {
  width: 97px;
  position: absolute;
  top: -8px;
  left: -20px;
}

.img-charm {
  width: 180px;
  position: absolute;
  top: 10px;
  right: 0;
}

.img-ls {
  width: 41px;
  position: absolute;
  top: 40px;
  right: 90px;
}

.limited--campaign {
  top: 10px;
  right: -40px;
}

.ribon_c {
  width: 162px;
}

/* ----------------
    hc-block
---------------- */
.hc-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241107/bg_hc.jpg);
  background-repeat: repeat;
  background-size: 100% auto;
  margin: 0px;
  padding: 67px 0 100px;
  position: relative;
}

.hc__in {
  width: 1005px;
  margin: 40px auto 0;
  position: relative;
}

.label__hc {
  width: 216px;
  margin: 16px auto 0;
}

.hc__lead {
  width: 500px;
  top: 22px;
  right: 0;
}

.hc-img {
  width: 445px;
  position: absolute;
  top: 0;
  left: 0;
}

/* .limited--ac {
  top: 28px;
  right: 10px;
} */

.data--hc {
  width: 453px;
  box-sizing: content-box;
  color: #fff;
  text-align: center;
  margin: 0px;
  padding: 110px 0px 0px 522px;
}

.item2 {
  width: 1051px;
  background-color: #013b4a;
  margin-top: 70px;
  padding: 69px 0;
}

.item2::before,
.item2::after {
  content: "";
  width: 1051px;
  height: 33px;
  position: absolute;
  left: 0px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/line_tmg.png);
  background-repeat: repeat-x;
  background-size: contain;
}

.item2::before {
  top: -18px;
}

.item2::after {
  bottom: -18px;
}

.item-slider .tmg__list {
  width: 790px;
  margin-top: 20px;
}

#hc.item-slider .tmg__list .tmg__item {
  width: 265px;
}

.kit-text--item2 {
  width: 195px;
  min-height: 156px;
}

/* .item-slider ul .kit-tm {
  font-size: 1.2rem;
} */

.notes-item2 {
  width: 1051px;
}

.line--hc {
  top: -7px;
}
.item-slider.item2 ul li .img {
  margin-top: 0;
}

.item2 .limited--item-slider {
  top: 10px;
}

.item-slider .hc-prev {
  width: 22px;
  height: 42px;
  top: 370px;
  left: 52px;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241107/hc_arrow_prev.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
  cursor: pointer;
}

.item-slider .hc-next {
  width: 22px;
  height: 42px;
  top: 370px;
  right: 52px;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241107/hc_arrow_next.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  cursor: pointer;
  opacity: 1;
}

/* og-block */
.og-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/bg_il.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 76px 0 104px;
  position: relative;
}
.label__og {
  width: 14vw;
  margin: 30px auto 0;
}

.item3 {
  width: 1051px;
  background-color: #013548;
  margin-top: 55px;
  padding: 60px 0 50px;
}

.item3::before,
  .item3::after {
    background-image: none;
  }

/* -----------------
    movie-block
----------------- */
.movie-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20240920/bg_lead.jpg);
  background-repeat: no-repeat;
  background-size: cover;
  margin: 0px;
  padding: 39px 0 76px;
  position: relative;
}

.movie .movie-rel {
  margin: 55px auto 0;
  padding: 0px;
  width: 975px;
  position: relative;
  box-sizing: border-box;
}

.movie .movie-area-in {
  position: relative;
  width: 100%;
  padding-top: 56.25%;
}

.movie .movie-area-in iframe {
  position: absolute;
  top: 0;
  right: 0;
  width: 100% !important;
  height: 100% !important;
}

.movie .mv-obj1 {
  margin: 0;
  padding: 0;
  position: absolute;
  top: 30px;
  left: 57px;
  width: 164px;
  z-index: 10;
}

.movie .mv-obj2 {
  margin: 0;
  padding: 0;
  position: absolute;
  top: -160px;
  right: 245px;
  width: 81px;
  z-index: 10;
}

.movie .mv-obj3 {
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 49px;
  left: 0px;
  width: 161px;
  z-index: 10;
}

.movie .mv-obj4 {
  margin: 0;
  padding: 0;
  position: absolute;
  bottom: 38px;
  right: 4px;
  width: 168px;
  z-index: 10;
}

.youtube {
  display: block;
  width: 765px;
  height: 446px;
  margin: 41px auto 0;
}

/* -----------------
        gift
----------------- */
.gift {
  margin: 0px;
  padding: 110px 0px;
  background-image: url(../../images/special_contents/HolidayCollection2022/20221005/bg_gift.jpg);
  background-repeat: repeat;
  position: relative;
  z-index: 10;
}

.gift-block:before {
  content: "";
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2023/20231004/gift_top.png);
  background-size: 100% 100%;
  margin: 0px;
  padding: 0px;
  width: 516px;
  height: 32px;
  position: absolute;
  left: -8px;
  top: -26px;
}

.gift-block:after {
  content: "";
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2023/20231004/gift_bt.png);
  background-size: 100% 100%;
  margin: 0px;
  padding: 0px;
  width: 517px;
  height: 21px;
  position: absolute;
  left: -8px;
  bottom: -14px;
}

.gift .gift-list {
  margin: 0px auto;
  padding: 0px;
  width: 1038px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.gift .gift-list .gift-block {
  width: 503px;
  margin: 0px;
  padding: 55px 0px 65px;
  background-color: #FFF;
  box-shadow: 0 0 4.6px 0.5px rgba(0, 0, 0, 0.1);
  position: relative;
}

.gift .gift-list .gift-block .text {
  margin: 0px;
  padding: 0px;
  font-size: 2rem;
  line-height: 1.5;
  color: #603b18;
  text-align: center;
}

.gift .gift-list .gift-block h3 {
  margin: 0px;
  padding: 20px 0px 0px;
  font-size: 4.8rem;
  line-height: 1;
  color: #603b18;
  text-align: center;
}

.gift .gift-list .gift-block .img {
  margin: 0px auto;
  padding: 20px 0px 0px;
  width: 370px;
}

.gift .gift-list .gift-block .btn {
  margin: 0px;
  padding: 40px 0px 0px;
  text-align: center;
}

.gift .gift-list .gift-block .btn a {
  margin: 0px;
  padding: 14px 0px;
  text-align: center;
  color: #FFF;
  font-size: 1.4rem;
  line-height: 1.4rem;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #b3a570;
  width: 215px;
  cursor: pointer;
}

.gift .gift-list .gift-block .btn a span svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  -webkit- transform: translateY(-50%);
  font-size: 1.1rem;
}

.tmg__in:before,
.tmg__in::after {
  content: "";
  /* max-width: 1005px; */
  height: 33px;
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
}

.tmg__in:before {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/line_tmg.png);
  background-repeat: repeat-x;
  top: 0%;
}

.tmg__in::after {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/line_tmg.png);
  background-repeat: repeat-x;
  bottom: 0%;
}

.item-slider .og-prev {
  left: 0;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/gift_arrow_prev.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
}

.item-slider .og-next {
  right: 0;
  background-repeat: no-repeat;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/gift_arrow_next.svg);
  background-position: 0px 0px;
  background-size: 100% 100%;
  transition: unset;
  border-width: 0px;
  border-style: none;
  opacity: 1;
}

/* .step-block-in::before,
.step-block-in::after {
  content: "";
  width: 998px;
  height: 95px;
  position: absolute;
  left: 0px;
}

.step-block-in::before {
  top: 0;
  background-repeat: no-repeat;
  background-size: 100% 100%;
}

.step-block-in::after {
  bottom: 0;
  background-repeat: no-repeat;
  background-size: 100% 100%;
} */


.ls__warapper::before,
.ls__warapper::after {
  content: "";
  width: 362px;
  height: 17px;
  position: absolute;
  left: 0px;
  background-image: url(../../images/special_contents/HolidayCollection2024/20241003/line_c.png);
  background-repeat: repeat-x;
  background-size: 100% 100%;
}

.ls__warapper::before {
  top: 0;
}

/* MENUアンカー */
.open-menu-out {
  z-index: 110;
  position: relative;
}

.open-menu {
  position: fixed;
  top: 160px;
  right: -80px;
  transition: all 0.8s cubic-bezier(.165, .84, .44, 1);
}

.open-menu-out .open-menu.open {
  right: -400px;
}

.open-menu-out.view .open-menu {
  right: 0px;
}

.open-menu .open-menu-in {
  transform: translateX(0%);
  transition: all 0.8s cubic-bezier(.165, .84, .44, 1);
}

.open-menu.open .open-menu-in {
  transform: translateX(-320px);
}

.open-menu .btn {
  position: relative;
  z-index: 80;
}

.open-menu .btn a {
  opacity: 1;
  display: block;
  transition: unset;
}

.open-menu .btn a span.open-text {
  display: none;
}

.open-menu .btn a span.close-text {
  display: inline-block;
}

.open-menu.open .btn a span.open-text {
  display: inline-block;
}

.open-menu.open .btn a span.close-text {
  display: none;
}

.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;
}

.open-menu.open .open-menu-list {
  box-shadow: 0px 0px 3px 2px rgba(0, 0, 0, 0.17);
}

.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;
}

.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;
}

.open-menu .open-menu-list-iner {
  margin: 0px;
  padding: 0px;
}

.open-menu .open-menu-list ul li {
  margin: 0px;
  padding: 0px;
  width: 100%;
}

.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;
}

.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%);
}

.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;
}

.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;
}

.open-menu .open-menu-list ul li:last-child a span {
  border-bottom: 0px none;
}

/* TOPに戻るボタン */
.pagetop {
  margin: 0;
  padding: 0;
  position: fixed;
  bottom: 12px;
  left: 12px;
  z-index: 500;
  display: none;
}

.pagetop .pagetop-link {
  margin: 0;
  padding: 0;
  width: 62px;
}

.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;
}

/* 追従バナー */
.top-campaign {
  width: 266px;
  margin: 0px;
  padding: 0px;
  position: fixed;
  bottom: 30px;
  right: 30px;
  z-index: 200;
  display: none;
}

.top-campaign a.top-campaign-close {
  margin: 0px;
  padding: 0px;
  display: block;
  width: 48px;
  height: 48px;
  position: absolute;
  top: -20px;
  right: -20px;
  font-size: 0;
  background-image: url(../../images/special_contents/DeadSea/20240516/arrow_close.svg);
  background-repeat: no-repeat;
}

/* ビーガン */
.vlogo {
  margin: 0;
  padding: 0;
  width: 11.9vw;
  position: absolute;
  bottom: 1.5vw;
  right: 2vw;
  z-index: 40;
}

/* POP UP アンカー */
.pop-anker {
  width: 460px;
  height: 215px;
  margin: 0 auto 30px;
  padding: 50px 45px;
}
.pop-anker__title {
  font-size: 2.8rem;
  font-style: italic;
}
.pop-anker__text {
  color: #3d1a3a;
  font-size: 1.8rem;
  line-height: 1.2;
  text-align: center;
  margin-top: 15px;
}
.link--popup {
  text-align: center;
  margin-top: 8px;
}
.link--popup a {
  margin: 0px;
  padding: 0px 20px 5px 2px;
  text-align: center;
  color: #3d1a3a;
  font-size: 1.4rem;
  line-height: 1;
  border-bottom: 1px solid #3d1a3a;
  text-decoration: none;
  position: relative;
  display: inline-block;
}

/* POP UP 詳細 */
.pop-up-block {
  background-image: url(../../images/special_contents/HolidayCollection2024/20241022/bg_key.jpg);
  background-size: cover;
}
.pop-up__in {
  width: 960px;
}
.pop-up__title {
  color: #c7af5c;
  line-height: 1.1;
}
.pop-up__text-wrapper {
  width: 500px;
  background-color: #070627;
  margin: 30px auto 0;
  padding: 30px;
}
.pop-up__table-title {
  color: #efedde;
  font-size: 2.2rem;
  line-height: 1.3;
  text-align: center;
}
.pop-up__sub-title {
  color: #efedde;
  font-size: 2.4rem;
  text-align: center;
  margin-top: 15px;
}
.pop-up__text {
  color: #efedde;
  font-size: 1.6rem;
  text-align: center;
  margin-top: 30px;
}
.pop-up-block .pop-up__img {
  max-width: 500px;
  margin: 30px auto 0;
}
.pop-up__notes {
  width: 500px;
  font-size: 1.2rem;
  display: block;
  color: #efedde;
  margin: 0 auto;
  margin-top: 5px;
}
.pop-up__btn {
  text-align: center;
}
.pop-up__btn a {
  margin-top: 30px;
  padding: 20px 0px;
  text-align: center;
  color: #efedde;
  font-size: 1.4rem;
  line-height: 1.4rem;
  text-decoration: none;
  position: relative;
  display: inline-block;
  background: #b3a570;
  width: 250px;
  cursor: pointer;
}
.pop-up__btn a span svg {
  margin: 0px;
  padding: 0px;
  display: inline-block;
  position: absolute;
  top: 50%;
  right: 30px;
  transform: translateY(-50%);
  font-size: 1.1rem;
}
.pop-up__table {
  border-collapse: separate;
  border-spacing: 0 10px;
  margin: 0 auto;
}
.pop-up__table--area {
  margin-top: 15px;
}
.pop-up__table th {
  width: 17%;
  vertical-align: middle;
  font-weight: bold;
  white-space: nowrap;
  padding: 2px 0px;
  background-color: #F6F0E4;
  padding: 5px 10px;
  color: #070627;
  text-align: center;
}
.pop-up__table td {
  color: #efedde;
  font-size: 1.6rem;
  line-height: 1.1;
  padding-left: 20px;
}

/* ロイヤル */
.sc-present-block {
  width: 940px;
  position: relative;
}

.label__campain {
  width: 11vw;
  margin: 10px auto 0;
}

.sc__text--l {
  font-size: 3.6rem;
}

.campaign-present-block {
  width: 675px;
  margin: 0 auto;
  position: relative;
}

.campaign-t1 {
  width: 400px;
  font-size: 2rem;
  line-height: 1.5;
  text-align: center;
  margin-top: 31px;
}

.campaign-t2 {
  width: 400px;
  text-align: center;
  font-size: 3.6rem;
  line-height: 1.1;
  letter-spacing: -0.0em;
  margin-top: 17px;
}

.campaign__text {
  width: 400px;
  font-size: 1.6rem;
  line-height: 1.6;
  text-align: center;
  margin-top: 13px;
}

.ls__warapper {
  width: 723px;
  background-color: #f6f0e4;
  margin: 63px auto 0;
  padding: 22px 0 50px 80px;
  position: relative;
}

.ls__warapper::before {
  top: -8px;
}

.ls__warapper::after {
  bottom: -8px;
}

.ls__warapper::before,
.ls__warapper::after {
  width: 100%;
  background-size: auto 100%;
}

.ls-t1 {
  font-size: 1.7rem;
  line-height: 1.4;
  padding-left: 25px;
}

.ls-t2 {
  font-size: 2.2rem;
  line-height: 1.4;
  padding-left: 25px;
}

.ls-t2 span {
  font-size: 1.6rem;
}

.ls-obj {
  width: 97px;
  position: absolute;
  top: -8px;
  left: -20px;
}

.img-charm {
  width: 180px;
  position: absolute;
  top: 10px;
  right: 0;
}

.img-ls {
  width: 41px;
  position: absolute;
  top: 40px;
  right: 90px;
}

.limited--campaign {
  width: 65px;
  height: 65px;
  top: 10px;
  right: -40px;
}

.ribon_c {
  width: 162px;
}