
.p-wedding-03__summary {
  width: 100%;
}
@media (min-width: 768px) {
  .p-wedding-02__summary,
  .p-wedding-03__summary {
    width: 512px;
  }
}
@media (min-width: 768px) {
    .p-wedding-01__desc02 > br {
        display: block;
    }
    .p-wedding-01__desc {
      max-width: clamp(21em, 21.14vw, 29em);
    }
}
@media (min-width: 768px) and (max-width: 1023px) {
    .p-wedding-01__summary02 {
      top: 53vw;
    }
    .p-wedding-01 {
      min-height: 78vw;
    }
    .p-wedding-01__desc02 {
      max-width: 230px;
      letter-spacing: .01em;
    }
    .p-wedding-01__img02 {
      left: clamp(30px, 23.05vw, 385px);
    }
    .p-wedding-01__img04 {
      top: auto;
      bottom: 0;
      width: clamp(240px, 35vw, 684px);
      height: clamp(196px, 25vw, 499px);
    }
    .p-wedding-01__img05 {
      left: clamp(10px, 34.08vw, 520px);
      top: clamp(145.4px + 27vw, 54vw, 974px);
    }
    .p-wedding-01__img06 {
      top: auto;
      bottom: -6%;
      left: clamp(10px, 54vw, 1006px);
      width: clamp(80px, 13vw, 257px);
      height: clamp(51.36px, 8vw, 165px);
    }
    .p-wedding-02 {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row;
      justify-content: space-between;
    }
    .p-wedding-02 > figure {
      width: 40%;
      display: block;
    }
    .p-wedding-03 {
      display: flex;
      flex-wrap: wrap;
      flex-direction: row-reverse;
      justify-content: space-between;
      align-items: flex-start;
      flex-direction: row;
    }
    .p-wedding-03 > figure {
      width: 40%;
      display: block;
    }
    .p-wedding-02__summary,
    .p-wedding-03__summary {
      width: 56%;
      max-width: 512px;
    }
}

@media (min-width: 1024px) {
  .p-wedding-02__img01,
  .p-wedding-03__img01 {
    width: clamp(320px, 35.83vw, 688px);
    height: clamp(181px, 20.31vw, 390px);
  }
}

@media (min-width: 960px) {
  .p-wedding-01__desc02 {
    max-width: 240px;
  }
  .p-wedding-01__img02 {
    left: clamp(30px, 20.05vw, 385px);
  }
  .p-wedding-01 .p-wedding-01__img05{
    left: clamp(10px, 29%, 520px);
  }
}

@media (min-width: 1024px) {
  .p-wedding-01 {
    height: 82vw;
    height: auto;
    min-height: 1px;
    max-height: 1320px;
    max-height: 1260px;
    width: 100%;
    max-width: 1920px;
    margin-left:auto;
    margin-right:auto;
    margin-bottom: 8vw;
    margin-bottom: min(15vw,300px);
    position: relative;
  }
  .p-wedding-01__summary {
    position: relative;
    height: auto;
    margin: 0;
    min-height: 480px;
    height: 40vw;
    max-height: 580px;
  }
  .p-wedding-01 .p-wedding-01__summary .p-wedding-01__desc {
    line-height: 2.0;
    top: 0!important;
    margin-top: 30px;
    margin-bottom: 0!important;
  }
  figure:has(.p-wedding-01__img01) {
    min-height: 480px;
    height: 40vw;
    max-height: 580px;
    position: relative;

    position: absolute;
    width: 46.875%;
    top: 0;
    left: 0;
  }
  figure:has(.p-wedding-01__img01) img{
    height: 100%;
    object-position: right;
  }

  .p-wedding-01__summary02 {
    top: auto;
    bottom: 0;
    margin-top: min(18vw,360px);
    position: relative;
  }

  .p-wedding-01__desc02 {
    max-width: 280px;
    width: 60%;
    width: 20em;
    letter-spacing: 0.03em;
  }
  .p-wedding-01__img01 {
    left: 0;
    width: 100%;
    height: auto;
  }
  .p-wedding-01__img02 {
    top: 58%;

  }
  .p-wedding-01 .p-wedding-01__img03 {
    top: 63%;
  }
  .p-wedding-01 .p-wedding-01__img04 {
    right: 1.7%;
    top: auto;
    bottom: 0;
  }
  .p-wedding-01 .p-wedding-01__img05{
    left: clamp(10px, 28%, 520px);
    top: auto;
    bottom: 0;
  }
  .p-wedding-01 .p-wedding-01__img06 {
    top: auto;
    left: 53%;
    bottom: -8%;
  }
}

@media (min-width: 1200px) {
    .p-wedding-01__ttl {
      line-height: 170%;
    }
    .p-wedding-01__img02 {
      top: 56%;
    }
    .p-wedding-01 .p-wedding-01__img03 {
      top: 60%;
    }
}

@media (min-width: 1560px) {
  .p-wedding-01 .p-wedding-01__summary .p-wedding-01__desc {
    line-height: 2.0;
    top: 0!important;
    margin-top: 40px;
    margin-bottom: 0!important;
  }
}
