/* 企業情報 */
.about {
  z-index: 1;
  min-height: 50vh;
  position: relative;
  overflow: hidden;
  /* margin-top: 5rem;
  margin-bottom: 5rem; */
  padding: 5rem 0 12rem;
  /* 背景画像用 */
  .container-inner {
    position: relative;
  }
  .pic {
    position: absolute;
    top: 0;
    right: 0;
    height: 100%;
    filter: opacity(85%);
    z-index: -1;
    overflow: hidden;
  }
  .contents {
    gap: 1rem;
  }
  .contents-left {
    .title {
      display: none;
    }
  }
  .btn-area {
    margin: 50px 0 0;
  }
  @media (min-width: 1200px) {
    .contents-left {
      flex: 1;
      margin: auto;
    }
    .contents-right {
      flex: 1;
      position: relative;

      .pic1 {
        position: absolute;
        top: 0;
        left: 2rem;
        width: 43%;
      }
      .pic2 {
        position: absolute;
        bottom: 0;
        right: 2rem;
        width: 43%;
      }
      img {
        display: block;
        object-fit: cover;
        width: 100%;
        height: 100%;
      }
    }
  }
  @media (max-width: 1199px) {
    .contents-left {
      flex: 1;
      margin: auto;
    }
  }
  @media (max-width: 1060px) {
    .contents-left {
      flex: 1.5;
    }
  }
  @media (min-width: 961px) and (max-width: 1199px) {
    .contents-right {
      max-height: 575px;
      flex: 1;
      display: flex;
      align-items: center;
      position: relative;
      .pic1 {
        position: absolute;
        top: 0;
        left: 0;
        max-width: 245px;
        width: 65%;
      }
      .pic2 {
        position: absolute;
        bottom: 0;
        right: 0;
        max-width: 245px;
        width: 65%;
      }
      img {
        display: block;
        object-fit: cover;
        width: 100%;
        height: 100%;
      }
    }
  }
  @media screen and (max-width: 960px) {
    .contents {
      position: relative;
      flex-direction: column-reverse;
      gap: 0;
    }
    .contents-inner {
      flex-direction: column;
    }
    .container-inner > h2 {
      display: none;
    }
    .pic {
      width: 100%;
      img {
        display: block;
        object-fit: cover;
        width: 100%;
      }
    }
    .contents-left {
      margin: 0;
      flex: 1;
      padding-top: 24rem;
      .title {
        display: block;
      }
      .sentence-detail {
        max-width: unset;
      }
    }
    .contents-right {
      position: absolute;
      right: 0;
      top: 0;
      .pic-wrap {
        display: flex;
        margin-top: 3rem;
        justify-content: flex-end;
        height: 400px;
      }
      .pic1,
      .pic2 {
        position: relative;
        width: 240px;
        height: 100%;
      }
      .pic1 img {
        top: 0;
        position: absolute;
        right: 15px;
      }
      .pic2 img {
        position: absolute;
        right: 0;
        bottom: 0;
      }
      img {
        display: block;
        object-fit: cover;
        width: 100%;
        height: 320px;
      }
    }
  }

  @media screen and (max-width: 700px) {
    .contents-right {
      .pic1,
      .pic2 {
        width: 190px;
      }
      img {
        height: 270px;
      }
    }
  }

  @media screen and (max-width: 599px) {
    .btn-area {
      margin: 2rem 0 0;
      .btn {
        height: 63px;
        width: 100%;
        max-width: 252px;
      }
    }
    .contents-left {
      padding-top: 18.2rem;
      .title {
        padding-bottom: 1.5rem;
      }
      .top-sentence {
        padding-bottom: 1.5rem;
        line-height: 1.7;
      }
      .sentence-detail {
        font-size: 0.9rem;
        line-height: 2;
      }
    }
    .contents-right {
      .pic-wrap {
        margin-top: 2rem;
        height: 300px;
      }
      .pic1,
      .pic2 {
        width: 150px;
      }
      img {
        height: 210px;
      }
    }
  }

  @media screen and (max-width: 399px) {
    .pic {
      img {
        width: 120%;
      }
    }
  }

  .title {
    font-size: var(--font-size-2xl);
    margin: 0;
    font-weight: 600;
    padding-bottom: 3rem;
  }
  .top-sentence {
    font-size: var(--font-size-l);
    font-weight: bold;
    padding-bottom: 2rem;
  }
  .sentence-detail {
    font-size: var(--font-size-m);
    line-height: 2rem;
    max-width: 481px;
  }
  .mock-img-block {
    width: 210px;
    height: 300px;
    overflow: hidden;
  }

  .mock-img-block img {
    height: 100%;
    width: auto;
    object-fit: cover;
  }
}
@media screen and (max-width: 960px) {
  .about {
    padding: 0 0 5rem 0;
  }
}
@media screen and (max-width: 599px) {
  .about {
    padding: 0 0 3rem 0;
  }
}
