@charset "utf-8";

.Banner__Button,
.Serch__Button,
.special .contrib__txt dd .no-wrap {
  white-space: nowrap
}

:where(:not(html, iframe, canvas, img, svg, video, audio, header *):not(svg *, symbol *)) {
  all: unset;
  display: revert
}

::after,
::before,
main * {
  box-sizing: border-box
}

a,
button {
  cursor: revert
}

menu,
ol,
ul {
  list-style: none
}

img {
  max-inline-size: 100%;
  max-block-size: 100%
}

table {
  border-collapse: collapse
}

input,
textarea {
  -webkit-user-select: auto
}

textarea {
  white-space: revert
}

meter {
  -webkit-appearance: revert;
  appearance: revert
}

:where(pre) {
  all: revert
}

::placeholder {
  color: unset
}

::marker {
  content: initial
}

:where([hidden]) {
  display: none
}

:where([contenteditable]:not([contenteditable=false])) {
  -moz-user-modify: read-write;
  -webkit-user-modify: read-write;
  overflow-wrap: break-word;
  -webkit-line-break: after-white-space;
  -webkit-user-select: auto
}

:where([draggable=true]) {
  -webkit-user-drag: element
}

:where(dialog:modal) {
  all: revert
}

.Font__Din {
  font-family: din-2014-narrow, sans-serif !important
}

body {
  margin: 0;
  color: #282828;
  font-family: "Noto Sans JP";
  font-weight: 400;
  line-height: 1.5 !important
}

.sp_only,
.special .tb_only,
.ytp-title-enable-channel-logo .ytp-shorts-title-channel {
  display: none !important
}

.HoverScaleUp>img,
.hover,
.howto .link.hover h4,
.howto .link.hover img,
.howto .link.hover p,
a {
  transition: .3s
}

.hover:hover,
a:hover {
  opacity: .8;
  transition: .3s
}

.txt__indent {
  padding-left: 1em;
  text-indent: -1em
}

.simplebar-scrollbar::before {
  width: 4px;
  margin-left: 4px;
  background: #acacac !important
}

.Fade_In {
  opacity: 0;
  transform: translateY(30px);
  transition: opacity 1.5s, transform 1s
}

.Fade_In.active {
  opacity: 1;
  transform: translateY(0)
}

.Fade_In_re {
  opacity: 0;
  transition: 1s
}

.Fade_In_re.active,
.howto .link.hover:hover {
  opacity: 1
}

.scale_down {
  opacity: 0;
  transform: scale(1.7) rotate(-5deg);
  transition: 1s ease-in-out
}

.scale_down.active {
  opacity: 1;
  transform: scale(1) rotate(0)
}

.HoverScaleUp {
  overflow: hidden
}

.HoverScaleUp:hover>img {
  transform: scale(1.05)
}

.content__ttl {
  max-width: 1200px;
  margin: 0 auto
}

.content__ttl h2 {
  width: 506px;
  height: auto
}

.content__ttl p {
  text-align: center;
  font-size: 20px
}

.txt__link {
  text-decoration: underline;
  text-underline-offset: .3em
}

.menu__btn {
  position: fixed;
  bottom: 40px;
  right: 40px;
  z-index: 3;
  width: 88px;
  height: auto;
  cursor: pointer;
  filter: drop-shadow(0 0 10px #ffffff50);
  transition: .3s
}

.menu__btn:hover {
  transform: translateY(-.4em);
  transition: .3s
}

.history img,
.menu__btn img,
.mv img,
.quality img {
  width: 100%;
  height: auto
}

.menu__container,
.message .modal__wrapper {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 10;
  width: 100%;
  height: 100%
}

.menu__container .modal__layer {
  height: 100%;
  background: rgba(197, 197, 197, .85);
  cursor: pointer
}

.menu__container .menu__box {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translateX(-50%) translateY(-50%);
  width: 560px;
  height: 502px;
  background: #fff
}

.menu__container .menu__box .close-btn {
  position: absolute;
  top: 54px;
  right: 54px;
  width: 28px;
  height: 28px;
  cursor: pointer
}

.menu__container .menu__box .close-btn::after,
.menu__container .menu__box .close-btn::before {
  position: absolute;
  top: 0;
  left: 0;
  width: 38px;
  height: 2px;
  content: "";
  display: block;
  background: #939393
}

.menu__container .menu__box .close-btn::before {
  transform: rotate(45deg)
}

.menu__container .menu__box .close-btn::after {
  transform: rotate(135deg)
}

.special .content__hide .first-btn:hover,
.voice .voice__container .more-btn:hover {
  transform: translateY(.4em);
  transition: .3s
}

.menu__container .menu__box .menu__ttl {
  margin-bottom: 11px;
  padding-top: 33px;
  padding-left: 40px;
  padding-bottom: 20px;
  border-bottom: 1px solid #e2ddc6;
  line-height: 1.333;
  font-family: Noto Serif JP;
  font-size: 24px;
  font-weight: 500;
  color: #ad9257
}

.menu__container .menu__box .menu__list {
  width: 420px;
  margin: 0 auto
}

.menu__container .menu__box .menu__list .menu__item a {
  display: block;
  padding: 10px 14px 9px;
  border-bottom: 1px solid #d8d8d8;
  font-size: 20px;
  font-weight: 700;
  color: #2c2c2c
}

.menu__container .menu__box .menu__list .menu__item:last-of-type a {
  border-bottom: none
}

.menu__container .menu__box .menu__list .menu__item a span {
  position: relative;
  padding-left: 35px
}

.menu__container .menu__box .menu__list .menu__item a span::before {
  position: absolute;
  top: 50%;
  left: 0;
  content: "";
  display: block;
  width: 9px;
  height: 9px;
  border-top: 2px solid #ad9257;
  border-right: 2px solid #ad9257;
  transform: rotate(45deg) translateY(-50%);
  transition: .3s
}

.special .content__hide .first-btn.on-click,
.special .content__hide section,
.special.fixed.none::before {
  display: none
}

.menu__container .menu__box .menu__list .menu__item a:hover span::before {
  transition: .3s;
  transform: rotate(45deg) translate(50%, -100%)
}

.floating {
  opacity: 0;
  visibility: hidden;
  transition: .3s
}

.floating.active {
  opacity: 1;
  visibility: visible
}

.intro {
  text-align: center;
  font-weight: 700;
  color: #3d320b
}

.intro h1 {
  width: 523px;
  margin: 0 auto;
  padding-bottom: 50px
}

.intro .intro__txt {
  line-height: 1.8;
  letter-spacing: .03em;
  font-size: 20px;
  font-family: "Noto Serif jp";
  font-weight: 700;
  color: #3d320b
}

.intro .intro__txt:first-of-type {
  padding-bottom: 28px
}

.intro .intro__txt sub {
  bottom: 0;
  font-size: .6em
}

.intro .intro__note {
  margin-top: 12px;
  font-size: 12px;
  font-family: "Noto Serif jp";
  font-weight: 700;
  color: #372705
}

.special .content__hide .first-btn__wrap {
  padding-top: 40px
}

.special .content__hide .first-btn {
  width: 200px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto;
  border: 1px solid #a18238;
  border-radius: 25px;
  background: #fff;
  cursor: pointer;
  transition: .3s
}

.special .content__hide .first-btn span {
  position: relative;
  padding-right: 18px;
  font-family: "Noto Serif jp";
  font-size: 14px;
  font-weight: 700;
  color: #a18238
}

.special .content__hide .first-btn span::after {
  position: absolute;
  top: 50%;
  right: 0;
  content: "";
  display: block;
  width: 8px;
  height: 5px;
  transform: translateY(-50%);
  background: url(/elegance_bp/shop/files/el_poudre35th_ic02_png.svg) center/contain no-repeat
}

.contrib__vol+.contrib__btn {
  position: absolute;
  right: 70px
}

.contrib-note__wrap+.contrib__btn,
.contrib__note+.contrib__btn {
  margin-top: 30px
}

.special .contrib__btn a {
  width: 120px;
  height: 32px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin-left: auto;
  border: 1px solid #a18238
}

.special .contrib__btn a span {
  position: relative;
  padding-right: 20px;
  font-size: 15px;
  font-weight: 700;
  color: #a18238
}

.special .contrib__btn a span::after {
  position: absolute;
  top: 50%;
  right: 0;
  content: "";
  display: block;
  width: 14px;
  height: 15px;
  transform: translateY(-50%);
  background: url(/elegance_bp/shop/files/el_poudre35th_ic04.svg) center/14px 15px no-repeat
}

.special #latter .contrib__btn a span::after {
  transform: translateY(-50%) rotate(180deg)
}

.special.fixed::before {
  content: "";
  display: block;
  position: fixed;
  top: 88px;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-repeat: no-repeat;
  background-position: top center;
  background-image: url(/elegance_bp/shop/files/el_poudre35th_0731_bg01_pc.jpg);
  background-size: cover
}

.special img {
  display: block;
  width: 100%;
  height: auto
}

.special .content__ttl {
  margin-top: 80px
}

.special .content__ttl h2 {
  width: 566px;
  height: auto
}

.special .special__container {
  margin-top: -55px;
  padding-bottom: 120px;
  overflow: hidden
}

.special .special-ttl .special-ttl__lead {
  margin-top: -20px;
  line-height: 1.75;
  font-size: 18px;
  font-weight: 700;
  color: #fff;
  text-shadow: 0 0 32px #9c6a2c50
}

.special .guest__box {
  max-width: 1048px;
  height: auto;
  margin: 0 auto
}

.special .contrib__box {
  position: relative;
  width: 824px;
  margin: 30px auto 0;
  padding: 21px 70px 90px;
  background: #fff;
  box-shadow: 6px 6px 6px #2c2c2c20
}

.special .contrib__vol {
  position: relative;
  margin-top: 15px;
  padding-bottom: 16px;
  text-align: center;
  font-family: "Noto Serif jp";
  font-size: 36px;
  font-weight: 700;
  color: #a18238
}

.special .contrib__vol span {
  font-size: 1.5em
}

.special .contrib__vol::after {
  position: absolute;
  bottom: 0;
  left: 50%;
  content: "";
  display: block;
  transform: translateX(-50%);
  width: 148px;
  height: 12px;
  background: url(/elegance_bp/shop/files/el_poudre35th_0731_ic01.svg) center/cover no-repeat
}

.special .contrib__next::before,
.special .contrib__txt dt::before {
  left: 0;
  background: #a18238;
  top: 50%;
  content: "";
  display: block;
  position: absolute
}

.special .contrib__ttl {
  margin-top: 20px;
  text-align: center;
  font-size: 18px;
  line-height: 1.5
}

.special .contrib__txt:first-of-type {
  margin-top: 42px
}

.special .contrib__txt {
  margin-top: 46px
}

.special .contrib__txt dt {
  position: relative;
  padding-left: 24px;
  line-height: 1.75;
  font-size: 15px;
  font-weight: 700;
  color: #a18238
}

.special .contrib__txt dt .note {
  font-size: .6em
}

.special .contrib__txt dt::before {
  transform: translateY(-50%);
  width: 15px;
  height: 15px
}

.special .contrib__txt dd {
  margin-top: 22px;
  text-align: justify;
  font-size: 13px;
  line-height: 1.75
}

.special .contrib__txt dd .note {
  font-size: .6em;
  vertical-align: baseline
}

.special .contrib-note__wrap {
  display: flex;
  justify-content: flex-end
}

.special .contrib__note {
  margin-top: 1.75em;
  line-height: 1.75;
  font-size: 13px;
  color: #5e5d5b;
  text-align: right
}

.special .latter-part .contrib__note {
  text-align: left
}

.special .contrib__note li {
  position: relative;
  padding-left: 25px
}

.special .contrib__note li span {
  position: absolute;
  left: 0
}

.special .contrib__next {
  position: relative;
  margin-top: 82px;
  text-align: center;
  font-family: "Noto Serif jp";
  font-size: 20px;
  color: #a18238;
  z-index: 1
}

.special .contrib__next::before {
  width: 100%;
  height: 2px;
  z-index: -1
}

.special .contrib__next::after {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  display: block;
  transform: translateY(-50%) translateX(-50%);
  width: 230px;
  height: 1em;
  background: #fff;
  z-index: -1
}

.special .contrib__box .contrib__img {
  position: absolute;
  overflow: hidden
}

.special .contrib__box.first-part .contrib__img:first-of-type {
  top: 39%;
  right: -267px;
  width: 338px;
  height: auto
}

.special .contrib__box.first-part .contrib__img:last-of-type {
  bottom: 3%;
  left: -292px;
  width: 338px;
  height: auto
}

.special .contrib__box.latter-part .contrib__img.img__first {
  top: 56%;
  left: -300px;
  width: 357px;
  height: auto
}

.special .contrib__box.latter-part .contrib__img.img__latter {
  bottom: 6%;
  right: -292px;
  width: 340px;
  height: auto
}

@media screen and (max-width:1200px) {
  .special .tb_only {
    display: block !important
  }

  .pc_only {
    display: none !important
  }

  .special .content__ttl {
    margin-top: 6.67vw
  }

  .special .special__container {
    padding-bottom: 10vw
  }

  .special .guest__box {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 1048px;

    margin-left: inherit;
    margin-right: inherit
  }

  .special .contrib__box {
    padding-left: 60px;
    padding-right: 60px
  }

  .special .contrib__txt dt {
    letter-spacing: -.01em
  }

  .special .contrib__box .contrib__img {
    position: inherit;
    width: 28.17vw !important
  }

  .special .contrib__box.first-part .contrib__img.contrib__img__first {
    float: right;
    margin: 2vw -10vw 2vw 2vw
  }

  .special .contrib__box.first-part .contrib__img.contrib__img__last {
    float: left;
    margin: 2vw 2vw 2vw -10vw
  }

  .special .contrib__box.latter-part .contrib__img.contrib__img__first {
    float: left;
    margin: 1vw 2vw 2vw -10vw
  }

  .special .contrib__box.latter-part .contrib__img.contrib__img__last {
    float: right;
    margin: -2vw -10vw 0 2vw
  }
}

@media screen and (max-width:884px) {
  .special .guest__box {
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    width: 118.5vw
  }

  .special .contrib__box {
    max-width: 93.21vw
  }
}

.history::after,
.history::before {
  position: absolute;
  display: block;
  content: ""
}

.history {
  position: relative
}

.history::before {
  top: 0;
  right: 0;
  width: 454px;
  height: 378px;
  background: url(/elegance_bp/shop/files/el_poudre35th_bg01_top.png) center/contain no-repeat
}

.history::after {
  bottom: 0;
  left: 0;
  width: 535px;
  height: 349px;
  background: url(/elegance_bp/shop/files/el_poudre35th_bg01_bottom.png) center/contain no-repeat
}

.history .history__container {
  max-width: 1200px;
  margin: 0 auto;
  padding: 80px 0 163px
}

.history .history__container .swiper__history {
  margin-bottom: 130px
}

.history .history__container .history-ttl {
  margin-bottom: 44px
}

.history .history__container .history-box__top {
  text-align: center
}

.history .history__container .history-box__top h3 {
  margin-bottom: 30px;
  line-height: 1.583;
  font-size: 24px;
  color: #fff
}

.history .history__container .history-box__top h3 span {
  display: block;
  margin-bottom: 1.5em;
  font-size: 20px
}

.history .history__container .history-box__top p {
  line-height: 2.214;
  font-size: 14px;
  color: #fff
}

.history .history__container .history-box {
  position: relative;
  width: 1120px;
  margin: 0 auto;
  padding: 0 30px 0 80px
}

.history .history__container .history-box::before {
  position: absolute;
  top: 26px;
  left: 20px;
  content: "";
  display: block;
  width: 28px;
  height: 52px;
  background: url(/pages/elegance/main/elegance_la-poudre/img/el_poudre35th_ic03.png) center/contain no-repeat
}

.history .history__container .history-box::after {
  position: absolute;
  top: 60px;
  left: 33px;
  content: "";
  display: block;
  width: 1px;
  height: calc(100% - 78px);
  background: linear-gradient(#ad9257, rgba(173, 146, 87, 0))
}

.history .history__container .history-box .history-year {
  margin-top: 50px;
  margin-bottom: 80px
}

.history .history__container .history-box .history-year img {
  width: auto;
  height: 121px
}

.history .history__container .history-box .box__year {
  display: flex;
  gap: 50px
}

.history .history__container .history-box .box__year .txt__box {
  width: calc(100% - 400px)
}

.history .history__container .history-box .box__year .im__box {
  width: 350px;
  height: auto
}

.history .history__container .history-box .box__year .txt__box .history-txt dt {
  margin-bottom: 35px;
  line-height: 1.6;
  font-family: "Noto Serif JP";
  font-size: 24px;
  font-weight: 700;
  color: #ad9257
}

.history .history__container .history-box .box__year .txt__box .history-txt dt img {
  width: auto;
  height: .8em;
  margin: 0 .1em;
  vertical-align: baseline
}

.history .history__container .history-box .box__year .txt__box .history-txt dd {
  line-height: 2.5;
  font-size: 14px;
  color: #fff
}

.history .pagenation-wrap {
  position: absolute;
  left: 50% !important;
  transform: translateX(-50%);
  display: flex;
  align-items: center;
  justify-content: center;
  max-width: 570px !important;
  width: 100%;
  height: 42px;
  border-radius: 21px;
  background: #181818;
  z-index: 2
}

.history .swiper-pagination {
  display: flex;
  justify-content: center;
  align-items: center
}

.history .swiper-pagination-bullet {
  width: min-content;
  height: min-content;
  margin: 0 24px 0 0 !important;
  border-radius: initial;
  opacity: 1;
  background: initial;
  font-size: 14px;
  color: #757575
}

.history .swiper-pagination-bullet:first-of-type,
.history .swiper-pagination-bullet:last-of-type {
  margin: 0 !important
}

.history .swiper-pagination-bullet-active {
  color: #fff
}

.history .swiper-button-next,
.history .swiper-button-prev {
  top: initial;
  bottom: 20%;
  width: 42px;
  height: 42px;
  border-radius: 50%;
  background: #fff;
  opacity: .5
}

.history .swiper-button-next {
  right: 0
}

.history .swiper-button-prev {
  left: 0
}

.history .swiper-button-next::after,
.history .swiper-button-prev::after {
  width: 17px;
  height: 17px;
  border-right: 2px solid #29231d;
  border-top: 2px solid #29231d
}

.history .swiper-button-next::after {
  right: 35%;
  transform: rotate(45deg)
}

.history .swiper-button-prev::after {
  left: 35%;
  transform: rotate(-135deg)
}
.history .history-thumbnail {
  display: flex;
  align-items: center;
  max-width: 600px;
  height: 42px;
  margin: 0 auto;
  padding: 0 20px;
  background: #181818;
  border-radius: 21px;
}
.history .history-thumbnail-none {
  display: none;
}
.history .history-thumbnail-item {
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 14px;
  color: #757575;
  cursor: pointer;
}
.history .history-thumbnail-item.swiper-slide-thumb-active {
  color: #fff;
}

.quality .quality-txt h3 {
  font-family: "Noto Serif jp";
  text-decoration-line: underline;
  text-underline-offset: 0.4em;
  text-decoration-thickness: 1px;
  font-size: 34px;
  font-weight: 700;
  margin-bottom: 17px;
  text-align: center
}

.quality .quality-txt .lead {
  font-size: 16px;
  text-align: center;
  color: #2c2c2c
}

.quality .quality-txt .features {
  max-width: 1200px;
  display: flex;
  flex-wrap: wrap;
  row-gap: 26px;
  margin: 50px auto 0;
  padding: 30px 75px 53px;
  background: #fdfbf4
}

.quality .quality-txt .features .feature__item {
  width: 50%;
  text-align: center;
  font-family: "Noto Serif jp"
}

.quality .quality-txt .features .feature__item .feature__ttl {
  width: max-content;
  margin: 0 auto;
  padding: 0 2em 3px;
  border-bottom: 2px solid;
  border-image: linear-gradient(90deg, transparent, #a38b38 50%, transparent) 1;
  font-size: 24px;
  font-weight: 700;
  color: #a38b38;
  letter-spacing: .02em
}

.quality .quality-txt .features .feature__item .feature__ttl span {
  font-size: 1.8em
}

.quality .quality-txt .features .feature__item .feature__txt {
  margin-top: 8px;
  line-height: 1.75;
  font-size: 16px;
  font-weight: 700;
  color: #2c2c2c
}

.message::before {
  content: "";
  display: block;
  position: sticky;
  top: 88px;
  left: 0;
  z-index: -1;
  width: 100%;
  height: 100vh;
  background-repeat: no-repeat;
  background-position: top center;
  background-image: url(/elegance_bp/shop/files/el_poudre35th_bg03_pc.jpg);
  background-size: cover
}

.message .message-ttl {
  margin-top: 130px;
  margin-bottom: 60px
}

.message .message-ttl .message-ttl__lead {
  margin-top: -60px;
  font-size: 18px
}

.message .message__container .message__list li {
  width: 100%;
  margin-bottom: 60px
}

.message .message__container .message__list .message__item .card__wrap .message__card {
  width: 820px;
  margin: 0 auto;
  padding: 20px;
  background: #fff;
  box-shadow: 6px 6px 6px #2c2c2c20
}

.message .message__container .message__list .message__card dl {
  position: relative;
  padding: 50px;
  z-index: 1
}

.message .message__container .message__list .message__card dl::after,
.message .message__container .message__list .message__card dl::before {
  position: absolute;
  left: 50%;
  transform: translateX(-50%);
  content: "";
  display: block;
  width: 100%;
  height: 100px;
  z-index: -1
}

.message .message__container .message__list .message__card dl::before {
  top: 0;
  background: url(/elegance_bp/shop/files/el_poudre35th_deco01_pc.png)
}

.message .message__container .message__list .message__card dl::after {
  bottom: 0;
  background: url(/elegance_bp/shop/files/el_poudre35th_deco02_pc.png)
}

.message .message__container .message__list .message__card dl dt {
  display: flex;
  align-items: center;
  gap: 30px;
  margin-bottom: 23px
}

.message .message__container .message__list .message__card dl dt .message__im {
  width: 120px;
  height: 120px
}

.message .message__container .message__list .message__card dl dt .message__im img,
.products img,
.voice img {
  width: 100%;
  height: auto
}

.message .message__container .message__list .message__card dl dt .message__name {
  line-height: 1
}

.message .message__container .message__list .message__card dl dt .message__name .name {
  margin-bottom: 12px;
  font-size: 28px;
  font-weight: 500;
  color: #ad9257
}

.message .message__container .message__list .message__card dl dt .message__name .name span {
  font-size: 16px
}

.message .message__container .message__list .message__card dl dt .message__name .title {
  margin-bottom: 12px;
  font-size: 18px;
  font-weight: 500;
  color: #ad9257
}

.message .message__container .message__list .message__card dl dt .message__name .profile__btn {
  width: 110px;
  height: 26px;
  display: flex;
  justify-content: center;
  align-items: center;
  background: #ad9257;
  font-size: 12px;
  color: #fff;
  cursor: pointer;
  transition: .3s
}
.howto .lead {
  font-size: 16px;
  text-align: center;
  color: #2c2c2c
}

.howto .link.hover:hover h4,
.howto .link.hover:hover img,
.howto .link.hover:hover p,
.message .message__container .message__list .message__card dl dt .message__name .profile__btn:hover {
  opacity: .7;
  transition: .3s
}

.message .message__container .message__list .message__card dl dt .message__name .profile__btn span {
  position: relative;
  padding-right: 14px
}

.message .message__container .message__list .message__card dl dt .message__name .profile__btn span::after,
.message .message__container .message__list .message__card dl dt .message__name .profile__btn span::before {
  position: absolute;
  top: 50%;
  content: "";
  display: block;
  width: 9px;
  height: 1px;
  background: #fff
}

.message .message__container .message__list .message__card dl dt .message__name .profile__btn span::before {
  right: 0
}

.message .message__container .message__list .message__card dl dt .message__name .profile__btn span::after {
  right: 0;
  transform: rotate(90deg)
}

.message .message__container .message__list .message__card dl dd {
  overflow-y: auto;
  -ms-overflow-style: none;
  scrollbar-width: none
}

.message .message__container .message__list .message__card dl dd::-webkit-scrollbar {
  display: none
}

.message .message__container .message__list .message__card dl .message-txt {
  line-height: 1.857;
  font-size: 14px;
  color: #3f3f3f
}

.message .modal__wrapper .modal__layer {
  height: 100%;
  background: rgba(197, 197, 197, .85);
  cursor: pointer
}

.message .modal__wrapper .modal__container {
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%);
  width: 620px;
  height: min-content;
  background: #fff
}

.message .modal__wrapper .modal__container .modal__inner {
  position: relative;
  padding: 50px 40px
}

.message .modal__wrapper .modal__container .modal__inner .close-btn {
  position: absolute;
  top: 30px;
  right: 30px;
  width: 32px;
  height: 32px;
  cursor: pointer
}

.message .modal__wrapper .modal__container .modal__inner .close-btn::after,
.message .modal__wrapper .modal__container .modal__inner .close-btn::before {
  position: absolute;
  top: 50%;
  left: 50%;
  content: "";
  display: block;
  width: 44px;
  height: 1px;
  background: #939393
}

.message .modal__wrapper .modal__container .modal__inner .close-btn::before {
  transform: translateX(-50%) rotate(45deg)
}

.message .modal__wrapper .modal__container .modal__inner .close-btn::after {
  transform: translateX(-50%) rotate(-45deg)
}

.message .modal__wrapper .modal__container .modal__inner .modal__title {
  margin-bottom: 12px;
  padding-bottom: 6px;
  border-bottom: 1px solid #e2ddc6;
  font-size: 20px;
  font-weight: 500;
  color: #ad9257
}

.message .modal__wrapper .modal__container .modal__inner .modal__title span {
  font-size: 14px
}

.message .modal__wrapper .modal__container .modal__inner .modal__text {
  line-height: 2;
  font-size: 12px
}

@media screen and (max-width:1024px) {
  .message::before {
    background-image: url(/elegance_bp/shop/files/el_poudre35th_bg03_sp.jpg)
  }
}

.products .products-ttl__lead {
  margin-top: -35px
}

.products .products__container {
  display: flex;
  gap: 20px;
  max-width: 1200px;
  margin: 48px auto 0;
  padding: 0 40px
}

.products .products__container .products__box {
  position: relative;
  width: calc(100% - 20px)
}

.products .products__container .products__box .products-powder {
  display: flex;
  align-items: center;
  width: 100%;
  height: 60px;
  background: #c3ae82;
  font-size: 16px;
  color: #fff
}

.color__container .color__list,
.products .products__container .products__box .products-note {
  justify-content: center;
  display: flex
}

.products .products__container .products__box.left .products-feature,
.products .products__container .products__box.left .products-powder {
  padding-left: 313px
}

.products .products__container .products__box.right .products-powder {
  padding-left: 24px
}

.products .products__container .products__box .products-img {
  position: absolute
}

.products .products__container .products__box.left .products-img {
  top: 11px;
  left: 20px;
  width: 271px;
  height: auto
}

.products .products__container .products__box.right .products-img {
  top: 19px;
  right: 20px;
  width: 270px;
  height: auto
}

.products .products__container .products__box .products-feature {
  margin-top: 26px;
  line-height: 1.917;
  font-family: "Noto Serif jp";
  font-size: 24px;
  font-weight: 500;
  color: #2c2c2c
}

.products .products__container .products__box.right .products-feature {
  padding-left: 20px
}

.products .products__container .products__box .product-detail {
  margin-top: 46px;
  text-align: center
}

.products .products__container .products__box.left .product-detail {
  margin-left: 20px
}

.products .products__container .products__box.right .product-detail {
  margin-right: 20px
}

.products .products__container .products__box .product-detail .txt-small {
  margin-bottom: 5px;
  font-size: 16px
}

.products .products__container .products__box .product-detail .txt-name {
  margin-bottom: 12px;
  line-height: 1.6;
  font-size: 20px;
  font-weight: 700
}

.products .products__container .products__box .product-detail .txt-name span {
  font-size: 16px
}

.products .products__container .products__box .product-detail .price {
  margin-bottom: 22px;
  font-size: 18px
}

.products .products__container .products__box .products-note li,
.products .products__container .products__box .products-note li a {
  line-height: 1.667;
  font-size: 12px;
  color: #777
}

.color img {
  width: 100%;
  height: auto;
  display: block
}

.color__container {
  max-width: 1200px;
  margin: 50px auto 0;
  padding: 0 20px
}

.color .lead {
  font-size: 16px;
  text-align: center;
  color: #2c2c2c
}

.color__container .color__list:first-of-type {
  margin-bottom: 48px
}

.color__container .color__list .color__item {
  width: 275px
}

.color__container .color__list .color__item .im-box {
  position: relative
}

.color__container .color__list .color__item .im-box .item__im {
  width: 228px;
  margin: 0 auto 12px
}

.color__container .color__list .color__item .im-box .item__im img {
  animation-duration: 90s;
  animation-name: color-variation;
  animation-timing-function: linear;
  animation-iteration-count: infinite
}

.color__container .color__list .color__item .im-box .item__no {
  position: absolute;
  bottom: 0;
  left: 25px;
  height: 45px;
  width: 60px;
  text-align: center
}

.color__container .color__list .color__item .im-box .item__no img {
  width: initial;
  display: inline-block
}

.color__container .color__list .color__item .item__texture {
  width: 97px;
  height: 24px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 0 auto 6px;
  font-size: 12px
}

.color__container .color__list .color__item .item__texture.matte {
  border: 1px solid #c7ad74;
  background: #fff;
  color: #ad9257
}

.color__container .color__list .color__item .item__texture.tsuya {
  background: #c2a668;
  color: #fff
}

.color__container .color__list .color__item .item__txt {
  line-height: 1.25;
  text-align: center;
  font-size: 16px
}
.color__container .color__list .color__item .new__label {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 120px;
  height: 24px;
  margin: 18px auto 0;
  padding-bottom: 2px;
  border: solid 2px #c2a668;
  font-size: 16px;
  color: #c2a668;
}

@keyframes color-variation {
  from {
    transform: rotate(0)
  }

  to {
    transform: rotate(360deg)
  }
}

.voice .voice-ttl .voice-ttl__lead {
  margin-top: -60px
}

.voice .voice__container {
  max-width: 1200px;
  margin: 40px auto 0;
  padding: 0 20px
}

.voice .voice__note {
  margin-bottom: 8px;
  text-align: right;
  font-size: 11px;
  color: #585858
}

.voice .voice__container ul {
  display: grid;
  grid-template-columns: repeat(auto-fit, 270px);
  justify-content: center;
  gap: 30px 26px
}

.voice .voice__container ul .voice-item {
  width: 100%;
  height: 470px;
  border-radius: 20px;
  background: #fff
}

.voice .voice__container ul .voice-item .item__pic {
  width: 270px;
  height: 270px;
  border-radius: 20px 20px 0 0;
  overflow: hidden
}

.voice .voice__container ul .voice-item .item__pic img {
  width: 100%;
  height: auto;
  transition: .3s
}

.voice .voice__container ul .voice-item a:hover .item__pic img {
  overflow: hidden;
  transform: scale(1.1);
  transition: .3s
}

.voice .voice__container ul .voice-item .item__txt {
  display: flex;
  align-items: center;
  gap: 10px;
  margin: 20px 20px 10px
}

.voice .voice__container ul .voice-item .item__txt .txt-icon {
  width: 20px;
  height: auto
}

.voice .voice__container ul .voice-item .item__txt .txt-icon img {
  display: block
}

.voice .voice__container ul .voice-item .item__txt .txt-user {
  line-height: 1.333;
  font-size: 15px;
  font-weight: 700
}

.voice .voice__container ul .voice-item .txt-comment {
  height: 120px;
  margin: 0 20px 20px;
  overflow-y: auto;
  line-height: 1.667;
  font-size: 12px;
  -ms-overflow-style: none;
  scrollbar-width: none
}

.voice .voice__container ul .voice-item .txt-comment .br_1em {
  margin-bottom: 1em
}

.voice .voice__container ul .voice-item .txt-comment .br_2em {
  margin-bottom: 2em
}

.voice .voice__container ul .voice-item .txt-comment .br_3em {
  margin-bottom: 3em
}

.voice .voice__container ul .voice-item .txt-comment .br_4em {
  margin-bottom: 4em
}

.voice .voice__container ul .voice-item .txt-comment .br_5em {
  margin-bottom: 5em
}

.voice .voice__container ul .voice-item .txt-comment::-webkit-scrollbar {
  display: none
}

.voice .voice__container .more-btn {
  width: 200px;
  height: 50px;
  display: flex;
  justify-content: center;
  align-items: center;
  margin: 40px auto 0;
  border: 1px solid #ad9257;
  border-radius: 25px;
  background: #fff;
  font-size: 14px;
  color: #6d551e;
  cursor: pointer;
  transition: .3s
}

.voice .voice__container .more-btn span {
  position: relative;
  padding-right: 18px
}

.voice .voice__container .more-btn span::after {
  position: absolute;
  top: 50%;
  right: 0;
  content: "";
  display: block;
  width: 8px;
  height: 5px;
  transform: translateY(-50%);
  background-image: url(/elegance_bp/shop/files/el_poudre35th_ic02_png.svg)
}

@media screen and (max-width:1200px) {
  .history::before {
    width: 37.83vw;
    height: 31.5vw
  }

  .history::after {
    width: 44.58vw;
    height: 29.08vw
  }

  .history .history__container {
    padding: 6.67vw 0 13.58vw
  }

  .history .history__container .swiper__history {
    margin-bottom: 10.83vw
  }

  .history .history__container .history-ttl {
    margin-bottom: 3.67vw
  }

  .history .history__container .history-box__top h3 {
    margin-bottom: 2.5vw;
    font-size: clapm(18px, 2vw, 24px)
  }

  .history .history__container .history-box__top h3 span {
    font-size: clamp(16px, 1.67vw, 20px)
  }

  .history .history__container .history-box__top p {
    font-size: clamp(12px, 1.17vw, 14px)
  }

  .history .history__container .history-box {
    width: 93.33vw;
    padding: 0 2.5vw 0 6.67vw
  }

  .history .history__container .history-box::before {
    top: 2.17vw;
    left: 1.67vw;
    width: 2.33vw;
    height: 4.33vw
  }

  .history .history__container .history-box::after {
    top: 5vw;
    left: 2.75vw;
    height: calc(100% - 6.5vw)
  }

  .history .history__container .history-box .history-year {
    margin-top: 4.17vw;
    margin-bottom: 6.67vw
  }

  .history .history__container .history-box .history-year img {
    height: 10.08vw
  }

  .history .history__container .history-box .box__year {
    gap: 4.17vw
  }

  .history .history__container .history-box .box__year .txt__box {
    width: calc(100% - 33.33vw)
  }

  .history .history__container .history-box .box__year .im__box {
    width: 29.17vw
  }

  .history .history__container .history-box .box__year .txt__box .history-txt dt {
    margin-bottom: 2.92vw;
    font-size: clamp(20px, 2vw, 24px)
  }

  .history .history__container .history-box .box__year .txt__box .history-txt dd {
    font-size: clamp(12px, 1.17vw, 14px)
  }

  .history .pagenation-wrap {
    max-width: 47.5vw !important;
    height: 3.5vw;
    border-radius: 1.75vw
  }

  .history .swiper-pagination {
    bottom: 28% !important
  }

  .history .swiper-pagination-bullet {
    margin: 0 2vw 0 0 !important;
    font-size: 1.17vw
  }

  .history .swiper-pagination-bullet:first-of-type,
  .history .swiper-pagination-bullet:last-of-type {
    margin: 0 !important
  }

  .history .swiper-pagination-bullet-active {
    color: #fff
  }

  .history .swiper-button-next,
  .history .swiper-button-prev {
    bottom: 20%;
    width: 3.5vw;
    height: 3.5vw
  }

  .history .swiper-button-next {
    right: 1vw
  }

  .history .swiper-button-prev {
    left: 1vw
  }

  .history .swiper-button-next::after,
  .history .swiper-button-prev::after {
    width: 1.42vw;
    height: 1.42vw
  }

  .quality .quality-txt .features {
    row-gap: 2.17vw;
    margin: 4.17vw 2vw;
    padding: 2.5vw 4.25vw 4.42vw
  }

  .quality .quality-txt .features .feature__item .feature__ttl {
    padding: 0 2em .25vw;
    border-bottom: .17vw solid;
    font-size: clamp(16px, 2vw, 24px)
  }

  .quality .quality-txt .features .feature__item .feature__txt {
    margin-top: .67vw;
    line-height: 1.75;
    font-size: clamp(12px, 1.33vw, 16px)
  }

  .message .message-ttl {
    margin-top: 10.83vw;
    margin-bottom: 5vw
  }

  .message .message-ttl .message-ttl__lead {
    margin-top: -40px
  }

  .message .message__container .message__list li {
    margin-bottom: 5vw
  }

  .message .message__container .message__list .message__item .card__wrap {
    top: calc(88px + 250px)
  }

  .message .message__container .message__list .message__item .card__wrap .message__card {
    width: 91.67vw;
    padding: 1.67vw;
    box-shadow: .5vw .5vw .5vw #2c2c2c20
  }

  .message .message__container .message__list .message__card dl::after,
  .message .message__container .message__list .message__card dl::before {
    background-repeat: no-repeat;
    background-size: contain
  }

  .message .message__container .message__list .message__card dl::before {
    background-position: top
  }

  .message .message__container .message__list .message__card dl::after {
    background-position: bottom
  }

  .message .modal__wrapper {
    display: none;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 10;
    width: 100%;
    height: 100%
  }

  .message .modal__wrapper .modal__layer {
    height: 100%;
    background: rgba(197, 197, 197, .85);
    cursor: pointer
  }

  .message .modal__wrapper .modal__container {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 620px;
    height: min-content;
    background: #fff
  }

  .message .modal__wrapper .modal__container .modal__inner {
    position: relative;
    padding: 50px 40px
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn {
    position: absolute;
    top: 30px;
    right: 30px;
    width: 32px;
    height: 32px;
    cursor: pointer
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn::after,
  .message .modal__wrapper .modal__container .modal__inner .close-btn::before {
    position: absolute;
    top: 50%;
    left: 50%;
    content: "";
    display: block;
    width: 44px;
    height: 1px;
    background: #939393
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn::before {
    transform: translateX(-50%) rotate(45deg)
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn::after {
    transform: translateX(-50%) rotate(-45deg)
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__title {
    margin-bottom: 12px;
    padding-bottom: 6px;
    border-bottom: 1px solid #e2ddc6;
    font-size: 20px;
    font-weight: 500;
    color: #ad9257
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__title span {
    font-size: 14px
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__text {
    line-height: 2;
    font-size: 12px
  }

  .products .products__container {
    gap: 1.67vw;
    margin: 4vw auto 0;
    padding: 0 3.33vw
  }

  .products .products__container .products__box {
    width: calc(100% - 1.67vw)
  }

  .products .products__container .products__box .products-powder {
    height: 5vw;
    font-size: 1.33vw
  }

  .products .products__container .products__box.left .products-feature,
  .products .products__container .products__box.left .products-powder {
    padding-left: 26.08vw
  }

  .products .products__container .products__box.right .products-powder {
    padding-left: 2vw
  }

  .products .products__container .products__box.left .products-img {
    top: .92vw;
    left: 1.67vw;
    width: 22.58vw
  }

  .products .products__container .products__box.right .products-img {
    top: 1.58vw;
    right: 1.67vw;
    width: 22.5vw
  }

  .products .products__container .products__box .products-feature {
    margin-top: 2.17vw;
    font-size: 2vw
  }

  .products .products__container .products__box.right .products-feature {
    padding-left: 1.67vw
  }

  .products .products__container .products__box .product-detail {
    margin-top: 3.83vw
  }

  .products .products__container .products__box.left .product-detail {
    margin-left: 1.67vw
  }

  .products .products__container .products__box.right .product-detail {
    margin-right: 1.67vw
  }

  .products .products__container .products__box .product-detail .txt-small {
    margin-bottom: .42vw;
    font-size: clamp(14px, 1.33vw, 20px)
  }

  .products .products__container .products__box .product-detail .txt-name {
    margin-bottom: 1vw;
    font-size: clamp(16px, 1.67vw, 24px)
  }

  .products .products__container .products__box .product-detail .txt-name span {
    font-size: (14px, 1.33vw, 20px)
  }

  .products .products__container .products__box .product-detail .price {
    margin-bottom: 1.83vw;
    font-size: clamp(15px, 1.5vw, 22px)
  }

  .products .products__container .products__box .products-note li,
  .products .products__container .products__box .products-note li a {
    font-size: clamp(10px, 1vw, 12px)
  }

  .color__container {
    margin: 4.17vw auto 0;
    padding: 0 1.67vw
  }

  .color__container .color__list:first-of-type {
    margin-bottom: 4vw
  }

  .color__container .color__list .color__item {
    width: 22.92vw
  }

  .color__container .color__list .color__item .im-box .item__im {
    width: 19vw;
    margin: 0 auto 1vw
  }

  .color__container .color__list .color__item .im-box .item__no {
    left: 2.08vw;
    height: 3.75vw;
    width: 5vw
  }

  .color__container .color__list .color__item .item__texture {
    width: clamp(75px, 8.08vw, 97px);
    height: clamp(18px, 2vw, 24px);
    margin: 0 auto clamp(4px, .5vw, 6px);
    font-size: clamp(10px, 1vw, 12px)
  }

  .color__container .color__list .color__item .item__txt {
    line-height: 1.25;
    text-align: center;
    font-size: clamp(12px, 1.33vw, 16px)
  }
  .color__container .color__list .color__item .new__label {
    width: clamp(100px, 10vw, 120px);
    height: clamp(20px, 2vw, 24px);
    margin: clamp(16px, 1.5vw, 18px) auto 0;
    font-size: clamp(12px, 1.33vw, 16px);
  }
  
  .voice .voice-ttl h2 {
    margin-left: -3.73vw
  }

  .voice .voice__container {
    margin: 3.33vw auto 0;
    padding: 0 1.67vw
  }

  .voice .voice__container ul {
    gap: 2.5vw 2.17vw;
    grid-template-columns: repeat(auto-fit, 22.5vw)
  }

  .voice .voice__container ul .voice-item {
    height: 39.17vw;
    border-radius: 1.67vw
  }

  .voice .voice__container ul .voice-item .item__pic {
    width: 22.5vw;
    height: 22.5vw;
    border-radius: 1.67vw 1.67vw 0 0
  }

  .voice .voice__container ul .voice-item a:hover .item__pic img {
    overflow: hidden;
    border-radius: 1.67vw 1.67vw 0 0
  }

  .voice .voice__container ul .voice-item .item__txt {
    gap: .83vw;
    margin: 1.67vw 1.67vw .83vw
  }

  .voice .voice__container ul .voice-item .txt-comment {
    height: 10vw
  }
}

@media screen and (max-width:767px) {
  .sp_only {
    display: block !important
  }

  .special .tb_only {
    display: none !important
  }

  .content__ttl h2 {
    width: 67.47vw !important
  }

  .content__ttl p {
    font-size: clamp(14px, 3.73vw, 28px)
  }

  .menu__btn {
    bottom: 20px;
    right: 20px;
    width: 58px
  }

  .menu__container .menu__box {
    width: 335px;
    height: 359px
  }

  .menu__container .menu__box .close-btn {
    top: 24px;
    right: 24px;
    width: 18px;
    height: 18px
  }

  .menu__container .menu__box .close-btn::after,
  .menu__container .menu__box .close-btn::before {
    width: 25px;
    height: 1px
  }

  .menu__container .menu__box .menu__ttl {
    margin-bottom: 14px;
    padding-top: 22px;
    padding-left: 25px;
    padding-bottom: 8px;
    font-size: 16px
  }

  .menu__container .menu__box .menu__list {
    width: 255px
  }

  .menu__container .menu__box .menu__list .menu__item a {
    padding: 5px 10px 6px;
    font-size: 16px
  }

  .menu__container .menu__box .menu__list .menu__item a span {
    padding-left: 19px
  }

  .menu__container .menu__box .menu__list .menu__item a span::before {
    width: 6px;
    height: 6px;
    border-top: 1px solid #ad9257;
    border-right: 1px solid #ad9257
  }

  .intro h1 {
    width: 83.73vw;
    padding-bottom: 3.6vw
  }

  .intro .intro__txt {
    font-size: clamp(14px, 3.73vw, 20px)
  }

  .intro .intro__txt:first-of-type {
    padding-bottom: 5.33vw
  }

  .intro .intro__note {
    margin-top: 5.33vw;
    font-size: clamp(10px, 2.67vw, 18px)
  }

  .special .content__hide .first-btn__wrap {
    padding-top: 5.33vw
  }

  .special .content__hide .first-btn {
    width: 48vw;
    height: 13.33vw;
    border-radius: 6.67vw
  }

  .special .content__hide .first-btn span {
    padding-right: 3.73vw;
    font-size: 3.73vw
  }

  .special .content__hide .first-btn span::after {
    width: 2.13vw;
    height: 1.33vw;
    background: url(/elegance_bp/shop/files/el_poudre35th_ic02_png.svg) center/contain no-repeat
  }

  .contrib__vol+.contrib__btn {
    position: inherit;
    right: inherit
  }

  .contrib__btn {
    margin-top: 5.33vw !important
  }

  .special .contrib__btn a {
    width: 24vw;
    height: 5.87vw
  }

  .special .contrib__btn a span {
    padding-right: 4vw;
    font-size: 3.2vw
  }

  .special .contrib__btn a span::after {
    width: 2.93vw;
    height: 3.2vw;
    background: url(/elegance_bp/shop/files/el_poudre35th_ic04.svg) center/2.93vw 3.2vw no-repeat
  }

  .special.fixed::before {
    background-image: url(/elegance_bp/shop/files/el_poudre35th_0731_bg01_sp.jpg)
  }

  .special .content__ttl {
    margin-top: 13.33vw
  }

  .special .content__ttl h2 {
    width: 75.47vw
  }

  .special .special-ttl .special-ttl__lead {
    margin-top: -3.2vw;
    line-height: 1.5;
    font-size: clamp(15px, 4vw, 21px);
    text-shadow: 0 0 2.8vw #9c6a2c50
  }

  .special .special__container {
    margin-top: 0;
    padding-bottom: 7.6vw
  }

  .special .guest__box {
    max-width: 100%;
    margin: 2.67vw auto 0
  }

  .special .contrib__box {
    width: 92vw;
    margin: 5.33vw auto 0;
    padding: 2.26vw 8vw 10.67vw;
    box-shadow: .8vw .8vw .8vw #2c2c2c20
  }

  .special .contrib__vol {
    margin-top: 2.6vw;
    padding-bottom: 1.6vw;
    font-size: 6.4vw
  }

  .special .contrib__vol::after {
    width: 24.53vw;
    height: 1.6vw;
    background: url(/elegance_bp/shop/files/el_poudre35th_0731_ic01_sp.svg) center/cover no-repeat
  }

  .special .contrib__ttl {
    margin-top: 4.67vw;
    font-size: clamp(15px, 4vw, 21px)
  }

  .special .contrib__txt:first-of-type {
    margin-top: 7.33vw
  }

  .special .contrib__txt {
    margin-top: 9.33vw
  }

  .special .contrib__txt dt {
    padding-left: 4.27vw;
    line-height: 1.5;
    font-size: clamp(13px, 3.47vw, 19px);
    font-feature-settings: "palt";
    letter-spacing: .03em
  }

  .special .contrib__txt dt::before {
    width: 3.2vw;
    height: 3.2vw;
    transform: inherit;
    top: 1vw
  }

  .special .contrib__txt dd {
    margin-top: 4vw;
    font-size: clamp(12px, 3.2vw, 18px);
    line-height: 1.667
  }

  .special .contrib__note {
    font-size: clamp(11px, 2.93vw, 17px)
  }

  .special .contrib__next {
    margin-top: 14.67vw;
    font-size: clamp(15px, 4vw, 22px)
  }

  .special .contrib__next::before {
    height: 1px
  }

  .special .contrib__next::after {
    width: 48vw
  }

  .special .contrib__box .contrib__img {
    width: 50vw !important
  }

  .special .contrib__box.first-part .contrib__img.contrib__img__first,
  .special .contrib__box.latter-part .contrib__img.contrib__img__last {
    float: right;
    margin: 1vw -12vw 1vw 2vw
  }

  .special .contrib__box.first-part .contrib__img.contrib__img__last,
  .special .contrib__box.latter-part .contrib__img.contrib__img__first {
    float: left;
    margin: 1vw 2vw 1vw -12vw
  }

  .history {
    margin-bottom: 8vw
  }

  .history::before {
    width: 32vw;
    height: 28vw;
    background: url(/elegance_bp/shop/files/el_poudre35th_bg01_top.png) bottom left/38.13vw 31.73vw no-repeat
  }

  .history::after {
    width: 49.07vw;
    height: 24.8vw;
    background: url(/elegance_bp/shop/files/el_poudre35th_bg01_bottom.png) top right/49.07vw 32vw no-repeat
  }

  .history .history__container {
    padding: 8vw 0 0
  }

  .history .history__container .swiper__history,
  .message .message-ttl,
  .message .message__container .message__list li {
    margin-bottom: 13.33vw
  }

  .history .history__container .history-ttl {
    margin-bottom: 4vw
  }

  .history .history__container .history-ttl h2,
  .message .message-ttl h2,
  .products .products-ttl h2 {
    margin-left: -3.73vw
  }

  .history .history__container .history-box__top h3 {
    margin-bottom: 4.27vw;
    font-size: 4.8vw
  }

  .history .history__container .history-box__top h3 span {
    font-size: 3.73vw
  }

  .history .history__container .history-box__top p {
    font-size: 3.2vw
  }

  .history .history__container .history-box {
    width: 100%;
    padding: 0 4vw
  }

  .history .history__container .history-box::before {
    top: 3.47vw;
    left: 2.93vw;
    width: 3.73vw;
    height: 6.93vw;
    background: url(/pages/elegance/main/elegance_la-poudre/img/el_poudre35th_ic03.png) center/contain no-repeat
  }

  .history .history__container .history-box::after {
    position: absolute;
    top: 8vw;
    left: 4.8vw;
    height: calc(100% - 10.4vw)
  }

  .history .history__container .history-box .history-year {
    margin-top: 8vw;
    margin-bottom: 8vw;
    padding: 0 1.33vw 0 4.8vw
  }

  .history .history__container .history-box .history-year img {
    height: 16vw
  }

  .history .history__container .history-box .box__year {
    flex-wrap: wrap;
    gap: 8vw
  }

  .history .history__container .history-box .box__year .txt__box {
    width: 100%;
    padding: 0 1.33vw 0 4.8vw
  }

  .history .history__container .history-box .box__year .im__box {
    width: 53.33vw;
    margin: 0 auto
  }

  .history .history__container .history-box .box__year .txt__box .history-txt dt {
    margin-bottom: 2.67vw;
    font-size: 4.27vw
  }

  .history .history__container .history-box .box__year .txt__box .history-txt dt img {
    height: 3.2vw
  }

  .history .history__container .history-box .box__year .txt__box .history-txt dd {
    line-height: 2.2;
    font-size: 2.93vw
  }

  .history .pagenation-wrap {
    max-width: 100% !important;
    width: 100%;
    height: 8vw;
    border-radius: 0
  }

  .history .swiper-pagination {
    bottom: 0 !important;
    display: flex;
    justify-content: center;
    align-items: center;
    height: 100%
  }

  .history .swiper-pagination-bullet {
    margin: 0 1.87vw 0 0 !important;
    font-size: 13px
  }

  @media screen and (max-width:320px) {
    .history .swiper-pagination-bullet {
      font-size: 12px
    }
  }

  .history .swiper-pagination-bullet:first-of-type,
  .history .swiper-pagination-bullet:last-of-type {
    margin: 0 !important
  }

  .history .swiper-pagination-bullet-active {
    color: #fff
  }

  .history .swiper-button-next,
  .history .swiper-button-prev {
    top: initial;
    bottom: 0;
    width: 3.2vw;
    height: 100%;
    background: initial
  }

  .history .swiper-button-next {
    right: 1.6vw
  }

  .history .swiper-button-prev {
    left: 1.6vw
  }

  .history .swiper-button-next::after,
  .history .swiper-button-prev::after {
    top: 12%;
    width: 3.2vw;
    height: 3.2vw;
    border-right: 2px solid #fff;
    border-top: 2px solid #fff
  }
  
  .history .history-thumbnail {
    max-width: 100%;
    height: 11.2vw;
    border-radius: 0;
  }
  .history .history-thumbnail-item {
    font-size: 3.73vw;
  }

  .quality .quality-txt h3 {
    margin-bottom: 4.53vw;
    font-size: 6.93vw
  }

  .quality .quality-txt .lead {
    font-size: clamp(14px, 1.87vw, 21px)
  }

  .quality .quality-txt .features {
    flex-direction: column;
    row-gap: 5.6vw;
    margin: 7.2vw 3.73vw 0;
    padding: 5.73vw 0 7.73vw
  }

  .quality .quality-txt .features .feature__item {
    width: 100%
  }

  .quality .quality-txt .features .feature__item .feature__ttl {
    padding: 0 2em .27vw;
    border-bottom: 1px solid;
    font-size: clamp(15px, 2vw, 21px)
  }

  .quality .quality-txt .features .feature__item .feature__txt {
    margin-top: .53vw;
    font-size: clamp(12px, 1.6vw, 18px)
  }

  .message::before {
    background-image: url(/elegance_bp/shop/files/el_poudre35th_bg03_sp.jpg)
  }

  .message .message-ttl {
    margin-top: 13.33vw
  }

  .message .message-ttl .message-ttl__lead {
    margin-top: -.53vw;
    font-size: 3.73vw
  }

  .message .message__container .message__list .message__item .card__wrap .message__card {
    width: 92vw;
    padding: 2.67vw;
    box-shadow: .8vw .8vw .8vw #2c2c2c20
  }

  .message .message__container .message__list .message__card dl {
    padding: 5.33vw
  }

  .message .message__container .message__list .message__card dl::before {
    background: url(/elegance_bp/shop/files/el_poudre35th_deco01_sp.png) top center/contain no-repeat
  }

  .message .message__container .message__list .message__card dl::after {
    background: url(/elegance_bp/shop/files/el_poudre35th_deco02_sp.png) bottom center/contain no-repeat
  }

  .message .message__container .message__list .message__card dl dt {
    gap: 4vw;
    margin-bottom: 5.33vw
  }

  .message .message__container .message__list .message__card dl dt .message__im {
    width: 90px;
    height: 90px
  }

  .message .message__container .message__list .message__card dl dt .message__name .name {
    margin-bottom: 10px;
    font-size: 18px
  }

  .message .message__container .message__list .message__card dl dt .message__name .name span {
    font-size: 11px
  }

  .message .message__container .message__list .message__card dl dt .message__name .title {
    margin-bottom: 10px;
    font-size: 12px
  }

  .message .message__container .message__list .message__card dl dt .message__name .profile__btn {
    width: 86px;
    height: 18px;
    font-size: 10px
  }

  .message .message__container .message__list .message__card dl dt .message__name .profile__btn span {
    padding-right: 11px
  }

  .message .message__container .message__list .message__card dl dt .message__name .profile__btn span::after,
  .message .message__container .message__list .message__card dl dt .message__name .profile__btn span::before {
    width: 8px
  }

  .message .message__container .message__list .message__card dl .message-txt {
    line-height: 1.667;
    font-size: 12px
  }

  .message .modal__wrapper .modal__container {
    width: 89.33vw
  }

  .message .modal__wrapper .modal__container .modal__inner {
    padding: 5.33vw 6.67vw
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn {
    top: 4vw;
    right: 4vw;
    width: 4.8vw;
    height: 4.8vw
  }

  .message .modal__wrapper .modal__container .modal__inner .close-btn::after,
  .message .modal__wrapper .modal__container .modal__inner .close-btn::before {
    width: 6.67vw
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__title {
    margin-bottom: 2.67vw;
    padding-bottom: 1.07vw;
    font-size: clamp(18px, 4.8vw, 27px)
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__title span {
    font-size: clamp(11px, 2.93vw, 16px)
  }

  .message .modal__wrapper .modal__container .modal__inner .modal__text {
    line-height: 1.818;
    font-size: clamp(11px, 2.93vw, 16px)
  }

  .products .products-ttl__lead {
    margin-top: -3.73vw
  }

  .products .products__container {
    flex-direction: column;
    gap: 10.67vw;
    width: 100%;
    margin: 7.47vw 0 0;
    padding: 0
  }

  .products .products__container .products__box {
    width: 100%
  }

  .products .products__container .products__box .products-powder {
    height: 12vw;
    font-size: clamp(12px, 3.2vw, 18px)
  }

  .products .products__container .products__box.left .products-powder {
    justify-content: flex-end;
    padding: 0 6.67vw
  }

  .products .products__container .products__box.right .products-powder {
    padding: 0 5.33vw
  }

  .products .products__container .products__box.left .products-img {
    top: 2.67vw;
    left: 4vw;
    width: 46.67vw
  }

  .products .products__container .products__box.right .products-img {
    top: 4vw;
    right: 5.33vw;
    width: 46.67vw
  }

  .products .products__container .products__box .products-feature {
    margin-top: 4.53vw;
    line-height: 1.813;
    font-size: 4.53vw
  }

  .products .products__container .products__box.left .products-feature {
    display: flex;
    justify-content: flex-end;
    padding: 0 6.67vw
  }

  .products .products__container .products__box.right .products-feature {
    padding-left: 5.33vw
  }

  .products .products__container .products__box .product-detail {
    margin-top: 9.33vw
  }

  .products .products__container .products__box.left .product-detail,
  .swiper__color .swiper-wrapper {
    margin-left: 0
  }

  .products .products__container .products__box.right .product-detail {
    margin-right: 0
  }

  .products .products__container .products__box .product-detail .txt-small {
    margin-bottom: 1.33vw;
    font-size: clamp(12px, 3.2vw, 16px)
  }

  .products .products__container .products__box .product-detail .txt-name {
    margin-bottom: 3.2vw;
    line-height: 1.3;
    font-size: clamp(14px, 4.27vw, 26px)
  }

  .products .products__container .products__box .product-detail .txt-name span {
    font-size: clamp(12px, 3.2vw, 16px)
  }

  .products .products__container .products__box .product-detail .price {
    margin-bottom: 4.8vw;
    font-size: clamp(14px, 3.73vw, 26px)
  }

  .products .products__container .products__box .products-note {
    padding: 0 6.67vw
  }

  .products .products__container .products__box .products-note li,
  .products .products__container .products__box .products-note li a {
    line-height: 1.5;
    font-size: clamp(11px, 2.93vw, 14px)
  }

  .color__container {
    position: relative;
    max-width: 92vw;
    height: auto;
    margin: 0 auto 4.67vw
  }

  .swiper__color .swiper-slide {
    width: 100% !important;
    margin: 0 auto;
    padding-top: 0
  }

  .swiper__color .swiper-slide-active {
    width: 100% !important
  }

  .swiper__color .swiper-slide .color__im {
    width: 50.67vw;
    margin: 0 auto
  }

  .swiper__color .swiper-slide .color__im img {
    animation-duration: 90s;
    animation-name: color-variation;
    animation-timing-function: linear;
    animation-iteration-count: infinite
  }

  .swiper__color .swiper-slide .color__txt {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    gap: 5.33vw;
    margin-top: 5.33vw
  }

  .swiper__color .swiper-slide .color__txt p {
    font-size: 3.73vw;
    line-height: 1.357
  }

  .swiper__color .swiper-slide .color__txt p img {
    width: auto;
    height: 14vw
  }

  .swiper__color .swiper-slide .color__txt p span.kerning {
    font-feature-settings: "palt"
  }

  .swiper__color .swiper-slide .color__txt p span.matte,
  .swiper__color .swiper-slide .color__txt p span.tsuya {
    width: 21.33vw;
    height: 5.07vw;
    display: flex;
    justify-content: center;
    align-items: center;
    margin-bottom: .67vw;
    font-size: 2.67vw
  }

  .swiper__color .swiper-slide .color__txt p span.matte {
    background: #fff;
    color: #ad9257;
    border: 1px solid #c2a668
  }

  .swiper__color .swiper-slide .color__txt p span.tsuya {
    background: #c2a668;
    color: #fff
  }

  .color__container .swiper-button-next,
  .color__container .swiper-button-prev {
    height: 5.33vw;
    width: 2.67vw;
    top: 29.5vw;
    z-index: 2
  }

  .color__container .swiper-button-prev {
    left: 9%
  }

  .color__container .swiper-button-next {
    right: 9%
  }

  .color__container .swiper-button-prev::after {
    transform: scale(-1, 1)
  }

  .color__container .swiper-button-next::after,
  .color__container .swiper-button-prev::after {
    background-image: url(/elegance_bp/shop/files/el_25ss_style1_ic_01.png);
    background-repeat: no-repeat;
    background-size: contain;
    content: "";
    margin: auto;
    height: 5.33vw;
    width: 2.67vw
  }

  .slider-thumbnail {
    margin: 0 auto;
    max-width: 92.4vw
  }

  .slider-thumbnail .thum__items {
    flex-wrap: wrap;
    justify-content: center;
    gap: .67vw 1.33vw;
    padding-bottom: 5.87vw;
    transform: translate(0) !important;
  }

  .slider-thumbnail .thum__item {
    position: relative;
    cursor: pointer;
    width: calc((100% - 6.93vw)/ 4) !important;
    padding: 2.8vw 2.8vw 1.87vw;
    border-radius: 7.6vw
  }

  .slider-thumbnail .thum__item::after {
    position: absolute;
    top: 0;
    left: 0;
    content: "";
    width: 100%;
    height: 100%;
    background: #f6f6f6;
    z-index: -1;
    transition: .3s;
    transform: scale(0);
    border-radius: 7.6vw
  }

  .slider-thumbnail .thum__item.swiper-slide-thumb-active::after {
    transform: scale(100%);
    opacity: 1
  }

  .slider-thumbnail .thum__items::after {
    content: '';
    width: 100%
  }

  /*.slider-thumbnail .thum__item:nth-child(n+4) {
    order: 1
  }*/

  .slider-thumbnail .thum__item .thumbnail__inner {
    position: relative;
    z-index: 1
  }

  .slider-thumbnail .thum__item .thumbnail__im {
    width: 100%;
    margin: 0 auto 1.33vw
  }

  .slider-thumbnail .thum__item .thumbnail__txt {
    text-align: center;
    font-size: 3.2vw
  }
  .slider-thumbnail .thum__item .new__label {
    position: absolute;
    bottom: -6.4vw;
    left: 50%;
    display: flex;
    justify-content: center;
    align-items: center;
    width: 21.6vw;
    height: 4.53vw;
    border: solid 1px #c2a668;
    transform: translateX(-50%);
    font-size: 3.2vw;
    color: #c2a668;
  }

  .voice .voice-ttl .voice-ttl__lead {
    margin-top: -1vw
  }

  .voice .voice__container {
    margin: 5.33vw auto 0;
    padding: 0 4vw
  }

  .voice .voice__note {
    max-width: calc(480px + 2.67vw);
    margin: 0 auto 1.6vw;
    font-size: clamp(10px, 2.67vw, 11px)
  }

  .voice .voice__container ul {
    grid-template-columns: repeat(auto-fit, 240px);
    gap: 2.67vw
  }

  .voice .voice__container ul .voice-item {
    width: 240px;
    height: 416px;
    border-radius: 20px
  }

  .voice .voice__container ul .voice-item .item__pic {
    width: 240px;
    height: 240px;
    border-radius: 20px 20px 0 0
  }

  .voice .voice__container ul .voice-item a:hover .item__pic img {
    overflow: hidden;
    border-radius: 20px 20px 0 0;
    transform: scale(1)
  }

  .voice .voice__container ul .voice-item .item__txt {
    gap: 4px;
    margin: 15px
  }

  .voice .voice__container ul .voice-item .item__txt .txt-icon {
    width: 18px;
    height: 18px
  }

  .voice .voice__container ul .voice-item .item__txt .txt-user {
    font-size: 14px
  }

  .voice .voice__container ul .voice-item .txt-comment {
    height: 110px;
    margin: 0 15px 15px;
    line-height: 1.5;
    font-size: 12px
  }

  .voice .voice__container .more-btn {
    width: 180px;
    height: 50px;
    margin: 20px auto 0;
    border-radius: 25px;
    font-size: 14px
  }

  .voice .voice__container .more-btn span {
    padding-right: 16px
  }

  .voice .voice__container .more-btn span::after {
    width: 8px;
    height: 5px
  }
}

.Instagram__Button::after,
.Instagram__Button::before,
.Serch__Button::after,
.Serch__Button::before {
  padding: 0 2%;
  top: 50%;
  content: "";
  background-size: contain;
  background-repeat: no-repeat
}

@media screen and (max-width:537px) {
  .voice .voice__note {
    max-width: 240px
  }
}

.Instagram__Button {
  font-style: normal;
  color: var(--el-primary-color);
  display: table;
  margin-left: auto;
  margin-right: 0;
  padding-right: 2.5%;
  padding-left: 5%;
  position: relative
}

.Banner__Wrapper,
.Serch__Button__Wrapper {
  max-height: 75px !important;
  margin: 0 auto !important;
  width: 45vw !important;
  height: 6.5vw !important;
  line-height: 2.4em !important;
  text-align: center !important;
  max-width: 550px !important
}

.Instagram__Button::before {
  color: #f4f0e7;
  width: 50%;
  height: 50%;
  position: absolute;
  transform: translateY(-45%);
  left: 10%;
  background-image: url("/elegance_bp/shop/t/7/assets/instagramlogo-1675153827975.png")
}

.Instagram__Button::after {
  width: 30%;
  height: 30%;
  position: absolute;
  transform: translateY(-35%);
  right: -24%;
  background-image: url("/elegance_bp/shop/t/7/assets/arrowgold-1675127453332.png");
  transition: .3s
}

.Instagram__Button:hover:after {
  transform: translate(5px, -35%)
}

.Hover {
  transition: opacity .4s
}

@media (any-hover:hover) {
  .Hover:hover {
    opacity: .7;
    cursor: pointer
  }
}

.Serch__Button__Wrapper {
  position: relative !important;
  border-style: solid !important;
  border-color: var(--el-primary-color) !important;
  border-width: 1px !important;
  background-color: var(--el-primary-color) !important
}

.Serch__Button {
  color: #fff !important;
  opacity: .7;
  transform: scaleY(1.2);
  color: var(--el-primary-color);
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%, -50%)
}

.Serch__Button::before {
  color: #f4f0e7;
  width: 14%;
  height: 70%;
  position: absolute;
  transform: translateY(-53%);
  left: -20px;
  background-image: url("/elegance_bp/shop/t/7/assets/sarchpoint-1675046130298.png")
}

.Serch__Button::after {
  width: 6%;
  height: 30%;
  position: absolute;
  transform: translateY(-55%);
  right: -20px;
  background-image: url("/elegance_bp/shop/t/7/assets/arrowmore-1675147928688.png");
  transition: .3s
}

.Serch__Button:hover:after {
  transform: translate(5px, -55%)
}

.Banner__Wrapper {
  position: relative !important
}

.Banner__Wrapper::after {
  content: "";
  width: 20px;
  height: 20px;
  font-weight: 700;
  position: absolute;
  bottom: 0;
  right: 0;
  background-image: url("/elegance_bp/shop/t/7/assets/logo_rz02-1675993129563.png");
  background-size: contain;
  background-repeat: no-repeat
}

.Banner__Button {
  transform: scaleY(1.2)
}

.Banner__Text {
  font-size: clamp(10px, 1.694vw, 20px) !important
}

.elegancetop {
  margin-top: 50px !important;
  margin-bottom: 50px !important
}

.elg-store-finder-link .elg-store-finder-link__button {
  max-width: 550px !important
}

@media screen and (max-width:767px) {
  .Instagram__Button {
    font-size: clamp(10px, 3.12vw, 22px) !important
  }

  .Serch__Button {
    font-size: clamp(12px, 3.75vw, 50px) !important
  }

  .Serch__Button__Wrapper {
    width: 100% !important;
    height: 16vw !important
  }

  .Banner__Wrapper {
    width: 90%
  }

  .Banner__Text {
    font-size: clamp(12px, 3.75vw, 19px) !important
  }

  .elegancetop {
    margin-top: 8% !important;
    margin-bottom: 8% !important
  }

  .elg-store-finder-link {
    padding: 0 !important
  }

  .elegancetop__banner {
    margin: 0 !important
  }
}

.el__floatingBanner .floating-banner__row>div {
  padding: 0 !important
}

.el__floatingBanner.active {
  transition: .3s;
  pointer-events: all !important
}

/* 20260730 */
.__el.__el_xTfYSct4 .el-172_ {
  z-index: auto;
}