:root{--navy:#050f40;--blue:#0057df;--yellow:#ffeb38;--pink:#f42170;--green:#00a82c}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;color:var(--navy);background:#fff;font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.7;font-weight:600}a{color:inherit}img{max-width:100%;height:auto}h1,h2,h3,p{margin:0}h1,h2,h3{font-weight:900;line-height:1.35;letter-spacing:-.025em}.shell{width:min(1160px,calc(100% - 40px));margin-inline:auto}.blue{color:var(--blue)}.yellow{color:var(--yellow)}.marker{background:linear-gradient(transparent 78%,var(--yellow) 78%,var(--yellow) 96%,transparent 96%);box-decoration-break:clone;-webkit-box-decoration-break:clone}.hero{position:relative;isolation:isolate;min-height:650px;padding:30px 38px 24px;background:linear-gradient(110deg,#fff 20%,#e7f7ff 80%);overflow:hidden}.hero-art{position:absolute;z-index:-1;top:0;right:0;width:55%;height:575px;background-image:url('assets/reference.png');background-size:1200px 1800px;background-position:right top;background-repeat:no-repeat;mask-image:linear-gradient(to right,transparent,#000 18%);-webkit-mask-image:linear-gradient(to right,transparent,#000 18%)}.hero-copy{max-width:620px}.eyebrow{font-size:clamp(20px,2.7vw,31px);font-weight:900;line-height:1.5;margin-bottom:20px}h1{font-size:clamp(42px,4.9vw,61px);line-height:1.14;margin-bottom:16px}.keywords{font-size:17px}.hero-copy>p:not(.eyebrow){line-height:1.5}.question{color:var(--blue);font-size:23px;font-weight:900;margin-top:12px}.dark{color:var(--navy)}.hero-actions{display:grid;grid-template-columns:1fr 1fr;gap:20px;margin-top:22px}.button{display:flex;align-items:center;justify-content:center;gap:14px;min-height:74px;padding:12px 22px;border-radius:45px;color:#fff;text-decoration:none;font-size:24px;font-weight:900;line-height:1.3;box-shadow:0 4px 9px #00184a22;transition:transform .18s,filter .18s}.button:hover{filter:brightness(1.06);transform:translateY(-2px)}a:focus-visible{outline:4px solid #ffbe00;outline-offset:5px}.video-button{background:linear-gradient(#ff508b,#ee105f)}.line-button{background:linear-gradient(#00c934,#008922)}.play{display:grid;place-items:center;background:white;color:var(--pink);border-radius:50%;width:43px;height:43px;font-size:23px;padding-left:3px;flex-shrink:0}.line-icon{display:grid;place-items:center;width:54px;height:48px;border-radius:50%;background:#fff;color:var(--green);font-size:18px;letter-spacing:-1px;flex-shrink:0}.worries{background:linear-gradient(135deg,#d5f2ff,#e7f8ff);padding:26px 24px 22px;border-radius:20px;margin-top:18px}.worries h2,.connections h2{text-align:center;font-size:32px}.worry-grid{display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:14px;margin-top:24px}.worry{border-radius:16px;background:#fff;padding:12px 10px}.worry h3{text-align:center;color:var(--blue);font-size:22px}.picture{background-image:url('assets/reference.png');background-repeat:no-repeat;margin-inline:auto}.worry-picture{width:190px;height:90px;background-size:1024px 1536px;margin-top:5px}.w1{background-position:-43px -702px}.w2{background-position:-292px -702px}.w3{background-position:-538px -702px}.w4{background-position:-785px -702px}.worry p{font-size:15px;line-height:1.5;margin-top:4px;border:1px solid #cbdceb;box-shadow:0 2px 6px #284c8022;border-radius:24px;padding:10px 10px;background:#fff}.worry-summary{text-align:center;font-size:23px;margin-top:19px}.worry-summary strong{font-size:34px}.connections{background:linear-gradient(120deg,#0362b4,#003879);color:#fff;margin-top:24px;padding:28px 0 26px;position:relative;overflow:hidden}.connections h2{font-size:39px}.connection-grid{list-style:none;padding:0;display:grid;grid-template-columns:repeat(4,minmax(0,1fr));gap:24px;margin:24px 0 16px}.connection-grid li{position:relative;text-align:center}.connection-grid li:not(:last-child):after{content:"";position:absolute;top:70px;right:-23px;width:24px;height:24px;border-top:8px solid #21c0ff;border-right:8px solid #21c0ff;transform:rotate(45deg);z-index:1}.connection-grid h3{background:#fff;color:var(--navy);border-radius:14px 14px 0 0;padding:12px 8px 0;min-height:68px;font-size:20px}.connect-picture{width:100%;height:89px;background-color:#fff;background-size:1024px 1536px;border-radius:0 0 14px 14px}.c1{background-position:-28px -1027px}.c2{background-position:-272px -1027px}.c3{background-position:-519px -1027px}.c4{background-position:-778px -1027px}.connection-grid p{font-size:16px;line-height:1.55;margin-top:12px}.connection-summary{text-align:center;font-size:17px}.connection-summary strong{display:inline-block;margin-top:8px;font-size:25px}.learn{padding:32px 32px 0}.learn h2{font-size:37px;margin-bottom:12px}.learn p{font-size:17px}.video-section{max-width:880px;padding:38px 32px;text-align:center}.small-intro{font-size:18px;font-weight:900;margin-bottom:8px}.video-section h2{font-size:29px;margin-bottom:22px}.thumbnail{position:relative;display:block;overflow:hidden;border-radius:16px;box-shadow:0 8px 24px #003a7829;line-height:0}.thumbnail img{display:block;width:100%;aspect-ratio:1506/847;object-fit:cover}.thumbnail-play{display:grid;place-items:center;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%);width:85px;height:60px;background:#ed1261f0;border-radius:16px;color:white;font-size:30px;padding-left:4px;box-shadow:0 3px 20px #050f4044}.thumbnail:hover .thumbnail-play{background:#ff2c72}.watch-button{max-width:430px;margin:22px auto 0}.video-note{font-size:14px;margin-top:9px;color:#4a5e7b}.profile-cta{display:grid;grid-template-columns:1.1fr 1fr;gap:24px;background:#e9f7ff;border-radius:20px;padding:25px 24px}.profile{display:grid;grid-template-columns:110px 1fr;gap:10px 16px;align-items:center}.profile img{width:110px;border-radius:50%;grid-row:span 2}.profile-name p{font-size:14px}.profile-name h2{font-size:37px}.profile-history{font-size:14px;line-height:1.65;color:#38577d}.line-cta{background:linear-gradient(120deg,#fffbc9,#fff);border-radius:16px;padding:20px;font-size:16px}.line-cta .button{font-size:20px;margin-top:18px;min-height:68px}.line-cta>p+p{margin-top:8px}footer{text-align:center;padding:26px 20px;font-size:14px;color:#4a5e7b}.mobile-only{display:none}
@media(min-width:1200px){.hero-art{background-size:1250px 1875px}.hero{padding-top:35px}.hero h1{font-size:63px}.hero-art{height:600px}.hero-copy{max-width:650px}}
@media(max-width:1000px) and (min-width:701px){.shell{width:calc(100% - 28px)}.hero{padding:26px}.hero-art{width:52%;background-size:1060px 1590px}.hero-copy{max-width:55%}.hero h1{font-size:45px}.hero .eyebrow{font-size:22px}.hero .question{font-size:20px}.keywords{font-size:15px}.hero-copy>p:not(.eyebrow){font-size:15px}.button{font-size:21px}.worry-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.worry p{text-align:center}.connection-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.connection-grid li:after{display:none}.connect-picture{max-width:224px}.connection-grid h3{max-width:224px;margin:auto}.profile-cta{grid-template-columns:1fr 1fr}.profile{grid-template-columns:85px 1fr}.profile img{width:85px}.line-cta{padding:16px}}
@media(max-width:700px){body{font-weight:500}.shell{width:calc(100% - 24px)}.hero{width:100%;padding:24px 22px 20px;min-height:0}.hero-art{top:45px;right:-70px;width:65%;height:350px;background-size:735px 1102.5px;opacity:.65;mask-image:linear-gradient(to right,transparent,#000 32%);-webkit-mask-image:linear-gradient(to right,transparent,#000 32%)}.hero-copy{max-width:none}.eyebrow{font-size:20px;margin-bottom:26px}.hero h1{font-size:clamp(34px,8.4vw,49px);line-height:1.2;position:relative;text-shadow:0 2px 8px #fff}.keywords{font-size:16px;margin-top:22px;background:#ffffffe8}.hero-copy>p:not(.eyebrow){line-height:1.8;background:#ffffffe8}.hero-copy .question{font-size:clamp(19px,4.9vw,24px);margin-top:18px;background:transparent;line-height:1.6}.hero-actions{grid-template-columns:1fr;gap:12px;margin-top:22px}.button{font-size:21px;min-height:66px;padding:12px 18px}.worries{padding:23px 12px 20px;margin-top:12px;border-radius:16px}.worries h2{font-size:24px;line-height:1.55}.worry-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin-top:20px}.worry{padding:12px 6px}.worry h3{font-size:18px}.worry-picture{width:140px;height:73px;background-size:768px 1152px}.w1{background-position:-33px -526px}.w2{background-position:-222px -526px}.w3{background-position:-408px -526px}.w4{background-position:-590px -526px}.worry p{font-size:14px;padding:9px 5px;line-height:1.7;border-radius:15px;overflow-wrap:anywhere}.worry p br{display:none}.worry-summary{font-size:19px;line-height:1.6;margin-top:22px}.worry-summary strong{font-size:28px}.connections{margin-top:20px;padding:27px 0}.connections h2{font-size:29px;line-height:1.5}.connection-grid{grid-template-columns:1fr;gap:33px;max-width:360px;margin:25px auto}.connection-grid li{display:grid;grid-template-columns:124px 1fr;gap:0 10px;align-items:center}.connection-grid h3{font-size:16px;padding:10px 5px 0;min-height:54px;grid-column:1;grid-row:1}.connect-picture{width:124px;height:65px;background-size:716.8px 1075.2px;grid-column:1;grid-row:2}.c1{background-position:-43px -718px}.c2{background-position:-212px -718px}.c3{background-position:-391px -718px}.c4{background-position:-555px -718px}.connection-grid p{grid-row:span 2;grid-column:2;font-size:15px;line-height:1.7;text-align:left;margin:0}.connection-grid li:not(:last-child):after{top:auto;bottom:-22px;right:auto;left:55px;width:17px;height:17px;border-width:6px;transform:rotate(135deg)}.connection-summary{font-size:16px;text-align:left;padding:0 12px;line-height:1.8}.connection-summary strong{font-size:21px;line-height:1.7}.learn{padding:29px 12px 0}.learn h2{font-size:30px;line-height:1.55}.learn p{font-size:16px;line-height:1.9}.learn p br{display:none}.video-section{padding:32px 0}.video-section h2{font-size:24px;line-height:1.55}.thumbnail{border-radius:10px}.thumbnail-play{width:65px;height:46px;font-size:23px}.watch-button{margin-inline:12px}.profile-cta{grid-template-columns:1fr;gap:20px;padding:20px 14px}.profile{grid-template-columns:88px 1fr;gap:10px 12px}.profile img{width:88px;grid-row:1}.profile-name h2{font-size:34px}.profile-name p{font-size:14px}.profile-history{grid-column:1/-1;font-size:15px;border-top:1px solid #c9e2f2;padding-top:12px}.line-cta{padding:20px 14px}.mobile-only{display:initial}.desktop-only{display:none}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}

/* Each illustration uses only the artwork inside its reference card. */
.connection-grid{gap:38px}
.connect-picture{width:100%;height:86px;background-size:1228.8px 1843.2px}
.c1{background-position:center -1232px;background-image:none;position:relative;overflow:hidden}
.c2,.c3,.c4{background-image:none;position:relative;overflow:hidden}
.connect-picture::before{content:"";display:block;width:100%;height:100%;background-image:url('assets/reference.png');background-repeat:no-repeat;background-size:1024px 1536px}
.c1::before{background-position:-33px -1025px}
.c2::before{background-position:-279px -1025px}
.c3::before{background-position:-526px -1025px}
.c4::before{background-position:-780px -1025px}
.connect-picture{max-width:195px;border-radius:0}
.connection-grid h3{min-height:72px}
.connection-grid li{background:transparent}
.connection-grid li:not(:last-child)::after{top:90px;right:-25px;width:16px;height:16px;border-width:5px}
@media(min-width:701px){.connect-picture{background-color:#fff}.connection-grid li::before{content:"";position:absolute;z-index:0;top:70px;width:100%;height:94px;left:0;background:#fff;border-radius:0 0 14px 14px}.connection-grid h3,.connect-picture,.connection-grid p{position:relative}}
@media(max-width:1000px) and (min-width:701px){.connection-grid li::before{width:224px;left:50%;transform:translateX(-50%)}}
@media(max-width:700px){.connection-grid{gap:33px}.connect-picture{max-width:124px;height:65px;background-color:#fff;border-radius:0 0 14px 14px}.connect-picture::before{background-size:716.8px 1075.2px}.c1::before{background-position:-35px -718px}.c2::before{background-position:-208px -718px}.c3::before{background-position:-387px -718px}.c4::before{background-position:-547px -718px}.connection-grid h3{min-height:54px}.connection-grid li:not(:last-child)::after{top:auto;bottom:-22px;right:auto;left:55px;width:17px;height:17px;border-width:6px}}

/* Exclude lettering and arrows baked into the reference image. */
.connect-picture{max-width:184px;height:74px;margin-top:8px}
.c1::before{background-position:-45px -1037px}
.c2::before{background-position:-300px -1037px}
.c3::before{background-position:-545px -1037px}
.c4::before{background-position:-802px -1037px}
@media(max-width:700px){
.connect-picture{width:124px;max-width:124px;height:50px;margin-top:5px}
.connect-picture::before{background-size:690.087px 1035.13px}
.c1::before{background-position:-30.326px -698.848px}
.c2::before{background-position:-202.174px -698.848px}
.c3::before{background-position:-367.283px -698.848px}
.c4::before{background-position:-540.478px -698.848px}
}

button.thumbnail{width:100%;border:0;padding:0;background:transparent;cursor:pointer;font:inherit}button.thumbnail:focus-visible{outline:4px solid #ffbe00;outline-offset:5px}

/* Reading-only thumbnail; video opens exclusively from the pink link. */
.thumbnail{cursor:default}
.connections h2,.connection-summary strong{text-shadow:0 2px 3px #001b46,0 0 1px #001b46}
.connections h2 .marker,.connection-summary .marker{background:linear-gradient(transparent 91%,var(--yellow) 91%,var(--yellow) 98%,transparent 98%)}

/* Narrow screens give the illustration its own row, below the headline. */
@media(max-width:700px){
.hero{overflow:visible}
.hero-copy{display:flex;flex-direction:column;min-width:0}
.hero-art{position:relative;z-index:auto;inset:auto;width:100%;height:auto;aspect-ratio:1.15;margin:4px 0 20px;border-radius:16px;background-size:192% auto;background-position:right top;opacity:1;mask-image:none;-webkit-mask-image:none;flex-shrink:0}
.hero h1{font-size:clamp(32px,8.4vw,49px);text-shadow:none;margin-bottom:16px}
.hero .eyebrow{position:relative;margin-bottom:20px}
.hero .keywords{margin-top:0;background:transparent}
.hero-copy>p:not(.eyebrow){background:transparent}
}

/* Center the mobile headline block while keeping its lines aligned. */
@media(max-width:700px){
.hero .eyebrow{font-size:clamp(22px,5.2vw,26px);line-height:1.55;text-align:center;text-wrap:balance;margin-bottom:24px;width:100%;align-self:center}
.hero h1{width:fit-content;max-width:100%;align-self:center;margin-inline:auto;font-size:clamp(32px,9vw,44px);line-height:1.24;text-align:left;letter-spacing:-.025em;margin-bottom:22px}
}

/* Mobile typography and landscape image proportions. */
@media(max-width:700px){
.hero .eyebrow{font-size:clamp(23px,5.6vw,29px);text-align:left;align-self:stretch;line-height:1.5;margin-bottom:20px}
.hero h1{width:100%;max-width:none;align-self:stretch;margin-inline:0;font-size:clamp(36px,12.5vw,64px);line-height:1.16;letter-spacing:-.035em;margin-bottom:24px}
.hero-art{aspect-ratio:16/10;background-size:192% auto;background-position:right calc(-.19 * (100vw - 44px));margin-top:0}
}

.connection-grid .title-line{white-space:nowrap}
@media(max-width:700px){.connection-grid h3{line-height:1.45}}

/* Footer policy links */
.footer-links{display:flex;flex-wrap:wrap;align-items:center;justify-content:center;gap:4px 28px;margin-bottom:12px}
.footer-links a{display:inline-flex;align-items:center;min-height:44px;padding:6px 4px;text-underline-offset:4px;font-size:14px;line-height:1.6}
.footer-links a:hover{color:var(--blue)}
@media(max-width:700px){.footer-links{flex-direction:column;gap:2px}}
