/* Content-only corrections retained after shared component cleanup. */
.carousel-hero .ch-right-col { bottom: 7.5% !important; min-height: 0 !important; height: auto !important; }
.carousel-hero .ch-right-col .ch-text { margin-bottom: 0 !important; }

#ceo + .fade-up .ceo-wrap { align-items: start !important; }
#ceo + .fade-up .ceo-photo-col { align-self: start !important; }
#ceo + .fade-up .ceo-info-box { min-height: 0 !important; height: auto !important; padding-top: 42px !important; padding-bottom: 42px !important; }

#service-03 .service-item:nth-child(4) .item-detail-link { margin-top: 16px !important; align-self: flex-end !important; }
#service-03 .case-study { position: relative !important; }
#service-03 .case-fukuju-media { display: flex !important; align-items: flex-start !important; gap: 20px !important; position: absolute !important; top: 64px !important; right: 42px !important; width: 600px !important; }
#service-03 .case-fukuju-media > img { width: 190px !important; max-width: none !important; height: auto !important; filter: brightness(0) invert(1) !important; object-fit: contain !important; }
#service-03 .case-fukuju-media .fukuju-media-preview { display: flex !important; flex: 0 0 auto !important; gap: 12px !important; margin: 0 !important; }
#service-03 .case-fukuju-media figure {
  flex: 0 0 auto !important;
  width: auto !important;
  margin: 0 !important;
  padding: 0 !important;
  border: 1px solid rgba(255,255,255,.34) !important;
  background: transparent !important;
  box-shadow: none !important;
  overflow: hidden !important;
}
#service-03 .case-fukuju-media figure img {
  display: block !important;
  width: auto !important;
  height: 165px !important;
  max-width: none !important;
  max-height: none !important;
  object-fit: contain !important;
  background: transparent !important;
}

@media (min-width: 1201px) {
  #service-03 .case-fukuju-media + .case-grid > div:nth-child(2) {
    padding-top: 102px !important;
    box-sizing: border-box !important;
  }
}

.news-row .news-row-body { min-width: 0 !important; overflow: hidden !important; }
.news-row .news-row-title { display: block !important; max-width: 100% !important; overflow: hidden !important; text-overflow: ellipsis !important; white-space: nowrap !important; }

@media (max-width: 1200px) {
  #service-03 .case-fukuju-media { position: static !important; width: 100% !important; margin: 22px 0 !important; justify-content: flex-start !important; flex-wrap: wrap !important; }
}
