body {
  padding-top: 133px;
  font-family: inherit;
}

em {
  font-weight: normal;
}

#pageHead .breadcrumbs li {
  font-size: 0.75rem;
}

.headline01 {
  &.--withIcon {
    display: flex;
    gap: 1rem;
    align-items: center;

    img {
      height: 4rem;
    }
  }
}

#mainContents {
  .contents--pdt {
    padding: 3vw 0 0;
  }

  .contents--list {
    .contents-inner {
      padding-block: 1vw;

      hr {
        margin-bottom: 2vw;
      }
    }
  }

  .contents-inner {
    width: auto;
    padding: 2vw 3.125vw;

    &.--colored {
      background: var(--main-clr-lgr);
      border-radius: 8px;
    }

    &.--leadtext {
      padding-block: 0;

      ul {
        padding-left: 1rem;
        margin-top: 1rem;
        list-style: square;
      }

      li:not(:last-of-type) {
        margin-bottom: 0.3rem;
      }
    }

    .contents-vision {
      .badge {
        display: flex;
        align-items: center;
        justify-content: center;
        width: fit-content;
        min-width: 4rem;
        height: 1.3vw;
        padding: 8px;
        font-family: Inter, sans-serif;
        font-size: max(var(--main-pc-12px), 12px);
        font-weight: 800;
        line-height: 100%;
        color: var(--main-clr-wt);
        letter-spacing: -0.36px;
        background: var(--main-clr-bl);
        border-radius: 8px;

        &:not(:first-of-type) {
          margin-top: 1.5rem;
        }
      }

      p {
        margin-top: 0.75rem;
        font-size: max(1.6vw, 16px);
        font-weight: bold;
        line-height: 1.5;

        em {
          color: var(--main-clr-bl);
        }
      }

      ul {
        padding-left: 1rem;
        margin-top: 1rem;
        font-size: 16px;
        list-style: square;

        li:not(:last-of-type) {
          margin-bottom: 0.3rem;
        }
      }

      .activityText {
        font-size: 1rem;
        font-weight: normal;
        }

      .activityList {
        list-style: none;
        padding-left: 0;

        li {
          display: flex;
        }

        .activityDate {
          flex: 0 0 10rem;
        }
      }
    }
  }

  .subHdg-top {
    margin: 1.6vw 0 0;
    font-size: max(1.6vw, 16px);
    font-weight: 900;
    line-height: 1.1;
    letter-spacing: 0.6px;
    color: #222;
  }

  .hdg-top {
    font-size: max(1.9vw, 16px);
    font-weight: 900;
    line-height: 1.1;
    color: var(--main-clr-bl);
    letter-spacing: 0.6px;
  }

  .heading-block {
    margin: 1.5vw 0 0;
  }

  .index-conts-heading {
    font-size: max(3vw, 12px);
  }

  .message-block {
    display: flex;
    gap: 1rem;
    align-items: center;
    margin: 1.5vw 0 0;

    img {
      flex: 0 0 200px;
      width: 200px;
      height: auto;
    }

    p {
      flex: 1 1 min-content;
      line-height: 1.6;
    }

    &.--sustItem {
      img {
        flex: 0 0 70px;
        width: 70px;
      }

      .message-text {
        flex: 1 1 min-content;
        line-height: 1.6;

        h3 {
          margin-bottom: 0;
          font-size: max(2vw, 12px);
          line-height: 1.1;

          em {
            color: var(--main-clr-bl);
          }
        }
      }

      ul {
        padding-left: 1rem;
        list-style: square;
      }

      li:not(:last-of-type) {
        margin-bottom: 0.3rem;
      }
    }
  }

  .mainImage {
    width: 100%;
    margin: 1.5vw 0 0;
  }

  .link-block.link-reason {
    flex-direction: column;
    align-items: flex-start;
    margin: 1vw 0 0;

    a {
      margin-inline: 0;
    }
  }
}

@media screen and (width <= 736px) {
  #mainContents {
    .contents--list .contents-inner {
      padding: 3vw 5.13vw;

      hr {
        margin-bottom: 6vw;
      }

      &.--nbp {
        padding-bottom: 3vw;
      }
    }

    .link-block.link-reason {
      margin-top: 3vw;
    }

    .contents-inner {
      width: 90vw;
      padding: 15.4vw 5.13vw;

      &.--nbp {
        padding-bottom: 7vw;
      }

      &.--noimg,
      &:has(.contents-vision) {
        padding-block: 7.5vw;
      }
    }

    .index-conts-heading {
      font-size: max(8vw, 12px);
      line-height: 100%;
      letter-spacing: -1.62px;
    }

    .message-block {
      &.--column {
        flex-direction: column;
      }

      img {
        flex: 0 0 fit-content;
        align-self: center;
        width: 300px;
        height: auto;
      }

      &.--sustItem {
        .message-text {
          h3 {
            font-size: max(4vw, 16px);
          }
        }
      }
    }

    .activityList li {
      display: block !important;
    }
  }
}