@import url("https://fonts.googleapis.com/css2?family=Noto+Serif+JP:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@100;200;300;400;500;600;700;800;900&display=swap");
@import url("https://fonts.googleapis.com/css2?family=Poppins:wght@400;500;600;700;800&display=swap");
#header .top-row nav {
  padding: 0 0 0 10rem !important;
}
@media screen and (max-width: 1450px) {
  #header .top-row nav {
    padding: 0 !important;
  }
}

@media screen and (max-width: 767px) {
  #main-catch .ttl {
    line-height: 1.5em !important;
  }
}
#main-catch .sub_ttl {
  line-height: 1.8em !important;
}

#about .about1 .ttl_area .about_ttl, #about .about3 .ttl_area .about_ttl {
  font-size: 3rem !important;
}
@media screen and (max-width: 767px) {
  #about .about1 .ttl_area .about_ttl, #about .about3 .ttl_area .about_ttl {
    font-size: 2.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  #about .about1 .bg img, #about .about3 .bg img {
    width: 120% !important;
  }
}
#about .about2 .ttl_area .about_ttl {
  font-size: 3rem !important;
  line-height: 1.1 !important;
  top: 50% !important;
  transform: translateY(-50%) !important;
}
@media screen and (max-width: 767px) {
  #about .about2 .ttl_area .about_ttl {
    font-size: 2.5rem !important;
  }
}
@media screen and (max-width: 767px) {
  #about .about2 .bg img {
    width: 100% !important;
  }
}
@media screen and (max-width: 767px) {
  #about .txt_unit {
    top: 45% !important;
  }
}
@media screen and (max-width: 767px) {
  #about .about2 .txt_unit, #about .about3 .txt_unit {
    top: 50% !important;
  }
}
#about .about_lead {
  font-size: 1.5rem !important;
  letter-spacing: 0.1em !important;
}
@media screen and (max-width: 767px) {
  #about .about_lead {
    font-size: 1.2rem !important;
  }
}
#about .about_txt, #about .about2_txt {
  font-size: 1.1rem !important;
}
@media screen and (max-width: 767px) {
  #about .about_txt, #about .about2_txt {
    font-size: 0.9rem !important;
    line-height: 1.7em !important;
  }
}

#mechanism .deomagic_txt {
  line-height: 1.5em !important;
}
@media screen and (max-width: 767px) {
  #mechanism .deomagic_txt {
    line-height: inherit !important;
  }
}

#product .industrial, #product .general {
  font-size: 0.7rem !important;
}
@media screen and (max-width: 767px) {
  #product .industrial, #product .general {
    font-size: 1rem !important;
    justify-content: left !important;
  }
}
@media screen and (max-width: 767px) {
  #product .product_ttl {
    font-size: 1.7rem !important;
  }
}
#product .product_name {
  font-size: 1rem !important;
}
@media screen and (max-width: 767px) {
  #product .product_name {
    font-size: 1.2rem !important;
  }
}
#product .product_name .registered {
  top: -0.35em !important;
}
#product .product_txt_industry {
  min-height: 8rem !important;
}
#product .product_txt_general {
  min-height: 6rem !important;
}
#product .features_txt {
  font-size: 0.9rem !important;
}
#product .scene_detail_inner {
  grid-template-columns: repeat(3, 1fr) !important;
}
@media screen and (max-width: 767px) {
  #product .scene_detail_inner {
    grid-template-columns: repeat(2, 1fr) !important;
  }
}
#product .scene_detail_ttl {
  letter-spacing: 0.1em !important;
}
@media screen and (max-width: 767px) {
  #product .scene_detail_ttl {
    letter-spacing: 0em !important;
    font-size: 0.75rem !important;
  }
}

#contact-form .form-label {
  width: 32% !important;
}
@media screen and (max-width: 767px) {
  #contact-form .form-label {
    width: 100% !important;
  }
}

#container #vn-footer-logos {
  padding: 0 10%;
  background-color: #fff;
}
@media screen and (max-width: 767px) {
  #container #vn-footer-logos {
    padding: 24px 5%;
  }
}
#container #vn-footer-logos .footer_logo_area--vn {
  width: 100%;
  display: flex;
  flex-direction: column;
  align-items: center;
  gap: 16px;
}
@media screen and (max-width: 767px) {
  #container #vn-footer-logos .footer_logo_area--vn {
    padding: 0 0 16px;
  }
}
#container #vn-footer-logos .footer_logo_block {
  min-width: 0;
}
#container #vn-footer-logos .footer_logo_block--left {
  grid-column: auto;
  order: initial;
}
#container #vn-footer-logos .footer_logo_block--right {
  grid-column: auto;
  order: initial;
}
#container #vn-footer-logos .footer_logo_block--side {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 6px;
  text-align: center;
}
#container #vn-footer-logos .footer_logo_label {
  font-family: "Noto Sans JP", sans-serif;
  font-size: 0.8rem;
  line-height: 1.5;
}
@media screen and (max-width: 767px) {
  #container #vn-footer-logos .footer_logo_label {
    line-height: 1.3;
  }
}
#container #vn-footer-logos .footer_logo_sub {
  width: auto;
  height: 30px;
  max-width: 100%;
  display: block;
}
@media screen and (max-width: 1300px) {
  #container #vn-footer-logos .footer_logo_sub {
    height: clamp(10px, 2.3vw, 30px);
  }
}
@media screen and (max-width: 767px) {
  #container #vn-footer-logos .footer_logo_sub {
    width: 70%;
    height: auto;
  }
}/*# sourceMappingURL=style_vi.css.map */
