/* kv */
.kv {
  padding-top: 100px;
  position: relative;
  z-index: 4;
}
@media screen and (max-width: 767px) {
  .kv {
    padding-top: 5.3333333333vw;
    display: flex;
    flex-direction: column;
    align-items: center;
  }
}
.kv .kv-ttl {
  position: absolute;
  top: -12px;
  left: max(616px, 51.3909224012vw);
  right: 0;
  z-index: 6;
}
@media screen and (max-width: 767px) {
  .kv .kv-ttl {
    width: 85.3333333333vw;
    position: static;
    order: 1;
    margin-bottom: 5.3333333333vw;
  }
}
@media screen and (min-width: 768px) {
  .kv .kv-ttl img {
    zoom: 0.5;
  }
}
.kv .kv-slider-wrap {
  display: flex;
  align-items: center;
  justify-content: center;
  gap: 32px;
  width: max(1465px, 122.1083455344vw);
  position: relative;
  top: 0;
  right: max(137px, 11.420204978vw);
  z-index: 3;
  transform: rotate(15deg);
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap {
    order: 2;
    top: 0;
    left: 0;
    gap: 20px;
    width: 524px;
    transform: rotate(15deg);
    margin: 0;
  }
}
.kv .kv-slider-wrap::before {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 350px;
  bottom: -70px;
  left: -13.3333333333vw;
  background: #8a1d2d;
  z-index: 1;
  transition-duration: 0.6s;
  transform-origin: top left;
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap::before {
    height: 46.6666666667vw;
    bottom: -8.5333333333vw;
    left: -20vw;
  }
}
.kv .kv-slider-wrap.brown::before {
  background: #94711f;
}
.kv .kv-slider-wrap.gray::before {
  background: #474747;
}
.kv .kv-slider-wrap.red::before {
  background: #8a1d2d;
}
.kv .kv-slider-wrap.black::before {
  background: #000;
}
.kv .kv-slider-wrap.purple::before {
  background: #232363;
}
.kv .kv-slider-wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 350px;
  bottom: -70px;
  left: -13.3333333333vw;
  mix-blend-mode: screen;
  background: url(/special/fiole-goald_25/assets/images/pic_kv_texture.webp) repeat-x left bottom/auto 350px;
  z-index: 2;
  transition-duration: 0.6s;
  transform-origin: top left;
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap::after {
    height: 46.6666666667vw;
    bottom: -8.5333333333vw;
    left: -20vw;
  }
}
.kv .kv-slider-wrap.show::before {
  width: 200vw;
}
.kv .kv-slider-wrap.show::after {
  width: 200vw;
}
.kv .kv-slider-wrap.show .kv-loop-animation {
  opacity: 1;
}
.kv .kv-slider-wrap .kv-slider {
  position: relative;
  z-index: 4;
  width: 488px;
  box-shadow: 20px 20px 36px rgba(0, 0, 0, 0.3);
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap .kv-slider {
    width: 65.0666666667vw;
  }
}
.kv .kv-slider-wrap .kv-slider:not(.main) {
  width: 260px;
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap .kv-slider:not(.main) {
    width: 34.6666666667vw;
  }
}
.kv .kv-slider-wrap .kv-slider li {
  position: relative;
}
.kv .kv-slider-wrap .kv-slider li::before {
  content: "";
  display: block;
  position: absolute;
  width: 150%;
  height: 150%;
  top: -20%;
  left: -20%;
  transform: rotate(-15deg);
  background: #000;
  transition: all 0.6s ease;
  transition-delay: 0.3s;
  pointer-events: none;
}
.kv .kv-slider-wrap .kv-slider li.is-active::before {
  left: 125%;
}
.kv .kv-slider-wrap .kv-loop-animation {
  display: flex;
  align-items: center;
  position: absolute;
  z-index: 3;
  bottom: 26px;
  left: -64px;
  opacity: 0;
  transition: all 0.6s ease;
  transition-delay: 0.3s;
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap .kv-loop-animation {
    bottom: 2.1333333333vw;
    left: 20vw;
  }
}
.kv .kv-slider-wrap .kv-loop-animation .roll-contents {
  width: 1870px;
}
@media screen and (max-width: 767px) {
  .kv .kv-slider-wrap .kv-loop-animation .roll-contents {
    width: 249.3333333333vw;
  }
}
.kv .kv-slider-wrap .kv-loop-animation .loop-animation {
  animation: txt-loop-animation 40s linear infinite;
}

/* /kv */
/* movie */
.movie-area {
  position: relative;
  margin-top: -80px;
  overflow: hidden;
  padding: 368px 0 400px;
  padding: clamp(324px, 26.9399707174vw, 420px) 0 400px;
  clip-path: polygon(50% 0%, 100% 24%, 100% 100%, 0 99%, 0 0);
}
@media screen and (max-width: 767px) {
  .movie-area {
    margin-top: -30px;
    padding: 120px 0 400px;
    clip-path: polygon(50% 0%, 100% 4%, 100% 100%, 0 99%, 0 0);
  }
}
.movie-area .movie-area-bg {
  position: absolute;
  transform: rotate(-15deg);
  top: max(150px, 12.4450951684vw);
  right: max(-136px, -5.270863836vw);
  top: 10.980966325vw;
  right: -5.270863836vw;
  transform-origin: center;
  width: max(1366px, 120vw);
  height: 1024px;
}
.movie-area .movie-area-bg::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background: url(/special/fiole-goald_25/assets/images/bg_movie.webp) no-repeat center/cover #000;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .movie-area .movie-area-bg {
    top: 16vw;
    right: -100vw;
    height: 213.3333333333vw;
  }
}
.movie-area .movie-loop-animation {
  display: flex;
  align-items: center;
  flex-direction: row-reverse;
  gap: 16px;
  position: absolute;
  top: clamp(-180px, -7.3206442167vw, -88px);
  right: 0;
  transition: all 0.6s ease;
  transition-delay: 0.3s;
  background-color: #000;
  padding: 18px 0;
  transform: rotate(-15deg);
  transform-origin: top right;
  z-index: 3;
  opacity: 0;
}
.movie-area .movie-loop-animation.show {
  opacity: 1;
}
@media screen and (max-width: 767px) {
  .movie-area .movie-loop-animation {
    top: -17.0666666667vw;
  }
}
.movie-area .movie-loop-animation .roll-contents {
  width: 1876px;
}
@media screen and (max-width: 767px) {
  .movie-area .movie-loop-animation .roll-contents {
    width: 250.1333333333vw;
  }
}
.movie-area .movie-loop-animation .loop-animation {
  animation: txt-loop-animation-reverse 40s linear infinite;
}
.movie-area .cmn-inner {
  position: relative;
  z-index: 1;
  padding: 0 78px 0 68px;
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner {
    padding: 0 16px;
  }
}
.movie-area .cmn-inner::after {
  content: "";
  display: block;
  position: absolute;
  width: 1003px;
  height: 463px;
  right: -114px;
  bottom: -264px;
  background: url(/special/fiole-goald_25/assets/images/txt_movie_accent.svg) no-repeat center/1003px auto;
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner::after {
    width: 66.9333333333vw;
    height: 30.9333333333vw;
    background-size: cover;
    right: 24px;
    bottom: -100px;
  }
}
.movie-area .cmn-inner .movie-ttl {
  margin-bottom: 20px;
  font-size: 6rem;
  font-weight: 900;
  line-height: 1.4666666667;
  font-style: italic;
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner .movie-ttl {
    margin-bottom: 32px;
    font-size: 4rem;
  }
}
.movie-area .cmn-inner .movie-box {
  display: flex;
  gap: 80px;
  position: relative;
  z-index: 3;
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner .movie-box {
    flex-direction: column;
    gap: 40px;
  }
}
.movie-area .cmn-inner .movie-box .movie-txt {
  line-height: 2.25;
  flex: 1;
  font-style: italic;
  padding-left: 6px;
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner .movie-box .movie-txt {
    flex: 0 1 auto;
  }
}
.movie-area .cmn-inner .movie-box .movie-wrap {
  position: relative;
  box-shadow: 20px 20px 36px rgba(0, 0, 0, 0.3);
}
@media screen and (min-width: 768px) {
  .movie-area .cmn-inner .movie-box .movie-wrap {
    padding-top: 16px;
  }
}
.movie-area .cmn-inner .movie-box .movie-wrap .video {
  width: 100%;
}
.movie-area .cmn-inner .movie-box .movie-wrap .play-btn {
  display: block;
  overflow: hidden;
  position: absolute;
  width: 112px;
  height: 106px;
  top: calc(50% - 56px);
  left: calc(50% - 53px);
  text-indent: -9999px;
  background: url(/special/fiole-goald_25/assets/images/icn_play_arr.svg) no-repeat center/112px auto;
  cursor: pointer;
  z-index: 2;
  transition: all 0.6s ease;
}
@media (any-hover: hover) {
  .movie-area .cmn-inner .movie-box .movie-wrap .play-btn:hover {
    background-image: url(/special/fiole-goald_25/assets/images/icn_play_arr_black.svg);
  }
}
@media screen and (max-width: 767px) {
  .movie-area .cmn-inner .movie-box .movie-wrap .play-btn {
    width: 56px;
    height: 54px;
    top: calc(50% - 28px);
    left: calc(50% - 27px);
    background-size: contain;
  }
}
.movie-area .cmn-inner .movie-box .movie-wrap .play-btn.hide {
  opacity: 0;
  pointer-events: none;
  visibility: visible;
}

/* style */
.style-wrap {
  position: relative;
  z-index: 2;
  margin-top: -320px;
}
@media screen and (max-width: 767px) {
  .style-wrap {
    margin-top: -240px;
  }
}
.style-wrap .style {
  position: relative;
  padding-top: max(105px, 8.78477306vw);
}
.style-wrap .style + .style {
  margin-top: 64px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style + .style {
    margin-top: 120px;
  }
}
@media screen and (max-width: 767px) {
  .style-wrap .style {
    padding-top: 64px;
  }
}
.style-wrap .style .style-loop-animation {
  display: flex;
  align-items: center;
  gap: 24px;
  position: absolute;
  top: -86px;
  left: 0;
  z-index: 3;
  transition: all 0.6s ease;
  transition-delay: 0.3s;
  background-color: #000;
  padding: 18px 0;
  transform: rotate(15deg);
  transform-origin: top left;
}
@media screen and (max-width: 767px) {
  .style-wrap .style .style-loop-animation {
    top: -60px;
  }
}
.style-wrap .style .style-loop-animation .loop-animation {
  animation: txt-loop-animation 40s linear infinite;
}
.style-wrap .style .bg-texture-line {
  position: absolute;
  top: 0;
  left: 0;
  width: 0;
  height: 424px;
  transform-origin: top left;
  transform: rotate(15deg);
  background-color: #0767ba;
}
.style-wrap .style .bg-texture-line::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 424px;
  top: 0;
  left: 0;
  mix-blend-mode: screen;
  background: url(/special/fiole-goald_25/assets/images/pic_style_texture.webp) repeat-x left bottom/auto 424px;
  z-index: 2;
  transition-duration: 0.6s;
}
.style-wrap .style .bg-color-line {
  position: absolute;
  top: clamp(520px, 43.4846266471vw, 594px);
  right: -50vw;
  opacity: 0.3;
  width: 0;
  height: 438px;
  transform: rotate(-15deg);
  transform-origin: top right;
  background-color: #0767ba;
}
@media screen and (max-width: 767px) {
  .style-wrap .style .bg-color-line {
    top: auto;
    bottom: 200px;
    right: -200px;
  }
}
.style-wrap .style .cmn-inner {
  position: relative;
  z-index: 4;
}
@media screen and (min-width: 768px) {
  .style-wrap .style:nth-of-type(even) .style-loop-animation {
    right: 0;
    left: auto;
    transform: rotate(-15deg);
    transform-origin: top right;
  }
  .style-wrap .style:nth-of-type(even) .style-loop-animation .loop-animation {
    animation: txt-loop-animation-reverse 40s linear infinite;
  }
  .style-wrap .style:nth-of-type(even) .bg-texture-line {
    left: auto;
    right: 0;
    transform: rotate(-15deg);
    transform-origin: top right;
  }
  .style-wrap .style:nth-of-type(even) .bg-texture-line::after {
    background-position: right bottom;
    left: auto;
    right: 0;
  }
  .style-wrap .style:nth-of-type(even) .bg-color-line {
    right: auto;
    left: -50vw;
    transform: rotate(15deg);
    transform-origin: top left;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-main-wrap {
    order: 2;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-main-wrap::after {
    right: -84px;
    left: auto;
    background-image: url(/special/fiole-goald_25/assets/images/bg_style_polygon_reverse.svg);
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-main-wrap .style-image-wrap .style-image-main {
    -webkit-mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_reverse.svg");
            mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_reverse.svg");
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-main-wrap .style-image-wrap .stylist {
    right: 0;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-main-wrap .stype-point {
    padding: 40px 48px 0;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap {
    order: 1;
    padding: 250px 88px 0 0;
    align-items: end;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .style-ttl {
    text-align: right;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .before-after-dl {
    grid-template-columns: auto 56px;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .before-after-dl dt:nth-of-type(1) {
    grid-area: 1/2/2/3;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .before-after-dl dd:nth-of-type(1) {
    grid-area: 1/1/2/2;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .before-after-dl dt:nth-of-type(2) {
    grid-area: 2/2/3/3;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .before-after-dl dd:nth-of-type(2) {
    grid-area: 2/1/3/2;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .recipe-dl dt {
    order: 2;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .recipe-dl dd {
    order: 1;
    text-align: right;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .style-sample-image .style-sample {
    -webkit-mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_sub_reverse.svg");
            mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_sub_reverse.svg");
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .style-sample-image .style-sample:first-of-type {
    margin-top: 0px;
  }
  .style-wrap .style:nth-of-type(even) .style-box .style-detail-wrap .style-sample-image .style-sample:last-of-type {
    margin-top: 190px;
  }
}
.style-wrap .style-box {
  display: flex;
  gap: 56px;
  color: #fff;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box {
    flex-direction: column;
    position: relative;
    gap: 0;
  }
}
.style-wrap .style-box .style-main-wrap {
  position: relative;
  width: 544px;
  height: 1424px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap {
    width: 100%;
    height: auto;
    display: contents;
  }
}
.style-wrap .style-box .style-main-wrap::after {
  content: "";
  display: block;
  position: absolute;
  width: 684px;
  height: 1118px;
  bottom: -14px;
  left: -84px;
  background: url(/special/fiole-goald_25/assets/images/bg_style_polygon.svg) no-repeat left bottom/684px auto;
  z-index: 1;
  transition-duration: 0.6s;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap::after {
    display: none;
  }
}
.style-wrap .style-box .style-main-wrap .style-image-wrap {
  position: relative;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap .style-image-wrap {
    display: contents;
  }
}
.style-wrap .style-box .style-main-wrap .style-image-wrap .style-image-main {
  -webkit-mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon.svg");
          mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
  -webkit-mask-size: 100%;
          mask-size: 100%;
  position: relative;
  z-index: 2;
  filter: drop-shadow(20px 20px 0 rgb(0, 0, 0));
}
.style-wrap .style-box .style-main-wrap .style-image-wrap .stylist {
  position: absolute;
  z-index: 2;
  font-size: 1.4rem;
  bottom: 26px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap .style-image-wrap .stylist {
    bottom: 0;
    position: static;
    order: 5;
  }
}
.style-wrap .style-box .style-main-wrap .stype-point {
  position: relative;
  z-index: 2;
  padding: 40px 48px 0;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap .stype-point {
    order: 6;
  }
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap .stype-point {
    margin-top: 20px;
    padding: 0;
    font-size: 1.4rem;
  }
}
.style-wrap .style-box .style-main-wrap .stype-point p {
  letter-spacing: 0.05em;
  line-height: 2.625;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-main-wrap .stype-point p {
    line-height: 2.5;
  }
}
.style-wrap .style-box .style-detail-wrap {
  display: flex;
  flex-direction: column;
  padding: 260px 0 0 88px;
  flex: 1;
  position: relative;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap {
    padding: 0;
    display: contents;
    flex: 0 1 auto;
    z-index: 2;
  }
}
.style-wrap .style-box .style-detail-wrap .style-number {
  z-index: -1;
  position: absolute;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .style-number {
    zoom: 0.5;
    z-index: 2;
  }
}
.style-wrap .style-box .style-detail-wrap .style-ttl {
  font-size: 4.8rem;
  font-style: italic;
  font-weight: 900;
  line-height: 1.4166666667;
  margin-bottom: 40px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .style-ttl {
    font-size: 3.2rem;
    margin-bottom: 32px;
    position: relative;
    z-index: 3;
    order: 2;
  }
}
.style-wrap .style-box .style-detail-wrap .style-ttl span {
  font-weight: 300;
}
.style-wrap .style-box .style-detail-wrap .before-after-dl {
  display: grid;
  grid-template-columns: 56px auto;
  grid-column-gap: 20px;
  grid-row-gap: 16px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .before-after-dl {
    order: 3;
  }
}
.style-wrap .style-box .style-detail-wrap .before-after-dl dt {
  display: flex;
  justify-content: center;
  align-items: center;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  font-style: italic;
  width: 56px;
}
.style-wrap .style-box .style-detail-wrap .before-after-dl dt:first-of-type {
  border: 1px solid #fff;
}
.style-wrap .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #0767ba;
}
.style-wrap .style-box .style-detail-wrap .before-after-dl dd {
  font-weight: 500;
}
.style-wrap .style-box .style-detail-wrap .recipe-dl {
  margin-top: 98px;
  display: flex;
  gap: 24px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .recipe-dl {
    margin-top: 32px;
    margin-bottom: 32px;
    order: 4;
  }
}
.style-wrap .style-box .style-detail-wrap .recipe-dl dt {
  position: relative;
  width: 28px;
  min-height: 80px;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  font-size: 2rem;
  writing-mode: vertical-rl;
  background-color: #0767ba;
}
.style-wrap .style-box .style-detail-wrap .recipe-dl dt span {
  position: absolute;
  top: 8px;
  left: -8px;
}
.style-wrap .style-box .style-detail-wrap .recipe-dl dd p + p {
  margin-top: 12px;
}
.style-wrap .style-box .style-detail-wrap .recipe-dl dd p + .point {
  margin-top: 24px;
}
.style-wrap .style-box .style-detail-wrap .recipe-dl dd .point {
  line-height: 1;
  font-style: italic;
  font-weight: 700;
}
.style-wrap .style-box .style-detail-wrap .style-sample-image {
  display: flex;
  gap: 14px;
  margin-top: auto;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .style-sample-image {
    margin-top: 24px;
    order: 7;
  }
}
.style-wrap .style-box .style-detail-wrap .style-sample-image .style-sample {
  -webkit-mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_sub.svg");
          mask-image: url("/special/fiole-goald_25/assets/images/mask_style_polygon_sub.svg");
  -webkit-mask-repeat: no-repeat;
          mask-repeat: no-repeat;
  -webkit-mask-position: 0 0;
          mask-position: 0 0;
  -webkit-mask-size: 100%;
          mask-size: 100%;
}
.style-wrap .style-box .style-detail-wrap .style-sample-image .style-sample:first-of-type {
  margin-top: 190px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style-box .style-detail-wrap .style-sample-image .style-sample:first-of-type {
    margin-top: 100px;
  }
}
.style-wrap .style.style-01 .style-loop-animation .roll-contents {
  width: 2026px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-01 .style-loop-animation .roll-contents {
    width: 270.1333333333vw;
  }
}
.style-wrap .style.style-01 .bg-texture-line {
  background-color: #94711f;
}
.style-wrap .style.style-01 .bg-color-line {
  opacity: 0.2;
  background-color: #94711f;
}
.style-wrap .style.style-01 .style-box .style-detail-wrap .style-number {
  top: 100px;
  right: -14px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-01 .style-box .style-detail-wrap .style-number {
    right: 0;
    top: 1050px;
  }
}
.style-wrap .style.style-01 .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #cca343;
}
.style-wrap .style.style-01 .style-box .style-detail-wrap .recipe-dl dt {
  background-color: #cca343;
}
@media screen and (min-width: 768px) {
  .style-wrap .style.style-02 {
    margin-top: 64px;
  }
}
.style-wrap .style.style-02 .style-loop-animation .roll-contents {
  width: 1912px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-02 .style-loop-animation .roll-contents {
    width: 254.9333333333vw;
  }
}
.style-wrap .style.style-02 .bg-texture-line {
  background-color: #474747;
}
.style-wrap .style.style-02 .bg-color-line {
  background-color: #474747;
}
.style-wrap .style.style-02 .style-box .style-detail-wrap .style-number {
  top: 128px;
  left: -26px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-02 .style-box .style-detail-wrap .style-number {
    right: 0;
    left: auto;
    top: 1050px;
  }
}
.style-wrap .style.style-02 .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #949ba1;
}
.style-wrap .style.style-02 .style-box .style-detail-wrap .recipe-dl dt {
  background-color: #949ba1;
}
@media screen and (min-width: 768px) {
  .style-wrap .style.style-03 {
    margin-top: 26px;
  }
}
@media screen and (min-width: 768px) {
  .style-wrap .style.style-03 .style-loop-animation {
    top: -78px;
  }
}
.style-wrap .style.style-03 .style-loop-animation .roll-contents {
  width: 2440px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-03 .style-loop-animation .roll-contents {
    width: 325.3333333333vw;
  }
}
.style-wrap .style.style-03 .bg-texture-line {
  background-color: #8a1d2d;
}
.style-wrap .style.style-03 .bg-color-line {
  background-color: #8a1d2d;
}
.style-wrap .style.style-03 .style-box .style-detail-wrap .style-number {
  top: 45px;
  right: -14px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-03 .style-box .style-detail-wrap .style-number {
    right: 0;
    left: auto;
    top: 1000px;
  }
}
.style-wrap .style.style-03 .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #cf4255;
}
.style-wrap .style.style-03 .style-box .style-detail-wrap .recipe-dl dt {
  background-color: #cf4255;
}
@media screen and (min-width: 768px) {
  .style-wrap .style.style-04 {
    margin-top: 66px;
  }
}
.style-wrap .style.style-04 .style-loop-animation .roll-contents {
  width: 2280px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-04 .style-loop-animation .roll-contents {
    width: 304vw;
  }
}
.style-wrap .style.style-04 .bg-texture-line {
  background-color: #000;
}
.style-wrap .style.style-04 .bg-color-line {
  background-color: #000;
}
.style-wrap .style.style-04 .style-box .style-detail-wrap .style-number {
  top: 90px;
  left: 20px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-04 .style-box .style-detail-wrap .style-number {
    right: 0;
    left: auto;
    top: 1050px;
  }
}
.style-wrap .style.style-04 .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #4d4d4d;
}
.style-wrap .style.style-04 .style-box .style-detail-wrap .recipe-dl dt {
  background-color: #4d4d4d;
}
@media screen and (min-width: 768px) {
  .style-wrap .style.style-05 {
    margin-top: 56px;
  }
}
.style-wrap .style.style-05 .style-loop-animation .roll-contents {
  width: 2005px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-05 .style-loop-animation .roll-contents {
    width: 267.3333333333vw;
  }
}
.style-wrap .style.style-05 .bg-texture-line {
  background-color: #232363;
}
.style-wrap .style.style-05 .bg-color-line {
  opacity: 0.5;
  background-color: #232363;
}
.style-wrap .style.style-05 .style-box .style-detail-wrap .style-number {
  top: 47px;
  right: -3px;
}
@media screen and (max-width: 767px) {
  .style-wrap .style.style-05 .style-box .style-detail-wrap .style-number {
    right: 0;
    left: auto;
    top: 1050px;
  }
}
.style-wrap .style.style-05 .style-box .style-detail-wrap .before-after-dl dt:last-of-type {
  background-color: #4c4883;
}
.style-wrap .style.style-05 .style-box .style-detail-wrap .recipe-dl dt {
  background-color: #4c4883;
}

/* /style */
/* products */
.prodaucts-area {
  position: relative;
  z-index: 5;
  padding: max(386px, 32.2108345534vw) 0 120px;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .prodaucts-area {
    padding: 160px 0 64px;
    margin-top: 64px;
  }
}
.prodaucts-area .prodaucts-loop-green-animation {
  display: flex;
  align-items: start;
  gap: 24px;
  position: absolute;
  padding: 18px 0;
  height: 125%;
  top: 0;
  right: max(-32px, -2.635431918vw);
  transform: rotate(-15deg);
  transform-origin: top right;
  background-color: #fff;
  transition-duration: 0.6s;
  z-index: 2;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-loop-green-animation {
    padding: 8px 0;
  }
}
.prodaucts-area .prodaucts-loop-green-animation .roll-contents {
  width: 1735px;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-loop-green-animation .roll-contents {
    width: 231.3333333333vw;
  }
}
.prodaucts-area .prodaucts-loop-green-animation .loop-animation {
  animation: txt-loop-animation-reverse 40s linear infinite;
}
.prodaucts-area .prodaucts-loop-animation {
  position: absolute;
  display: flex;
  align-items: start;
  flex-direction: row-reverse;
  position: absolute;
  top: 36px;
  left: 0;
  height: 100%;
  transition: all 0.6s ease;
  transition-delay: 0.3s;
  padding: 18px 0;
  transform: rotate(15deg);
  gap: 24px;
  transform-origin: top left;
  background-color: #01a5b7;
  pointer-events: none;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-loop-animation {
    top: 0;
    padding: 8px 0;
  }
}
.prodaucts-area .prodaucts-loop-animation .roll-contents {
  width: 1735px;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-loop-animation .roll-contents {
    width: 231.3333333333vw;
  }
}
.prodaucts-area .prodaucts-loop-animation .loop-animation {
  animation: txt-loop-animation 40s linear infinite;
}
.prodaucts-area .cmn-inner {
  position: relative;
  z-index: 3;
}
.prodaucts-area hr {
  margin: 80px 0;
  border: 1px solid #ccc;
}
@media screen and (max-width: 767px) {
  .prodaucts-area hr {
    margin: 64px 0;
  }
}
.prodaucts-area .prodaucts-box {
  display: flex;
  gap: 64px;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-box {
    flex-direction: column;
    gap: 32px;
  }
}
@media screen and (min-width: 768px) {
  .prodaucts-area .prodaucts-box .img-wrap {
    width: 600px;
  }
}
.prodaucts-area .prodaucts-box .txt-wrap {
  display: flex;
  flex-direction: column;
  justify-content: center;
  flex: 1;
  color: #000;
}
.prodaucts-area .prodaucts-box .txt-wrap .lg-ttl {
  margin-bottom: 32px;
}
.prodaucts-area .prodaucts-box .txt-wrap .lg-ttl img {
  z-index: 0.5;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-box .txt-wrap .lg-ttl {
    margin-bottom: 20px;
  }
  .prodaucts-area .prodaucts-box .txt-wrap .lg-ttl img {
    zoom: 0.25;
  }
}
.prodaucts-area .prodaucts-box .txt-wrap .lead {
  font-size: 2.4rem;
  font-weight: 400;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-box .txt-wrap .lead {
    font-size: 2rem;
  }
}
.prodaucts-area .prodaucts-box .txt-wrap .btn-wrap {
  display: flex;
  flex-direction: column;
  align-items: start;
  gap: 16px;
  margin-top: 40px;
}
@media screen and (max-width: 767px) {
  .prodaucts-area .prodaucts-box .txt-wrap .btn-wrap {
    margin-top: 24px;
  }
}

.cmn-btn {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  padding: 16px 32px;
  min-width: 256px;
  font-feature-settings: normal;
  letter-spacing: 0.05em;
  background: linear-gradient(to right, #0767ba 0%, #15acd8 100%);
  box-shadow: 0 4px 10px rgba(0, 0, 0, 0.15);
}
@media screen and (max-width: 767px) {
  .cmn-btn {
    width: 100%;
  }
}
@media (any-hover: hover) {
  .cmn-btn:hover {
    opacity: 0.7;
  }
}
.cmn-btn::after {
  content: "";
  display: block;
  position: absolute;
  width: 0;
  height: 0;
  right: 16px;
  top: calc(50% - 4px);
  border-style: solid;
  border-width: 4px 0 4px 10px;
  border-color: transparent transparent transparent #fff;
}
.cmn-btn.reverse {
  color: #0767ba;
  background: #fff;
}
.cmn-btn.reverse::after {
  border-color: transparent transparent transparent #0767ba;
}

.products-dl-wrap {
  display: flex;
  flex-direction: column;
  gap: 32px;
}
@media screen and (max-width: 767px) {
  .products-dl-wrap {
    gap: 16px;
  }
}
.products-dl-wrap .products-dl {
  border-bottom: 1px solid #e5e5e5;
  padding-bottom: 24px;
}
@media screen and (max-width: 767px) {
  .products-dl-wrap .products-dl {
    padding-bottom: 16px;
  }
}
.products-dl-wrap .products-dl dt {
  color: #01a5b7;
  font-family: "Roboto Condensed", sans-serif;
  font-weight: 700;
  line-height: 1;
}
.products-dl-wrap .products-dl dt .num {
  line-height: 1;
  font-size: 2.6rem;
}
.products-dl-wrap .products-dl dd {
  font-weight: 400;
  font-size: 2.4rem;
}
@media screen and (max-width: 767px) {
  .products-dl-wrap .products-dl dd {
    font-size: 2rem;
  }
}
.products-dl-wrap .products-dl dd .notes {
  margin-top: 8px;
  font-size: 1.4rem;
}

.produccts-logo {
  width: 140px;
  margin: 0 auto 64px;
}

/* /products */
/* stylist */
.stylist-section {
  position: relative;
  z-index: 6;
  color: #fff;
  padding: 72px 0 80px;
  background: url(/special/fiole-goald_25/assets/images/bg_stylist.webp) no-repeat center/cover;
}
.stylist-section .cmn-inner {
  font-feature-settings: normal;
}
@media screen and (min-width: 768px) {
  .stylist-section .cmn-inner {
    padding: 0 116px;
  }
}
.stylist-section .ttl {
  font-size: 1.6rem;
  font-weight: 700;
  margin-bottom: 8px;
}
.stylist-section .cooperation-contents {
  display: flex;
}
@media screen and (max-width: 767px) {
  .stylist-section .cooperation-contents {
    flex-direction: column;
    gap: 32px;
  }
}
.stylist-section .cooperation-contents .img-wrap {
  margin-right: 48px;
}
@media screen and (max-width: 767px) {
  .stylist-section .cooperation-contents .img-wrap {
    margin-right: auto;
  }
}
.stylist-section .cooperation-contents .txt-wrap {
  flex: 1;
  font-size: 1.4rem;
  line-height: 1.64;
}
.stylist-section .stylist-wrap {
  border-top: 1px solid rgba(255, 255, 255, 0.5);
  margin-top: 32px;
  padding-top: 24px;
}
.stylist-section .stylist-wrap .stylist-ttl {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  letter-spacing: 0.04em;
  margin-bottom: 32px;
}
.stylist-section .stylist-wrap .stylist-member {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  grid-column-gap: 30px;
  grid-row-gap: 36px;
}
@media screen and (max-width: 767px) {
  .stylist-section .stylist-wrap .stylist-member {
    grid-template-columns: repeat(2, 1fr);
  }
}
.stylist-section .stylist-wrap .stylist-member li .txt-wrap {
  margin-top: 15px;
  text-align: center;
}
.stylist-section .stylist-wrap .stylist-member li .txt-wrap .name {
  margin-top: 15px;
  font-size: 1.2rem;
  letter-spacing: -0.02em;
  text-align: center;
  line-height: 2;
}
.stylist-section .stylist-wrap .stylist-member li .txt-wrap .name .en {
  font-family: "Roboto Condensed", sans-serif;
  font-size: 2rem;
  line-height: 1;
}
.stylist-section .stylist-wrap .stylist-member li .txt-wrap .icn {
  margin-top: 10px;
}
.stylist-section .stylist-wrap .stylist-member li .txt-wrap .icn a {
  display: flex;
  justify-content: center;
}
@media (any-hover: hover) {
  .stylist-section .stylist-wrap .stylist-member li .txt-wrap .icn a:hover {
    opacity: 0.7;
  }
}

/* stylist */
/* animation */
.slide-animation-right {
  position: relative;
  overflow: hidden;
}
.slide-animation-right::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000;
  left: 0;
  top: 0;
  transition-duration: 0.6s;
}
@media screen and (max-width: 767px) {
  .slide-animation-right.style-image-main::after {
    left: auto;
    right: 0;
  }
  .slide-animation-right.style-sample::after {
    right: auto;
    left: 0;
  }
}
.slide-animation-right.show::after {
  left: 100%;
}
@media screen and (max-width: 767px) {
  .slide-animation-right.show.style-image-main::after {
    right: 100%;
    left: auto;
  }
  .slide-animation-right.show.style-sample::after {
    left: 100%;
    right: auto;
  }
}

.slide-animation-left {
  position: relative;
  overflow: hidden;
}
.slide-animation-left::after {
  content: "";
  display: block;
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: #000;
  right: 0;
  top: 0;
  transition-duration: 0.6s;
}
@media screen and (max-width: 767px) {
  .slide-animation-left.style-image-main::after {
    left: auto;
    right: 0;
  }
  .slide-animation-left.style-sample::after {
    right: auto;
    left: 0;
  }
}
.slide-animation-left.show::after {
  right: 100%;
}
@media screen and (max-width: 767px) {
  .slide-animation-left.show.style-image-main::after {
    right: 100%;
    left: auto;
  }
  .slide-animation-left.show.style-sample::after {
    right: auto;
    left: 100%;
  }
}

.scroll-slide {
  width: 0;
  transition-duration: 1s;
}
.scroll-slide.show {
  width: 200vw !important;
}

.opacity-roll {
  opacity: 0;
  transition-duration: 0.6s;
  transition-delay: 0.5s;
}
.opacity-roll.show {
  opacity: 1;
}

@keyframes txt-loop-animation {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(-100%);
  }
}
@keyframes txt-loop-animation-reverse {
  0% {
    transform: translateX(0);
  }
  100% {
    transform: translateX(100%);
  }
}
/* /animation */