html,
body {
  max-width: 100%;
  overflow-x: hidden;
}
.footer-simple-top img {
  display: block !important;
  width: 210px !important;
  height: auto !important;
  max-height: none !important;
  object-fit: contain !important;
  filter: none !important;
  background: #fff;
  padding: 7px 10px;
  border-radius: 5px;
}
.footer-simple-top > a {
  color: #fff;
}
.footer-simple-bottom,
.footer-simple-bottom a {
  color: #fff;
}
@media (max-width: 680px) {
  .site-header {
    padding: 8px;
  }
  .header-inner {
    height: 62px;
    padding: 0 9px 0 13px;
  }
  .site-header.is-scrolled {
    padding-top: 8px;
  }
  .site-header.is-scrolled .header-inner {
    height: 62px;
  }
  .site-logo img {
    width: 148px;
    max-height: 48px;
  }
  .menu-button {
    width: 42px;
    height: 42px;
    flex: none;
  }
  .mobile-panel nav {
    width: 86%;
    padding-top: 0px;
  }
  .mobile-panel a {
    font-size: 18px;
    padding: 12px 0;
  }
  .hero {
    min-height: 760px;
    padding: 112px 6% 70px;
  }
  .hero h1 {
    font-size: clamp(35px, 11vw, 45px);
    line-height: 1.12;
    letter-spacing: -0.045em;
  }
  .hero-kicker {
    font-size: 9px;
    margin-bottom: 23px;
  }
  .hero-copy > p:not(.hero-kicker) {
    font-size: 13px;
    line-height: 1.75;
  }
  .hero-actions {
    margin-top: 30px;
  }
  .pill {
    min-width: 205px;
    padding: 8px 20px;
  }
  .hero-visual {
    width: 92vw;
    height: 42vh;
    right: -26vw;
    bottom: 0;
  }
  .globe {
    width: 72vw !important;
    right: 3% !important;
    top: 4% !important;
  }
  .hero-visual .orbit-one {
    width: 102vw;
    height: 43vw;
    right: -20vw;
    top: 28%;
  }
  .hero-visual .orbit-two {
    width: 78vw;
    height: 100vw;
    right: -2vw;
    top: -18%;
  }
  .scroll-guide {
    display: none;
  }
  .section {
    padding: 64px 6%;
  }
  .display-title {
    font-size: 34px;
  }
  .section-heading h2,
  .news h2 {
    font-size: 42px;
  }
  .service-row {
    grid-template-columns: 31px 48px minmax(0, 1fr) 31px;
    gap: 9px;
  }
  .service-row h3 {
    font-size: 18px;
    line-height: 1.45;
  }
  .service-row > b {
    width: 31px;
    height: 31px;
  }
  .service-icon {
    width: 46px;
    height: 46px;
  }
  .strength-grid {
    margin-bottom: 42px;
  }
  .project-item {
    width: 82vw;
  }
  .news-list a {
    grid-template-columns: 76px minmax(0, 1fr) 24px;
    gap: 10px;
  }
  .works-archive-section {
    padding-top: 65px;
  }
  .archive-work-card h2 {
    font-size: 16px;
  }
  .simple-footer {
    padding: 38px 6% 22px;
  }
  .footer-simple-top {
    gap: 25px;
    padding-bottom: 28px;
  }
  .footer-simple-top img {
    width: 185px !important;
  }
  .footer-simple-top > a {
    gap: 20px;
    padding: 10px 16px;
  }
  .footer-simple-bottom {
    gap: 22px;
    padding-top: 20px;
  }
  .footer-simple-bottom nav {
    gap: 12px 18px;
  }
  .site-footer {
    overflow: hidden;
  }
}
@media (max-width: 380px) {
  .hero {
    min-height: 720px;
  }
  .hero h1 {
    font-size: 35px;
  }
  .hero-visual {
    right: -30vw;
  }
  .display-title {
    font-size: 30px;
  }
  .footer-simple-top img {
    width: 165px !important;
  }
}
