.special-contents { position:relative; height:calc(1204 * var(--u)); display:flex; flex-direction:column; }
.special-contents__heading { display:flex; align-items:flex-end; height:calc(282 * var(--u) - 1px); flex:none; margin-inline:calc(var(--gutter) + var(--pad)); padding-bottom:calc(30 * var(--u)); }
.special-contents__heading .section-title { margin:0; }
.special-contents__visual { position:relative; flex:1; min-height:0; margin-inline:0; overflow:hidden; isolation:isolate; background:#aaa; }
.special-contents__image-link { position:absolute; z-index:1; inset:0; display:block; color:inherit; text-decoration:none; }
.special-contents__image-link:hover { opacity:1; }
.special-contents__image-link:focus-visible { outline:2px solid #fff; outline-offset:-4px; }
.special-contents__photo { display:block; width:100%; height:100%; object-fit:cover; object-position:center; transform:scale(1.08); transition:transform .8s cubic-bezier(.2,.7,.2,1); }
.special-contents__copy { position:absolute; z-index:1; left:calc(40 * var(--u)); right:calc(40 * var(--u)); bottom:calc(110 * var(--u)); --band-size:clamp(22px, calc(40 * var(--u)), 40px); }
.special-contents__kicker { display:flex; align-items:center; gap:calc(20 * var(--u)); margin:0 0 calc(20 * var(--u)); color:#fff; font-size:calc(64 * var(--u)); line-height:1.18; letter-spacing:.1em; }
.special-contents__kicker .cross { width:calc(34.26 * var(--u)); height:calc(34.26 * var(--u)); filter:brightness(0) invert(1); }
.special-contents__eyebrow { display:inline-flex; align-items:center; height:1.7em; margin:0 0 calc(22 * var(--u)); padding:0 .45em .1em; background:#fff; color:var(--ink); font-size:var(--band-size); line-height:1; letter-spacing:.025em; white-space:nowrap; }
.special-contents__eyebrow-line { display:inline-flex; align-items:center; }
.special-contents__eyebrow-line + .special-contents__eyebrow-line { margin-left:.25em; }
.special-contents__eyebrow-action, .special-contents__title span { font-family:"Zen Kaku Gothic New","Yu Gothic",sans-serif; font-weight:600; }
.special-contents__title { margin:0; font-size:var(--band-size); line-height:1.3; letter-spacing:.025em; }
.special-contents__title span { display:inline-flex; align-items:center; height:1.7em; padding:0 .08em .1em; background:#fff; line-height:1; }
.special-contents__deck { margin:calc(25 * var(--u)) 0 0; color:#fff; font-size:clamp(13px, calc(20 * var(--u)), 20px); line-height:1.5; letter-spacing:.03em; }
.special-contents__more { position:absolute; z-index:2; right:calc(40 * var(--u)); bottom:calc(40 * var(--u)); display:flex; align-items:center; justify-content:center; width:calc(300 * var(--u)); min-width:150px; height:calc(48 * var(--u)); min-height:36px; padding:0 1.2em; background:var(--ink); color:#fff; font-size:clamp(12px, calc(16 * var(--u)), 16px); line-height:1; letter-spacing:.06em; transition:background-color .3s ease; }
.special-contents__more .one-sided-arrow { position:absolute; right:1.2em; }
.special-contents__more:hover, .special-contents__more:focus-visible { background:#555; }
.special-contents__more:focus-visible { outline:2px solid #fff; outline-offset:3px; }
@media (max-width:767px) {
  .special-contents { height:auto; display:block; }
  .special-contents__heading { height:27vw; margin-inline:5vw; padding-bottom:4vw; }
  .special-contents__heading .section-title { font-size:clamp(20px, 5vw, 28px); }
  .special-contents__visual { height:clamp(500px, 138vw, 720px); margin-inline:0; }
  .special-contents__copy { left:4vw; right:4vw; bottom:84px; --band-size:clamp(17px, 5vw, 23px); }
  .special-contents__kicker { gap:2vw; margin-bottom:16px; font-size:clamp(25px, 7vw, 34px); }
  .special-contents__kicker .cross { width:.6em; height:.6em; }
  .special-contents__eyebrow { display:flex; flex-direction:column; align-items:flex-start; gap:6px; height:auto; margin-bottom:10px; padding:0; background:transparent; }
  .special-contents__eyebrow-line { min-height:1.65em; padding:0 .38em .08em; background:#fff; }
  .special-contents__eyebrow-line + .special-contents__eyebrow-line { margin-left:0; }
  .special-contents__eyebrow-action { margin-left:.25em; }
  .special-contents__title span { min-height:1.65em; padding:0 .38em .08em; }
  .special-contents__deck { max-width:35em; margin-top:13px; font-size:12px; }
  .special-contents__more { left:4vw; bottom:7vw; width:170px; height:38px; min-height:38px; font-size:12px; }
}
@media (prefers-reduced-motion:reduce) { .special-contents__more { transition:none; } }

@media (hover:hover) and (pointer:fine) {
  .special-contents__visual:hover .special-contents__photo { transform:scale(1.14); }
}
@media (prefers-reduced-motion:reduce) {
  .special-contents__photo { transition:none; }
}

.page main > section.cross-talk-video { border-top: 0; }
.cross-talk-video { display:grid; grid-template-columns:repeat(4,minmax(0,1fr)); height:var(--cell); margin-inline:var(--gutter); }
.cross-talk-video__copy { grid-column:span 2; display:flex; flex-direction:column; justify-content:center; min-width:0; padding:var(--pad); padding-left:calc(var(--pad) + 8px); transform:translateY(calc(-30 * var(--u))); }
.cross-talk-video__title { display:flex; align-items:flex-start; gap:calc(20 * var(--u)); margin:0; font-size:calc(64 * var(--u)); font-weight:500; line-height:1.02; letter-spacing:.1em; white-space:nowrap; }
.cross-talk-video__title .cross { width:calc(34.26 * var(--u)); height:calc(34.26 * var(--u)); flex:none; margin-top:.22em; }
.cross-talk-video__title-lines { display:flex; flex-direction:column; }
.cross-talk-video__description { margin:0 0 calc(6 * var(--u)) calc(54.26 * var(--u)); font-family:"Zen Kaku Gothic New","Yu Gothic",sans-serif; font-size:clamp(11px,calc(14 * var(--u)),14px); font-weight:600; line-height:1.5; letter-spacing:.04em; }
.cross-talk-video__link { position:relative; grid-column:span 2; display:block; min-width:0; margin:var(--pad); overflow:hidden; background:#1a1a1a; color:#fff; isolation:isolate; }
.cross-talk-video__link:hover { opacity:1; }
.cross-talk-video__link:focus-visible { outline:2px solid var(--ink); outline-offset:4px; }
.cross-talk-video__thumbnail { display:block; width:100%; height:100%; object-fit:cover; transition:transform .65s cubic-bezier(.2,.7,.2,1); }
.cross-talk-video__link:hover .cross-talk-video__thumbnail { transform:scale(1.035); }
.cross-talk-video__play { position:absolute; top:50%; left:50%; display:grid; place-items:center; width:calc(76 * var(--u)); height:calc(76 * var(--u)); min-width:48px; min-height:48px; background:var(--ink); transform:translate(-50%,-50%); transition:background-color .3s ease; }
.cross-talk-video__play::after { content:""; display:block; width:0; height:0; margin-left:3px; border-top:10px solid transparent; border-bottom:10px solid transparent; border-left:16px solid #fff; }
.cross-talk-video__link:hover .cross-talk-video__play { background:#555; }
.cross-talk-video__link-label { position:absolute; right:0; bottom:0; display:flex; align-items:center; justify-content:space-between; gap:3em; min-width:calc(230 * var(--u)); padding:calc(12 * var(--u)) calc(18 * var(--u)); background:var(--ink); font-size:clamp(11px,calc(14 * var(--u)),14px); line-height:1; letter-spacing:.04em; }
@media (max-width:767px) {
  .cross-talk-video { display:block; height:auto; padding:9vw 0; }
  .cross-talk-video__copy { padding:0 4vw 9vw; transform:none; }
  .cross-talk-video__title { gap:2vw; font-size:7vw; line-height:1.18; letter-spacing:.045em; white-space:nowrap; }
  .cross-talk-video__title .cross { width:3.6vw; height:3.6vw; }
  .cross-talk-video__description { margin:0 0 3vw 5.6vw; font-size:clamp(11px,3vw,14px); }
  .cross-talk-video__link { width:100%; aspect-ratio:16/9; margin:0; }
  .cross-talk-video__play::after { border-top-width:7px; border-bottom-width:7px; border-left-width:12px; }
  .cross-talk-video__link-label { min-width:0; padding:10px 12px; font-size:10px; }
}
@media (prefers-reduced-motion:reduce) { .cross-talk-video__thumbnail, .cross-talk-video__play { transition:none; } }
