.company-description {
  text-align: center;
color: #002C44;
text-align: center;
font-family:  "noto-sans-cjk-jp", sans-serif;
font-size: 0.9375rem;
font-style: normal;
font-weight: 500;
line-height: 1.5625rem; /* 166.667% */
letter-spacing: 0.01875rem;
}



/* Client Logos */
.client-logos {
    max-width: 1200px;
    margin: 0 auto 4rem;
    padding: 0 2rem;
    margin-top: 2rem;
    
  }
  .client-logos::before {
    content: "";
    display: block;
    width: 100%;
    height: 0.0163rem;
    background-color: #707070;
    margin-bottom: 4rem;
  }
  .logo-grid {
    display: grid;
    grid-template-columns: repeat(4, 1fr);
    gap: 1rem;
    row-gap: 2rem;
  }
  
  .logo-grid > div {
    display: flex;
    align-items: center;
    justify-content: center;
  }
  
  .client-logo {
    width: 100%;
    max-width: 200px;
    height: 32px;
    object-fit: contain;
    transition: opacity 0.3s ease;
  }
  
  .client-logo:hover {
    opacity: 0.7;
  }
  
  /* Company List */
  .company-list {
    max-width: 1200px;
    margin: 0 auto 6rem;
    padding: 0 2rem;
    display: grid;
    grid-template-columns: repeat(2, 1fr);
    gap: 2rem;
  }
  
  .list-column p {
    font-size: 0.875rem;
    line-height: 2;
    color: #002C44;
  }
  
  .note {
    margin-top: 1rem;
    color: #666;
    font-size: 0.8125rem;
    text-align: right;
  }

  
  /* Responsive Styles */
@media (max-width: 1024px) {
  
    .logo-grid {
      grid-template-columns: repeat(3, 1fr);
    }
  
    .client-logo {
      max-width: 180px;
    }
    .client-logos::before {
      content: "";
      display: block;
      width: 100%;
      height: 0.01563rem;
      background-color: #707070;
      margin-bottom: 4rem;
    }


    .client-logos {
      border-top: solid 0.015rem #707070;
    }
  }

  @media (max-width: 768px) {
  
    .logo-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 1rem;
      row-gap: 1.5rem;
    }

    .client-logos {
      border-top: none;
    }
    .client-logo {
      max-width: 200px;      
      padding: 0;
    }

    .client-logos {
      padding: 0;
      
    }

    .company-list {
      padding: 0;
      margin: 0 auto 3rem;
      padding: 0;
      grid-template-columns: 1fr;
      row-gap: 1.6rem;
    }
    .note {
      margin-top: 1.6rem;
    }
  }



@media (max-width: 480px) {
  
    .logo-grid {
      grid-template-columns: repeat(2, 1fr);
      gap: 0.75rem;
    }
  
    .client-logo {
      max-width: 210px;
    }
  }