@layer page {
  .company-body {
    margin-top: 5rem;
    padding-bottom: 7.5rem;
  }
  @media screen and (max-width: 767px) {
    .company-body {
      margin-top: 10.2564102564vw;
      padding-bottom: 20.5128205128vw;
    }
  }
  @media screen and (max-width: 767px) {
    .p-hdr-page-b {
      margin-bottom: 7.6923076923vw;
    }
  }
  @media screen and (min-width: 768px) {
    .p-hdr-page-b__text-wrap {
      width: 45.25rem;
    }
  }
  @media screen and (max-width: 767px) {
    .p-hdr-page-b__text-wrap {
      bottom: -7.6923076923vw;
    }
  }
  @media screen and (min-width: 768px) {
    .company-items {
      display: grid;
      grid-template-columns: repeat(3, 1fr);
      gap: 2.5rem;
    }
  }
  @media screen and (max-width: 767px) {
    .company-items {
      display: flex;
      flex-direction: column;
      gap: 5.1282051282vw;
    }
  }
  .company-item {
    background: rgba(240, 244, 247, 0.5);
  }
  .company-item__link {
    display: block;
    padding: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .company-item__link {
      padding: 2.5641025641vw 2.5641025641vw 5.1282051282vw 2.5641025641vw;
    }
  }
  @media (hover: hover) {
    .company-item__link:hover .company-item__thumb img {
      scale: 1.1;
    }
  }
  .company-item__thumb {
    overflow: hidden;
  }
  .company-item__thumb img {
    transition: 0.25s scale;
  }
  .company-item__row {
    margin-top: 1.125rem;
    display: grid;
    grid-template-columns: 1fr 2.5rem;
    align-items: center;
    line-height: 1.6;
  }
  @media screen and (max-width: 767px) {
    .company-item__row {
      grid-template-columns: 1fr 10.2564102564vw;
      margin-top: 4.1025641026vw;
    }
    .company-item__row .p-icon-carrow {
      --my-size: 10.2564102564vw;
    }
  }
  .company-item__en {
    font-size: 0.875rem;
    color: var(--accent);
    font-family: var(--en-sans);
  }
  @media screen and (max-width: 767px) {
    .company-item__en {
      font-size: 3.0769230769vw;
    }
  }
  .company-item__name {
    font-weight: 500;
    font-size: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .company-item__name {
      font-size: 5.1282051282vw;
    }
  }
  .company-group {
    background: #F0F4F7;
    margin-top: 5rem;
    padding: 4.375rem 5rem;
  }
  @media screen and (min-width: 768px) {
    .company-group {
      display: grid;
      grid-template-columns: 1fr 60rem;
    }
  }
  @media screen and (max-width: 767px) {
    .company-group {
      padding: 10.2564102564vw var(--sp-pad);
    }
  }
  @media screen and (min-width: 768px) {
    .company-group__list {
      display: grid;
      grid-template-columns: repeat(2, 1fr);
      gap: 0.625rem;
    }
  }
  @media screen and (max-width: 767px) {
    .company-group__list {
      display: flex;
      flex-direction: column;
      gap: 2.5641025641vw;
      margin-top: 7.6923076923vw;
    }
  }
  .company-group__list a {
    background: #fff;
    display: grid;
    align-items: center;
    grid-template-columns: 1fr 1rem;
    gap: 1rem;
    padding: 1.25rem;
    transition: 0.25s color;
  }
  @media (hover: hover) {
    .company-group__list a:hover {
      color: var(--accent);
    }
  }
  .company-group__en {
    font-size: 0.875rem;
    color: var(--accent);
    font-family: var(--en-sans);
  }
  @media screen and (max-width: 767px) {
    .company-group__en {
      font-size: 3.0769230769vw;
    }
  }
  .company-group__ttl {
    font-weight: 500;
    font-size: 1.25rem;
  }
  @media screen and (max-width: 767px) {
    .company-group__ttl {
      font-size: 5.1282051282vw;
    }
  }
}