/* Demo 7 — Company Overview owns its layout here. */
body > main {
  position: relative;
  z-index: 5;
}

.homeCompany {
  position: relative;
  z-index: 5 !important;
  overflow: visible !important;
  background: #fff;
  isolation: isolate;
}

.homeCompanyInPicIn:only-child,
.homeCompanyInPicIn:first-child:last-child {
  opacity: 1 !important;
  visibility: visible !important;
}

footer.global {
  position: relative !important;
  z-index: 2 !important;
  width: 100%;
  margin: 0 !important;
  will-change: transform;
}

.cta-btn {
  transition: opacity .3s ease, visibility .3s ease, transform .3s ease;
}

body.demo7-footer-zone .cta-btn {
  opacity: 0 !important;
  visibility: hidden !important;
  pointer-events: none !important;
  transform: translateY(16px) !important;
}


@media (min-width: 769px) {
  footer.global .global-bottom {
    padding: 34px 20px 26px !important;
  }

  footer.global .global-sub-nav {
    gap: 10px 14px !important;
  }

  footer.global .global-sns {
    gap: 8px !important;
  }

  footer.global .global-last {
    margin-top: 91px !important;
  }

  footer.global .footer-company-info {
    gap: 8px 24px;
    font-size: 12px;
    line-height: 1.3;
  }

  header .sp-nav,
  header .sp-nav.is-sp {
    display: none !important;
    visibility: hidden !important;
    pointer-events: none !important;
  }

  .homeCompanyIn {
    height: 420px;
    min-height: 420px;
    align-items: stretch;
  }

  .homeCompanyInPic,
  .homeCompanyInList {
    height: 420px;
    min-height: 420px;
  }

  .homeCompanyInList > a {
    box-sizing: border-box;
    height: 420px !important;
    min-height: 420px;
  }

  .homeCompanyInListTit {
    height: 100%;
    min-height: 0;
  }
}

@media (max-width: 768px) {
  footer.global {
    will-change: transform;
    backface-visibility: hidden;
  }

  .homeCompanyIn,
  .homeCompanyInList,
  .homeCompanyInList > a {
    height: auto !important;
    min-height: 0;
  }
}
