/* Concept 7 only: a physical stack of posters; people remain behind the blue sheet. */
.concept-7{--sans:"Noto Sans JP",sans-serif;background:white}
.hero-7{--band:clamp(480px,44vw,640px);height:800px;min-height:800px;max-height:none;padding:0;background:white}
.hero-7 .blue-panel{inset-block:28px 34px;z-index:2;background:#245ddd}
.hero-7 .recruit-copy{width:var(--band);height:100%;min-height:0;justify-content:flex-start;padding:93px 28px 35px;position:relative;z-index:3}
.hero-7 .recruit-role{font-size:17px;line-height:1.6;letter-spacing:.02em;white-space:normal}
.hero-7 .recruit-role:before{content:none}
.hero-7 h1{margin:36px 0 0;line-height:1.3;letter-spacing:-.035em;font-family:"Dela Gothic One",sans-serif;font-weight:400;white-space:nowrap}
.team-lead{display:block;font-size:clamp(36px,3.34vw,50px);line-height:1.5;color:white}
.team-title{display:block;font-size:clamp(82px,7.65vw,114px);line-height:1.5;color:#ffd84a;transform:rotate(-3deg);text-shadow:5px 5px 0 #f05a47;transform-origin:center}
.hero-7 .recruit-description{padding:0;margin:29px 0 0;line-height:1.7;letter-spacing:0;color:white}
.team-verbs{font-size:29px;font-weight:700;white-space:nowrap;display:flex;justify-content:center}
.team-verbs span{display:inline-block}
.team-support{font-size:19px;font-weight:400;margin-top:7px}
.mobile-break{display:none}
.hero-7 .recruit-ctas{margin-top:43px;gap:12px;width:330px;flex-direction:column}
.hero-7 .recruit-cta{border-radius:2px;min-height:53px;padding:13px 20px;font-size:16px;border:1.5px solid white;transition:background .15s,color .15s}
.hero-7 .recruit-cta>span{font-size:19px}
.hero-7 .recruit-cta.cta-work{background:white;color:#194dbc}
.hero-7 .recruit-cta.cta-work:hover{background:#fff0ad;transform:none}
.hero-7 .recruit-cta.cta-line{color:white;background:#245ddd}
.hero-7 .recruit-cta.cta-line:hover{background:#154bbb;transform:none}
.hero-7 .connection-status{font-size:11px;height:32px;margin-top:12px;color:white}
.hero-7 .peek-window{z-index:1;overflow:hidden;pointer-events:none;max-width:none}
.hero-7 .peek-upper{left:calc(50% - var(--band)/2 - 172px);top:35px;width:290px;height:350px;bottom:auto;--entry:240px}
.hero-7 .peek-upper .peek-person{width:290px;height:432px;rotate:-6deg;object-position:left top;transform-origin:left top}
.hero-7 .peek-lower{left:calc(50% - var(--band)/2 - 190px);top:auto;bottom:34px;width:270px;height:320px;--entry:260px}
.hero-7 .peek-lower .peek-person{width:270px;height:370px;rotate:0deg;object-position:center top;scale:1}
.hero-7 .peek-right{left:auto;right:calc(50% - var(--band)/2 - 240px);top:auto;bottom:34px;width:325px;height:300px;--entry:-320px}
.hero-7 .peek-right .peek-person{width:325px;height:316px;rotate:0deg;scale:-1 1;object-position:center top}
.hero-7 .peek-motion{display:block;width:100%;height:100%}
.hero-7 .peek-person{animation:none!important;transform:none}
.poster-sheet{position:absolute;left:calc(50% - var(--band)/2);top:32px;width:var(--band);height:calc(100% - 72px);z-index:0;pointer-events:none;transform-origin:center}
.sheet-drift{width:100%;height:100%}
.sheet-yellow{transform:translate(-18px,-8px) rotate(-3deg)}
.sheet-yellow .sheet-drift{background:#ffd84a;transform:translate(0,0) rotate(0deg)}
.sheet-red{transform:translate(18px,9px) rotate(3deg)}
.sheet-red .sheet-drift{background:#f05a47;transform:translate(0,0) rotate(0deg)}
.hero-7.motion-live .peek-motion{animation:seven-peek .58s .08s both cubic-bezier(.18,.7,.25,1)}
.hero-7.motion-live .peek-lower .peek-motion{animation-delay:.38s}
.hero-7.motion-live .peek-right .peek-motion{animation-delay:.68s}
.hero-7.motion-live .team-verbs span{animation:seven-word .25s .12s both ease-out}
.hero-7.motion-live .team-verbs span:nth-child(2){animation-delay:.42s}
.hero-7.motion-live .team-verbs span:nth-child(3){animation-delay:.72s}
.hero-7.motion-live .team-support{animation:seven-word .28s 1.08s both ease-out}
.hero-7.motion-live .team-title{animation:seven-title .32s 1.25s both ease-out}
.hero-7.motion-live .sheet-yellow{animation:seven-yellow-in .38s 1.55s both ease-out}
.hero-7.motion-live .sheet-red{animation:seven-red-in .4s 1.85s both ease-out}
.hero-7.motion-live .sheet-yellow .sheet-drift{animation:seven-yellow-drift 17s 2.25s infinite ease-in-out}
.hero-7.motion-live .sheet-red .sheet-drift{animation:seven-red-drift 21s 2.25s infinite ease-in-out}
@keyframes seven-peek{from{transform:translateX(var(--entry))}to{transform:translateX(0)}}
@keyframes seven-word{from{opacity:0;transform:translateY(4px)}to{opacity:1;transform:translateY(0)}}
@keyframes seven-title{0%,100%{transform:rotate(-3deg) scale(1)}45%{transform:rotate(-1deg) scale(1.035)}}
@keyframes seven-yellow-in{from{opacity:0;transform:translate(-46px,-38px) rotate(-3deg)}to{opacity:1;transform:translate(-18px,-8px) rotate(-3deg)}}
@keyframes seven-red-in{from{opacity:0;transform:translate(45px,37px) rotate(3deg)}to{opacity:1;transform:translate(18px,9px) rotate(3deg)}}
@keyframes seven-yellow-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-12px,-8px) rotate(-.4deg)}}
@keyframes seven-red-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(14px,9px) rotate(.35deg)}}
.hero-7.motion-paused *,.hero-7.motion-held *{animation-play-state:paused!important}
.hero-7.is-restarting *{animation:none!important}
.hero-7.motion-reduced *{animation:none!important;transition:none!important}
.preview-seven .study-bar,.preview-seven .recruit-header{display:none}
.preview-seven .hero-7{height:900px;min-height:900px}
@media(min-width:701px) and (max-width:1050px){
 .hero-7{--band:clamp(420px,59vw,560px);height:780px;min-height:780px}
 .hero-7 .recruit-copy{padding:93px 20px 30px}
 .team-lead{font-size:clamp(32px,4.5vw,46px)}.team-title{font-size:clamp(76px,10vw,102px)}
 .team-verbs{font-size:25px}.team-support{font-size:17px}
 .hero-7 .peek-upper{left:calc(50% - var(--band)/2 - 105px);width:210px;height:300px}
 .hero-7 .peek-upper .peek-person{width:210px;height:313px}
 .hero-7 .peek-lower{left:calc(50% - var(--band)/2 - 110px);width:195px;height:280px}
 .hero-7 .peek-lower .peek-person{width:195px;height:267px}
 .hero-7 .peek-right{right:calc(50% - var(--band)/2 - 128px);width:230px;height:224px;bottom:170px}
 .hero-7 .peek-right .peek-person{width:230px;height:224px}
}
@media(max-width:700px){
 .hero-7{--band:clamp(220px,68vw,440px);height:690px;min-height:690px;max-height:none}
 .hero-7 .blue-panel{inset-block:24px 32px}
 .hero-7 .recruit-copy{display:flex;width:var(--band);height:100%;min-height:0;padding:60px 14px 24px;justify-content:flex-start}
 .hero-7 .recruit-role{position:static;font-size:12px;line-height:1.7;letter-spacing:0;white-space:normal;width:100%;min-height:40px;margin:0}
 .hero-7 h1{position:static;width:100%;margin:27px 0 0;font-size:inherit;letter-spacing:-.04em;line-height:1.4}
 .team-lead{font-size:clamp(20px,5.5vw,34px);line-height:1.65}
 .team-title{font-size:clamp(40px,12.4vw,78px);line-height:1.65;text-shadow:4px 4px 0 #f05a47}
 .hero-7 .recruit-description{position:static;width:100%;font-size:inherit;margin:37px 0 0;line-height:1.7;padding:0}
 .team-verbs{font-size:clamp(17px,4.8vw,27px);line-height:1.7;letter-spacing:-.04em}
 .team-support{font-size:clamp(14px,3.65vw,19px);line-height:1.8;margin-top:12px}
 .hero-7 .recruit-description .mobile-break{display:inline}
 .hero-7 .recruit-ctas{position:static;width:100%;margin:40px 0 0;gap:12px}
 .hero-7 .recruit-cta{font-size:13px;padding:12px 11px;gap:6px;min-height:52px;width:100%}
 .hero-7 .recruit-cta>span{font-size:16px}
 .hero-7 .connection-status{position:static;width:100%;height:40px;margin-top:12px;font-size:10px}
 .hero-7 .peek-upper{left:calc(50% - var(--band)/2 - 74px);top:32px;width:125px;height:190px;--entry:135px}
 .hero-7 .peek-upper .peek-person{width:125px;height:186px;rotate:-6deg}
 .hero-7 .peek-lower{left:calc(50% - var(--band)/2 - 61px);top:470px;bottom:auto;width:116px;height:175px;--entry:128px}
 .hero-7 .peek-lower .peek-person{width:116px;height:175px}
 .hero-7 .peek-right{right:calc(50% - var(--band)/2 - 62px);top:335px;bottom:auto;width:137px;height:145px;--entry:-145px}
 .hero-7 .peek-right .peek-person{width:137px;height:145px}
 .poster-sheet{top:29px;height:calc(100% - 68px)}
 .sheet-yellow{transform:translate(-9px,-4px) rotate(-2deg)}.sheet-red{transform:translate(9px,5px) rotate(2deg)}
 @keyframes seven-yellow-in{from{opacity:0;transform:translate(-30px,-28px) rotate(-2deg)}to{opacity:1;transform:translate(-9px,-4px) rotate(-2deg)}}
 @keyframes seven-red-in{from{opacity:0;transform:translate(30px,25px) rotate(2deg)}to{opacity:1;transform:translate(9px,5px) rotate(2deg)}}
 @keyframes seven-yellow-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-8px,-5px) rotate(-.3deg)}}
 @keyframes seven-red-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(9px,7px) rotate(.3deg)}}
}
@media(max-width:360px){.hero-7 .recruit-cta{font-size:12px;padding-inline:9px}.hero-7 .recruit-role{font-size:11px}.hero-7 .recruit-copy{padding-inline:12px}.hero-7 .peek-upper{left:calc(50% - var(--band)/2 - 61px);width:110px;height:175px}.hero-7 .peek-upper .peek-person{width:110px;height:164px}.hero-7 .peek-lower{left:calc(50% - var(--band)/2 - 48px);width:105px;height:155px}.hero-7 .peek-lower .peek-person{width:105px;height:155px}.hero-7 .peek-right{right:calc(50% - var(--band)/2 - 48px);width:115px;height:124px}.hero-7 .peek-right .peek-person{width:115px;height:124px}}
@media(prefers-reduced-motion:reduce){.hero-7 *{animation:none!important;transition:none!important}}

/* Concept 07: sales-copy composition (2026-10-22) */
.hero-7{--band:clamp(520px,47vw,680px)}
.hero-7 .recruit-copy{padding:82px 28px 32px}
.hero-7 h1{margin:27px 0 0;line-height:1.25;letter-spacing:-.055em;white-space:nowrap}
.sales-lead{display:block;font-size:clamp(44px,3.7vw,56px);line-height:1.45;color:#fff}
.sales-lead>span{display:inline}
.sales-punch{display:block;position:relative;width:max-content;margin:2px auto 0;font-size:clamp(82px,6.6vw,98px);line-height:1.4;transform:rotate(-3deg);transform-origin:center}
.sales-punch-text,.sales-punch-shadow{display:block}
.sales-punch-text{position:relative;z-index:1;color:#ffd84a}
.sales-punch-shadow{position:absolute;inset:0;z-index:0;color:#f05a47;transform:translate(5px,5px)}
.hero-7 .recruit-description{margin:24px 0 0}
.sales-action{font-size:clamp(24px,2vw,29px);font-weight:700;white-space:nowrap}
.sales-support{font-size:clamp(17px,1.35vw,20px);font-weight:400;margin-top:6px}
.hero-7 .recruit-ctas{margin-top:35px}
.hero-7 .connection-status{height:30px;margin-top:10px}
.seven-mobile-actions:empty{display:none}
.hero-7.motion-live .sales-punch{animation:seven-punch .34s 1.12s both cubic-bezier(.2,.75,.28,1)}
.hero-7.motion-live .sales-punch-shadow{animation:seven-shadow .34s 1.12s both ease-out}
.hero-7.motion-live .recruit-description{animation:seven-word .3s 1.42s both ease-out}
.hero-7.motion-live .sheet-yellow{animation:seven-yellow-in .38s 1.68s both ease-out}
.hero-7.motion-live .sheet-red{animation:seven-red-in .4s 1.95s both ease-out}
.hero-7.motion-live .sheet-yellow .sheet-drift{animation:seven-yellow-drift 17s 2.35s infinite ease-in-out}
.hero-7.motion-live .sheet-red .sheet-drift{animation:seven-red-drift 21s 2.35s infinite ease-in-out}
@keyframes seven-punch{from{opacity:0;transform:rotate(-6deg) scale(1.075)}72%{opacity:1;transform:rotate(-2deg) scale(.99)}to{opacity:1;transform:rotate(-3deg) scale(1)}}
@keyframes seven-shadow{from{transform:translate(9px,7px)}to{transform:translate(5px,5px)}}

@media(min-width:701px) and (max-width:1050px){
  .hero-7{--band:clamp(440px,61vw,580px)}
  .hero-7 .recruit-copy{padding:88px 20px 30px}
  .sales-lead{font-size:clamp(34px,4.7vw,46px)}
  .sales-punch{font-size:clamp(68px,9.2vw,88px)}
  .sales-action{font-size:clamp(21px,3vw,26px)}
  .sales-support{font-size:17px}
}

@media(max-width:700px){
  .hero-7{--band:clamp(210px,66vw,270px);--poster-height:clamp(540px,148vw,610px);display:flex;flex-direction:column;align-items:center;height:auto;min-height:0;max-height:none;padding:22px 0 0;background:#fff}
  .hero-7 .blue-panel{left:calc(50% - var(--band)/2);top:22px;bottom:auto;width:var(--band);height:var(--poster-height);z-index:2}
  .hero-7 .recruit-copy{display:flex;width:var(--band);height:var(--poster-height);min-height:0;padding:43px 10px 16px;justify-content:flex-start;z-index:5}
  .hero-7 .recruit-role{position:static;font-size:clamp(12px,3.35vw,14px);line-height:1.65;letter-spacing:-.015em;white-space:normal;width:100%;min-height:42px;margin:0;text-align:right;text-shadow:2px 2px 0 #194dbc}
  .hero-7 h1{position:static;width:100%;margin:22px 0 0;letter-spacing:-.055em;line-height:1.3;white-space:normal}
  .sales-lead{font-size:clamp(26px,7.8vw,34px);line-height:1.35}
  .sales-lead>span{display:block}
  .sales-punch{font-size:clamp(46px,13.6vw,58px);line-height:1.32;margin:4px auto 0;white-space:nowrap}
  .sales-punch-shadow{transform:translate(4px,4px)}
  .hero-7 .recruit-description{position:static;width:100%;margin:26px 0 0;line-height:1.65;padding:0}
  .sales-action{font-size:clamp(17px,5vw,20px);line-height:1.65;letter-spacing:-.055em;white-space:nowrap}
  .sales-support{font-size:clamp(14px,4vw,16px);line-height:1.75;margin-top:8px}
  .hero-7 .recruit-description .mobile-break{display:inline}
  .seven-mobile-actions{position:relative;z-index:8;width:calc(100% - 40px);max-width:390px;margin:19px auto 24px;color:#142d4d}
  .seven-mobile-actions .recruit-ctas{display:grid;grid-template-columns:1fr;width:100%;margin:0;gap:10px}
  .seven-mobile-actions .recruit-cta{width:100%;min-width:0;min-height:51px;border-radius:2px;padding:12px 16px;font-size:14px;border:1.5px solid #194dbc}
  .seven-mobile-actions .recruit-cta.cta-work{background:#fff;color:#194dbc}
  .seven-mobile-actions .recruit-cta.cta-line{background:#245ddd;color:#fff}
  .seven-mobile-actions .connection-status{height:28px;margin:7px 0 0;color:#344861;font-size:10px;text-align:left}
  .hero-7 .peek-window{z-index:4;overflow:hidden}
  .hero-7 .peek-upper{left:calc(50% - var(--band)/2 - clamp(120px,32vw,135px));top:13px;width:clamp(155px,45vw,194px);height:clamp(232px,68vw,292px);--entry:205px}
  .hero-7 .peek-upper .peek-person{width:100%;height:112%;rotate:-5deg;object-position:left top}
  .hero-7 .peek-lower{left:calc(50% - var(--band)/2 - clamp(61px,16vw,70px));top:calc(22px + var(--poster-height) - clamp(170px,48vw,205px));bottom:auto;width:clamp(150px,42vw,181px);height:clamp(170px,48vw,205px);--entry:195px}
  .hero-7 .peek-lower .peek-person{width:100%;height:112%;object-position:center top}
  .hero-7 .peek-right{right:calc(50% - var(--band)/2 - clamp(63px,17vw,75px));top:calc(22px + var(--poster-height) - clamp(184px,49vw,211px));bottom:auto;width:clamp(184px,52vw,224px);height:clamp(184px,49vw,211px);--entry:-235px}
  .hero-7 .peek-right .peek-person{width:100%;height:108%;object-position:center top}
  .poster-sheet{left:calc(50% - var(--band)/2);top:24px;width:var(--band);height:calc(var(--poster-height) - 10px)}
  .sheet-yellow{transform:translate(-11px,-5px) rotate(-2deg)}
  .sheet-red{transform:translate(11px,6px) rotate(2deg)}
  @keyframes seven-shadow{from{transform:translate(7px,6px)}to{transform:translate(4px,4px)}}
  @keyframes seven-yellow-in{from{opacity:0;transform:translate(-28px,-23px) rotate(-2deg)}to{opacity:1;transform:translate(-11px,-5px) rotate(-2deg)}}
  @keyframes seven-red-in{from{opacity:0;transform:translate(28px,22px) rotate(2deg)}to{opacity:1;transform:translate(11px,6px) rotate(2deg)}}
  @keyframes seven-yellow-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(-7px,-5px) rotate(-.25deg)}}
  @keyframes seven-red-drift{0%,100%{transform:translate(0,0) rotate(0)}50%{transform:translate(8px,6px) rotate(.25deg)}}
}

@media(max-width:360px){
  .hero-7{--poster-height:540px}
  .hero-7 .recruit-copy{padding-inline:9px;padding-top:41px}
  .hero-7 .recruit-role{font-size:12px}
  .sales-lead{font-size:26px}
  .sales-punch{font-size:46px}
  .sales-action{font-size:17px}
  .sales-support{font-size:14px}
  .hero-7 .peek-upper{left:calc(50% - var(--band)/2 - 115px);width:145px;height:220px}
  .hero-7 .peek-lower{left:calc(50% - var(--band)/2 - 53px);top:calc(22px + var(--poster-height) - 170px);width:139px;height:170px}
  .hero-7 .peek-right{right:calc(50% - var(--band)/2 - 55px);top:calc(22px + var(--poster-height) - 172px);width:171px;height:172px}
  .seven-mobile-actions{width:calc(100% - 32px)}
}
