/* kaisyaan1-6 modern company page overrides
   Header / footer / hamburger are copied from TOP(index.html). */

body.company-page{
  background:#fafafa !important;
}

.company-page .zentaihaikei{
  background:transparent !important;
  background-image:none !important;
  padding:1px 22px 56px !important;
}

.company-page .page-title,
.company-page .page-title1,
.company-page .page-title2,
.company-page .page-title3,
.company-page .page-title4,
.company-page .page-title5{
  position:relative !important;
  overflow:hidden !important;
  max-width:var(--kyoei-max) !important;
  margin:42px auto 28px !important;
  padding:46px 30px 42px !important;
  border:1px solid rgba(221,229,238,.92) !important;
  border-radius:30px !important;
  background:
    radial-gradient(circle at 16% 16%,rgba(184,213,64,.28),transparent 28%),
    radial-gradient(circle at 86% 14%,rgba(44,103,176,.20),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#f8fbef 45%,#eef5fc 100%) !important;
  box-shadow:0 18px 46px rgba(13,32,58,.10) !important;
  color:var(--kyoei-navy) !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
  font-size:clamp(1.85rem,3.2vw,3.0rem) !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  letter-spacing:.06em !important;
  text-align:left !important;
}
.company-page .page-title::before,
.company-page .page-title1::before,
.company-page .page-title2::before,
.company-page .page-title3::before,
.company-page .page-title4::before,
.company-page .page-title5::before{
  content:"COMPANY" !important;
  display:block !important;
  margin-bottom:10px !important;
  color:#7f9621 !important;
  font-size:.78rem !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.24em !important;
}
.company-page .page-title::after,
.company-page .page-title1::after,
.company-page .page-title2::after,
.company-page .page-title3::after,
.company-page .page-title4::after,
.company-page .page-title5::after{
  content:"" !important;
  position:absolute !important;
  right:-70px !important;
  bottom:-100px !important;
  width:260px !important;
  height:260px !important;
  border-radius:50% !important;
  background:linear-gradient(135deg,rgba(184,213,64,.30),rgba(44,103,176,.18)) !important;
}

.company-page .bunnkatu{
  max-width:var(--kyoei-max) !important;
  margin:0 auto !important;
  display:grid !important;
  grid-template-columns:280px minmax(0,1fr) !important;
  gap:28px !important;
  align-items:start !important;
  justify-content:stretch !important;
}

.company-page article{
  order:2 !important;
  width:auto !important;
  min-width:0 !important;
  background:rgba(255,255,255,.96) !important;
  border:1px solid rgba(221,229,238,.95) !important;
  border-radius:28px !important;
  box-shadow:var(--kyoei-shadow) !important;
  padding:34px clamp(22px,3vw,42px) !important;
}
.company-page aside{
  order:1 !important;
  width:auto !important;
  min-width:0 !important;
  background:transparent !important;
  background-image:none !important;
}
.company-page .bana{
  display:none !important;
}

.company-page .center-flex,
.company-page .center-sayuuiti,
.company-page .keieirinen-flex,
.company-page .tableiti,
.company-page .tableiti2,
.company-page .goaisatu-flex,
.company-page .iso-flex,
.company-page .group-flex{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
  display:block !important;
}

.company-page article h1,
.company-page article h2,
.company-page article h3{
  color:var(--kyoei-navy) !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
  letter-spacing:.04em !important;
}
.company-page article h2{
  margin:0 0 24px !important;
  padding-left:16px !important;
  border-left:6px solid var(--kyoei-green) !important;
  font-size:clamp(1.45rem,2.3vw,2.05rem) !important;
  line-height:1.35 !important;
  font-weight:900 !important;
  text-align:left !important;
}
.company-page article p{
  color:var(--kyoei-text) !important;
  font-size:1rem !important;
  line-height:2.05 !important;
}

/* Company local navigation */
.company-page .item-flex,
.company-page .item-sayuuiti,
.company-page .itemichi,
.company-page .item-matome{
  width:100% !important;
  max-width:none !important;
  margin:0 !important;
  padding:0 !important;
}
.company-page .itemichi{
  position:sticky !important;
  top:108px !important;
  overflow:hidden !important;
  border:1px solid rgba(221,229,238,.95) !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.95) !important;
  box-shadow:var(--kyoei-shadow) !important;
  padding:18px !important;
}
.company-page .banamidashi{
  background:transparent !important;
  border:none !important;
  margin:0 0 12px !important;
  padding:0 !important;
}
.company-page .item-midashi{
  margin:0 !important;
  padding:0 0 12px !important;
  border-bottom:1px solid var(--kyoei-line) !important;
  color:#7f9621 !important;
  font-size:1.35rem !important;
  line-height:1 !important;
  font-weight:950 !important;
  letter-spacing:.14em !important;
  text-align:left !important;
  background:transparent !important;
}
.company-page .item-matome{
  display:grid !important;
  gap:10px !important;
}
.company-page .item-matome a{
  display:block !important;
  color:var(--kyoei-navy) !important;
  text-decoration:none !important;
}
.company-page .item-matome a > div{
  width:auto !important;
  height:auto !important;
  min-height:52px !important;
  margin:0 !important;
  padding:0 16px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:space-between !important;
  border:1px solid rgba(221,229,238,.95) !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#ffffff,#f5f8ec) !important;
  box-shadow:none !important;
  transition:transform .22s ease, background .22s ease, border-color .22s ease, box-shadow .22s ease !important;
}
.company-page .item-matome a > div::after{
  content:"›" !important;
  color:#7f9621 !important;
  font-size:1.35rem !important;
  font-weight:900 !important;
}
.company-page .item-matome a:hover > div{
  transform:translateX(5px) !important;
  border-color:rgba(184,213,64,.8) !important;
  background:linear-gradient(135deg,#f6f1a9,#c3dc58) !important;
  box-shadow:0 10px 22px rgba(13,32,58,.10) !important;
}
.company-page .item-matome h2{
  margin:0 !important;
  padding:0 !important;
  border:none !important;
  color:var(--kyoei-navy) !important;
  font-size:.98rem !important;
  line-height:1.35 !important;
  font-weight:850 !important;
  letter-spacing:.03em !important;
}
.company-page.page-kaisyaan1 .item1,
.company-page.page-kaisyaan2 .item2,
.company-page.page-kaisyaan3 .item3,
.company-page.page-kaisyaan4 .item4,
.company-page.page-kaisyaan5 .item5,
.company-page.page-kaisyaan6 .item6{
  border-color:rgba(44,103,176,.35) !important;
  background:linear-gradient(135deg,#e7f3ff,#cfe5f8) !important;
}

/* Philosophy / greeting / ISO content cards */
.company-page .keieirinen{
  width:auto !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
  list-style:none !important;
  display:block !important;
}
.company-page .keieirinen h2{
  margin-left:0 !important;
  align-items:flex-start !important;
}
.company-page .keieirinen-li{
  display:grid !important;
  gap:12px !important;
  margin:0 !important;
  padding:0 !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
  font-size:1.02rem !important;
}
.company-page .keieirinen-li li{
  position:relative !important;
  list-style:none !important;
  margin:0 !important;
  padding:16px 18px 16px 48px !important;
  border:1px solid rgba(221,229,238,.95) !important;
  border-radius:16px !important;
  background:linear-gradient(135deg,#ffffff,#f8fbef) !important;
  color:var(--kyoei-text) !important;
  line-height:1.8 !important;
}
.company-page .keieirinen-li li::before{
  content:"" !important;
  position:absolute !important;
  left:18px !important;
  top:24px !important;
  width:12px !important;
  height:12px !important;
  border-radius:50% !important;
  background:linear-gradient(135deg,var(--kyoei-green),var(--kyoei-blue)) !important;
}

/* Table modernization */
.company-page .tableiti{
  overflow-x:auto !important;
  -webkit-overflow-scrolling:touch !important;
}
.company-page table,
.company-page .tableoutside{
  width:100% !important;
  border-collapse:separate !important;
  border-spacing:0 !important;
  border:1px solid var(--kyoei-line) !important;
  border-radius:18px !important;
  overflow:hidden !important;
  background:#fff !important;
  box-shadow:none !important;
}
.company-page table td,
.company-page .tableoutside td{
  border:none !important;
  border-bottom:1px solid var(--kyoei-line) !important;
  padding:15px 18px !important;
  color:var(--kyoei-text) !important;
  vertical-align:top !important;
  line-height:1.85 !important;
}
.company-page table tr:last-child td,
.company-page .tableoutside tr:last-child td{
  border-bottom:none !important;
}
.company-page .lefttable{
  width:190px !important;
  background:linear-gradient(135deg,#f5f8ec,#edf5fb) !important;
  color:var(--kyoei-navy) !important;
  font-weight:850 !important;
  white-space:nowrap !important;
}
.company-page .righttable{
  background:#fff !important;
}

/* Media blocks on group page */
.company-page video,
.company-page iframe{
  border-radius:20px !important;
  overflow:hidden !important;
  box-shadow:var(--kyoei-shadow) !important;
}

@media (max-width:1100px){
  .company-page .bunnkatu{
    grid-template-columns:240px minmax(0,1fr) !important;
    gap:22px !important;
  }
  .company-page .zentaihaikei{
    padding-left:16px !important;
    padding-right:16px !important;
  }
}
@media (max-width:820px){
  .company-page .page-title,
  .company-page .page-title1,
  .company-page .page-title2,
  .company-page .page-title3,
  .company-page .page-title4,
  .company-page .page-title5{
    margin:28px auto 20px !important;
    padding:34px 22px 32px !important;
    border-radius:24px !important;
  }
  .company-page .bunnkatu{
    display:flex !important;
    flex-direction:column !important;
    gap:18px !important;
  }
  .company-page aside,
  .company-page article{
    width:100% !important;
  }
  .company-page aside{
    order:1 !important;
  }
  .company-page article{
    order:2 !important;
    padding:24px 18px !important;
    border-radius:22px !important;
  }
  .company-page .itemichi{
    position:static !important;
    border-radius:22px !important;
  }
  .company-page .item-matome{
    grid-template-columns:repeat(2,minmax(0,1fr)) !important;
  }
}
@media (max-width:560px){
  .company-page .zentaihaikei{
    padding-left:12px !important;
    padding-right:12px !important;
  }
  .company-page .item-matome{
    grid-template-columns:1fr !important;
  }
  .company-page .lefttable,
  .company-page .righttable,
  .company-page table td,
  .company-page .tableoutside td{
    display:block !important;
    width:100% !important;
    white-space:normal !important;
  }
  .company-page .lefttable{
    border-bottom:0 !important;
  }
}

/* Disable old fade-in animation on company side navigation so links are always visible. */
.company-page .item1,
.company-page .item2,
.company-page .item3,
.company-page .item4,
.company-page .item5,
.company-page .item6{
  animation:none !important;
  opacity:1 !important;
  transform:none !important;
  color:var(--kyoei-navy) !important;
}
.company-page .item1 h2,
.company-page .item2 h2,
.company-page .item3 h2,
.company-page .item4 h2,
.company-page .item5 h2,
.company-page .item6 h2{
  color:var(--kyoei-navy) !important;
  opacity:1 !important;
}


/* Unified in-card page titles for kaisyaan1-6. */
.company-page article h2.company-content-title{
  display:block !important;
  align-items:initial !important;
  justify-content:flex-start !important;
  width:auto !important;
  max-width:none !important;
  margin:0 0 24px !important;
  padding:0 0 0 16px !important;
  border:0 !important;
  border-left:6px solid var(--kyoei-green) !important;
  background:transparent !important;
  color:var(--kyoei-navy) !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
  font-size:clamp(1.45rem,2.3vw,2.05rem) !important;
  line-height:1.35 !important;
  font-weight:900 !important;
  letter-spacing:.04em !important;
  text-align:left !important;
}
.company-page article h2.company-content-title::before,
.company-page article h2.company-content-title::after{
  content:none !important;
}
.company-page.page-kaisyaan2 .goaisatu-ue{
  text-transform:none !important;
}
.company-page.page-kaisyaan2 .goaisatu-ue p{
  align-items:flex-start !important;
  text-align:left !important;
}


/* final company page refinements: greeting / ISO policy / group cards */
.company-page.page-kaisyaan2 .goaisatu-flex{
  width:100% !important;
  max-width:640px !important;
  margin:0 auto 18px !important;
  padding:26px 32px 28px !important;
  border:1px solid rgba(26,42,64,.42) !important;
  border-radius:0 !important;
  background:#fff !important;
  box-shadow:none !important;
}
.company-page.page-kaisyaan2 .goaisatu-ue-flex{
  display:grid !important;
  grid-template-columns:minmax(0,1fr) 160px !important;
  gap:28px !important;
  align-items:center !important;
  justify-content:stretch !important;
}
.company-page.page-kaisyaan2 .goaisatu-ue{
  display:block !important;
  width:100% !important;
  font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif !important;
  text-transform:none !important;
}
.company-page.page-kaisyaan2 .goaisatu-ue p,
.company-page.page-kaisyaan2 .goaisatu-sita p{
  display:block !important;
  width:100% !important;
  margin:0 !important;
  padding:0 !important;
  color:#1f2b3d !important;
  font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif !important;
  font-size:.98rem !important;
  line-height:2.05 !important;
  text-align:left !important;
  letter-spacing:.05em !important;
}
.company-page.page-kaisyaan2 .goaisatu-pic{
  width:160px !important;
  height:160px !important;
  margin:0 !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  background:#eef3f8 !important;
  overflow:hidden !important;
}
.company-page.page-kaisyaan2 .goaisatu-pic img{
  width:100% !important;
  height:100% !important;
  object-fit:cover !important;
}
.company-page.page-kaisyaan2 .goaisatu-sita{
  display:block !important;
  width:100% !important;
  margin:14px 0 0 !important;
  padding:0 !important;
  font-family:"Yu Mincho","YuMincho","Hiragino Mincho ProN",serif !important;
  text-transform:none !important;
}
.company-page.page-kaisyaan2 .goaisatu-name{
  margin-top:20px !important;
  text-align:right !important;
  white-space:nowrap !important;
}

.company-page.page-kaisyaan5 .hinshituhosyou-iti{
  width:100% !important;
  max-width:760px !important;
  margin:0 auto !important;
  display:block !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-iti-p{
  width:100% !important;
  max-width:620px !important;
  margin:0 auto 24px !important;
  display:block !important;
  text-align:left !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-housin{
  width:100% !important;
  max-width:620px !important;
  margin:0 auto 28px !important;
  padding:28px 34px 30px !important;
  display:block !important;
  border:1px solid rgba(26,42,64,.42) !important;
  border-radius:0 !important;
  background:#fff !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-housin h2{
  margin:0 0 26px !important;
  padding:0 !important;
  border:0 !important;
  border-left:0 !important;
  color:var(--kyoei-navy) !important;
  font-size:clamp(1.35rem,2vw,1.85rem) !important;
  line-height:1.35 !important;
  font-weight:900 !important;
  text-align:center !important;
  letter-spacing:.08em !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-p-flex{
  width:100% !important;
  margin:0 0 18px !important;
  padding:0 !important;
  display:grid !important;
  grid-template-columns:2.2em minmax(0,1fr) !important;
  gap:0 !important;
  align-items:start !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-p-flex p{
  display:block !important;
  margin:0 !important;
  padding:0 !important;
  line-height:1.9 !important;
  text-align:left !important;
  justify-content:flex-start !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-migisita{
  width:max-content !important;
  max-width:100% !important;
  margin:32px 0 0 auto !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:flex-start !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-migisita p{
  display:block !important;
  margin:0 0 8px !important;
  padding:0 !important;
  line-height:1.6 !important;
  text-align:left !important;
  white-space:nowrap !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-logomoji-flex{
  margin:0 0 8px !important;
  display:flex !important;
  align-items:center !important;
  justify-content:flex-start !important;
  gap:5px !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-kyouei-name{
  margin:0 !important;
  white-space:nowrap !important;
}
.company-page.page-kaisyaan5 .hinshituhosyou-daihyou{
  margin:0 !important;
  white-space:nowrap !important;
}

.company-page.page-kaisyaan6 .group-flex{
  display:grid !important;
  gap:28px !important;
  width:100% !important;
  max-width:760px !important;
  margin:0 auto !important;
}
.company-page.page-kaisyaan6 .group0,
.company-page.page-kaisyaan6 .group1,
.company-page.page-kaisyaan6 .group2{
  position:relative !important;
  width:100% !important;
  margin:0 !important;
  padding:24px clamp(18px,3vw,34px) 30px !important;
  display:flex !important;
  flex-direction:column !important;
  align-items:center !important;
  justify-content:center !important;
  border:1px solid rgba(221,229,238,.96) !important;
  border-radius:24px !important;
  background:
    radial-gradient(circle at 8% 0%,rgba(184,213,64,.17),transparent 34%),
    linear-gradient(135deg,#ffffff 0%,#fbfcf6 54%,#eef5fc 100%) !important;
  box-shadow:0 14px 32px rgba(13,32,58,.09) !important;
  overflow:hidden !important;
}
.company-page.page-kaisyaan6 .group0::before,
.company-page.page-kaisyaan6 .group1::before,
.company-page.page-kaisyaan6 .group2::before{
  content:"" !important;
  position:absolute !important;
  left:0 !important;
  top:0 !important;
  width:100% !important;
  height:5px !important;
  background:linear-gradient(90deg,var(--kyoei-green),#e9ef8b,var(--kyoei-blue)) !important;
}
.company-page.page-kaisyaan6 .top-movie-kyouei-name,
.company-page.page-kaisyaan6 .top-movie-tekuno-name{
  width:100% !important;
  margin:0 0 18px !important;
  padding:0 !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  gap:8px !important;
  font-family:"Yu Gothic","Yu Gothic UI","YuGothic",Meiryo,sans-serif !important;
}
.company-page.page-kaisyaan6 .top-movie-kyouei-name h2{
  margin:0 !important;
  padding:0 !important;
  border:0 !important;
  border-left:0 !important;
  color:var(--kyoei-navy) !important;
  font-size:clamp(1.35rem,2.3vw,1.9rem) !important;
  line-height:1.25 !important;
  font-weight:900 !important;
  text-align:center !important;
}
.company-page.page-kaisyaan6 .top-movie-kyouei-name-logo{
  width:auto !important;
  height:34px !important;
  margin:0 !important;
  flex:0 0 auto !important;
}
.company-page.page-kaisyaan6 .group-name-1{
  width:auto !important;
  max-width:min(410px,92%) !important;
  height:auto !important;
  max-height:58px !important;
  margin:0 0 18px !important;
  display:block !important;
}
.company-page.page-kaisyaan6 .top-movie-tekuno-name-logo{
  width:auto !important;
  max-width:min(420px,92%) !important;
  height:auto !important;
  max-height:64px !important;
  margin:0 !important;
  display:block !important;
}
.company-page.page-kaisyaan6 .group-video1,
.company-page.page-kaisyaan6 .group-bideo2{
  width:100% !important;
  display:flex !important;
  justify-content:center !important;
  align-items:center !important;
  margin:0 !important;
}
.company-page.page-kaisyaan6 video{
  width:100% !important;
  max-width:550px !important;
  height:auto !important;
  display:block !important;
  border-radius:18px !important;
  box-shadow:0 12px 28px rgba(13,32,58,.16) !important;
}

@media (max-width:560px){
  .company-page.page-kaisyaan2 .goaisatu-flex{
    padding:22px 20px 24px !important;
  }
  .company-page.page-kaisyaan2 .goaisatu-ue-flex{
    grid-template-columns:1fr !important;
    justify-items:center !important;
    gap:18px !important;
  }
  .company-page.page-kaisyaan2 .goaisatu-ue{
    order:2 !important;
  }
  .company-page.page-kaisyaan2 .goaisatu-pic{
    order:1 !important;
  }
  .company-page.page-kaisyaan5 .hinshituhosyou-housin{
    padding:24px 18px 26px !important;
  }
  .company-page.page-kaisyaan5 .hinshituhosyou-migisita{
    width:100% !important;
    margin-left:0 !important;
  }
}


/* final user-requested company/business side-nav refinements */
.company-page .itemichi{
  border:1px solid rgba(221,229,238,.78) !important;
  box-shadow:0 10px 24px rgba(13,32,58,.06) !important;
}
.company-page .banamidashi{
  display:flex !important;
  justify-content:center !important;
}
.company-page .item-midashi{
  text-align:center !important;
  display:flex !important;
  align-items:center !important;
  justify-content:center !important;
  padding:0 0 12px !important;
}
.company-page article h2.company-content-title{
  margin-bottom:20px !important;
}


/* 2026-06-08c: remove outer frame around COMPANY local nav only on kaisyaan pages */
body.company-page.page-kaisyaan1 .itemichi,
body.company-page.page-kaisyaan2 .itemichi,
body.company-page.page-kaisyaan3 .itemichi,
body.company-page.page-kaisyaan4 .itemichi,
body.company-page.page-kaisyaan5 .itemichi,
body.company-page.page-kaisyaan6 .itemichi{
  border:none !important;
  box-shadow:none !important;
  background:transparent !important;
  padding:0 !important;
}


/* 2026-06-08d: kaisyaan side menu fix - remove only old outer black frame, keep rounded card */
body.company-page.page-kaisyaan1 .item-sayuuiti,
body.company-page.page-kaisyaan2 .item-sayuuiti,
body.company-page.page-kaisyaan3 .item-sayuuiti,
body.company-page.page-kaisyaan4 .item-sayuuiti,
body.company-page.page-kaisyaan5 .item-sayuuiti,
body.company-page.page-kaisyaan6 .item-sayuuiti{
  border:none !important;
  outline:none !important;
  background:transparent !important;
  box-shadow:none !important;
  height:auto !important;
  min-height:0 !important;
  margin:0 !important;
  padding:0 !important;
}

body.company-page.page-kaisyaan1 .itemichi,
body.company-page.page-kaisyaan2 .itemichi,
body.company-page.page-kaisyaan3 .itemichi,
body.company-page.page-kaisyaan4 .itemichi,
body.company-page.page-kaisyaan5 .itemichi,
body.company-page.page-kaisyaan6 .itemichi{
  position:sticky !important;
  top:108px !important;
  overflow:hidden !important;
  border:1px solid rgba(221,229,238,.95) !important;
  border-radius:26px !important;
  background:rgba(255,255,255,.95) !important;
  box-shadow:0 10px 24px rgba(13,32,58,.06) !important;
  padding:18px !important;
}

body.company-page.page-kaisyaan1 .banamidashi,
body.company-page.page-kaisyaan2 .banamidashi,
body.company-page.page-kaisyaan3 .banamidashi,
body.company-page.page-kaisyaan4 .banamidashi,
body.company-page.page-kaisyaan5 .banamidashi,
body.company-page.page-kaisyaan6 .banamidashi{
  display:flex !important;
  justify-content:center !important;
  margin:0 0 12px !important;
}

body.company-page.page-kaisyaan1 .item-midashi,
body.company-page.page-kaisyaan2 .item-midashi,
body.company-page.page-kaisyaan3 .item-midashi,
body.company-page.page-kaisyaan4 .item-midashi,
body.company-page.page-kaisyaan5 .item-midashi,
body.company-page.page-kaisyaan6 .item-midashi{
  text-align:center !important;
  justify-content:center !important;
}

@media (max-width:860px){
  body.company-page.page-kaisyaan1 .itemichi,
  body.company-page.page-kaisyaan2 .itemichi,
  body.company-page.page-kaisyaan3 .itemichi,
  body.company-page.page-kaisyaan4 .itemichi,
  body.company-page.page-kaisyaan5 .itemichi,
  body.company-page.page-kaisyaan6 .itemichi{
    position:relative !important;
    top:auto !important;
    border-radius:20px !important;
    padding:14px !important;
  }
}

/* YouTube replacement for lightweight package */
.company-page .group-youtube{
  width:100% !important;
  aspect-ratio:16/9;
  border:0;
  display:block;
  background:#0c1a31;
}
.company-page .group-youtube-link{
  display:grid;
  gap:12px;
  color:var(--kyoei-navy);
  font-weight:900;
  text-align:center;
}
.company-page .group-youtube-link img{
  width:100%;
  aspect-ratio:16/9;
  object-fit:cover;
  border-radius:20px;
  box-shadow:var(--kyoei-shadow);
}
.company-page .group-youtube-link span{
  display:inline-flex;
  justify-content:center;
  align-items:center;
  min-height:42px;
  border-radius:999px;
  background:#f4f8df;
  color:#6e8619;
}

/* 2026-09-23: グループ企業メディア構成
   共栄製作所 = 写真 + 動画 + 動画 / スワコ・テクノ = 写真のみ */
.company-page.page-kaisyaan6 .group-media-grid{
  width:100% !important;
  display:grid !important;
  grid-template-columns:repeat(3,minmax(0,1fr)) !important;
  gap:14px !important;
  align-items:stretch !important;
}
.company-page.page-kaisyaan6 .group-photo-card,
.company-page.page-kaisyaan6 .group-media-grid .group-video1{
  position:relative !important;
  width:100% !important;
  min-width:0 !important;
  aspect-ratio:16 / 9 !important;
  margin:0 !important;
  overflow:hidden !important;
  border-radius:16px !important;
  background:#0c1a31 !important;
  box-shadow:0 10px 24px rgba(13,32,58,.13) !important;
}
.company-page.page-kaisyaan6 .group-photo-card--single{
  width:min(100%,550px) !important;
  aspect-ratio:16 / 9 !important;
}
.company-page.page-kaisyaan6 .group-company-photo{
  width:100% !important;
  height:100% !important;
  display:block !important;
  object-fit:cover !important;
}
.company-page.page-kaisyaan6 .group-media-grid .group-video1 iframe{
  position:absolute !important;
  inset:0 !important;
  width:100% !important;
  height:100% !important;
  border:0 !important;
  border-radius:inherit !important;
}
.company-page.page-kaisyaan6 .group1 .group-photo-card,
.company-page.page-kaisyaan6 .group2 .group-photo-card{
  margin-top:2px !important;
}
@media (max-width:760px){
  .company-page.page-kaisyaan6 .group-media-grid{
    grid-template-columns:1fr !important;
    gap:12px !important;
  }
  .company-page.page-kaisyaan6 .group-media-grid .group-photo-card,
  .company-page.page-kaisyaan6 .group-media-grid .group-video1{
    width:min(100%,550px) !important;
    justify-self:center !important;
  }
}
