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

      .pic1 {
        position: absolute;
        top: -40px;
        left: 25px;
        width: 80%;
      }
      .pic2 {
        position: absolute;
        bottom: 0;
        right: 2rem;
        width: 43%;
      }
      img {
        display: block;
        object-fit: cover;
        width: 100%;
        height: 100%;
      }
    }
  }
  @media (max-width: 1199px) {
    .pic-wrap .pic1 img.sponly {
      display: none;
    }
    .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: 100%;
        width: 100%;
      }
      .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 {
      display: none;
    }
    .contents-left {
      margin: 0;
      flex: 1;
      padding-top: 33%;
      .title {
        display: block;
      }
      .sentence-detail {
        max-width: unset;
      }
    }
    .contents-right {
      position: relative;
      margin: 0;
      .pic-wrap {
        display: block;
        margin-top: 2rem;
        height: 300px;
      }
      .pic1,
      .pic2 {
        width: 100%;
      }
      img {
        height: 100%;
      }
      .pic-wrap .pic1 img {
        height: auto;
        position: relative;
        right: 0px;
        width: 100%;
      }
      .pic-wrap .pic1 img.spdeny {
        display: none;
      }
      .pic-wrap .pic1 img.sponly {
        display: block;
      }
    }
  }

  @media screen and (max-width: 700px) {
    .pic {
      display: none;
    }
    .contents-left {
      padding-top: 7rem;
      .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 {
      position: relative;
      margin: 0;
      .pic-wrap {
        display: block;
        margin-top: 2rem;
        height: 300px;
      }
      .pic1,
      .pic2 {
        width: 100%;
      }
      img {
        height: 100%;
      }
      .pic-wrap .pic1 img {
        height: 300px;
        position: relative;
        right: 0px;
        width: 100%;
      }
      .pic-wrap .pic1 img.spdeny {
        display: none;
      }
      .pic-wrap .pic1 img.sponly {
        display: block;
        height: auto;
      }
    }
  }

  @media screen and (max-width: 599px) {
    .btn-area {
      margin: 2rem 0 0;
      display: block;
      .btn {
        height: 63px;
        width: 100%;
        max-width: var(--btn-width);
        margin-right: auto;
        margin-left: auto;
        margin-bottom: 2em;
      }
      a:first-child {
        margin-right: auto;
      }
    }
    .pic {
      display: none;
    }
    .contents-left {
      padding-top: 12rem;
      .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 {
      position: relative;
      margin: 0;
      .pic-wrap {
        display: block;
        margin-top: 2rem;
        height: 300px;
      }
      .pic1,
      .pic2 {
        width: 100%;
      }
      .pic-wrap .pic1 img {
        height: auto;
        position: relative;
        right: 122px;
        width: 136%;
      }
      .pic-wrap .pic1 img.spdeny {
        display: none;
      }
      .pic-wrap .pic1 img.sponly {
        display: block;
      }
    }
  }

  @media screen and (max-width: 499px) {
    .contents-left {
      padding-top: 4rem;
    }
  }

  @media screen and (max-width: 399px) {
    .pic {
      img {
        width: 120%;
      }
    }
  }
  .title {
    font-size: var(--font-size-4xl);
    margin: 0;
    font-weight: 600;
    padding-bottom: 3rem;
  }
  .sub-title {
    display: block;
    width: 100%;
    color: #5E9CCB;
    font-family: "Zen Kaku Gothic New", serif;
    font-size: calc(var(--font-size-m) * 1.5);
  }
  .sub-title::before {
    content: "";
    display: inline-block;
    background-image: url(../../images/common/icon01.webp);
    /* background-size: cover; */
    background-repeat: no-repeat;
    width: 55px;
    height: 19px;
  }
  .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;
    text-align: justify;
  }
  .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;
  }
}
