@charset "utf-8";
@import url("fee_campaign.css?2606");

/* CSS Document */
/* =============================================
Fee
================================================ */

.contents {
  line-height: 1.75;
  font-size: 1rem;
  text-align: justify;
  & p {
    margin: 0;
    & + p,
    & + ul {
      margin-top: 0.75em;
    }
  }
  & ul, & ol, & li,
  & dl, & dt, & dd {
    margin: 0;
    padding: 0;
  }
  & li {
    list-style: none;
  }

  & .titleH3 {
    margin-bottom: 1.5rem;
    & + .titleH4 {
      margin-top: 0;
    }
  }
  & .titleH4 {
    margin-bottom: 0.75rem;
  }
  & .m-list__dot li {
    list-style: disc;
    margin-left: 1.5em;
  }

  & .m-list--01,
  & .m-list--02 {
    margin-top: 1rem;
    & li {
      padding: 1rem;
      border-radius: 3px;
    }
  }
  & .m-list--01 li {
    background: #f4f5f6;
    & .titleH4 {
      margin-top: 0;
      color: #0052af;
    }
  }
  & .m-list--02 li {
    & .titleH5 {
      margin-bottom: 0.25em;
    }
    &:nth-of-type(1) {
      background: #c4ddf8;
      & .titleH5 {
        color: #1365c4;
      }
    }
    &:nth-of-type(2) {
      background: #b9e8b9;
      & .titleH5 {
        color: #029023;
      }
    }
    &:nth-of-type(3) {
      background: #ffebad;
      & .titleH5 {
        color: #a98200;
      }
    }
    &:nth-of-type(4) {
      background: #fbd2e4;
      & .titleH5 {
        color: #cd2d73;
      }
    }
  }
  & dl {
    border-left: 1px solid #bababa;
    border-right: 1px solid #bababa;
    border-bottom: 1px solid #bababa;
    & dt, & dd {
      padding: 0.8rem 1rem;
    }
    & dt {
      font-weight: 700;
      border-top: 1px solid #bababa;
      background: #f4f5f6;
    }
  }
  & .s-fs--s {
    margin-top: 0.5em;
    font-size: 0.9em;
  }
  & .s-fc--pk {
    color: #ff585f;
  }
}

@media only screen and (min-width: 769px) {
  .contents {
    & .is-only--sp {
      display: none;
    }

    & .m-list--01,
    & .m-list--02 {
      display: flex;
      justify-content: space-between;
    }
    & .m-list--01 li {
      width: calc(100% / 3 - 0.5rem);
    }
    & .m-list--02 li {
      width: calc(25% - 0.5rem);
    }
    & dl {
      display: flex;
      flex-wrap: wrap;
      & dt {
        width: 12em;
      }
      & dd {
        width: calc(100% - 12em);
        border-top: 1px solid #bababa;
      }
    }
  }
}
@media only screen and (max-width: 768px) {
  .contents {
    & .is-only--pc {
      display: none;
    }

    & .titleH2 {
      line-height: 1.4;
    }

    & .m-list--01,
    & .m-list--02 {
      & li + li {
        margin-top: 0.5rem;
      }
    }
  }
}
