/* 携帯HERO：参考の雑誌ページに合わせた文字組みと写真の配置 */
.hero-photo-caption{display:none}
.hero-editorial-heading>p:last-child{margin-bottom:24px}
@media(max-width:640px){
  .header{height:64px}
  .hero{display:grid;grid-template-columns:minmax(0,1fr) 65px;gap:0 12px;width:90%;margin:0 auto;padding:0 0 24px;overflow:visible;background:#fff}
  .hero-copy{display:contents}
  .hero-editorial-heading{grid-column:1/-1;grid-row:1;display:grid;grid-template-columns:34% minmax(0,1fr);column-gap:14px;align-items:center;margin-bottom:18px;min-height:166px}
  .hero-number{grid-column:1;grid-row:1/4;display:block;font-size:clamp(92px,28vw,155px);letter-spacing:-.09em;line-height:.85;align-self:start;padding-top:9px}
  .hero-number span{display:block;margin:12px 0 0 7px;font-size:11px;line-height:1.6;letter-spacing:.14em}
  .hero-number i{display:none}
  .hero .program-name{grid-column:2;grid-row:1;font-size:9px;line-height:1.8;letter-spacing:.02em;border-bottom:1px solid #aaa09a;padding-bottom:7px;margin:0;text-align:center}
  .hero h1{grid-column:2;grid-row:2;font-size:clamp(16px,4.8vw,28px);font-weight:600;line-height:1.7;letter-spacing:0;margin:7px 0;padding-bottom:7px;border-bottom:1px solid #aaa09a;white-space:nowrap}
  .hero-editorial-heading>p:last-child{grid-column:2;grid-row:3;font-size:8px;line-height:1.8;letter-spacing:.01em;margin:0}
  .hero-photo{grid-column:1;grid-row:2;position:relative!important;inset:auto;order:initial;width:100%;height:auto;aspect-ratio:0.76;min-height:0;--position:72% center}
  .hero-photo img{transform:scale(1.18);transform-origin:72% 35%}
  .hero-photo-caption{display:block;position:absolute;z-index:1;bottom:19px;left:15px;right:12px;color:white;font-family:var(--sans);font-size:clamp(10px,2.7vw,15px);font-weight:600;line-height:1.9;letter-spacing:.06em;text-shadow:0 1px 8px #31271fd9}
  .hero-photo:after{content:"";position:absolute;inset:60% 0 0;background:linear-gradient(transparent,#251e1b66);pointer-events:none}
  .hero .vertical{position:relative;grid-column:2;grid-row:2;inset:auto;align-self:start;justify-self:center;margin:0;padding:4px 0 0;color:var(--red);background:transparent;writing-mode:vertical-rl;font-size:clamp(15px,4.2vw,23px);line-height:1.9;letter-spacing:.15em;max-height:100%}
  .hero .button{grid-column:1/-1;grid-row:3;justify-self:stretch;margin-top:20px;font-size:12px;min-height:45px}
}
@media(max-width:350px){
  .hero{grid-template-columns:minmax(0,1fr) 53px;column-gap:9px}
  .hero-editorial-heading{column-gap:10px;min-height:150px}
  .hero .program-name{font-size:8px}
  .hero h1{font-size:15px}
  .hero-editorial-heading>p:last-child{font-size:7px}
  .hero .vertical{font-size:14px;letter-spacing:.1em}
}

@media(min-width:641px){.hero-photo{--position:72% center}}
