@charset "UTF-8";
body {
  padding-top: 0;
}
@media screen and (min-width: 768px) {
  body:not(.is-pcHeaderChange) {
    --headerColor: transparent;
    --headerLogoColor: white;
    --headerinstaColor: white;
    --headerMenuColor: white;
    --toggleButtonColor: white;
  }
  body:not(.is-pcHeaderChange) .l-header__logo,
  body:not(.is-pcHeaderChange) .l-headerMenu__item,
  body:not(.is-pcHeaderChange) .l-headerNav-instagram {
    -webkit-filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.65));
            filter: drop-shadow(1px 1px 2px rgba(0, 0, 0, 0.65));
  }
}
@media screen and (max-width: 767px) {
  body:not(.is-spHeaderChange) {
    --headerColor: transparent;
    --headerLogoColor: white;
    --toggleButtonColor: white;
  }
}

.p-topMv {
  position: relative;
  width: 100%;
  height: 100svh;
  min-height: 54rem;
  overflow: hidden;
}
@media screen and (orientation: portrait) and (min-width: 768px) {
  .p-topMv {
    height: auto;
    aspect-ratio: 2880/1678;
  }
}
@media screen and (max-width: 767px) {
  .p-topMv {
    min-height: 133.4rem;
  }
}

.p-topMvSlide {
  width: 100%;
  height: 100%;
}
.p-topMvSlide .slick-list, .p-topMvSlide .slick-track {
  width: 100%;
  height: 100%;
}
.p-topMvSlide img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
.p-topMvSlide .slick-dots {
  position: absolute;
  bottom: 1.8rem;
  left: 15.2rem;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  gap: 1.4rem;
  margin-block: 0;
  padding-left: 0;
}
@media screen and (max-width: 767px) {
  .p-topMvSlide .slick-dots {
    bottom: 4.8rem;
    left: 6.2rem;
    gap: 6px;
  }
}
.p-topMvSlide .slick-dots li {
  list-style: none;
}
.p-topMvSlide .slick-dots li button {
  display: block;
  width: 0.6rem;
  aspect-ratio: 1/1;
  border-radius: calc(infinity * 1px);
  border: 1px solid white;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  color: transparent;
  padding: 0;
}
@media screen and (max-width: 767px) {
  .p-topMvSlide .slick-dots li button {
    width: 6px;
  }
}
.p-topMvSlide .slick-dots li:not(.slick-active) button {
  background: transparent;
}
.p-topMvSlide .slick-dots li.slick-active button {
  background: white;
}

.p-topMvScroll {
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 3.4rem;
  height: 12rem;
}
.p-topMvScroll a {
  display: block;
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  color: white;
  font-weight: 300;
  font-size: 1.8rem;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
}
.p-topMvScroll a::before {
  content: "";
  position: absolute;
  top: calc(100% - 5.8rem);
  left: 50%;
  width: 1px;
  height: 5.8rem;
  border-left: 1px solid white;
  -webkit-animation: topMvScroll 1.4s ease-in-out infinite;
          animation: topMvScroll 1.4s ease-in-out infinite;
}

@-webkit-keyframes topMvScroll {
  0% {
    height: 0;
    top: calc(100% - 5.8rem);
  }
  30% {
    top: calc(100% - 5.8rem);
    height: 5.8rem;
  }
  60% {
    top: calc(100% - 5.8rem);
    height: 5.8rem;
  }
  100% {
    top: 100%;
    height: 5.8rem;
  }
}

@keyframes topMvScroll {
  0% {
    height: 0;
    top: calc(100% - 5.8rem);
  }
  30% {
    top: calc(100% - 5.8rem);
    height: 5.8rem;
  }
  60% {
    top: calc(100% - 5.8rem);
    height: 5.8rem;
  }
  100% {
    top: 100%;
    height: 5.8rem;
  }
}
.p-topThought {
  margin-top: 11rem;
}
@media screen and (max-width: 767px) {
  .p-topThought {
    margin-top: 12.5rem;
    padding-left: 0;
    --wrapPaddingHorizontal: 4.5rem;
  }
}

.p-topThoughtTexts {
  margin-top: 10.5rem;
  width: 100%;
  -webkit-writing-mode: vertical-rl;
      -ms-writing-mode: tb-rl;
          writing-mode: vertical-rl;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  -webkit-box-orient: vertical;
  -webkit-box-direction: normal;
      -ms-flex-direction: column;
          flex-direction: column;
  gap: 4rem;
  padding-left: 1em;
}
@media screen and (max-width: 767px) {
  .p-topThoughtTexts {
    margin-top: 8.7rem;
    -webkit-writing-mode: horizontal-tb;
        -ms-writing-mode: lr-tb;
            writing-mode: horizontal-tb;
    -webkit-box-pack: unset;
        -ms-flex-pack: unset;
            justify-content: unset;
    gap: 4.3rem;
    padding-left: 0;
  }
}

.p-topThoughtTexts__text {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-size: 1.6rem;
  line-height: 2.5;
  margin-block: 0;
}
@media screen and (max-width: 767px) {
  .p-topThoughtTexts__text {
    font-size: 2.4rem;
    line-height: 1.8;
  }
}

.p-topThought .c-buttonLine01 {
  margin-top: 8.5rem;
}

.p-topThought__image {
  margin-top: 18rem;
  width: 100%;
  height: 50rem;
}
@media screen and (max-width: 767px) {
  .p-topThought__image {
    margin-top: 15rem;
    height: 60rem;
  }
}
.p-topThought__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-topCraft {
  margin-top: 21.5rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-topCraft {
    margin-top: 13rem;
    --wrapPaddingHorizontal: 0;
  }
}

.p-topCraftBox01 {
  margin-top: 12.2rem;
  display: grid;
  grid-template-areas: "area1 area2" "area3 area4";
  grid-template-columns: 65.5rem 1fr;
  grid-template-rows: 65.2rem auto;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01 {
    margin-top: 15rem;
    grid-template-areas: "area1 area1" "area3 area2" "area4 area4";
    grid-template-columns: 39.5rem 1fr;
    grid-template-rows: auto auto auto;
  }
}

.p-topCraftBox01__image01 {
  grid-area: area1;
  position: relative;
}
.p-topCraftBox01__image01 img {
  position: absolute;
  top: 0;
  left: 5rem;
  width: 65.5rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01__image01 img {
    position: static;
    top: auto;
    left: 0;
    width: 63.2rem;
    margin-inline: auto;
    display: block;
  }
}

.p-topCraftBox01__image02 {
  grid-area: area2;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01__image02 {
    margin-top: 6.9rem;
  }
}
.p-topCraftBox01__image02.is-show {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.p-topCraftBox01__image02 img {
  position: absolute;
  bottom: 0;
  right: 5rem;
  width: 36rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01__image02 img {
    position: static;
    bottom: auto;
    right: auto;
    width: 29.2rem;
    display: block;
    margin-inline: auto;
  }
}

.p-topCraftBox01__image03 {
  grid-area: area3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01__image03 {
    margin-top: 3.4rem;
  }
}
.p-topCraftBox01__image03 img {
  position: absolute;
  top: -9.7rem;
  left: 12.6rem;
  width: 48.7rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01__image03 img {
    position: static;
    top: auto;
    left: 0;
    width: 39.5rem;
  }
}

.p-topCraftBox01Texts {
  grid-area: area4;
  padding: 4.5rem 0 0 1.3rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01Texts {
    padding: 0;
    width: 63.5rem;
    margin: 6.5rem 0 0 auto;
  }
}

.p-topCraftBox01Texts__title {
  position: relative;
  margin: 0 calc(50% - 50vw) 0 0;
  padding: 0 calc(50vw - 60%) 2rem 0;
}
@media screen and (min-width: 768px) {
  .safari .p-topCraftBox01Texts__title {
    margin: 0;
    padding: 0 0 2rem;
  }
}

@media screen and (max-width: 767px) {
  .p-topCraftBox01Texts__title {
    margin: 0;
    padding: 0 0 2rem;
  }
}
.p-topCraftBox01Texts__title .p-topCraftBox01Texts__titleInner {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  font-size: 4rem;
  line-height: 1.3;
  text-indent: -1.2em;
  padding-left: 1.2em;
  margin-block: 0;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01Texts__title .p-topCraftBox01Texts__titleInner {
    font-size: 6rem;
    line-height: 1.0833333333;
    text-indent: -1em;
    padding-left: 1em;
  }
}
.p-topCraftBox01Texts__title .p-topCraftBox01Texts__titleSmall {
  font-size: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01Texts__title .p-topCraftBox01Texts__titleSmall {
    font-size: 5rem;
  }
}
.p-topCraftBox01Texts__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid var(--black01);
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: right bottom;
          transform-origin: right bottom;
}
.p-topCraftBox01Texts.is-show .p-topCraftBox01Texts__title::before {
  -webkit-animation-name: line01;
          animation-name: line01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
}
.p-topCraftBox01Texts.is-show .p-topCraftBox01Texts__titleInner {
  -webkit-animation-name: anime_fade01;
          animation-name: anime_fade01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.p-topCraftBox01Texts__text {
  font-weight: 300;
  font-size: 1.6rem;
  line-height: 2.125;
  margin-block: 2.5rem 0;
  letter-spacing: 0.04em;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01Texts__text {
    font-size: 2.5rem;
    line-height: 1.8;
    letter-spacing: -0.02em;
    margin-block: 5.5rem 0;
  }
}
.p-topCraftBox01Texts.is-show .p-topCraftBox01Texts__text {
  -webkit-animation-name: anime_fade01;
          animation-name: anime_fade01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.p-topCraftBox01 .c-buttonLine01 {
  margin-top: 8.5rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox01 .c-buttonLine01 {
    margin-top: 10.5rem;
  }
  .p-topCraftBox01 .c-buttonLine01 a {
    margin-inline: auto;
    translate: -6rem 0;
  }
}

.p-topCraftBox02 {
  margin-top: 23rem;
  display: grid;
  grid-template-areas: "area2 area1" "area4 area3";
  grid-template-columns: 1fr 65.5rem;
  grid-template-rows: 64.8rem auto;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02 {
    margin-top: 15.2rem;
    grid-template-areas: "area1 area1" "area2 area3" "area4 area4";
    grid-template-columns: 1fr 39.5rem;
    grid-template-rows: auto auto auto;
  }
}

.p-topCraftBox02__image01 {
  grid-area: area1;
  position: relative;
}
.p-topCraftBox02__image01 img {
  position: absolute;
  top: 0;
  right: 5rem;
  width: 65.5rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02__image01 img {
    position: static;
    top: auto;
    right: auto;
    width: 63.2rem;
    display: block;
    margin-inline: auto;
  }
}

.p-topCraftBox02__image02 {
  grid-area: area2;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02__image02 {
    margin-top: 7rem;
  }
}
.p-topCraftBox02__image02.is-show {
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}
.p-topCraftBox02__image02 img {
  position: absolute;
  bottom: 0;
  left: 5rem;
  width: 36rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02__image02 img {
    position: static;
    bottom: auto;
    left: auto;
    width: 29.2rem;
    display: block;
    margin-inline: auto;
  }
}

.p-topCraftBox02__image03 {
  grid-area: area3;
  position: relative;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02__image03 {
    margin-top: 3.5rem;
  }
}
.p-topCraftBox02__image03 img {
  position: absolute;
  top: -9.7rem;
  right: 12.6rem;
  width: 48.7rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02__image03 img {
    position: static;
    top: auto;
    right: auto;
    width: 39.5rem;
  }
}

.p-topCraftBox02Texts {
  grid-area: area4;
  padding: 7.3rem 2.5rem 0 0;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02Texts {
    padding: 0;
    width: 63.3rem;
    margin: 5.5rem auto 0 0;
  }
}

.p-topCraftBox02Texts__title {
  position: relative;
  margin: 0 0 0 calc(50% - 50vw);
  padding: 0 0 2.3rem calc(50vw - 50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  letter-spacing: 0.05em;
}
@media screen and (min-width: 768px) {
  .safari .p-topCraftBox02Texts__title {
    margin: 0;
    padding: 0 2.3rem 0;
  }
}

@media screen and (max-width: 767px) {
  .p-topCraftBox02Texts__title {
    margin: 0;
    padding: 0 0 3rem;
  }
}
.p-topCraftBox02Texts__title .p-topCraftBox02Texts__titleInner {
  font-family: "Noto Serif JP", "游明朝", YuMincho, "Hiragino Mincho ProN W3", "ヒラギノ明朝 ProN W3", "Hiragino Mincho ProN", "HG明朝E", "ＭＳ Ｐ明朝", "ＭＳ 明朝", serif;
  font-weight: 500;
  font-size: 4rem;
  line-height: 1.46;
  text-indent: -2.3em;
  margin-block: 0;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02Texts__title .p-topCraftBox02Texts__titleInner {
    font-size: 6rem;
    line-height: 1.2166666667;
  }
}
.p-topCraftBox02Texts__title .p-topCraftBox02Texts__titleSmall {
  font-size: 3.2rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02Texts__title .p-topCraftBox02Texts__titleSmall {
    font-size: 5rem;
  }
}
.p-topCraftBox02Texts__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 1px;
  border-bottom: 1px solid var(--black01);
  -webkit-transform: scale(0, 1);
          transform: scale(0, 1);
  -webkit-transform-origin: left bottom;
          transform-origin: left bottom;
}
.p-topCraftBox02Texts.is-show .p-topCraftBox02Texts__title::before {
  -webkit-animation-name: line01;
          animation-name: line01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
}
.p-topCraftBox02Texts.is-show .p-topCraftBox02Texts__titleInner {
  -webkit-animation-name: anime_fade01;
          animation-name: anime_fade01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.p-topCraftBox02Texts__text {
  font-weight: 300;
  font-size: 1.6rem;
  line-height: 2.125;
  margin-block: 3.2rem 0;
  text-align: right;
  letter-spacing: 0.04em;
  opacity: 0;
  -webkit-transform: translateY(30px);
          transform: translateY(30px);
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02Texts__text {
    margin-block: 3.5rem 0;
    font-size: 2.5rem;
    line-height: 1.8;
    letter-spacing: -0.02em;
  }
}
.p-topCraftBox02Texts.is-show .p-topCraftBox02Texts__text {
  -webkit-animation-name: anime_fade01;
          animation-name: anime_fade01;
  -webkit-animation-duration: 1s;
          animation-duration: 1s;
  -webkit-animation-fill-mode: forwards;
          animation-fill-mode: forwards;
  -webkit-animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
          animation-timing-function: cubic-bezier(0.33, 1, 0.68, 1);
  -webkit-animation-delay: 0.7s;
          animation-delay: 0.7s;
}

.p-topCraftBox02 .c-buttonLine01 {
  margin-top: 8rem;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02 .c-buttonLine01 {
    margin-top: 11rem;
  }
}
.p-topCraftBox02 .c-buttonLine01 a {
  margin-left: auto;
}
@media screen and (max-width: 767px) {
  .p-topCraftBox02 .c-buttonLine01 a {
    margin-inline: auto;
    translate: 6rem 0;
  }
}

.p-topProducts {
  margin-top: 23rem;
  overflow: hidden;
}
@media screen and (max-width: 767px) {
  .p-topProducts {
    margin-top: 15rem;
  }
}

.p-topProductsHeading {
  position: relative;
  width: 100%;
  height: 42rem;
}
@media screen and (max-width: 767px) {
  .p-topProductsHeading {
    height: 60rem;
  }
}

.p-topProductsHeading__image {
  width: 100%;
  height: 100%;
}
.p-topProductsHeading__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}

.p-topProductsHeading__title {
  position: absolute;
  top: 50%;
  translate: -50% -50%;
  left: 50%;
  margin-block: 0;
  color: white;
  font-weight: 500;
  font-size: 3.2rem;
  line-height: 1;
  padding-bottom: 3rem;
  -webkit-filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.65));
          filter: drop-shadow(2px 2px 3px rgba(0, 0, 0, 0.65));
}
@media screen and (max-width: 767px) {
  .p-topProductsHeading__title {
    font-size: 4.4rem;
    padding-bottom: 3.4rem;
  }
}
.p-topProductsHeading__title::before {
  content: "";
  position: absolute;
  bottom: 0;
  left: 50%;
  translate: -50% 0;
  width: 8rem;
  height: 3px;
  border-bottom: 3px solid white;
}
@media screen and (max-width: 767px) {
  .p-topProductsHeading__title::before {
    width: 11rem;
    height: 2px;
  }
}

.p-topProductsHeading__titleInner {
  display: inline-block;
}

.p-topProductsSlide {
  margin: 18rem -2.2rem 0;
}
@media screen and (max-width: 767px) {
  .p-topProductsSlide {
    margin: 9.5rem 0 0;
  }
}
.p-topProductsSlide .slick-arrow {
  position: absolute;
  top: 21.3rem;
  z-index: 1;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  outline: none;
  font-family: inherit;
  letter-spacing: inherit;
  border-radius: 0;
  border: none;
  text-indent: 100%;
  overflow: hidden;
  white-space: nowrap;
  color: transparent;
  width: 1.2rem;
  aspect-ratio: 12/24;
  background: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 7.5 16"><path fill="%23ffffff" d="M.5,16c-.12,0-.23-.04-.33-.12-.21-.18-.23-.5-.05-.71l6.22-7.17L.12.83C-.06.62-.04.3.17.12.38-.06.7-.04.88.17l6.5,7.5c.16.19.16.47,0,.66L.88,15.83c-.1.11-.24.17-.38.17Z" /></svg>') no-repeat center center/contain;
  -webkit-filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.65));
          filter: drop-shadow(1px 1px 4px rgba(0, 0, 0, 0.65));
  cursor: pointer;
}
@media (any-hover: hover) {
  .p-topProductsSlide .slick-arrow {
    -webkit-transition: opacity 0.3s;
    transition: opacity 0.3s;
  }
  .p-topProductsSlide .slick-arrow:hover {
    opacity: 0.6;
  }
}
.p-topProductsSlide .slick-arrow.slick-prev {
  left: 10rem;
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}
.p-topProductsSlide .slick-arrow.slick-next {
  right: 10rem;
}

.p-topProductsSlideItem {
  margin-inline: 2.2rem;
}
@media screen and (max-width: 767px) {
  .p-topProductsSlideItem {
    margin-inline: 3rem;
  }
}
.p-topProductsSlideItem a {
  display: block;
}

.p-topProductsSlideItem__image {
  width: 100%;
  aspect-ratio: 1/1;
  overflow: hidden;
}
.p-topProductsSlideItem__image img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
}
@media (any-hover: hover) {
  .p-topProductsSlideItem__image img {
    -webkit-transition: scale 0.3s;
    transition: scale 0.3s;
  }
}
@media (any-hover: hover) {
  .p-topProductsSlideItem a:hover .p-topProductsSlideItem__image img {
    scale: 1.1 1.1;
  }
}

.p-topProductsSlideItem__name {
  font-weight: 700;
  font-size: 1.8rem;
  line-height: 1.3333333333;
  margin-block: 1.5rem 0;
  -webkit-font-feature-settings: normal;
          font-feature-settings: normal;
}
@media screen and (max-width: 767px) {
  .p-topProductsSlideItem__name {
    font-size: 2.5rem;
    line-height: 1.24;
    margin-block: 2.3rem 0;
  }
}

.p-topProductsSlideItem__price {
  color: var(--gray02);
  font-weight: 500;
  font-size: 1.8rem;
  line-height: 1.8888888889;
  margin-block: 0;
}
@media screen and (max-width: 767px) {
  .p-topProductsSlideItem__price {
    font-size: 2.5rem;
    line-height: 1.36;
    margin-block: 0.5rem 0;
  }
}

.p-topProducts .c-buttonLine01 {
  margin-top: 10.5rem;
}
@media screen and (max-width: 767px) {
  .p-topProducts .c-buttonLine01 {
    margin-top: 10rem;
  }
}
.p-topProducts .c-buttonLine01 a {
  margin-inline: auto;
}