:root{--paper:#080d17;--ink:#f0f4fa;--muted:#a3adbf;--line:#273142;--teal:#91e7ed;--brass:#b4a5ff;--sans:-apple-system,BlinkMacSystemFont,"Segoe UI","Noto Sans TC","PingFang TC","Microsoft JhengHei",sans-serif;--serif:"Iowan Old Style","Baskerville","Times New Roman",serif}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;background:var(--paper);color:var(--ink);font-family:var(--sans);-webkit-font-smoothing:antialiased}a{color:inherit;text-decoration:none}button{font:inherit}button,a{-webkit-tap-highlight-color:transparent}button{cursor:pointer}a:focus-visible,button:focus-visible{outline:2px solid var(--teal);outline-offset:6px}::selection{background:#9be8eb;color:#08131a}h1,h2,h3,p,figure{margin:0}button{color:inherit}img{display:block;max-width:100%}.skip-link{position:fixed;z-index:20;top:10px;left:16px;padding:12px 16px;background:var(--ink);color:var(--paper);transform:translateY(-150%)}.skip-link:focus{transform:translateY(0)}.site-header{height:90px;border-bottom:1px solid rgba(160,190,220,.13)}.header-inner{max-width:1360px;padding:0 48px;margin:0 auto;display:flex;align-items:center;justify-content:space-between;height:100%;gap:24px}.wordmark{font-family:var(--sans);font-size:34px;font-weight:650;letter-spacing:-2px;line-height:1;white-space:nowrap}.brand-dot{color:var(--brass)}.main-nav{display:flex;gap:34px;margin-left:88px;font-size:13px;letter-spacing:.04em}.main-nav a,.back-link{transition:color .2s}.main-nav a:hover,.back-link:hover{color:var(--brass)}.hero{padding-top:83px;overflow:hidden}.hero-copy{position:relative;z-index:1;text-align:center;padding:0 24px}.eyebrow{font-size:12px;letter-spacing:.24em;font-weight:500;color:var(--teal)}.hero h1{font-size:clamp(54px,6.5vw,91px);font-weight:500;line-height:1.28;letter-spacing:-.06em;margin:22px 0}.hero-description{font-size:19px;font-weight:400;letter-spacing:.045em;color:#a7b3c7;line-height:1.8}.text-link{display:inline-flex;gap:18px;align-items:center;font-size:13px;letter-spacing:.04em;color:var(--teal);padding:12px 0;border-bottom:1px solid #5a7581}.text-link span{transition:transform .2s}.text-link:hover span{transform:translate(2px,2px)}.hero-link{margin-top:23px}.hero-art{position:relative;max-width:1320px;margin:-28px auto 0}.hero-art>img{width:100%;height:auto}.hero-art figcaption{position:absolute;bottom:24px;left:48px;right:48px;display:flex;justify-content:space-between;gap:24px;color:var(--muted);font-size:12px;letter-spacing:.055em;line-height:1.7}.hero-art figcaption span:last-child{color:#9aa6bd}.section-shell{max-width:1240px;margin:0 auto;padding-left:48px;padding-right:48px}.section-marker{display:flex;align-items:center;gap:11px;font-size:12px;letter-spacing:.12em;color:var(--teal)}.tiny-mark{display:inline-block;width:6px;height:6px;border:1px solid var(--brass);transform:rotate(45deg)}.vision{padding-top:126px;padding-bottom:133px;border-top:1px solid var(--line)}.vision-body{display:grid;grid-template-columns:1.2fr 1fr;gap:65px;margin-top:40px;align-items:end}h2{font-size:clamp(38px,4vw,55px);font-weight:500;line-height:1.45;letter-spacing:-.035em}.vision-copy{padding-bottom:6px}.vision-copy p:first-child{font-size:20px;line-height:1.85;color:#dee5f2;margin-bottom:25px}.vision-copy p:last-child{font-size:14px;line-height:2;color:var(--muted);max-width:420px}.possibilities{padding-top:62px;padding-bottom:114px;border-top:1px solid var(--line)}.section-heading{display:flex;align-items:flex-end;justify-content:space-between;gap:36px;margin:34px 0 58px}.section-heading>p{font-size:14px;line-height:1.95;color:var(--muted);padding-bottom:8px}.connect{background:#101927;color:#f0f5fc;position:relative;overflow:hidden}.connect:after{content:"";position:absolute;right:-180px;bottom:-490px;width:800px;height:800px;border:1px solid rgba(141,186,223,.16);border-radius:50%;pointer-events:none}.connect-inner{padding-top:78px;padding-bottom:87px;position:relative;z-index:1}.connect .section-marker{color:#9ed4df}.connect .tiny-mark{border-color:#b4a5ff}.connect-content{display:flex;align-items:flex-end;justify-content:space-between;gap:48px;margin-top:39px}.connect h2{font-size:clamp(37px,4.3vw,58px);letter-spacing:-.035em}.connect-details{padding-bottom:5px;min-width:260px}.connect-label{font-size:14px;letter-spacing:.05em;margin-bottom:19px}.connect-details>p:nth-child(2){font-size:20px;letter-spacing:.01em;line-height:1.7;color:#e4eaf7}.site-footer{padding-top:59px;padding-bottom:28px}.footer-top{display:flex;justify-content:space-between;align-items:center;padding-bottom:44px}.footer-top p{font-size:12px;letter-spacing:.08em;color:var(--muted)}.footer-bottom{border-top:1px solid var(--line);padding-top:22px;display:flex;align-items:center;justify-content:space-between;gap:24px;font-size:12px;color:var(--muted);line-height:1.8}.footer-bottom>div{display:flex;gap:29px}.footer-bottom a:hover{text-decoration:underline;text-underline-offset:4px}.privacy-page .header-inner{max-width:1240px}.back-link{font-size:12px}.privacy-content{max-width:900px;margin:0 auto;padding:96px 48px 105px}.privacy-content>h1{font-size:68px;line-height:1.3;font-weight:500;letter-spacing:-.05em;margin-top:25px}.privacy-intro{font-size:17px;line-height:1.95;color:var(--muted);margin:34px 0 62px;max-width:650px}.privacy-content section{border-top:1px solid var(--line);padding:32px 0 38px;display:grid;grid-template-columns:55px 1fr;gap:15px}.privacy-number{font-size:12px;font-variant-numeric:tabular-nums;letter-spacing:.08em;color:var(--brass);padding-top:10px}.privacy-content section h2{font-size:23px;line-height:1.6;letter-spacing:-.01em;margin-bottom:16px}.privacy-content section p{font-size:14px;line-height:2;color:var(--muted);margin-top:15px}.privacy-content>.text-link{margin-top:24px}.privacy-page .site-footer{padding-top:0}@media(min-width:1500px){.hero{padding-top:100px}.hero-art{max-width:1320px}}@media(max-width:1000px){.header-inner{padding:0 32px}.main-nav{margin-left:0;gap:22px}.hero{padding-top:73px}.hero-art{margin-top:0}.hero-art figcaption{left:32px;right:32px}.section-shell{padding-left:32px;padding-right:32px}.vision{padding-top:86px;padding-bottom:90px}.vision-body{gap:36px}.vision-copy p:first-child{font-size:17px}.possibilities{padding-bottom:86px}.connect-details{min-width:225px}}@media(max-width:700px){html{scroll-padding-top:25px}.site-header{height:78px}.header-inner{padding:0 23px;gap:14px}.wordmark{font-size:34px}.main-nav{display:none}.hero{padding-top:66px}.hero-copy{padding:0 20px}.hero .eyebrow{font-size:12px;letter-spacing:.18em}.hero h1{font-size:57px;line-height:1.3;margin-top:23px;margin-bottom:23px;letter-spacing:-.07em}.hero h1>span{display:block}.hero-description{font-size:15px;line-height:1.9;letter-spacing:.01em}.hero-link{font-size:12px;margin-top:21px}.hero-art{height:385px;margin-top:5px}.hero-art>img{width:660px;max-width:none;height:385px;position:absolute;left:50%;transform:translateX(-50%)}.hero-art figcaption{bottom:13px;left:23px;right:23px;justify-content:center;text-align:center;font-size:12px}.hero-art figcaption>span:first-child{display:none}.section-shell{padding-left:25px;padding-right:25px}.vision{padding-top:68px;padding-bottom:73px}.section-marker{font-size:12px}.vision-body{grid-template-columns:1fr;gap:30px;margin-top:28px}h2{font-size:37px;line-height:1.5;letter-spacing:-.045em}.vision-copy{padding:0}.vision-copy p:first-child{font-size:17px;line-height:1.85;margin-bottom:21px}.vision-copy p:last-child{font-size:13px;line-height:2.05;max-width:450px}.possibilities{padding-top:47px;padding-bottom:64px}.section-heading{display:block;margin:27px 0 34px}.section-heading>p{font-size:13px;line-height:1.9;margin-top:24px;padding:0}.connect-inner{padding-top:52px;padding-bottom:60px}.connect-content{display:block;margin-top:30px}.connect h2{font-size:38px}.connect-details{margin-top:45px;padding:0;min-width:0}.connect-label{font-size:12px;margin-bottom:15px}.connect-details>p:nth-child(2){font-size:19px}.connect:after{right:-420px;bottom:-510px}.site-footer{padding-top:40px;padding-bottom:23px}.footer-top{padding-bottom:29px}.footer-top p{font-size:12px}.footer-bottom{font-size:12px;gap:15px;align-items:flex-start;flex-direction:column;padding-top:18px}.footer-bottom>div{width:100%;justify-content:space-between;gap:18px}.privacy-content{padding:66px 25px 73px}.privacy-content>h1{font-size:48px}.privacy-intro{font-size:15px;margin:28px 0 40px}.privacy-content section{grid-template-columns:28px 1fr;gap:12px;padding-top:27px;padding-bottom:30px}.privacy-content section h2{font-size:20px}.privacy-content section p{font-size:13px}.privacy-page .header-inner{gap:12px}.back-link{font-size:12px;white-space:nowrap}}@media(max-width:380px){.hero h1{font-size:52px}.hero-description{font-size:14px}.hero-art{height:350px}.hero-art>img{width:600px;height:350px}.connect h2{font-size:36px}}@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*:before,*:after{animation:none!important;transition:none!important}}@media print{.site-header,.hero-link{display:none}.hero{padding-top:0}.hero-art{margin-top:0}.section-shell{break-inside:avoid}.connect{color:var(--ink);background:transparent}.connect .section-marker,.connect-details>p:nth-child(2){color:var(--muted)}a{text-decoration:none}}


body{background-image:radial-gradient(ellipse 70% 650px at 50% 12%,#14203955,transparent);color-scheme:dark}
.site-header{position:relative;z-index:2;background:#080d17b8}
.brand-dot{color:#9de7e7}
.hero{position:relative;padding-top:78px}
.hero-copy{isolation:isolate}
.hero h1{font-weight:600;letter-spacing:-.075em}
.hero h1>span:last-child{background:linear-gradient(105deg,#f0f7ff 12%,#a9e9f0 55%,#ada9ff 100%);-webkit-background-clip:text;background-clip:text;color:transparent}
.hero .eyebrow{color:#a6b5ce;letter-spacing:.28em}
.hero-link{border:1px solid #577083;border-radius:60px;padding:13px 23px;color:#d9f9fc;gap:26px;background:#12203150;transition:background .2s,border-color .2s}
.hero-link:hover{background:#193345;border-color:#99dadd}
.hero-art{margin-top:-48px}
.hero-art>img{animation:orb-drift 9s ease-in-out infinite;--hero-x:0px}
.hero-art figcaption{color:#8fa0bb}
.vision{position:relative}
.vision:before{content:"";position:absolute;top:-1px;left:48px;width:76px;height:1px;background:#95e6ec}








.connect{border-top:1px solid #2a3b51;border-bottom:1px solid #273345;background:radial-gradient(ellipse at 85% 100%,#222648 0%,#101b2b 43%,#0c1421 80%)}
.connect:after{box-shadow:0 0 100px #8198f00a,inset 0 0 100px #8198f008}
.privacy-content section h2{color:#edf3ff}
.privacy-content>.eyebrow{color:#a1e4ed}
.privacy-content>h1{font-weight:600}
@keyframes orb-drift{0%,100%{transform:translate(var(--hero-x),0)}50%{transform:translate(var(--hero-x),-10px)}}
@media(max-width:1000px){.hero-art{margin-top:-22px}.vision:before{left:32px}}
@media(max-width:700px){.hero{padding-top:65px}.hero-art{margin-top:-2px}.hero-art>img{--hero-x:-50%}.hero .eyebrow{letter-spacing:.18em}.hero-link{padding:12px 21px}.vision:before{left:25px}}
@media(prefers-reduced-motion:reduce){.hero-art>img{animation:none;transform:translate(var(--hero-x),0)}}
@media print{body{background:white;color:#162030}.hero h1>span:last-child{background:none;color:#162030}.connect{background:none}}


.hero-art{width:100%;max-width:none;height:auto;margin:25px 0 0;background:#080d17;overflow:hidden}
.hero-art>img{position:static;left:auto;width:100%;max-width:none;height:auto;aspect-ratio:1672/941;object-fit:contain;transform:none;animation:none;-webkit-mask-image:linear-gradient(to bottom,transparent 0,#000 9%,#000 88%,transparent 100%);mask-image:linear-gradient(to bottom,transparent 0,#000 9%,#000 88%,transparent 100%)}
.hero-art figcaption{bottom:21px;text-shadow:0 1px 12px #080d17}


@media(min-width:1700px){.hero-art{max-width:1800px;margin-left:auto;margin-right:auto}}
@media(max-width:700px){.hero-art{height:auto;margin-top:28px;padding-bottom:32px}.hero-art>img{position:static;left:auto;width:100%;height:auto;max-width:none;transform:none;animation:none}.hero-art figcaption{bottom:12px;font-size:12px}}
@media(prefers-reduced-motion:reduce){.hero-art>img{animation:none;transform:none}}

/* Brand-only visual gallery. No product or business-area associations. */
.visual-gallery{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:40px;align-items:start}
.visual-study{min-width:0}
.visual-study:nth-child(2){margin-top:84px}
.visual-art{aspect-ratio:1/1;overflow:hidden;background:#080e1a;border:1px solid #223043}
.visual-art img{width:100%;height:100%;object-fit:contain;transition:transform .65s cubic-bezier(.2,.7,.2,1)}
.visual-study:hover img{transform:scale(1.025)}
.visual-study figcaption{padding-top:22px;display:flex;flex-direction:column;gap:10px}
.visual-study figcaption>span:first-child{font-size:21px;letter-spacing:-.02em;color:#e7eef8}
.visual-study figcaption>span:last-child{font-size:12px;letter-spacing:.16em;color:#96a8c2}

@media(max-width:700px){.visual-gallery{grid-template-columns:1fr;gap:40px}.visual-study:nth-child(2){margin-top:0}.visual-study figcaption{padding-top:18px}.visual-study figcaption>span:first-child{font-size:19px}}
@media(prefers-reduced-motion:reduce){.visual-art img{transition:none}.visual-study:hover img{transform:none}}

/* Edition 05: clearer positioning, readable small text, and coral accents. */
:root{--coral:#ffad98;--coral-hover:#ffc1b0}
a:focus-visible,button:focus-visible{outline:3px solid var(--coral);outline-offset:5px}
.brand-dot,.main-nav a:hover,.back-link:hover{color:var(--coral)}
.tiny-mark{border-color:var(--coral)}
.hero-description{max-width:760px;margin:0 auto;font-size:19px;line-height:1.8;letter-spacing:.025em;color:#b8c4d8}
.hero-description>span{display:block}
.hero-link{background:var(--coral);border-color:var(--coral);color:#08131d;font-size:14px;font-weight:550;padding:14px 25px;min-height:48px}
.hero-link:hover{background:var(--coral-hover);border-color:var(--coral-hover)}
.hero-art{padding-bottom:0}
.hero-art figcaption{position:static;left:auto;right:auto;bottom:auto;display:block;margin:0;padding:17px 24px 27px;background:#080d17;color:#b7c2d6;text-align:center;font-size:12px;line-height:1.8;letter-spacing:.025em;text-shadow:none}
.vision{padding-top:96px;padding-bottom:102px}
.vision:before{background:var(--coral)}
.vision-body,.section-heading{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:56px;align-items:center}
.vision-body{margin-top:32px}
.vision-copy{padding:0}
.vision-copy p:first-child{font-size:20px;line-height:1.8;margin-bottom:20px}
.vision-copy p:last-child{font-size:15px;line-height:1.95;max-width:450px}
.possibilities{padding-top:62px;padding-bottom:94px}
.section-heading{margin:32px 0 46px}
.section-heading>p{font-size:15px;line-height:1.95;padding:0;max-width:450px}
.visual-gallery{gap:40px}
.visual-study:nth-child(2){margin-top:40px}
.visual-study figcaption>span:last-child{font-size:12px;letter-spacing:.1em;color:#a7b6cc}
.connect .tiny-mark{border-color:var(--coral)}
.section-marker,.footer-bottom,.footer-top p,.privacy-number{font-size:12px}
.footer-bottom{line-height:1.9}
.footer-bottom a{display:inline-block;padding:4px 0}
.privacy-number{color:var(--coral)}
@media(max-width:1000px){.vision{padding-top:76px;padding-bottom:82px}.vision-body,.section-heading{gap:36px}.vision-copy p:first-child{font-size:18px}.possibilities{padding-bottom:78px}}
@media(max-width:700px){.hero-description{font-size:16px;line-height:1.9;letter-spacing:0;max-width:450px}.hero .eyebrow{font-size:12px;letter-spacing:.15em}.hero-link{font-size:14px;padding:13px 24px}.hero-art{padding-bottom:0}.hero-art figcaption{padding:15px 23px 25px;font-size:12px;text-align:center}.vision{padding-top:62px;padding-bottom:66px}.vision-body,.section-heading{grid-template-columns:1fr;gap:27px}.vision-body{margin-top:26px}.vision-copy p:first-child{font-size:18px;margin-bottom:17px}.vision-copy p:last-child{font-size:14px;line-height:1.95}.possibilities{padding-top:44px;padding-bottom:63px}.section-heading{margin:26px 0 32px;gap:21px}.section-heading>p{font-size:14px;margin-top:0;line-height:1.9}.visual-gallery{gap:36px}.visual-study:nth-child(2){margin-top:0}.visual-study figcaption{gap:8px}.visual-study figcaption>span:last-child{font-size:12px;letter-spacing:.08em}.footer-bottom{font-size:12px;gap:12px}.footer-bottom>div{gap:16px}.section-marker{font-size:12px}.privacy-content section p{font-size:14px}}
@media(max-width:380px){.hero-description{font-size:15px}.hero .eyebrow{letter-spacing:.12em}}

.hero-en{margin-top:14px;font-size:15px;letter-spacing:.01em;color:var(--muted)}.contact-mail{color:#e4eaf7;border-bottom:1px solid #5a7581;padding-bottom:2px;overflow-wrap:anywhere}.contact-mail:hover{color:var(--teal)}

.lang-switch{display:flex;align-items:center;gap:4px;font-size:12px;letter-spacing:.06em;margin-left:auto}
.lang-switch a{padding:8px 9px;border-radius:100px;color:var(--muted);transition:color .2s,background .2s;white-space:nowrap}
.lang-switch a:hover{color:var(--ink);background:#14202f}
.lang-switch a[aria-current="page"]{color:var(--teal)}
.main-nav+.lang-switch{margin-left:auto}
.privacy-page .lang-switch{margin-left:auto;margin-right:8px}
:lang(ja){font-family:-apple-system,BlinkMacSystemFont,"Hiragino Sans","Hiragino Kaku Gothic ProN","Yu Gothic UI","Yu Gothic","Noto Sans JP","Meiryo",sans-serif}
:lang(en) .hero h1,.hero h1:lang(en){letter-spacing:-.035em}
:lang(en) h2{letter-spacing:-.025em}
:lang(ja) .hero h1{letter-spacing:-.04em}
@media(max-width:700px){.lang-switch{gap:0}.lang-switch a{padding:8px 7px}:lang(en) .hero h1{font-size:46px;letter-spacing:-.03em}:lang(en) h2{font-size:32px}:lang(ja) .hero h1{font-size:50px}:lang(ja) h2{font-size:31px}.privacy-page .header-inner{flex-wrap:wrap;height:auto;padding-top:14px;padding-bottom:14px}.privacy-page .site-header{height:auto}}
@media(max-width:380px){:lang(en) .hero h1{font-size:40px}:lang(ja) .hero h1{font-size:44px}.lang-switch a{padding:8px 5px}}
