footer {
  background: var(--primary-dark-color);
  color: var(--white);
  text-align: center;
  padding: 4.375rem 2rem;
  display: flex;
  flex-direction: column;
  /* 固定 */
  gap: 40px;
}

.company-name {
  font-size: 1.75rem;
  font-weight: 700;
  display: flex;
  justify-content: center;
  gap: 0.625rem;
  img {
    max-width: 6.25rem;
    width: 100%;
    height: auto;
    object-fit: contain;
  }
}

/* リンク */
footer ul {
  display: flex;
  justify-content: center;
  li {
    border-right: 1px solid var(--white);
    a {
      white-space: nowrap;
      display: flex;
      align-items: center;
      padding: 0.5rem 1.25rem;
      transition: all 200ms 0s ease;
      &:hover {
        opacity: 0.5;
      }
    }
    &:last-child {
      border-right: none;
    }
  }
}
footer ul li a[target="_blank"]::after {
  display: inline-block;
  content: "";
  background-image: url("/img/external-icon.svg");
  background-size: contain;
  background-repeat: no-repeat;
  width: 1rem;
  height: 1rem;
  margin-left: 0.8125rem;
}

/* ボタン */
.footer-button-group {
  display: flex;
  justify-content: center;
  gap: 1.25rem;
  button {
    font-weight: 700;
  }
  .external::after {
    display: inline-block;
    content: "";
    background-image: url("/img/external-dark-icon.svg");
    background-size: contain;
    background-repeat: no-repeat;
    width: 1rem;
    height: 1rem;
  }
}

.footer-marks-image {
  max-width: 16.25rem;
  width: 100%;
  display: block;
  margin: auto;
}

@media (max-width: 1180px) {
  footer ul {
    width: 70%;
    margin: auto;
    flex-direction: column;
    li {
      border-right: none;
    }
  }
}
@media (max-width: 480px) {
  .company-name {
    gap: 0.85rem;
    flex-direction: column;
    align-items: center;
    img {
      max-width: 10rem;
    }
  }
  .footer-button-group {
    width: 70%;
    margin: auto;
    flex-direction: column;
  }
}
