/*---------------------------------------------

	モーダル

---------------------------------------------*/
.c-modal {
  display: none;
  position: fixed;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  z-index: 1000;
}

.c-modal.is-open {
  display: flex;
  align-items: center;
  justify-content: center;
}

.c-modal__overlay {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: rgba(0, 0, 0, 0.5);
  cursor: pointer;
}

.c-modal__content {
  position: relative;
  background-color: #EBEFE7;
  border-radius: 8px;
  box-shadow: 0px 0px 8px 4px rgba(0, 0, 0, 0.1);
  max-width: 48rem;
  width: 90%;
  max-height: 90%;
  overflow-y: auto;
  z-index: 1001;
}

.c-modal__header {
  position: relative;
  padding: 2.19rem 1.25rem 0.5rem;
  text-align: center;

  @media screen and (max-width: 768px) {
    padding: 2.56rem 1.25rem 0.5rem;
  }

  @media screen and (max-width: 540px) {
    padding: 1.87rem 1rem 0;
  }
}

.c-modal__title {
  font-family: "Zen Maru Gothic", sans-serif;
  font-weight: 700;
  font-size: 1.25rem;
  line-height: 1.4;
  color: #333;
  margin: 0;
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-self: center;
  gap: 0.81rem;

  @media screen and (max-width: 768px) {
    font-size: 1rem;
    gap: 0.31rem;
    word-break: keep-all;
  }
}

.c-modal__close {
  position: absolute;
  top: 0.9375rem;
  right: 0.9375rem;
  background: none;
  border: none;
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.875rem;
  line-height: 1.4;
  color: #A7A7A7;
  cursor: pointer;
  padding: 0;
}

.c-modal__body {
  padding: 1.25rem 2.4375rem 1.875rem;

  @media screen and (max-width: 768px) {
    padding: 1.14rem 1.16rem;
  }

  @media screen and (max-width: 540px) {
    padding: 1.14rem 1.16rem 1.62rem;
  }

  .p-donate-block-normal__box {
    padding: 0;
    margin-bottom: 0;
  }

  .p-donate-block-normal__tax-benefit {
    text-align: center;
    margin-top: 1.12rem;
    color: var(--black-700, #333);
    text-align: center;
    font-size: 0.75rem;
    font-style: normal;
    font-weight: 400;
    line-height: 180%;

    /* 1.35rem */
    a {
      color: var(--green-900, #006E09);
      font-size: 0.75rem;
      font-style: normal;
      font-weight: 400;
      line-height: 180%;
      text-decoration-line: underline;
      text-decoration-style: solid;
      text-decoration-skip-ink: auto;
      text-decoration-thickness: auto;
      text-underline-offset: auto;
      text-underline-position: from-font;
    }
  }

  .select_anidone {
    background: #fff;
    border-radius: 0.5625rem;
    padding: 1.38rem 1.56rem;

    @media screen and (max-width: 768px) {
      padding: 1.28rem 1.13rem;
    }

    h3 {
      display: none;
    }

    p:first-of-type {
      display: none;
    }

    .support_list {
      margin-top: 0;

      .support_list_item {
        &:first-child {
          padding-top: 0;
        }
      }
    }

    .support_list_item_text {
      p {
        display: block;
      }
    }
  }
}