@charset "UTF-8";
/* ===== 共通 ===== */
:root {
  --font-family-en: "Castoro", serif;
  --font-family-common: "Noto Serif JP", serif;
  --color-brown: #AD976E;
  --color-white: #fff;
  --size-1: min(1px, 0.2666666667vmin);
}

.footer {
  margin-block-start: 0;
}

.footer:not(.brandTop-footer) {
  margin-block-start: 0;
}

.valentine-container {
  font-family: var(--font-family-common);
  color: var(--color-brown);
  background: #FFE6EB;
}

.valentine-heading {
  font-weight: 700;
  letter-spacing: 0.05em;
}

.valentine-heading.__secondary {
  display: flex;
  justify-content: center;
  align-items: center;
}

.valentine-heading.__secondary::before,
.valentine-heading.__secondary::after {
  content: "";
  background-position: center;
  background-size: contain;
  background-repeat: no-repeat;
}

.valentine-heading.__secondary::before {
  aspect-ratio: 110/73;
  background-image: url(https://gigaplus.makeshop.jp/laduree01/img/contents/freepage/valentineday2026/img_heading_deco_start.png);
}

.valentine-heading.__secondary::after {
  aspect-ratio: 110/71;
  background-image: url(https://gigaplus.makeshop.jp/laduree01/img/contents/freepage/valentineday2026/img_heading_deco_end.png);
}

.valentine-heading.__secondary .valentine-heading__inner {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.valentine-heading.__secondary .__en {
  font-family: var(--font-family-en);
  font-weight: 400;
  line-height: 1;
}

/* ----- valentine-button ----- */
.valentine-button {
  display: block;
  inline-size: 100%;
  background: var(--color-brown);
  color: var(--color-white);
  font-weight: 500;
}

.valentine-button span {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: center;
  block-size: 100%;
  border: var(--size-1) solid var(--color-white);
}

.valentine-button.__arrow {
  font-weight: 700;
}

.valentine-button.__arrow span::after {
  position: absolute;
  content: "";
  aspect-ratio: 1;
  border: solid var(--color-white);
  border-width: 0 var(--size-1) var(--size-1) 0;
  transform: rotate(45deg);
}

/* ----- valentine-section ----- */
:is(.valentine-intro, .valentine-section) {
  padding-inline: min(10px, 2.6666666667vmin);
}

.valentine-item {
  background: #FDF8EC;
  inline-size: 100%;
  margin-inline: auto;
  border: var(--size-1) solid var(--color-brown);
}

.valentine-item__inner + .valentine-item__inner {
  border-block-start: var(--size-1) solid var(--color-brown);
}

.valentine-item__lead {
  line-height: 2;
  font-weight: 500;
}

.valentine-item__list {
  display: grid;
}

.valentine-item__price {
  border-block: var(--size-1) solid var(--color-brown);
  font-weight: 500;
}

.valentine-item__price .__tax {
  margin-inline-start: 0.5em;
  font-size: 80%;
}

.attention-list {
  line-height: 1.66;
  font-weight: 500;
}

.valentine-button + .attention-list {
  margin-block-start: 15px;
}

.bottom-text {
  line-height: 2;
  font-weight: 700;
}

/* ===== intro ===== */
.anchor-list {
  display: grid;
  gap: min(10px, 2.6666666667vmin);
  margin-inline: auto;
}

.anchor-item {
  inline-size: 100%;
}

.valentine-intro__text {
  line-height: 2.2;
  font-weight: 500;
}

/* ===== afternoon ===== */
.thumbnail-slider .swiper-slide {
  cursor: pointer;
  transition: all 0.3s ease 0s;
}

.swiper-container {
  margin-inline: auto;
}

.valentine-item__inner:has(.afternoon-detail) {
  padding-inline: 0;
  padding-block-end: 0;
}

.afternoon-detail {
  text-align: start;
  font-weight: 500;
  line-height: 2;
}

.afternoon-detail__item {
  border-block-start: var(--size-1) solid var(--color-brown);
}

/* ===== icecream ===== */
#valentine-05 .valentine-item__mv + .valentine-item__list {
  margin-block-start: 0;
}

@media (hover: hover) {
  .thumbnail-slider .swiper-slide:hover {
    opacity: 0.7;
  }
}
@media screen and (width < 769px) {
  .pc-only {
    display: none !important;
  }
  /* ===== 共通 ===== */
  .valentine-container {
    padding-block-end: 50px;
  }
  .valentine-heading.__primary {
    font-size: 19px;
  }
  .valentine-heading.__secondary {
    gap: min(15px, 4vmin);
  }
  .valentine-heading.__secondary::before,
  .valentine-heading.__secondary::after {
    inline-size: min(70px, 18.6666666667vmin);
  }
  .valentine-heading.__secondary .__en {
    font-size: 22px;
  }
  .valentine-heading.__secondary .__ja {
    font-size: 18px;
  }
  .valentine-heading.__secondary .__only-ja {
    font-size: 20px;
  }
  .valentine-heading.__tertiary {
    font-size: 18px;
  }
  /* ----- valentine-section ----- */
  .valentine-section {
    margin-block-start: 50px;
  }
  .valentine-item {
    margin-block-start: 15px;
  }
  .valentine-item__inner {
    padding: 25px min(15px, 4vmin);
  }
  .valentine-item__lead {
    font-size: 12px;
  }
  * + .valentine-item__lead {
    margin-block-start: 20px;
  }
  * + .valentine-item__mv {
    margin-block-start: 20px;
  }
  .valentine-item__lead + .valentine-item__list {
    margin-block-start: 15px;
  }
  .valentine-heading.__tertiary + .valentine-item__list {
    margin-block-start: 25px;
  }
  .valentine-heading.__tertiary + .swiper-container {
    margin-block-start: 20px;
  }
  .valentine-item__list {
    gap: 60px;
  }
  .valentine-item__price {
    padding-block: 10px;
    margin-block: 15px;
    font-size: 14px;
  }
  .attention-list {
    font-size: 13px;
  }
  .bottom-text {
    margin-block-start: 25px;
    font-size: 13px;
  }
  /* ===== intro ===== */
  .valentine-intro {
    padding-block-start: 25px;
  }
  .valentine-intro__text {
    margin-block-start: 25px;
    font-size: 14px;
  }
  .anchor-list {
    grid-template-columns: repeat(2, 1fr);
    margin-block-start: 30px;
  }
  .anchor-list > *:last-child:nth-child(odd) {
    grid-column: 1/-1;
    inline-size: 50%;
    margin-inline: auto;
  }
  /* ===== afternoon ===== */
  .swiper-container {
    max-inline-size: 84.5%;
  }
  .thumbnail-slider {
    margin-block-start: 10px;
  }
  .afternoon-detail {
    margin-block-start: 35px;
    font-size: 12px;
  }
  .afternoon-detail__item {
    padding-block: 15px;
    padding-inline: min(25px, 6.6666666667vmin);
  }
  .afternoon-detail__text .attention-list {
    margin-block-start: 15px;
    font-size: 10px;
  }
  .afternoon-detail__text .valentine-button {
    margin-block-start: 15px;
    margin-block-end: 10px;
  }
  .afternoon-detail-sub {
    margin-block-start: 15px;
  }
  .afternoon-detail-sub__item + .afternoon-detail-sub__item {
    margin-block-start: 25px;
  }
  .afternoon-detail-sub__text {
    margin-block-start: 3px;
  }
}
@media screen and (769px <= width) {
  .sp-only {
    display: none !important;
  }
  /* ===== 共通 ===== */
  .valentine-container {
    padding-block-end: 100px;
  }
  .valentine-heading.__primary {
    font-size: 2em;
  }
  .valentine-heading.__secondary {
    gap: 50px;
  }
  .valentine-heading.__secondary::before,
  .valentine-heading.__secondary::after {
    inline-size: 110px;
  }
  .valentine-heading.__secondary .__en {
    font-size: 2em;
  }
  .valentine-heading.__secondary .__ja {
    font-size: 1.5em;
  }
  .valentine-heading.__secondary .__only-ja {
    font-size: 1.75em;
  }
  .valentine-heading.__tertiary {
    font-size: 1.625em;
  }
  /* ----- valentine-section ----- */
  .valentine-section {
    margin-block-start: 80px;
  }
  .valentine-item {
    max-inline-size: 800px;
    margin-block-start: 30px;
  }
  .valentine-item__inner {
    padding: 40px 26px;
  }
  .valentine-item__lead {
    font-size: 0.9375em;
  }
  * + .valentine-item__lead {
    margin-block-start: 30px;
  }
  * + .valentine-item__mv {
    margin-block-start: 30px;
  }
  .valentine-item__lead + .valentine-item__list {
    margin-block-start: 30px;
  }
  .valentine-heading.__tertiary + .valentine-item__list {
    margin-block-start: 50px;
  }
  .valentine-heading.__tertiary + .swiper-container {
    margin-block-start: 30px;
  }
  .valentine-item__mv + .valentine-item__list {
    margin-block-start: 25px;
  }
  .valentine-item__list {
    grid-template-columns: repeat(2, 1fr);
    gap: 70px;
  }
  .valentine-item__list > *:last-child:nth-child(odd) {
    grid-column: 1/-1;
    inline-size: calc((100% - 70px) / 2);
    margin-inline: auto;
  }
  .valentine-item__item.__deco {
    position: relative;
    z-index: 1;
  }
  .valentine-item__item.__deco::before {
    position: absolute;
    content: "";
    inset-block-start: 40px;
    inset-inline-start: 50%;
    transform: translateX(-50%);
    aspect-ratio: 466/199;
    inline-size: 466px;
    background-position: center;
    background-size: contain;
    background-repeat: no-repeat;
    background-image: url(https://gigaplus.makeshop.jp/laduree01/img/contents/freepage/valentineday2026/img_figure_deco.png);
    z-index: -1;
  }
  .valentine-item__price {
    padding-block: 13px;
    margin-block: 15px;
    font-size: 0.9375em;
  }
  .attention-list {
    font-size: 0.75em;
  }
  .bottom-text {
    margin-block-start: 30px;
    font-size: 0.9375em;
  }
  /* ===== intro ===== */
  .valentine-intro {
    padding-block-start: 70px;
  }
  .valentine-intro__text {
    margin-block-start: 40px;
    font-size: 1.125em;
  }
  .anchor-list {
    grid-template-columns: repeat(5, 1fr);
    max-inline-size: 1190px;
    margin-block-start: 70px;
  }
  /* ===== afternoon ===== */
  .swiper-container {
    max-inline-size: 670px;
  }
  .thumbnail-slider {
    margin-block-start: 30px;
  }
  .afternoon-detail {
    margin-block-start: 30px;
    font-size: 0.9375em;
  }
  .afternoon-detail__item {
    padding-block: 35px;
    padding-inline: 64px;
  }
  .afternoon-detail__text .attention-list {
    margin-block-start: 20px;
  }
  .afternoon-detail__text .valentine-button {
    margin-block-start: 30px;
  }
  .afternoon-detail-sub {
    margin-block-start: 16px;
  }
  .afternoon-detail-sub__item + .afternoon-detail-sub__item {
    margin-block-start: 30px;
  }
  .afternoon-detail-sub__text {
    margin-block-start: 6px;
  }
}
@media screen and (width < 960px) {
  /* ----- valentine-button ----- */
  .valentine-button {
    font-size: 13px;
    padding: min(3.5px, 0.9333333333vmin);
  }
  .valentine-button span {
    min-block-size: 38px;
  }
  .valentine-button.__arrow span::after {
    margin-block-start: calc(-1 * min(4px, 1.0666666667vmin));
    inline-size: min(8px, 2.1333333333vmin);
    inset-inline-end: min(7px, 1.8666666667vmin);
  }
}
@media screen and (961px <= width) {
  /* ----- valentine-button ----- */
  .valentine-button {
    font-size: 1em;
    padding: 5px;
  }
  .valentine-button span {
    min-block-size: 46px;
  }
  .valentine-button.__arrow span::after {
    margin-block-start: -4.5px;
    inline-size: 9px;
    inset-inline-end: 20px;
  }
}/*# sourceMappingURL=va2026.css.map */