/* stylelint-disable no-descending-specificity */
/* stylelint-disable scss/no-global-function-names */
body,
.main-area {
  overflow: visible;
}

#Contents {
  padding: 0;
}

#footer_emmi {
  padding-block-start: 0;
  margin-block-start: 0;
}

.landing-page {
  --color-base: #000;
  --font-crimson: 'Crimson Text', serif;
  --font-mincho: 'yu-mincho-pr6n', sans-serif;
  --font-didot: 'aw-conqueror-didot', serif;
  --font-garamond: 'garamond-premier-pro-display', serif;
  background-color: #fdf3f1;
}
@media (min-width: 1400px) {
  .landing-page {
    --container-size: calc(1px * calc(480 / 750));
  }
}
@media (min-width: 768px) {
  .landing-page {
    --rate: calc(100vw / 1400);
  }
}
@media (min-width: 768px) and (max-width: 1399.98px) {
  .landing-page {
    --container-size: calc(calc(100vw / 1400) * calc(480 / 750));
  }
}
@media (max-width: 767.98px) {
  .landing-page {
    --container-size: calc(100vw / 750);
  }
}

.landing-page * {
  box-sizing: border-box;
  font-feature-settings: 'palt';
  line-height: 1;
  color: var(--color-base);
  letter-spacing: var(--letter-spacing, 0.05em);
}

.landing-page a {
  display: var(--display, block);
}

.landing-page img,
.landing-page picture {
  display: block;
}

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

.landing-page .animation-fade-in {
  opacity: 0;
  transition: opacity 1s ease;
}

.landing-page .animation-fade-in.is-show {
  opacity: 1;
}

.landing-page .animation-fade-out {
  opacity: 1;
  transition: opacity 1s ease;
}

.landing-page .animation-fade-out.is-show {
  opacity: 0;
}

.landing-page .animation-fade-order > * {
  opacity: 0;
  transition: opacity 1.5s ease;
}

.landing-page .animation-fade-order.is-show > * {
  opacity: 1;
  transition-delay: 0.2s;
}

.landing-page .animation-fade-order.is-show > *:nth-child(2) {
  transition-delay: 0.5s;
}

.landing-page .animation-fade-order.is-show > *:nth-child(3) {
  transition-delay: 0.8s;
}

.landing-page .animation-fade-order.is-show > *:nth-child(4) {
  transition-delay: 1.1s;
}

.landing-page .animation-fade-order.is-show > *:nth-child(5) {
  transition-delay: 1.4s;
}
@media (min-width: 768px) {
  .landing-page .only-sp {
    display: none;
  }
}
@media (max-width: 767.98px) {
  .landing-page .without-sp {
    display: none;
  }
}
@media (min-width: 768px) {
  .landing-page__container {
    display: grid;
    grid-template-columns: 1fr calc(750 * var(--container-size)) 1fr;
  }
}
@media (min-width: 768px) {
  .landing-page__aside {
    position: sticky;
    top: 0;
    display: grid;
    place-content: center;
    height: 100vh;
  }
}
@media (min-width: 768px) {
  .landing-page__heading-image {
    display: block;
    width: calc(267 * var(--rate));
    padding-block-end: calc(22 * var(--rate));
    padding-inline-end: calc(7 * var(--rate));
  }
}
@media (min-width: 768px) {
  .landing-page__button-image {
    width: calc(260 * var(--rate));
    padding-block-end: calc(36 * var(--rate));
    padding-inline-end: calc(10 * var(--rate));
  }
}

.landing-page__lead {
  padding-block-start: calc(107 * var(--container-size));
  font-size: calc(24 * var(--container-size));
  line-height: 2.2;
  text-align: center;
}

.landing-page__nav {
  margin-block-start: calc(82 * var(--container-size));
}

.landing-page__nav-list {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  column-gap: calc(30 * var(--container-size));
  align-items: self-end;
  max-width: calc(660 * var(--container-size));
  margin-inline: auto;
}

.landing-page__nav-item {
  display: flex;
  flex-direction: column;
  align-self: center;
}

.landing-page__nav-item:first-child {
  margin: calc(40 * var(--container-size)) 0 0 0;
}

.landing-page__nav-item:first-child .landing-page__nav-num {
  --nav-num-width: calc(38 * var(--container-size));
}

.landing-page__nav-item:nth-child(2) .landing-page__nav-num {
  --nav-num-width: calc(43 * var(--container-size));
}

.landing-page__nav-item:nth-child(2) .landing-page__nav-icon {
  --nav-icon-width: calc(120 * var(--container-size));
}

.landing-page__nav-item:last-child .landing-page__nav-num {
  --nav-num-width: calc(42 * var(--container-size));
}

.landing-page__nav-item:last-child .landing-page__nav-icon {
  --nav-icon-width: calc(110 * var(--container-size));
}

.landing-page__nav-item:last-child .landing-page__nav-image {
  --nav-image-gap: calc(10 * var(--container-size));
}

.landing-page__nav-icon {
  width: var(--nav-icon-width);
  margin-inline: auto;
}

.landing-page__nav-num {
  width: var(--nav-num-width);
  margin-block-start: calc(24 * var(--container-size));
  margin-inline: auto;
}

.landing-page__nav-image {
  margin-block-start: var(--nav-image-gap, calc(25 * var(--container-size)));
}

.landing-page__nav-text {
  position: relative;
  padding-block-end: calc(36 * var(--container-size));
  margin-block-start: calc(19 * var(--container-size));
  font-family: var(--font-garamond);
  font-size: calc(26 * var(--container-size));
  font-weight: 400;
  line-height: 1.1538461538;
  text-align: center;
}

.landing-page__nav-text::after {
  position: absolute;
  bottom: 0;
  left: calc(50% - 6px);
  display: block;
  width: calc(18 * var(--container-size));
  height: calc(18 * var(--container-size));
  content: '';
  border-block-start: 1px solid #333;
  border-inline-end: 1px solid #333;
  transform: rotate(135deg);
}

.landing-page__num {
  position: relative;
  margin-inline: auto;
}

.landing-page__num-image {
  position: relative;
  width: var(--content-num-width);
  padding-inline: var(--content-num-gap);
  margin-inline: auto;
  background-color: #fdf3f1;
}

.landing-page__num::before {
  position: absolute;
  top: 0;
  bottom: 0;
  display: block;
  width: 100%;
  height: 1px;
  margin-block: auto;
  content: '';
  background-color: #b59267;
}

.landing-page__title {
  margin-block-start: var(--title-gap, calc(32 * var(--container-size)));
  font-weight: 400;
  text-align: center;
}

.landing-page__title span {
  display: block;
}

.landing-page__title-icon {
  width: var(--title-icon-width, calc(120 * var(--container-size)));
  margin-block-end: var(--title-icon-gap, calc(10 * var(--container-size)));
  margin-inline: auto;
}

.landing-page__title-main {
  font-family: var(--font-didot);
  font-size: calc(60 * var(--container-size));
  line-height: 1.25;
  color: #b59267;
  --letter-spacing: 0;
}

.landing-page__title-sub {
  margin-block-start: calc(-1 * var(--container-size));
  font-family: var(--font-mincho);
  font-size: calc(26 * var(--container-size));
  line-height: 2.0769230769;
}

.landing-page__image {
  position: relative;
  padding-inline: calc(45 * var(--container-size));
  margin-block-start: calc(42 * var(--container-size));
}

.landing-page__desc {
  margin-block-start: calc(20 * var(--container-size));
  font-size: calc(22 * var(--container-size));
  font-weight: 400;
  line-height: 2;
  text-align: center;
}

.landing-page__detail {
  margin-block-start: calc(42 * var(--container-size));
}

.landing-page__product {
  text-align: center;
}

.landing-page__product-list {
  display: flex;
  flex-wrap: wrap;
  row-gap: var(--product-gap);
  justify-content: center;
  margin-block-start: calc(80 * var(--container-size));
}

.landing-page__product-item {
  width: calc(240 * var(--container-size));
}

.landing-page__product-item--new {
  position: relative;
}

.landing-page__product-item--new a {
  position: relative;
}

.landing-page__product-item--new::before {
  position: absolute;
  right: calc(-97 * var(--container-size));
  bottom: calc(51 * var(--container-size));
  width: calc(200 * var(--container-size));
  height: calc(200 * var(--container-size));
  content: '';
  background: url(../images/icon_new-color.png) no-repeat center/contain;
}

.landing-page__product-price {
  --letter-spacing: 0.025em;
  display: inline-block;
  padding-block-end: calc(4 * var(--container-size));
  margin-block-start: var(--price-gap, calc(49 * var(--container-size)));
  font-family: var(--font-crimson);
  font-size: calc(24 * var(--container-size));
  font-weight: 400;
  border-block-end: 1px solid #b2b2b2;
}

.landing-page__collection {
  position: relative;
  padding-block-start: var(--collection-gap);
}

.landing-page__collection:first-child {
  --collection-gap: calc(175 * var(--container-size));
}

.landing-page__collection:first-child .landing-page__num {
  --content-num-gap: calc(24 * var(--container-size));
  --content-num-width: calc(99 * var(--container-size));
}

.landing-page__collection:first-child .landing-page__product-list {
  --product-gap: calc(23 * var(--container-size));
}

.landing-page__collection:nth-child(2) {
  --collection-gap: calc(170 * var(--container-size));
}

.landing-page__collection:nth-child(2) .landing-page__num {
  --content-num-gap: calc(20 * var(--container-size));
  --content-num-width: calc(98 * var(--container-size));
}

.landing-page__collection:nth-child(2) .landing-page__title {
  --title-gap: calc(45 * var(--container-size));
  --title-icon-gap: calc(11 * var(--container-size));
}

.landing-page__collection:nth-child(2) .landing-page__product-list {
  --product-gap: calc(30 * var(--container-size));
  padding-inline: calc(60 * var(--container-size));
}

.landing-page__collection:nth-child(2) .landing-page__product-item:nth-child(2) {
  margin-inline-end: auto;
}

.landing-page__collection:nth-child(2) .landing-page__product-item:nth-child(3) {
  margin-inline-start: auto;
}

.landing-page__collection:nth-child(2) .landing-page__product-price {
  --price-gap: calc(51 * var(--container-size));
}

.landing-page__collection:nth-child(3) {
  --collection-gap: calc(169 * var(--container-size));
}

.landing-page__collection:nth-child(3) .landing-page__num {
  --content-num-gap: calc(21 * var(--container-size));
  --content-num-width: calc(100 * var(--container-size));
}

.landing-page__collection:nth-child(3) .landing-page__num::before {
  bottom: calc(20 * var(--container-size));
}

.landing-page__collection:nth-child(3) .landing-page__title {
  --title-gap: calc(24 * var(--container-size));
  --title-icon-gap: calc(13 * var(--container-size));
  --title-icon-width: calc(110 * var(--container-size));
}

.landing-page__footer {
  padding-block-start: calc(180 * var(--container-size));
  padding-block-end: calc(183 * var(--container-size));
}
@media (min-width: 768px) {
  .landing-page__footer {
    padding-block-end: calc(160 * var(--container-size));
  }
}

.landing-page__footer-link {
  width: calc(400 * var(--container-size));
  margin-inline: auto;
}
