.modal__btn {
  cursor: pointer;
}
.modal__btn--01 {
  width: 330px;
  height: 448px;
  top: 25.1%;
  left: 7.4%;
  transform: rotate(-3.9deg);
}
@media screen and (max-width: 750px) {
  .modal__btn--01 {
    width: 44vw;
    height: 59.7333333333vw;
  }
}
.modal__btn--02 {
  width: 320px;
  height: 437px;
  top: 27.9%;
  right: 6%;
  transform: rotate(3.1deg);
  z-index: 1;
}
@media screen and (max-width: 750px) {
  .modal__btn--02 {
    width: 42.6666666667vw;
    height: 58.2666666667vw;
  }
}
.modal__btn--03 {
  width: 323px;
  height: 435px;
  top: 60.9%;
  left: 7.7%;
  transform: rotate(-2.8deg);
}
@media screen and (max-width: 750px) {
  .modal__btn--03 {
    width: 43.0666666667vw;
    height: 58vw;
  }
}
.modal__btn--04 {
  width: 328px;
  height: 442px;
  top: 61.2%;
  right: 5.8%;
  transform: rotate(3.8deg);
}
@media screen and (max-width: 750px) {
  .modal__btn--04 {
    width: 43.7333333333vw;
    height: 58.9333333333vw;
  }
}
.modalContainer {
  position: fixed;
  display: none;
  width: 100%;
  height: 100%;
  top: 0;
  left: 0;
  opacity: 0;
  z-index: -1;
  pointer-events: none;
  box-sizing: border-box;
  justify-content: center;
  justify-items: center;
  align-items: center;
}
.modalContainer.js-active {
  display: flex;
  animation: 0.5s ease-in-out 0s modalOpen forwards;
}
.modalContainer.js-close {
  display: flex;
  animation: 0.5s ease-in-out 0s modalClose forwards;
}
.modalContents {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 200;
  overflow-y: auto;
}
.modalContentsBody {
  position: relative;
  max-width: 640px;
  margin: 0 auto;
  width: 100%;
  padding: 4% 0;
}
@media screen and (max-width: 750px) {
  .modalContentsBody {
    max-width: 85.3333333333vw;
  }
}
.modal__close {
  position: absolute;
  width: 40px;
  height: 40px;
  top: 8%;
  right: 7%;
  cursor: pointer;
}
@media screen and (max-width: 750px) {
  .modal__close {
    width: 5.3333333333vw;
    height: 5.3333333333vw;
    top: 5%;
  }
}
.modal__bg {
  position: absolute;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.7);
}

@keyframes modalOpen {
  0% {
    z-index: 100;
    opacity: 0;
    pointer-events: auto;
  }
  100% {
    z-index: 100;
    opacity: 1;
    pointer-events: auto;
  }
}
@keyframes modalClose {
  0% {
    display: block;
    z-index: 100;
    opacity: 1;
    pointer-events: auto;
  }
  99% {
    z-index: 100;
    opacity: 0;
  }
  100% {
    z-index: -1;
    opacity: 0;
    pointer-events: none;
  }
}

.overlayArea {
  position: relative;
}
.overlayItem {
  position: absolute;
}