/* features-hux-08.css — 写真左・テキスト右の2カラムセクション */
.features-hux-08 .mx-auto{margin-inline:auto}
.features-hux-08 .max-w-7xl{max-width:min(1440px,94vw)}
.features-hux-08 .px-4{padding-inline:clamp(1.25rem,4vw,3rem)}
.features-hux-08 .py-8{padding-block:0}

.features-hux-08 .hux08-grid{
  display:grid;
  grid-template-columns:1fr;
  gap:2rem;
  align-items:center;
}
.features-hux-08 .hux08-media{
  margin:0;
  aspect-ratio:4/3;
  overflow:hidden;
  border-radius:4px;
  box-shadow:0 8px 32px rgba(23,61,60,.12);
}
.features-hux-08 .hux08-media img{
  display:block;width:100%;height:100%;object-fit:cover;
  transition:transform .5s ease;
}
.features-hux-08 .hux08-media:hover img{transform:scale(1.03)}

.features-hux-08 .hux08-body{display:flex;flex-direction:column;gap:0}
.features-hux-08 .hux08-en{
  display:inline-block;
  margin:0 0 1rem;
  letter-spacing:.22em;
  text-transform:uppercase;
  color:var(--color-secondary);
  font-size:.8rem;
  font-weight:600;
  border-left:3px solid var(--color-secondary);
  padding-left:.75rem;
}
.features-hux-08 .hux08-title{
  margin:0 0 1.25rem;
  line-height:1.4;
  font-size:var(--fs-h2);
  color:var(--color-heading-ink);
}
.features-hux-08 .hux08-text{
  margin:0 0 2rem;
  line-height:1.9;
  color:var(--color-text);
  font-size:var(--fs-body);
}
.features-hux-08 .hux08-more{margin:0}
.features-hux-08 .hux-btn{
  display:inline-flex;align-items:center;justify-content:center;
  min-height:44px;padding:.7em 2em;
  border-radius:2px;
  background:var(--color-primary);color:var(--color-on-primary);
  text-decoration:none;font-weight:600;font-size:.9rem;
  letter-spacing:.06em;
  transition:background .25s,transform .2s;
}
.features-hux-08 .hux-btn:hover{background:var(--color-primary-dark);transform:translateY(-1px);opacity:1}

@media (min-width:768px){
  .features-hux-08 .hux08-grid{
    grid-template-columns:minmax(0,1fr) minmax(0,1fr);
    gap:clamp(2rem,5vw,4rem);
  }
}
