.summer-lp {
  padding-top: 80px;

  .hero-visual {
    position: relative;
    width: 100%;
    aspect-ratio: 393 / 852;
    overflow-y: visible;

    .hero-visual__content {
      position: absolute;
      display: block;

      &.main-background {
        top: 0;
        left: 0;
        width: 100%;

        &::after {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background-image: linear-gradient(
            180deg,
            transparent 0 50%,
            #fff 100%
          );
        }

        .hero-visual__content--image {
          width: 100%;
        }
      }

      &.main-ice {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;

        &::after {
          content: "";
          position: absolute;
          top: 0;
          left: 0;
          width: 100%;
          height: 100%;
          background-image: linear-gradient(
            180deg,
            transparent 0 70%,
            #fff 100%
          );
        }

        .hero-visual__content--image {
          width: 100%;
          height: 100%;
          object-fit: cover;
        }
      }

      &.summer-only {
        width: fit-content;
        top: 24px;
        right: -12px;
      }

      &.cartridge {
        top: 30px;
        left: 0;
        width: 100%;

        .hero-visual__content--image {
          width: 61%;
          min-width: 240px;
          margin-inline: auto;
        }
      }

      &.hero-text {
        top: 54%;
        width: 100%;
        opacity: 1;
        transition: 0.5s;

        .hero-visual__content--image {
          width: 100%;
          margin-inline: auto;
        }
      }

      .hero-visual__content--image {
        display: block;
      }

      &.button-wrapper {
        width: 100%;
        top: 85%;
      }

      .hero-visual__content--action-button {
        background-color: var(--skew-summer-lp-primary);
        box-shadow: 0 4px 0 0 #005cc8;
      }
    }
  }

  .special-set {
    width: 100%;
    margin-bottom: 100px;

    @media (max-width: 768px) {
      margin-bottom: 0;
    }

    .special-set__introduction {
      margin-block-start: 40px;
      margin-block-end: 80px;
      text-align: center;
      font-size: 24px;
      font-family: "Helvetica Neue", heisei-kaku-gothic-std, sans-serif;
      font-weight: 900;
      line-height: 1.4;
      color: black;
    }

    .special-set__title {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;

      .special-set__title--image {
        display: block;
        width: 342px;
      }
    }

    .special-set__contents {
      position: relative;
      width: 100%;

      .special-set__background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100vh;

        &.water-splash {
          top: -160px;
        }

        &.fruits {
          top: -100px;
        }

        .special-set__background--image {
          display: block;
          width: 100%;
          /*height: 100%;*/
          object-fit: cover;
        }
      }

      .special-set__items {
        width: calc(100% - 36px);
        -webkit-clip-path: polygon(
          0 calc(48px),
          100% 0%,
          100% calc(100% - 48px),
          0% 100%
        );
        clip-path: polygon(
          0 calc(0% + 60px),
          100% 0%,
          100% calc(100% - 60px),
          0% 100%
        );
        background-color: rgba(255, 255, 255, 0.9);
        margin-inline: auto;
        padding-block: 100px;

        .special-set__item--title {
          color: var(--skew-summer-lp-primary);
          font-family: presicav, heisei-kaku-gothic-std, sans-serif;
          font-weight: 900;
          font-size: 32px;
          line-height: 1.15;
          letter-spacing: -3px;
          text-align: center;
          margin-bottom: 24px;
        }

        .special-set__item--image-wrapper {
          display: block;
          width: calc(100% - 48px);
          height: auto;
          aspect-ratio: 1 / 1;
          margin-inline: auto;
          margin-bottom: 18px;
          border: 1px solid #41b0ff;

          .special-set__item--image {
            display: block;
            width: 100%;
            height: 100%;
            object-fit: contain;
          }
        }

        .special-set__item--description {
          color: black;
          font-family: "Noto Sans JP", sans-serif;
          font-weight: 900;
          font-size: 14px;
          line-height: 1.8;
          text-align: center;
          margin-bottom: 18px;
        }

        .special-set__item--price {
          margin-bottom: 18px;

          .special-set__item--price-image {
            display: block;
            margin-inline: auto;
          }
        }

        .special-set__item--action {
          .special-set__item--action-button {
            background-color: var(--skew-summer-lp-primary);
            box-shadow: 0 4px 0 0 #005cc8;
          }
        }
      }
    }
  }

  .summer-edition {
    .summer-edition__title {
      width: 100%;
      margin-bottom: 32px;

      .summer-edition__title--image {
        display: block;
        margin-inline: auto;
        margin-bottom: 16px;
        width: 342px;
      }

      .summer-edition__subtitle {
        font-family: presicav, sans-serif;
        font-weight: 900;
        font-size: 16px;
        line-height: 1.6;
        color: #41b0ff;
        text-align: center;
      }
    }

    .summer-edition__description {
      width: calc(100% - 48px);
      margin-inline: auto;
      margin-bottom: 48px;
      color: black;
      font-family: heisei-kaku-gothic-std, sans-serif;
      font-weight: 900;
      font-size: 14px;
      line-height: 1.8;
    }

    .summer-edition__items {
      .summer-edition__item {
        margin-bottom: 48px;

        .summer-edition__item--image-container {
          position: relative;
          width: 100%;
          height: 100%;
          aspect-ratio: 1 / 1;
          margin-bottom: 36px;

          .summer-edition__item--image {
            display: block;
            position: absolute;
            top: 0;
            width: 100%;
            height: 100%;
            object-fit: contain;

            .summer-edition__item--image-inner {
              display: block;
              position: absolute;
              top: 0;
              width: 100%;
              height: 100%;
              object-fit: contain;
            }
          }

          .hyper-leaves {
            width: 80%;
            left: 50%;
            transform: translateX(-50%);
          }

          .hyper-menthol {
            transform: rotate(14deg);
          }

          .muscat-splash {
            object-fit: cover;
            overflow: visible;
          }

          .muscat-leaves {
            height: 110% !important;
          }

          .muscat-ice {
            width: 80% !important;
            left: 50%;
            transform: translateX(-50%);
          }

          .muscat-menthol {
            transform: rotate(-14deg);
          }

          .pineapple-ice {
            left: -10%;
          }

          .pineapple-fruit {
            width: 60% !important;
            left: 40%;
          }

          .pineapple-menthol {
            transform: rotate(14deg);
          }

          .pineapple-new {
            width: 160px;
            height: 160px;
            top: 70%;
            left: -5%;

            .pineapple-new-container {
              width: 100%;
              height: 100%;
              position: relative;
              display: flex;
              justify-content: center;
              align-items: center;

              .pineapple-new-inner {
                position: absolute;
                top: 0;
                left: 0;
                width: 100%;
                height: 100%;
                z-index: -1;
              }

              .pineapple-new-text {
                color: white;
                font-family: presicav, heisei-kaku-gothic-std, sans-serif;
                font-size: 32px;
                font-weight: 900;
              }
            }
          }
        }

        .summer-edition__item--information {
          .summer-edition__item--title {
            font-family: presicav, heisei-kaku-gothic-std, sans-serif;
            font-weight: 900;
            font-size: 36px;
            line-height: 0.92;
            text-align: center;
            margin-bottom: 12px;

            &.hyper-menthol {
              color: #41b0ff;
            }

            &.muscat-menthol {
              color: #99de18;
            }

            &.pineapple-menthol {
              color: #ffc800;
            }
          }

          .summer-edition__item--description {
            color: black;
            font-family: heisei-kaku-gothic-std, sans-serif;
            font-weight: 900;
            font-size: 14px;
            line-height: 1.8;
            text-align: center;
            margin-bottom: 12px;
          }

          .summer-edition__item--button {
            &.hyper {
              background-color: #41b0ff;
              box-shadow: 0 4px 0 0 #109cff;
            }

            &.muscat {
              background-color: #99de18;
              box-shadow: 0 4px 0 0 #84cb00;
            }

            &.pineapple {
              background-color: #ffc800;
              box-shadow: 0 4px 0 0 #eebb00;
            }
          }
        }
      }
    }

    .summer-edition__caution {
      font-family: heisei-kaku-gothic-std, sans-serif;
      font-weight: 500;
      font-size: 12px;
      line-height: 1.8;
      color: #888888;
      width: calc(100% - 48px);
      margin-inline: auto;
    }
  }

  .special-movie {
    padding-top: 60px;

    .special-movie__container {
      position: relative;
      width: 100%;
      /*height: 840px;*/
      aspect-ratio: 370 / 840;

      .special-movie__background {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;

        .special-movie__background--image {
          display: block;
          width: 100%;
          height: 100%;
          object-fit: contain;
        }
      }

      .special-movie__content {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        padding-top: 120px;

        .special-movie__title {
          width: 100%;
          display: flex;
          justify-content: center;
          align-items: center;
          margin-bottom: 36px;

          .special-movie__title--image {
            display: block;
            margin-inline: auto;
          }
        }

        .special-movie__videos {
          width: calc(100% - 48px);
          margin-inline: auto;
          display: flex;
          flex-direction: column;
          gap: 24px;

          .special-movie__video {
            width: 100%;
            aspect-ratio: 340 / 212;

            iframe {
              width: 100%;
              height: 100%;
              object-fit: cover;
            }
          }
        }
      }
    }
  }

  .summer-about-skew {
    padding-top: 60px;
    margin-bottom: 60px;

    .about-skew__title {
      width: 100%;
      display: flex;
      justify-content: center;
      align-items: center;
      margin-bottom: 36px;

      .about-skew__title--image {
        display: block;
        margin-inline: auto;
      }
    }

    .about-skew__video {
      width: 100%;
      aspect-ratio: 395 / 222;
      margin-bottom: 24px;

      .about-skew__video--content {
        display: block;
        width: 100%;
        height: 100%;
        object-fit: cover;
      }
    }

    .about-skew__description {
      width: calc(100% - 48px);
      margin-inline: auto;
      margin-bottom: 24px;
      color: black;
      font-family: heisei-kaku-gothic-std, sans-serif;
      font-weight: 900;
      font-size: 14px;
      line-height: 1.8;
    }

    .about-skew__action {
      background-color: var(--skew-summer-lp-primary);
      box-shadow: 0 4px 0 0 #005cc8;
    }
  }
}

.action-button {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 240px;
  height: 48px;
  font-family: presicav, heisei-kaku-gothic-std, sans-serif;
  font-weight: 900;
  font-size: 16px;
  color: white;
  cursor: pointer;
  border: none;
  margin-inline: auto;
  text-decoration: none;

  &:hover {
    box-shadow: none !important;
    transform: translateY(4px);
  }
}
