@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;600;700;800;900&display=swap');
:root{--paper:#f6f6f6;--ink:#232323;--navy:#232323;--accent:#18b3c7;--muted:#d1edf1;--line:#dedede}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:130px}body{margin:0;color:var(--ink);background:var(--paper);font:500 17px/2.15 'Noto Sans JP',sans-serif}main{overflow:hidden}a{color:inherit}h1,h2,h3,p{margin-top:0}p{margin-bottom:26px}h1,h2,h3{font-weight:900;letter-spacing:.015em}h2{font-size:clamp(30px,3.5vw,50px);line-height:1.65;margin-bottom:32px}h3{font-size:25px;line-height:1.7;margin-bottom:20px}strong{font-weight:800}figure{margin:0}.header{position:absolute;top:30px;left:3%;right:3%;z-index:5;display:flex;justify-content:space-between;align-items:center;gap:20px}.nav-pill{display:flex;align-items:center;gap:38px;background:#fff;border-radius:100px;padding:22px 32px;box-shadow:0 12px 40px #0000000b}.brand{font-size:25px;font-weight:900;letter-spacing:.06em;text-decoration:none;white-space:nowrap}.brand span{margin-left:3px}.nav-pill nav{display:flex;gap:25px}.nav-pill nav a{font-size:14px;font-weight:700;text-decoration:none;white-space:nowrap}.nav-pill nav a:hover{color:#087e8e}.header-link{display:flex;align-items:center;background:white;padding:5px 5px 5px 25px;gap:20px;border-radius:80px;text-decoration:none;font-size:13px;white-space:nowrap}.header-link b{padding:17px 24px;background:var(--ink);color:white;border-radius:70px;font-size:16px}.hero{min-height:880px;position:relative;padding:162px max(6%,24px) 65px}.hero-bg-word{position:absolute;left:-1%;top:60px;white-space:nowrap;font-size:clamp(110px,20vw,310px);font-weight:900;font-family:Arial,sans-serif;line-height:1;color:var(--muted);letter-spacing:-.07em;z-index:0;pointer-events:none}.hero-copy{position:relative;z-index:2;width:59%;max-width:800px}.eyebrow{font-size:14px;font-weight:700;letter-spacing:.12em;margin-bottom:20px}.hero .eyebrow{margin-bottom:22px}.hero-english{font:900 clamp(60px,7.4vw,116px)/.98 Arial,sans-serif;letter-spacing:-.055em;margin-bottom:36px}.hero h1{font-size:clamp(24px,2.6vw,36px);line-height:1.75;margin:0 0 18px}.hero-description{font-size:17px;line-height:1.9}.hero-photo{position:absolute;right:0;top:0;width:53%;height:100%;clip-path:polygon(57% 0,100% 0,100% 100%,0 100%);background:var(--muted)}.hero-photo img{width:100%;height:100%;object-fit:cover;object-position:63% center}.hero-photo:after{content:'';position:absolute;right:8%;top:-15%;height:140%;width:28px;background:var(--paper);transform:rotate(29deg)}.hero-credit{position:absolute;right:20px;bottom:10px;font-size:12px;background:#ffffffdb;padding:2px 8px;margin:0;z-index:3}.button{display:inline-flex;justify-content:space-between;align-items:center;gap:38px;padding:18px 30px;background:#fff;border:0;border-radius:99px;box-shadow:0 10px 26px #0000000d;text-decoration:none;font-size:17px;font-weight:800;line-height:1.6;transition:background .2s,transform .2s}.button span{font-size:24px;line-height:1}.button:hover{background:var(--muted);transform:translateY(-2px)}a:focus-visible,summary:focus-visible{outline:3px solid #078295;outline-offset:5px}.hero-terms{font-size:14px;margin:18px 0 0;line-height:1.8}.feature-strip{display:flex;gap:36px;justify-content:center;padding:28px 24px;background:white;font-size:16px}.feature-strip span+span{border-left:1px solid var(--line);padding-left:36px}.wide{max-width:1240px;padding:0 40px;margin:auto}.letter{max-width:820px;margin:auto;padding:110px 35px}.section-en{font:800 25px/1.25 Arial,sans-serif;color:#087f91;letter-spacing:.025em;margin-bottom:27px}.intro{max-width:1240px;padding:125px 40px 160px;display:grid;grid-template-columns:.95fr 1.1fr;gap:90px;position:relative}.intro>div{position:relative;z-index:1}.intro-body{padding-top:35px}.intro h2{font-size:clamp(32px,3.6vw,52px)}.intro-body blockquote{margin:35px 0;padding:22px 25px;background:white;border-left:4px solid var(--accent);font-size:16px;line-height:2.2}.back-word{position:absolute;bottom:-10px;left:0;font:900 clamp(70px,12vw,170px)/1 Arial,sans-serif;white-space:nowrap;color:white;letter-spacing:-.05em;pointer-events:none}.band{padding:85px 0 110px;position:relative}.diagonal{position:absolute;top:8%;left:-10%;width:150%;height:170px;background:var(--accent);transform:rotate(40deg);z-index:-1}.split{display:grid;grid-template-columns:1fr 1fr;gap:100px;align-items:start}.split>div:last-child{padding-top:40px}.usecases{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;margin-top:50px;align-items:start}.usecases>div{background:white;border-radius:10px;padding:33px 28px;box-shadow:0 25px 40px #00000009}.usecases>div:nth-child(2){margin-top:65px}.usecases>div:nth-child(3){margin-top:130px}.step{font-size:14px;font-weight:800;color:#087f91;display:block;margin-bottom:20px}.usecases h3{font-size:27px}.usecases p{font-size:16px}.path-note{padding-top:20px;border-top:1px solid var(--line);font-size:14px!important;margin-bottom:0}.small{font-size:14px;line-height:1.9;color:#606060}.section-note{margin-top:38px}.support{padding-top:85px;padding-bottom:100px}.support h2{margin-bottom:50px}.support-row{display:grid;grid-template-columns:240px 1fr;gap:40px;background:white;margin-bottom:20px;padding:32px 38px;border-radius:10px;box-shadow:0 15px 40px #00000005}.support-row .step{padding-top:6px}.support-row p{margin-bottom:0}.support>.small{margin-top:30px}.navy{max-width:1240px;margin:20px auto 100px;padding:0 40px;display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center;position:relative}.navy .letter{padding:0}.navy h2{font-size:38px}.experience-photo img{width:100%;height:600px;object-fit:cover;object-position:60% center;display:block}.image-caption{font-size:12px;line-height:1.7;text-align:right;margin:10px 0;color:#666}.navy .section-en{font-size:20px}.navy p{font-size:16px}.navy .small{font-size:13px}.manager-section{padding:40px 40px 100px;position:relative}.manager-section:before{content:'';position:absolute;background:var(--accent);width:400px;height:120px;right:-130px;top:0;transform:rotate(45deg);z-index:-1}.manager-grid{padding:0;max-width:1160px;display:grid;grid-template-columns:1fr 1fr;background:white;border-radius:10px;overflow:hidden;box-shadow:0 25px 50px #0000000c}.manager-copy{padding:50px 45px;grid-column:1;grid-row:1}.manager-copy h2{font-size:35px}.manager-copy p{font-size:16px}.manager-visual{grid-column:2;grid-row:1;position:relative;min-width:0}.manager-visual figure{height:100%}.manager-visual img{height:100%;width:100%;object-fit:cover;object-position:45% center;display:block}.manager-visual .image-caption{position:absolute;bottom:12px;right:12px;background:#ffffffdf;padding:3px 8px;margin:0}.practice-note{border-top:1px solid var(--line);padding-top:22px}.practice-note h3{font-size:19px}.practice-note p{font-size:14px;margin:0}.price{border-radius:12px;background:white;padding:35px 40px;margin:36px 0;box-shadow:0 20px 40px #00000007;border-top:5px solid var(--accent)}.price>p:first-child{margin:0;font-size:16px}.price b{font:800 clamp(48px,6vw,76px)/1.6 Arial,sans-serif;letter-spacing:-.045em}.price span{margin-left:12px}.price .small{margin:10px 0 0}.condition{border-top:1px solid var(--line);padding-top:25px;margin-top:35px}.condition h3{font-size:20px}.condition p{font-size:15px}.price-cta{margin-top:30px}.enroll{background:var(--ink);color:white}.enroll:hover{background:#087f91}.faq-section{background:#fff}.faq-section .letter{max-width:950px}.faq-section .eyebrow{margin-bottom:20px}details{padding:24px 0;border-bottom:1px solid var(--line)}summary{font-weight:700;font-size:18px;cursor:pointer;line-height:1.8}details p{font-size:16px;margin:22px 0 0}.closing{position:relative;background:var(--accent);padding-top:80px}.closing-word{position:absolute;top:25px;left:2%;font:900 clamp(65px,13vw,190px)/1 Arial,sans-serif;color:#ffffff35;white-space:nowrap;letter-spacing:-.05em}.closing .letter{position:relative;max-width:850px}.closing .eyebrow{color:#132e33}.closing h2{font-size:44px}.apply{background:white;border-radius:12px;padding:40px;margin-top:40px;box-shadow:0 20px 50px #0000000d}.apply h3{font-size:25px}.closing-price strong{font-size:36px}.deadline{font-weight:700}.deadline span{font-size:15px;font-weight:500}.apply .button{width:100%}.apply .small{margin-top:20px}.apply>p:last-child{font-size:16px;margin-bottom:0}.signature{margin:40px 0 0}.signature strong{display:block;margin-top:12px}footer{padding:55px max(5%,24px);background:white}footer p{font-size:14px;margin:10px 0}.skip{position:absolute;top:-100px}.skip:focus{top:0;background:white;z-index:20;padding:10px}.expired{padding:20px;background:#edf4f5;color:#232323;font-size:16px;border-radius:8px}
@media(min-width:1600px){.hero{min-height:1020px}.hero-english{font-size:130px}.hero-copy{max-width:900px}}
@media(max-width:1100px){.header{top:20px;gap:12px}.nav-pill{padding:18px 24px;gap:22px}.nav-pill nav{gap:17px}.header-link>span{display:none}.header-link{padding:5px}.header-link b{font-size:14px;padding:16px 20px}.brand{font-size:22px}.hero{padding-top:150px;min-height:820px}.hero-photo{width:52%;clip-path:polygon(55% 0,100% 0,100% 100%,0 100%)}.hero-copy{width:64%}.hero-english{font-size:83px}.intro,.split{gap:50px}.support-row{grid-template-columns:190px 1fr}.navy{gap:35px}.navy h2{font-size:32px}.manager-copy{padding:35px 28px}.manager-copy h2{font-size:30px}}
@media(max-width:760px){html{scroll-padding-top:25px}body{font-size:16px;line-height:2}.header{top:14px;left:16px;right:16px;gap:10px}.nav-pill{padding:13px 19px;box-shadow:0 8px 30px #00000010}.brand{font-size:20px}.nav-pill nav{display:none}.header-link b{font-size:13px;padding:12px 17px}.hero{padding:112px 24px 0;min-height:0}.hero-bg-word{top:90px;font-size:105px;left:-10px}.hero-copy{width:100%;max-width:none}.hero .eyebrow{font-size:12px;letter-spacing:.06em}.hero-english{font-size:clamp(62px,13.5vw,98px);margin-bottom:26px}.hero h1{font-size:25px;line-height:1.7}.hero-description{font-size:16px}.hero .button{font-size:15px;gap:20px;padding:17px 24px}.hero-terms{font-size:13px}.hero-photo{position:relative;width:calc(100% + 48px);margin:32px -24px 0;height:360px;clip-path:polygon(20% 0,100% 0,100% 100%,0 100%,0 40%)}.hero-photo img{object-position:62% center}.hero-photo:after{right:14%;width:14px}.hero-copy{display:contents}.hero-copy>*{position:relative;z-index:2}.hero-photo{float:none}.hero{display:flex;flex-direction:column}.hero-bg-word{order:0}.hero-photo{order:2}.hero-credit{bottom:7px;right:7px;font-size:10px}.feature-strip{flex-direction:column;gap:8px;padding:24px;font-size:15px}.feature-strip span+span{border:0;padding:0}.feature-strip span:before{content:'✓';margin-right:12px;color:#087f91}.wide{padding-left:24px;padding-right:24px}.letter{padding:70px 24px}h2{font-size:30px;line-height:1.65}.intro{display:block;padding:75px 24px 90px}.intro h2{font-size:36px}.intro-title h2 br:nth-child(3){display:none}.intro-body{padding:0}.intro-body blockquote{font-size:15px;padding:20px 18px}.back-word{font-size:64px;bottom:4px}.section-en{font-size:21px;margin-bottom:22px}.eyebrow{font-size:13px}.band{padding:65px 0}.split{grid-template-columns:1fr;gap:0}.split>div:last-child{padding-top:0}.usecases{grid-template-columns:1fr;margin-top:25px;gap:20px}.usecases>div{padding:28px}.usecases>div:nth-child(2),.usecases>div:nth-child(3){margin-top:0}.usecases h3{font-size:25px}.usecases h3 br{display:none}.diagonal{top:32%;height:120px;width:250%;left:-60%;transform:rotate(58deg)}.section-note{font-size:13px}.support{padding-top:65px;padding-bottom:65px}.support-row{grid-template-columns:1fr;gap:0;padding:27px 24px}.support-row h3{font-size:22px}.support-row .step{margin-bottom:14px}.navy{display:flex;flex-direction:column;padding:0 24px;margin:20px auto 65px;gap:30px}.experience-photo{width:100%}.experience-photo img{height:auto;aspect-ratio:4/3;object-position:center}.navy .letter{padding:0;max-width:100%}.navy h2{font-size:30px}.manager-section{padding:20px 24px 50px}.manager-grid{display:flex;flex-direction:column;padding:0}.manager-copy{padding:30px 25px;order:1}.manager-visual{order:0}.manager-visual img{height:auto;aspect-ratio:4/3}.manager-copy h2{font-size:29px}.price{padding:28px 24px}.price b{font-size:52px}.price span{font-size:14px;margin-left:7px}.button{font-size:15px;padding:18px 24px;gap:20px;max-width:100%}.price-cta .button{width:100%}.faq-section .letter{padding-top:65px;padding-bottom:65px}summary{font-size:16px}details p{font-size:15px}.closing{padding-top:35px}.closing-word{top:20px;font-size:66px}.closing h2{font-size:30px}.apply{padding:28px 23px}.apply h3{font-size:21px}.closing-price strong{font-size:29px}.small{font-size:13px}.image-caption{font-size:11px}.deadline{font-size:16px}.hero-terms .deadline{font-size:13px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.button{transition:none}}
@media print{.header{position:static}.hero-photo{display:none}.hero{min-height:0;padding:30px}.hero-copy{width:100%}.hero-english{font-size:60px}.button,.diagonal{display:none}.intro,.navy,.manager-grid,.split{display:block}.letter,.wide{padding:25px}.usecases{display:block}.usecases>div{margin:15px 0!important}.closing{background:#fff}.closing-word{display:none}}
/* Keep the face clear of the diagonal; isolate photo sizing from hero height. */
@media(min-width:901px){
 .hero{min-height:900px;padding-top:170px;padding-bottom:70px}
 .hero-copy{width:53%;max-width:740px}
 .hero-english{font-size:clamp(68px,6.6vw,110px)}
 .hero-photo{top:145px;bottom:0;height:auto;width:47%;clip-path:polygon(15% 0,100% 0,100% 100%,0 100%)}
 .hero-photo img{object-position:59% 35%}
 .hero-photo:after{display:none}
}
@media(min-width:1600px){.hero{min-height:1040px}.hero-english{font-size:120px}.hero-photo{top:155px}}
/* Tablet and phone: independent, uncropped image beneath a real text container. */
@media(max-width:900px){
 html{scroll-padding-top:24px}
 .header{position:relative;top:auto;left:auto;right:auto;margin:16px 20px;gap:12px;flex-wrap:wrap}
 .nav-pill{padding:14px 20px;min-width:0}.nav-pill nav{display:none}
 .header-link{padding:4px}.header-link>span{display:none}.header-link b{padding:13px 18px;font-size:14px}
 .brand{font-size:22px}.hero{display:flex;flex-direction:column;min-height:0;padding:38px 28px 0}
 .hero-copy{display:block;position:relative;width:100%;max-width:680px;order:0}
 .hero-copy>*{position:relative}.hero-bg-word{top:10px;left:-5px;font-size:clamp(85px,17vw,155px)}
 .hero-english{font-size:clamp(52px,10.5vw,84px);line-height:1.03;letter-spacing:-.055em;margin-bottom:26px}
 .hero h1{font-size:clamp(24px,4vw,32px);line-height:1.7}
 .hero-photo{position:relative;inset:auto;order:1;width:100%;height:auto;aspect-ratio:3/2;clip-path:none;margin:30px 0 0;border-radius:8px;overflow:hidden}
 .hero-photo img{display:block;width:100%;height:auto;object-fit:contain;object-position:center}
 .hero-photo:after{display:none}
 .hero-credit{position:static;order:2;align-self:flex-end;margin:8px 0 16px;padding:0;background:none;font-size:12px}
 .feature-strip{flex-wrap:wrap;gap:14px 24px}.feature-strip span+span{padding:0;border:0}
 .intro,.split{grid-template-columns:1fr}.intro{gap:20px}.intro-body{padding-top:0}
 .usecases{grid-template-columns:1fr;gap:20px}.usecases>div:nth-child(2),.usecases>div:nth-child(3){margin-top:0}
 .support-row{grid-template-columns:1fr;gap:0}.support-row .step{margin-bottom:14px}
 .navy{display:flex;flex-direction:column;gap:28px}.experience-photo{width:100%}.experience-photo img{height:auto;max-height:650px;object-fit:contain;background:#eef0f0}.navy .letter{max-width:100%}
 .manager-grid{display:flex;flex-direction:column}.manager-visual{order:0}.manager-copy{order:1}.manager-visual img{height:auto;aspect-ratio:3/2;object-fit:contain}
 .wide,.letter,.intro-title,.intro-body,.manager-copy,.support-row>div{min-width:0}
 .button{min-height:52px;white-space:normal}.button span{flex-shrink:0}
}
@media(max-width:480px){
 .header{margin:12px 14px;gap:8px;flex-wrap:nowrap}.nav-pill{padding:12px 15px}.brand{font-size:18px;letter-spacing:.02em}
 .header-link b{font-size:12px;padding:12px 14px}.hero{padding:27px 20px 0}
 .hero .eyebrow{font-size:12px;letter-spacing:.03em}.hero-english{font-size:clamp(48px,13.2vw,63px)}
 .hero h1{font-size:clamp(22px,5.8vw,27px)}.hero h1 br{display:none}
 .hero-description{font-size:16px}.hero .button{display:flex;width:100%;font-size:14px;gap:10px;padding:17px 20px}
 .hero-terms,.hero-terms .deadline{font-size:13px;overflow-wrap:anywhere}
 .hero-photo{margin-top:24px}.feature-strip{padding:22px 20px}
 .wide{padding-left:20px;padding-right:20px}.letter{padding-left:20px;padding-right:20px}
 .intro h2{font-size:30px}.intro-body blockquote{font-size:15px;padding:18px 16px}
 .support-row{padding:24px 20px}.manager-section{padding-left:20px;padding-right:20px}.manager-grid{padding:0}.manager-copy{padding:28px 22px}
 .navy{padding-left:20px;padding-right:20px}.price{padding:24px 20px}.price b{font-size:clamp(42px,12vw,52px)}
 .price>div{display:flex;align-items:baseline;flex-wrap:wrap;column-gap:8px}.price span{margin-left:0}
 .apply{padding:26px 20px}.apply h3{font-size:20px}.closing-price strong{font-size:27px}
 .apply .button{font-size:15px;padding:17px 19px}.closing h2{font-size:29px}
}
@media(max-width:900px){.experience-photo img{aspect-ratio:auto;max-height:none;height:auto;width:100%}}
/* Subtle, consistent image disclosures on desktop and mobile. */
.hero-credit,
.image-caption,
.navy .image-caption,
.manager-visual .image-caption {
 font-size:10px;
 font-weight:400;
 line-height:1.5;
 letter-spacing:0;
 background:transparent;
 padding:0;
 border:0;
 box-shadow:none;
 color:#626262;
}
.hero-credit,.manager-visual .image-caption{color:#fff;text-shadow:0 1px 2px #0009}
@media(max-width:900px){.hero-credit{color:#626262;text-shadow:none}}

/* Operator information, matching the page's restrained cyan accents. */
.operator-section{background:#fff;border-top:1px solid #e3e8e9;border-bottom:1px solid #e3e8e9}
.operator-section .letter{padding-top:64px;padding-bottom:64px}
.operator-section h2{font-size:clamp(25px,3.2vw,40px);line-height:1.6;margin-bottom:24px}
.operator-section .operator-note{margin-bottom:0;color:#555}
@media(max-width:600px){.operator-section .letter{padding-top:40px;padding-bottom:40px}.operator-section h2{font-size:25px}}

.hero .hero-trust{display:table;max-width:100%;margin:0 0 22px;padding:12px 24px;border:0;border-left:5px solid #18b3c7;border-radius:4px;color:#fff;background:#08264a;font-size:clamp(20px,1.85vw,28px);font-weight:800;line-height:1.5;letter-spacing:.06em;box-shadow:0 6px 20px #08264a14}
@media(max-width:600px){.hero .hero-trust{font-size:clamp(17px,4.5vw,21px);padding:11px 15px;margin-bottom:20px;letter-spacing:.03em}}

/* Display the supplied artwork unchanged, framing only its outer whitespace. */
.brand-logo{display:block;position:relative;overflow:hidden;width:112px;height:80px;flex:none;isolation:isolate}
.brand-logo img{position:absolute;width:175.543%;max-width:none;height:auto;left:-37.714%;top:-31.2%;mix-blend-mode:multiply}
.header .nav-pill{padding-top:10px;padding-bottom:10px}
footer .brand-logo{width:200px;height:143px;margin:0 auto 18px}
@media(max-width:900px){.header .nav-pill{padding:8px 18px}.header .brand-logo{width:98px;height:70px}}
@media(max-width:480px){.header .nav-pill{padding:6px 14px}.header .brand-logo{width:91px;height:65px}}
