#js-popup-reset {
    background: #ff0101;
    padding: 20px 10px;
    display: block;
    color: #fff;
    width: 100%;
    font-size: 115%;
    margin: 10px auto;
    font-weight: 700;
    max-width: 60rem;
}

/* ========================================
   Popup
======================================== */

.exit-popup {
  position: fixed;
  inset: 0;
  z-index: 10000;

  display: grid;
  place-items: center;

  padding: 2rem;

  background: rgba(0, 0, 0, 0.6);

  opacity: 0;
  visibility: hidden;

  transition:
    opacity 0.2s ease,
    visibility 0.2s ease;
}

.exit-popup[hidden] {
  display: none;
}

.exit-popup.is-active {
  opacity: 1;
  visibility: visible;
}


/* ========================================
   Dialog
======================================== */

.exit-popup__dialog {
  position: relative;
  width: 52rem;
  background: #fff;
}


/* ========================================
   Close
======================================== */

.exit-popup__close {
  display: flex;
  justify-content: center;
  align-items: center;
  position: absolute;
  top: -1rem;
  right: -1rem;
  z-index: 2;
  width: 3rem;
  padding: 0;
  border: 0;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
  aspect-ratio: 1;
  transition: .2s;
}
.exit-popup__close img {
  display: block;
  width: 55%;
}
.exit-popup__close:hover {
  background: #f4ff29;
}


/* ========================================
   Contents
======================================== */

.exit-popup__contents {
  text-align: center;
}

.exit-popup__title {
  margin: 0;

  font-size: 2.8rem;
  font-weight: 700;
}

.exit-popup__text {
  margin: 2rem 0 0;

  font-size: 1.6rem;
}

.exit-popup__button {
  display: block
}


/* ========================================
   SP
======================================== */

@media screen and (max-width: 767px) {

  .exit-popup {
    padding: 1.5rem;
  }

  .exit-popup__dialog {
    max-height:
      calc(100dvh - 3rem);
    width: 100%;
  }

  .exit-popup__contents {
    padding: 0;
  }

  .exit-popup__title {
    font-size: 2.2rem;
  }

}