.modal-wrapper {
  display: none;
  /* 通常は非表示 */
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, 0.5);
}

/* このクラスが付いていたら表示 */
.modal-wrapper.open {
  display: flex;
  justify-content: center;
  align-items: center;
  z-index: 100100;
}

.modal-content {
  background: white;
  padding: 40px 20px;
  width: min(80%, 900px);
  text-align: center;
}

.modal-content h3 {
  font-size: 28px;
  color: #c00;
  line-height: 1.5em;
  margin-bottom: 15px;
}

.modal-content p {
  font-size: 16px;
  line-height: 1.5em;
  margin-bottom: 1em;
}

.btn-square-pop {
  position: relative;
  display: inline-block;
  padding: 0.25em 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #fd9535;
  /*背景色*/
  border-bottom: solid 2px #d27d00;
  /*少し濃い目の色に*/
  border-radius: 4px;
  /*角の丸み*/
  box-shadow: inset 0 2px 0 rgba(255, 255, 255, 0.2), 0 2px 2px rgba(0, 0, 0, 0.19);
  font-weight: bold;
  margin-top: 30px;
}

.btn-square-pop:active {
  border-bottom: solid 2px #fd9535;
  box-shadow: 0 0 2px rgba(0, 0, 0, 0.30);
}

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

  .modal-content {
    height: auto;
  }

.modal-content h3 {
  font-size: 18px;
}

.modal-content p {
  font-size: 14px;
  margin-bottom: .5em;
}

}

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

  .modal-content {
    padding: 20px;
  }

}