#home { flex:1; }
.home-visual { position:relative; min-height:100dvh; display:flex; align-items:center; justify-content:center; overflow:hidden; background:#07111f; color:#fff; }
.home-visual-video { position:absolute; inset:0; width:100%; height:100%; object-fit:cover; z-index:0; }
.home-visual-cover { position:absolute; inset:0; background:linear-gradient(90deg, rgba(7,17,31,.88), rgba(7,17,31,.42) 52%, rgba(7,17,31,.72)); z-index:1; }
.home-visual-content { position:relative; z-index:2; width:100%; max-width:1280px; padding:120px 40px 80px; display:flex; align-items:center; justify-content:space-between; gap:60px; }
.home-visual-text { max-width:620px; }
.home-visual-text > span { display:inline-flex; align-items:center; height:28px; padding:0 12px; border:1px solid rgba(255,255,255,.28); border-radius:5px; color:rgba(255,255,255,.82); font-size:13px; }
.home-visual-text h1 { margin:24px 0 18px; font-size:48px; line-height:1.18; font-weight:800; word-break:keep-all; }
.home-visual-text p { max-width:520px; margin:0 0 34px; color:rgba(255,255,255,.78); font-size:16px; line-height:1.7; word-break:keep-all; }
.home-water-audio { width:280px; max-width:100%; height:38px; filter:drop-shadow(0 12px 28px rgba(0,0,0,.25)); }
.home-visual-image { width:260px; max-width:28vw; object-fit:contain; filter:drop-shadow(0 24px 40px rgba(0,0,0,.35)); }
@media screen and (max-width:900px) {
	.home-visual-content { padding:110px 24px 64px; flex-direction:column; align-items:flex-start; gap:40px; }
	.home-visual-text h1 { font-size:36px; }
	.home-visual-image { width:180px; max-width:48vw; align-self:flex-end; }
}
@media screen and (max-width:480px) {
	.home-visual-content { padding:96px 18px 48px; }
	.home-visual-text h1 { font-size:30px; }
	.home-visual-text p { font-size:14px; }
}
