/* stylelint-disable no-descending-specificity */
@font-face {
  font-family: 'NotoSerifJP';
  src: url('../../public/fonts/NotoSerifJP-Medium.ttf') format('opentype');
}

.main-area {
  min-width: initial;
  max-width: initial;
}

@media only screen and (min-width: 768px) and (max-width: 1400px) {
  html,
  body {
    font-size: 0.7142857143vw;
  }
}

.landingPage {
  --color-black: #000;
  --font-miller: 'miller-headline', serif;
  --font-neue: 'neue-haas-grotesk-display', sans-serif;
  --font-noto-serif: NotoSerifJP, sans-serif;
  --font-gibson: 'canada-type-gibson', sans-serif;
}

.landingPage * {
  box-sizing: border-box;
  font-feature-settings: 'palt';
  line-height: 1;
  color: var(--color-black);
}

.landingPage img,
.landingPage picture {
  display: block;
}

.landingPage a {
  display: inline-block;
}
@media (hover: hover) {
  .landingPage a {
    transition: 0.6 ease;
  }

  .landingPage a:where(:any-link):hover {
    opacity: 0.6;
  }
}

.landingPage img,
.landingPage svg {
  width: 100%;
  height: auto;
  image-rendering: optimizequality;
}

.landingPage .js-fade {
  visibility: hidden;
  opacity: 0;
  transition: 3s ease-in-out;
}

.landingPage .js-fade.inview {
  visibility: visible;
  opacity: 1;
}

.landingPage .js-stretch::before {
  transition: 1.5s ease-in-out;
  transform: scaleX(0);
  transform-origin: left;
}

.landingPage .js-stretch.inview::before {
  transform: scaleX(1);
}
@media (max-width: 767px) {
  .landingPage {
    --util: 100vw / 750;
    padding-bottom: calc(180 * var(--util));
  }

  .landingPage .without-sp {
    display: none;
  }
}
@media (min-width: 768px) {
  .landingPage {
    --util: 0.1rem;
    padding-bottom: calc(139 * var(--util));
  }

  .landingPage .without-pc {
    display: none;
  }
}
@media (min-width: 768px) {
  .landingPage .mainVisual {
    max-width: calc(1000 * var(--util));
    margin-inline: auto;
  }
}

.landingPage .mainVisual__desc {
  text-align: center;
}
@media (max-width: 767px) {
  .landingPage .mainVisual__desc {
    padding-top: calc(82 * var(--util));
    font-size: calc(25 * var(--util));
    line-height: 2.6;
    letter-spacing: 0.015em;
  }
}
@media (min-width: 768px) {
  .landingPage .mainVisual__desc {
    padding-top: calc(64 * var(--util));
    font-size: calc(15 * var(--util));
    line-height: 3;
    letter-spacing: 0.02em;
  }
}

.landingPage .product {
  position: relative;
}
@media (max-width: 767px) {
  .landingPage .product + .product {
    margin-top: calc(120 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product--01 {
    margin-top: calc(140 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 {
    margin-top: calc(97 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(2) .product__list {
    grid-template-rows: calc(115 * var(--util)) calc(285 * var(--util));
    grid-template-columns: calc(320 * var(--util)) calc(100 * var(--util)) calc(300 * var(--util));
    padding-right: calc(30 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__list {
    grid-template-rows: calc(65 * var(--util)) calc(36 * var(--util)) calc(474 * var(--util)) calc(6 * var(--util)) calc(
        66 * var(--util)
      ) calc(11 * var(--util)) calc(89 * var(--util)) calc(202 * var(--util)) calc(358 * var(--util));
    grid-template-columns: calc(150 * var(--util)) calc(5 * var(--util)) calc(205 * var(--util)) calc(16 * var(--util)) calc(
        24 * var(--util)
      ) calc(155 * var(--util)) calc(80 * var(--util)) calc(115 * var(--util)) calc(40 * var(--util)) calc(
        175 * var(--util)
      ) calc(195 * var(--util));
    padding-left: calc(80 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:first-child {
    padding-left: calc(150 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:first-child {
    grid-row: 1/4;
    grid-column: 9/12;
  }
}

.landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(2) {
  position: relative;
}
@media (max-width: 767px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(2) {
    padding-right: calc(170 * var(--util));
    margin-top: calc(-30 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(2) {
    grid-row: 3/6;
    grid-column: 6/10;
  }
}
@media (max-width: 767px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(3) {
    margin-top: calc(77 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(3) {
    grid-row: 2/4;
    grid-column: 1/5;
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(4) {
    grid-row: 9/10;
    grid-column: 8/11;
  }
}
@media (max-width: 767px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(5) {
    padding-inline: calc(75 * var(--util));
    margin-top: calc(82 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(5) {
    grid-row: 8/10;
    grid-column: 3/7;
  }
}
@media (max-width: 767px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(6) {
    padding-inline: calc(75 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(6) {
    grid-row: 4/7;
    grid-column: 1/4;
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(6) .product__prices {
    text-align: right;
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(3) .product__item:nth-child(6) .product__prices a {
    --prices-pr: 0;
    padding-left: calc(7 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__list {
    grid-template-rows: calc(96 * var(--util)) calc(46 * var(--util)) calc(201 * var(--util)) calc(541 * var(--util));
    grid-template-columns: calc(335 * var(--util)) calc(100 * var(--util)) calc(430 * var(--util));
    padding-right: calc(5 * var(--util));
    margin-top: calc(127 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__item:first-child {
    grid-row: 1/2;
    grid-column: span 4;
    place-self: center;
    padding-left: calc(5 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__item:nth-child(2) {
    grid-row: 3/5;
    grid-column: 2/4;
  }
}

.landingPage .product--01 .product__block:nth-child(4) .product__item:nth-child(3) {
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__item:nth-child(3) {
    grid-row: 4/5;
    grid-column: 1/3;
    pointer-events: none;
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__desc {
    padding-right: calc(35 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--01 .product__block:nth-child(4) .product__prices {
    pointer-events: all;
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 {
    margin-top: calc(122 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(2) .product__list {
    grid-template-rows: calc(96 * var(--util)) calc(304 * var(--util));
    grid-template-columns: calc(300 * var(--util)) calc(100 * var(--util)) calc(325 * var(--util));
    padding-right: calc(5 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(2) .product__item:first-child {
    --item-row: 1 / 3;
    --item-column: 1 / 2;
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(2) .product__item:last-child {
    --item-row: 2 / 3;
    --item-column: 3 / 4;
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__list {
    grid-template-rows: calc(299 * var(--util)) calc(233 * var(--util)) calc(34 * var(--util)) calc(77 * var(--util)) calc(
        143 * var(--util)
      ) calc(142 * var(--util)) calc(12 * var(--util));
    grid-template-columns: calc(120 * var(--util)) calc(260 * var(--util)) calc(140 * var(--util)) calc(
        100 * var(--util)
      ) calc(87 * var(--util)) calc(363 * var(--util)) calc(40 * var(--util));
    padding-left: calc(10 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:first-child {
    grid-row: 1/2;
    grid-column: 6/8;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(2) {
    padding-left: calc(50 * var(--util));
    margin-top: calc(68 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(2) {
    grid-row: 2/6;
    grid-column: 5/7;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(3) {
    margin-top: calc(62 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(3) {
    grid-row: 6/8;
    grid-column: 2/4;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(4) {
    padding-right: calc(175 * var(--util));
    margin-top: calc(105 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(4) {
    grid-row: 1/4;
    grid-column: 1/3;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(5) {
    padding-inline: calc(50 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__item:nth-child(5) {
    grid-row: 4/6;
    grid-column: 1/3;
  }
}

.landingPage .product--02 .product__block:nth-child(3) .product__deco {
  margin-left: auto;
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(3) .product__heading {
    text-align: right;
    letter-spacing: 0.14em;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .product__block:nth-child(4) {
    --list-mt: calc(130 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__list {
    grid-template-rows: calc(96 * var(--util)) calc(43 * var(--util)) calc(289 * var(--util)) calc(439 * var(--util));
    grid-template-columns: calc(460 * var(--util)) calc(60 * var(--util)) calc(317 * var(--util));
    padding-left: calc(157 * var(--util));
    margin-top: calc(120 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__item:first-child {
    grid-row: 1/2;
    grid-column: span 4;
    place-self: center;
    padding-right: calc(158 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__item:nth-child(2) {
    grid-row: 3/5;
    grid-column: 1/3;
  }
}

.landingPage .product--02 .product__block:nth-child(4) .product__item:nth-child(3) {
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__item:nth-child(3) {
    grid-row: 4/5;
    grid-column: 2/4;
    pointer-events: none;
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__desc {
    padding-right: calc(17 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .product__block:nth-child(4) .product__prices {
    pointer-events: all;
  }
}
@media (max-width: 767px) {
  .landingPage .product--02 .category__num {
    --num-pi: calc(14 * var(--util)) calc(14 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .category__num {
    --num-pi: calc(7 * var(--util)) calc(7 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .category__en {
    --en-pl: 0;
    padding-right: calc(13 * var(--util));
    letter-spacing: 0.05em;
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .category__ja {
    --ja-pl: 0;
    padding-right: calc(13 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--02 .category__inner {
    display: flex;
    flex-direction: row-reverse;
    align-items: baseline;
    justify-content: end;
    text-align: right;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 {
    margin-top: calc(112 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(2) {
    --list-mt: calc(76 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(2) .product__list {
    grid-template-rows: calc(115 * var(--util)) calc(285 * var(--util));
    grid-template-columns: calc(320 * var(--util)) calc(100 * var(--util)) calc(300 * var(--util));
    padding-right: calc(30 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__list {
    grid-template-rows: calc(240 * var(--util)) calc(36 * var(--util)) calc(396 * var(--util)) calc(54 * var(--util)) calc(
        45 * var(--util)
      ) calc(11 * var(--util));
    grid-template-columns: calc(380 * var(--util)) calc(100 * var(--util)) calc(280 * var(--util)) calc(
        40 * var(--util)
      ) calc(60 * var(--util)) calc(4 * var(--util)) calc(345 * var(--util));
    padding-right: calc(42 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:first-child {
    padding-inline: calc(55 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:first-child {
    grid-row: 1/4;
    grid-column: 1/3;
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(2) {
    margin-top: calc(78 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(2) {
    grid-row: 1/4;
    grid-column: 7/8;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(3) {
    grid-row: 3/4;
    grid-column: 6/8;
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(4) {
    padding-right: calc(160 * var(--util));
    margin-top: calc(85 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(4) {
    position: relative;
    grid-row: 2/5;
    grid-column: 2/4;
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(5) {
    padding-inline: calc(50 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__item:nth-child(5) {
    grid-row: 5/6;
    grid-column: 5/8;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__deco {
    margin-right: calc(4 * var(--util));
    margin-left: auto;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(3) .product__heading {
    text-align: right;
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .product__block:nth-child(4) {
    --list-mt: calc(137 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__list {
    grid-template-rows: calc(96 * var(--util)) calc(42 * var(--util)) calc(258 * var(--util)) calc(498 * var(--util));
    grid-template-columns: calc(325 * var(--util)) calc(74 * var(--util)) calc(466 * var(--util));
    padding-right: calc(25 * var(--util));
    margin-top: calc(120 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__item:first-child {
    grid-row: 1/2;
    grid-column: span 4;
    place-self: center;
    padding-left: calc(25 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__item:nth-child(2) {
    grid-row: 3/5;
    grid-column: 2/4;
  }
}

.landingPage .product--03 .product__block:nth-child(4) .product__item:nth-child(3) {
  position: relative;
  z-index: 2;
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__item:nth-child(3) {
    grid-row: 4/5;
    grid-column: 1/3;
    pointer-events: none;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__desc {
    padding-right: calc(14 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .product__block:nth-child(4) .product__prices {
    pointer-events: all;
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .category::before {
    --category-border-top: calc(100 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product--03 .category__num {
    --num-pi: calc(18 * var(--util)) calc(11 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .category__num {
    --num-pi: calc(7 * var(--util)) calc(5 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .category__en {
    --en-pl: calc(18 * var(--util));
    letter-spacing: 0.06em;
  }
}
@media (min-width: 768px) {
  .landingPage .product--03 .category__ja {
    --ja-pl: calc(11 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__list {
    display: grid;
    justify-content: center;
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(2) {
    margin-top: var(--list-mt, calc(78 * var(--util)));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(2) {
    margin-top: var(--list-mt, calc(57 * var(--util)));
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(2) .product__item:first-child {
    padding-inline: calc(135 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(2) .product__item:first-child {
    grid-row: var(--item-row, 1/3);
    grid-column: var(--item-column, 3/4);
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(2) .product__item:last-child {
    margin-top: calc(43 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(2) .product__item:last-child {
    grid-row: var(--item-row, 2/3);
    grid-column: var(--item-column, 1/2);
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(3) {
    margin-top: calc(112 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(3) {
    margin-top: calc(149 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(4) {
    margin-top: var(--list-mt, calc(138 * var(--util)));
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(4) .product__item:nth-child(2) {
    margin-top: calc(76 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(4) .product__item:nth-child(3) {
    margin-top: calc(73 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(4) .product__desc {
    margin-top: calc(44 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__block:nth-child(4) .product__prices {
    padding-inline: calc(55 * var(--util));
    margin-top: calc(35 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__block:nth-child(4) .product__prices {
    margin-top: calc(25 * var(--util));
  }
}

.landingPage .product__main-price {
  position: relative;
  font-family: var(--font-neue);
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .landingPage .product__main-price {
    font-size: calc(30 * var(--util));
    text-align: center;
  }
}
@media (min-width: 768px) {
  .landingPage .product__main-price {
    font-size: calc(20 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__main-price a {
    padding-bottom: calc(40 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__main-price a {
    padding-bottom: calc(26 * var(--util));
  }
}

.landingPage .product__main-price a::after {
  position: absolute;
  bottom: 0;
  left: 0;
  display: inline-block;
  content: '';
  background-color: var(--color-black);
}
@media (max-width: 767px) {
  .landingPage .product__main-price a::after {
    right: 0;
    width: calc(45 * var(--util));
    height: calc(5 * var(--util));
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .landingPage .product__main-price a::after {
    width: calc(35 * var(--util));
    height: calc(3 * var(--util));
  }
}

.landingPage .product__main-desc {
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .landingPage .product__main-desc {
    padding-inline: calc(50 * var(--util));
    padding-top: calc(35 * var(--util));
    font-size: calc(25 * var(--util));
    line-height: 2.4;
    text-align: center;
  }
}
@media (min-width: 768px) {
  .landingPage .product__main-desc {
    padding-top: calc(29 * var(--util));
    font-size: calc(16 * var(--util));
    line-height: 2.2;
  }
}
@media (max-width: 767px) {
  .landingPage .product__deco {
    width: calc(360 * var(--util));
    margin-inline: auto;
  }
}
@media (min-width: 768px) {
  .landingPage .product__deco {
    width: calc(234 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__deco + .product__heading {
    margin-top: calc(28 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__deco + .product__heading {
    margin-top: calc(26 * var(--util));
  }
}

.landingPage .product__heading {
  font-family: var(--font-noto-serif);
  line-height: 2.2;
}
@media (max-width: 767px) {
  .landingPage .product__heading {
    font-size: calc(40 * var(--util));
    text-align: center;
    letter-spacing: 0.14em;
  }
}
@media (min-width: 768px) {
  .landingPage .product__heading {
    font-size: calc(25 * var(--util));
    letter-spacing: 0.16em;
  }
}

.landingPage .product__image {
  background-color: #fff;
}

.landingPage .product__prices {
  font-family: var(--font-neue);
  line-height: 2;
  letter-spacing: 0.02em;
}
@media (max-width: 767px) {
  .landingPage .product__prices {
    margin-top: calc(39 * var(--util));
    font-size: calc(23 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .product__prices {
    font-family: var(--font-neue);
  }
}
@media (min-width: 768px) and (min-width: 768px) {
  .landingPage .product__prices {
    font-size: calc(13 * var(--util));
  }
}
@media (max-width: 767px) {
  .landingPage .product__prices a {
    padding-right: var(--prices-pr, calc(12 * var(--util)));
  }
}
@media (min-width: 768px) {
  .landingPage .product__prices a {
    padding-right: var(--prices-pr, calc(7 * var(--util)));
  }
}

.landingPage .product__desc {
  line-height: 2.2;
}
@media (max-width: 767px) {
  .landingPage .product__desc {
    padding-inline: calc(55 * var(--util));
    margin-top: calc(52 * var(--util));
    font-size: calc(24 * var(--util));
    letter-spacing: 0.01em;
  }
}
@media (min-width: 768px) {
  .landingPage .product__desc {
    font-size: calc(14 * var(--util));
    letter-spacing: 0.025em;
  }
}

.landingPage .category {
  position: relative;
}
@media (max-width: 767px) {
  .landingPage .category {
    text-align: center;
  }
}

.landingPage .category::before {
  position: absolute;
  left: 0;
  z-index: 1;
  display: block;
  width: 100%;
  content: '';
  background: var(--color-black);
}
@media (max-width: 767px) {
  .landingPage .category::before {
    top: var(--category-border-top, calc(97 * var(--util)));
    height: calc(5 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .category::before {
    bottom: var(--category-border-bottom, calc(24 * var(--util)));
    height: calc(3 * var(--util));
  }
}

.landingPage .category__inner {
  display: block;
}
@media (min-width: 768px) {
  .landingPage .category__inner {
    max-width: calc(1400 * var(--util));
    padding-inline: var(--category-pi, calc(120 * var(--util)));
    padding-bottom: var(--category-pb, calc(24 * var(--util)));
    margin-inline: auto;
  }
}

.landingPage .category__inner span {
  position: relative;
  z-index: 2;
  display: inline-block;
  text-align: center;
}
@media (max-width: 767px) {
  .landingPage .category__inner span:not(.category__num) {
    display: block;
  }
}

.landingPage .category__num {
  font-family: var(--font-miller);
  font-weight: 500;
  letter-spacing: 0.05em;
  background-color: #fff;
}
@media (max-width: 767px) {
  .landingPage .category__num {
    padding-inline: var(--num-pi, calc(20 * var(--util)));
    font-size: calc(138 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .category__num {
    top: var(--num-bottom, calc(24 * var(--util)));
    padding-inline: var(--num-pi, calc(12 * var(--util)) calc(9 * var(--util)));
    font-size: calc(94 * var(--util));
  }
}

.landingPage .category__en {
  font-family: var(--font-miller);
  font-weight: 600;
  letter-spacing: 0.08em;
}
@media (max-width: 767px) {
  .landingPage .category__en {
    padding-top: var(--en-pt, calc(17 * var(--util)));
    font-size: calc(66 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .category__en {
    padding-left: var(--en-pl, calc(12 * var(--util)));
    font-size: calc(45 * var(--util));
  }
}

.landingPage .category__ja {
  font-weight: 700;
}
@media (max-width: 767px) {
  .landingPage .category__ja {
    padding-top: var(--ja-pt, calc(18 * var(--util)));
    font-size: calc(28 * var(--util));
    line-height: 1.5;
    letter-spacing: 0.08em;
  }
}
@media (min-width: 768px) {
  .landingPage .category__ja {
    padding-left: var(--ja-pl, calc(7 * var(--util)));
    font-size: calc(21 * var(--util));
    letter-spacing: 0.075em;
  }
}
@media (max-width: 767px) {
  .landingPage .foot {
    margin-top: calc(165 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot {
    margin-top: calc(130 * var(--util));
  }
}

.landingPage .foot-button {
  margin-inline: auto;
}
@media (max-width: 767px) {
  .landingPage .foot-button {
    height: calc(118 * var(--util));
    padding-inline: calc(37 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot-button {
    width: calc(380 * var(--util));
    height: calc(64 * var(--util));
  }
}

.landingPage .foot-button a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  border-top: 2px solid var(--color-black);
  border-bottom: 2px solid var(--color-black);
}

.landingPage .foot-button__text {
  position: relative;
  display: block;
  letter-spacing: 0.17em;
}
@media (max-width: 767px) {
  .landingPage .foot-button__text {
    padding-right: calc(31 * var(--util));
    font-size: calc(28 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot-button__text {
    padding-right: calc(22 * var(--util));
    padding-left: calc(8 * var(--util));
    font-size: calc(18 * var(--util));
  }
  .landingPage .foot-button a {
    border-top: 2.5px solid var(--color-black);
    border-bottom: 2.5px solid var(--color-black);
  }
}

.landingPage .foot-button__text::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  width: 0;
  height: 0;
  margin-block: auto;
  content: '';
  border-style: solid;
  border-right: 0;
}
@media (max-width: 767px) {
  .landingPage .foot-button__text::after {
    border-top: calc(10 * var(--util)) solid transparent;
    border-bottom: calc(10 * var(--util)) solid transparent;
    border-left: calc(12 * var(--util)) solid var(--color-black);
  }
}
@media (min-width: 768px) {
  .landingPage .foot-button__text::after {
    border-top: calc(7 * var(--util)) solid transparent;
    border-bottom: calc(7 * var(--util)) solid transparent;
    border-left: calc(9 * var(--util)) solid var(--color-black);
  }
}

.landingPage .foot-credit {
  text-align: center;
}
@media (max-width: 767px) {
  .landingPage .foot-credit {
    margin-top: calc(141 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot-credit {
    margin-top: calc(101 * var(--util));
  }
}

.landingPage .foot-credit__title {
  font-family: var(--font-gibson);
  font-weight: 600;
  letter-spacing: 0.15em;
}
@media (max-width: 767px) {
  .landingPage .foot-credit__title {
    font-size: calc(26 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot-credit__title {
    font-size: calc(15 * var(--util));
  }
}

.landingPage .foot-credit__text {
  font-family: var(--font-neue);
  font-weight: 400;
  line-height: 2;
  letter-spacing: 0.04em;
}
@media (max-width: 767px) {
  .landingPage .foot-credit__text {
    padding-top: calc(17 * var(--util));
    font-size: calc(23 * var(--util));
  }
}
@media (min-width: 768px) {
  .landingPage .foot-credit__text {
    padding-top: calc(9 * var(--util));
    font-size: calc(13 * var(--util));
  }
}
