.modal-scroll-lock {
  overflow: hidden;
}
aside.modal-cover {
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 10;
  transform: translateZ(0);
  background-color: rgba(37, 43, 52, 0.5);
  .modal-area,
  .modal-header,
  .modal-body,
  .modal-footer {
    overflow: hidden;
  }
  .modal-area {
    position: fixed;
    background-color: #fff;
    top: 50%;
    left: 50%;
    height: auto;
    transform: translate(-50%, -50%);
    width: 60%;
    min-height: 65%;
    max-height: calc(100% - 15em);
    overflow-y: auto;
    -webkit-overflow-scrolling: touch;
    .modal-header,
    .modal-body,
    .modal-footer {
      position: absolute;
      width: -webkit-fill-available;
      width: -moz-available;
    }
    .modal-header {
      position: relative;
      background-color: #f5f5f5;
      width: 100%;
      display: flex;
      align-items: center;
      .modal-header-title,
      .modal-header-title-force {
        margin: 21px auto 21px 24px;
        font-size: 16px;
        color: #46494d;
        width: 85%;
      }
      .modal-header-close,
      .modal-header-close-force {
        background-color: inherit;
        height: -webkit-fill-available;
        height: -moz-available;
        position: absolute;
        right: 0;
        padding: 0;
        border: 0;
        box-shadow: 0;
        cursor: pointer;
        .modal-header-close-icon,
        .modal-header-close-icon-force {
          margin: auto;
          margin-right: 24px;
        }
      }
    }
    .modal-body {
      margin: 0px;
      max-height: 80%;
      top: 80px;
      overflow-y: auto;
    }
    .modal-footer {
      height: auto;
      background-color: #f5f5f5;
      color: #101010;
      font-style: normal;
      font-weight: 500;
      font-size: 16px;
      text-align: center;
      padding: 5px 30px;
      bottom: 0;
    }
  }
}
@media screen and (max-width: 783px) {
  aside.modal-cover {
    .modal-area {
      min-width: 100%;
      min-height: 100%;
      width: 100%;
      height: 100%;
      max-width: 100%;
      max-height: 100%;
      top: 0;
      left: 0;
      transform: translate(0, 0);
      .modal-header {
        height: 10%;
        .modal-header-title,
        .modal-header-title-force {
          font-size: 20px;
          color: #00183a;
          width: 80%;
        }
        .modal-header-title {
          margin: 28px 24px 28px 64px;
        }
        .modal-header-close {
          left: 0;
          right: auto;
          .modal-header-close-icon-force,
          .modal-header-close-icon {
            margin: auto;
            margin-left: 24px;
          }
        }
      }
      .modal-body {
        margin: 2%;
        height: 86%;
        top: 80px;
        overflow-y: auto;
      }
      .modal-footer {
        font-weight: 400;
        font-size: 14px;
        padding: 16px 30px;
        width: -webkit-fill-available;
        width: -moz-available;
        bottom: 0;
        height: 2%;
      }
    }
  }
}
