.cover-section { background:var(--brand-base); padding:22px 24px; }
.cover-section .slide-content { height:100%; max-height:690px; display:flex; flex-direction:column; align-items:stretch; gap:12px; text-align:left; }
.cover-section .section-label { margin:0; font-size:11px; flex:none; }
.cover-title { margin:0; font-size:clamp(20px,5.8vw,28px); line-height:1.4; font-weight:700; flex:none; }
.cover-title strong { font-size:clamp(40px,11vw,56px); line-height:1.15; letter-spacing:-1px; }
.cover-visual { position:relative; flex:1; min-height:100px; }
.cover-visual img { position:absolute; right:0; bottom:0; width:78%; height:100%; object-fit:contain; object-position:right bottom; mask-image:linear-gradient(to right,transparent,#000 6%,#000 94%,transparent),linear-gradient(to bottom,transparent,#000 6%,#000 97%,transparent); mask-composite:intersect; }
.cover-message { position:absolute; left:0; bottom:8px; margin:0; background:#000; color:var(--brand-orange); border-radius:50% 45% 48% 42%; padding:18px 16px; font-size:15px; font-weight:700; line-height:1.7; }
.cover-section .cover-button { width:100%; height:46px; font-size:17px; flex:none; }
.cover-section .next-link { text-align:center; flex:none; }
.reality-section .slide-content { height:100%; max-height:690px; display:flex; flex-direction:column; }
.reality-section .slide-title { flex:none; margin-bottom:10px; }
.reality-clouds { flex:1; min-height:0; display:grid; grid-template-columns:1fr 1fr; grid-template-rows:repeat(3,minmax(0,1fr)); list-style:none; padding:0; margin:0 0 10px; gap:16px 12px; }
.reality-clouds li { display:flex; align-items:center; justify-content:center; text-align:center; padding:20px 12px; background:url('assets/hipro-job.jp/corp/lp/assets/img/section-1/text-frame.png') center/contain no-repeat; color:var(--brand-orange); font-size:15px; line-height:1.7; font-weight:700; }
.reality-clouds li:nth-child(2) { translate:0 0; }
.reality-clouds li:nth-child(3) { translate:0 0; }
.reality-clouds li:nth-child(5) { grid-column:1/-1; width:55%; justify-self:center; }
@media(max-height:700px) {
 .cover-section { padding:14px 22px; }
 .cover-section .slide-content { gap:8px; }
 .cover-title { font-size:21px; }
 .cover-title strong { font-size:40px; }
 .cover-message { font-size:13px; padding:12px; }
 .reality-clouds li { font-size:13px; line-height:1.6; }
}
@media(max-height:580px) {
 .cover-title { font-size:19px; }
 .cover-title strong { font-size:34px; }
 .cover-section .cover-button { height:38px; font-size:15px; }
 .reality-clouds li { font-size:12px; padding:15px 8px; }
}
