/* Calm, selectable product information. Native tabs preserve keyboard access. */
.store-badge{display:inline-flex;align-items:center;gap:12px;padding:9px 20px 10px;background:#050607;border:1px solid #84909c;border-radius:10px;color:white;min-height:59px}.store-badge>svg{width:28px;height:34px}.store-badge small{display:block;font-size:10px;line-height:1.3}.store-badge strong{font-size:24px;line-height:1.1;font-weight:550;letter-spacing:-.03em}
.mini-deck{transform:none;top:14px;left:8%;right:auto;width:86%;height:214px;border-radius:0;background:radial-gradient(ellipse at 50% 35%,#fff 0%,#eef4f8 72%,#dae5ed 100%);border:7px solid #202a34;box-shadow:0 0 40px #b6e4ff24,0 17px 32px #0008,inset 0 0 20px #adcddd44;padding:20px 24px}.mini-deck::after{content:"";position:absolute;left:0;right:0;bottom:0;height:3px;background:#7b8792}.deck-top{font-size:7px}.demo-slide h2{font-size:29px}.deck-progress{left:24px;right:24px;bottom:14px}.gesture-visual{height:490px;overflow:hidden}.gesture-photo{top:196px;left:-4%;width:108%;transform-origin:85% 80%}.gesture-visual.swiping .gesture-photo{animation:paper-turn 2400ms cubic-bezier(.4,0,.25,1)}.gesture-visual.reversing .gesture-photo{animation:paper-return 2400ms cubic-bezier(.4,0,.25,1)}.demo-slide.entering{animation:projected-slide 800ms ease-out}.wrist-label{z-index:2}
@keyframes paper-turn{0%,100%{transform:translate(0,0) rotate(0)}18%{transform:translate(-10px,4px) rotate(-5deg)}55%{transform:translate(40px,-24px) rotate(22deg)}72%{transform:translate(36px,-22px) rotate(20deg)}}
@keyframes paper-return{0%,100%{transform:translate(0,0) rotate(0)}18%{transform:translate(9px,-2px) rotate(4deg)}55%{transform:translate(-36px,16px) rotate(-19deg)}72%{transform:translate(-32px,13px) rotate(-17deg)}}
@keyframes projected-slide{from{opacity:.15;transform:translateX(15px);filter:blur(1.5px)}to{opacity:1;transform:translateX(0);filter:blur(0)}}
.compatibility{background:#007fb9;border:0;color:white;padding:25px 0 22px}.compatibility .overline{color:white;font-size:16px;letter-spacing:.015em;margin-bottom:18px}.app-names{color:#fff;font-size:19px}.compatibility .fineprint{color:#d5ecf7;font-size:10px;margin-top:17px}.hero-bottom{padding-block:15px}
.device-explorer{padding:60px 0 65px;background:#fff}.explorer-label{font-size:12px;color:#607081;margin-bottom:15px}.choice-tabs{display:flex;gap:6px;border-bottom:1px solid #d9e2e9}.choice-tabs>[role=tab]{appearance:none;background:transparent;border:0;border-bottom:3px solid transparent;cursor:pointer;font:inherit;font-size:14px;font-weight:600;color:#637284;min-height:52px;padding:12px 25px;margin-bottom:-1px;line-height:1.4}.choice-tabs>[role=tab][aria-selected=true]{color:#006ca3;border-bottom-color:#008fd0}.choice-tabs>[role=tab]:hover{background:#edf6fb;color:#07557e}.device-tabs>.choice-tabs{gap:0;border:1px solid #d5e0e8;border-radius:12px;background:#f3f6f8;padding:5px;margin-bottom:32px}.device-tabs>.choice-tabs>[role=tab]{flex:1;border:0;border-radius:8px;min-height:48px;margin:0;font-size:16px}.device-tabs>.choice-tabs>[role=tab][aria-selected=true]{background:#fff;box-shadow:0 3px 9px #102e4412;color:#086d9c}.device-intro{display:grid;grid-template-columns:1.15fr 1fr;gap:0 60px;margin-bottom:28px;align-items:end}.device-intro .overline{grid-column:1/-1;margin-bottom:13px;font-size:10px}.device-intro h2{font-size:35px;line-height:1.4;letter-spacing:-.04em;font-weight:650}.device-intro>p:last-child{font-size:13px;color:#637285;line-height:1.9;max-width:440px;margin-bottom:4px}.choice-panel:focus{outline-offset:6px}.watch-tabs>.choice-tabs{justify-content:space-between;margin-bottom:25px}.watch-tabs>.choice-tabs>[role=tab]{font-size:12px;flex:1;padding:14px 10px}.watch-layout{display:grid;grid-template-columns:.85fr 1.15fr;align-items:center;gap:55px;min-height:510px}.watch-product{border-radius:18px;background:#f2f5f7;padding:10px 25px 15px;text-align:center}/* ⚠️ Apple Watch の実機を模した枠は置かない（Apple 提供の公式素材以外で製品を表現しない）。
   ここは画面だけを、機種を特定しない角丸で見せる。 */
.watch-render{position:relative;width:164px;max-width:100%;margin:22px auto}.watch-render .product-shot{position:static;width:100%;margin:0;overflow:hidden;border-radius:20%/17%;background:#0c0c12;box-shadow:0 18px 34px rgba(10,37,64,.22)}.watch-render .product-shot img{width:100%;height:auto;border-radius:0}.screen-caption{font-size:10px;color:#687585;line-height:1.5;margin-top:8px}.panel-copy .overline{font-size:9px;margin-bottom:13px}.panel-copy h3{font-size:28px;line-height:1.45;letter-spacing:-.035em;font-weight:650;margin-bottom:16px}.panel-copy>p{font-size:13px;line-height:1.9;color:#607184}.feature-points{list-style:none;margin-top:23px}.feature-points li{display:flex;gap:15px;margin:17px 0}.feature-points li>svg{width:20px;height:20px;flex:none;color:#0088c7;margin-top:3px}.feature-points h4{font-size:14px;font-weight:650;line-height:1.5;margin-bottom:6px}.feature-points p{font-size:12px;line-height:1.85;color:#627183}.connected-layout{display:grid;grid-template-columns:.85fr 1.15fr;gap:55px;align-items:center;min-height:540px}.phone-product{background:#f2f5f7;border-radius:18px;padding:26px;text-align:center}.phone-product .product-shot{max-width:195px;margin:auto}.phone-product img{border-radius:23px;box-shadow:0 10px 24px #192c4326}.panel-copy .detail-note{font-size:11px;color:#718092;margin-top:20px}.receiver-product{background:#f2f5f7;border-radius:18px;padding:28px}.receiver-product .product-shot{max-width:263px;margin:auto}.receiver-product img{border-radius:12px;box-shadow:0 12px 28px #243a491c}.connection-route{display:flex;gap:10px;align-items:center;flex-wrap:wrap;color:#466276;font-size:11px;margin-bottom:22px}.connection-route svg{width:16px;height:16px;color:#0b89c3}.usb-callout{display:flex;gap:16px;background:#edf7fe;border-left:3px solid #0089c9;padding:22px;margin:23px 0}.usb-callout>svg{flex:none;width:23px;height:23px;color:#0080bc;margin-top:3px}.usb-callout h4{font-size:15px;line-height:1.6;margin-bottom:8px}.usb-callout p{font-size:12px;line-height:1.9;color:#49647a}.usb-callout small{font-size:10px;display:block;color:#63788b;margin-top:12px}.receiver-download{margin-top:2px;min-height:49px}
.enchant-band{padding:0;background:#073652;overflow:hidden;text-align:left}.enchant-band>.wrap{display:grid;grid-template-columns:1.35fr 1fr;align-items:center;gap:20px;min-height:248px}.enchant-band .overline{font-size:9px;margin-bottom:13px}.enchant-band h2{font-size:33px;line-height:1.45}.enchant-band p:not(.overline){font-size:12px;margin:15px 0 0}.enchant-band img{width:100%;height:248px;object-fit:cover;mix-blend-mode:screen;object-position:48% 50%;opacity:.94}
.resource-hub{background:#f5f7f9;padding:50px 0 40px}.resource-heading h2{font-size:31px;letter-spacing:-.03em;line-height:1.4}.resource-heading .overline{margin-bottom:10px}.resource-heading>p:last-child{font-size:12px;color:#627181;line-height:1.8;margin:13px 0 25px}.resource-tabs>.choice-tabs{background:#fff;border:1px solid #dce4eb;border-radius:12px 12px 0 0;padding:0 12px;gap:8px}.resource-tabs>.choice-tabs>[role=tab]{flex:1;padding:16px 10px;font-size:13px}.resource-tabs>.choice-panel{background:#fff;border:1px solid #dce4eb;border-top:0;border-radius:0 0 14px 14px;padding:30px 35px;min-height:480px}.resource-tabs section.sec{padding:0;background:transparent!important;border:0!important}.resource-tabs section.sec>.wrap{padding:0;max-width:none}.resource-tabs h2.t{font-size:24px;margin:0 0 17px}.resource-tabs .k2{display:none}.resource-tabs .sub2{font-size:12px;max-width:850px;margin-bottom:18px}.resource-tabs .center{max-width:none!important;text-align:left;margin:0}.resource-tabs .release-note{font-size:11px;margin:15px 0;padding:12px}.resource-tabs .eula-gate{font-size:11px;margin:12px 0 20px;max-width:none;padding:13px;justify-content:flex-start;box-shadow:none}.resource-tabs .feat{padding:21px;background:#f7f9fb;min-height:160px}.resource-tabs .feat .fi{float:left;margin:0 16px 0 0}.resource-tabs .feat p{font-size:12px}.resource-tabs .grid2r{margin-top:20px;gap:15px}.resource-tabs .dcard{padding:22px;gap:6px}.resource-tabs .dcard p{font-size:12px;line-height:1.8}.resource-tabs .dcard .btn{margin-top:auto;justify-content:center;min-height:49px;font-size:12px}.resource-tabs .note{font-size:11px;padding:12px 15px}.resource-tabs .dcard.subdued{background:#f7f9fb}.resource-tabs .setup-steps{gap:23px;margin:23px 0 27px}.resource-tabs .setup-steps li{padding-top:12px}.resource-tabs .setup-steps h3{font-size:13px;margin:9px 0}.resource-tabs .setup-steps p{font-size:11px;line-height:1.8}.manual-cards{align-items:stretch}.manual-cards .dcard .os{min-height:48px}.manual-cards .dcard .os h3{font-size:15px}.manual-cards .dcard .btn{min-height:52px}.resource-tabs #faq .searchbar{max-width:none;margin-bottom:14px}.resource-tabs #faq .search{font-size:13px;padding-block:12px}.resource-tabs #faq .chips{gap:7px}.resource-tabs #faq .chip{font-size:11px;padding:9px 12px}.resource-tabs #faq .meta{font-size:11px;margin-bottom:4px}.resource-tabs #faq .grouptitle{font-size:11px;margin:14px 0 0;padding:0}.resource-tabs #faq summary{font-size:13px;padding:13px 0}.resource-tabs #faq .a{font-size:12px;line-height:1.8}.faq-pagination{display:flex;justify-content:space-between;align-items:center;margin-top:22px;font-size:12px}.faq-pagination button{display:flex;align-items:center;gap:10px;font:inherit;background:white;border:1px solid #d3dfe8;border-radius:7px;min-height:40px;padding:8px 15px;cursor:pointer}.faq-pagination button:disabled{opacity:.35;cursor:default}.faq-pagination svg{width:14px;height:14px}.support-inline{font-size:11px;color:#647183;margin-top:18px}.support-inline a{color:#007ab3;text-decoration:underline}.founder-note{padding-block:20px 30px}.founder-note details{border-bottom:1px solid #e1e6eb}.founder-note summary{cursor:pointer;display:flex;align-items:center;justify-content:space-between;font-size:12px;color:#5e6c7d;list-style:none;padding:18px 0}.founder-note summary svg{width:16px;height:16px}.founder-note details>div{max-width:780px;padding-bottom:20px;font-size:13px;line-height:2;color:#5e6c7d}.founder-note p{margin-bottom:13px}
@media(max-width:1000px){.watch-layout,.connected-layout{gap:30px;grid-template-columns:.8fr 1.2fr}.watch-render{width:146px}.device-intro{gap:0 30px}.device-intro h2{font-size:30px}.panel-copy h3{font-size:25px}.gesture-visual{height:460px}.mini-deck{height:210px}.gesture-photo{top:208px}.resource-tabs>.choice-panel{padding:25px}}
@media(max-width:760px){.device-explorer{padding:35px 0 40px}.device-tabs>.choice-tabs{margin-bottom:26px}.device-tabs>.choice-tabs>[role=tab]{font-size:12px;padding:10px 5px;min-height:44px}.device-intro{display:block;margin-bottom:23px}.device-intro h2{font-size:28px;margin-bottom:15px}.device-intro .overline{font-size:9px}.device-intro>p:last-child{font-size:12px}.watch-tabs>.choice-tabs{gap:0;margin-bottom:25px}.watch-tabs>.choice-tabs>[role=tab]{font-size:10px;padding:12px 5px}.watch-layout,.connected-layout{grid-template-columns:1fr;gap:25px;min-height:0}.watch-product{padding:4px 10px 12px}.watch-render{width:134px}.panel-copy h3{font-size:25px}.panel-copy .overline{font-size:9px}.panel-copy>p{font-size:12px}.feature-points li{margin:18px 0;gap:13px}.feature-points h4{font-size:13px}.feature-points p{font-size:12px}.phone-product .product-shot{width:160px}.phone-product{padding:23px}.receiver-product .product-shot{width:210px}.usb-callout{padding:18px 15px;gap:12px}.usb-callout h4{font-size:14px}.connection-route{gap:8px;font-size:10px}.receiver-download{font-size:12px}.enchant-band>.wrap{grid-template-columns:1.4fr .8fr;gap:0;min-height:190px}.enchant-band h2{font-size:23px}.enchant-band .overline{font-size:7px;letter-spacing:.12em}.enchant-band p:not(.overline){font-size:10px;margin:10px 0 0}.enchant-band img{height:190px;object-fit:cover;object-position:42% 50%;width:150%;max-width:none}.resource-hub{padding:35px 0 25px}.resource-heading h2{font-size:25px}.resource-tabs>.choice-tabs{padding:0 3px;gap:0}.resource-tabs>.choice-tabs>[role=tab]{font-size:10px;padding:12px 5px;min-height:55px}.resource-tabs>.choice-panel{padding:23px 17px;min-height:0}.resource-tabs h2.t{font-size:21px}.resource-tabs .grid2r,.resource-tabs .grid2{grid-template-columns:1fr}.resource-tabs .feat{min-height:0;padding:17px}.resource-tabs .feat .fi{float:none;margin-bottom:9px}.resource-tabs .dcard{padding:18px}.resource-tabs .dcard .os h3{font-size:15px}.resource-tabs .setup-steps{grid-template-columns:1fr;gap:16px}.resource-tabs .setup-steps li{position:relative;padding-left:33px}.resource-tabs .setup-steps li>span{position:absolute;left:0;top:16px}.resource-tabs .setup-steps h3{margin-top:0}.resource-tabs .setup-steps p{font-size:11px}.resource-tabs #faq .chip{font-size:10px;padding:8px}.resource-tabs #faq summary{font-size:12px}.compatibility .overline{font-size:13px}.compatibility .app-names{font-size:16px;gap:12px 23px}.compatibility .fineprint{font-size:9px}.mini-deck{top:12px;width:90%;left:5%;height:206px;border-width:6px;padding:18px}.demo-slide h2{font-size:27px}.gesture-visual{height:440px}.gesture-photo{top:210px}.store-badge{min-height:55px;padding:9px 17px}.store-badge strong{font-size:23px}.hero-layout{gap:33px}}
@media(max-width:390px){.gesture-visual{height:420px}.gesture-photo{top:215px}.mini-deck{height:200px}.demo-slide h2{font-size:25px}.watch-render{width:128px}.enchant-band h2{font-size:21px}.enchant-band .overline{font-size:6px}.choice-tabs>[role=tab]{overflow-wrap:anywhere}.resource-tabs>.choice-panel{padding:20px 13px}}
.device-tabs>.choice-tabs,.resource-tabs>.choice-tabs{position:sticky;top:76px;z-index:10}
@media(max-width:760px){.device-tabs>.choice-tabs,.resource-tabs>.choice-tabs{top:64px}.store-badge{flex-shrink:0}}
@media(prefers-reduced-motion:reduce){.gesture-visual.swiping .gesture-photo,.gesture-visual.reversing .gesture-photo,.demo-slide.entering{animation:none}}

/* Fixed stage, independently clipped foreground arm, and a 16:10 projection surface. */
.hero-layout{grid-template-columns:1.1fr 1fr;gap:44px;padding-top:65px;padding-bottom:55px}.hero-copy h1{font-size:clamp(32px,3.2vw,44px);line-height:1.5;letter-spacing:-.055em}.hero-deck{font-size:18px;line-height:1.7}.hero-body{max-width:510px;line-height:1.95;text-wrap:pretty}.hero-story{margin-top:18px}.keep-phrase{display:inline-block}.gesture-visual{height:530px;background:radial-gradient(ellipse at 60% 35%,#19374b66,transparent 60%),radial-gradient(ellipse at 85% 85%,#063c6e66,transparent 55%),#080b10;isolation:isolate}.gesture-photo{top:255px;bottom:auto;left:-7%;width:116%;z-index:5;pointer-events:none;clip-path:polygon(100.00% 61.52%,94.40% 61.91%,89.84% 61.13%,84.64% 60.16%,78.12% 59.18%,72.27% 55.66%,67.06% 53.03%,61.85% 49.90%,59.11% 49.51%,55.34% 45.90%,52.60% 43.26%,51.56% 40.72%,50.46% 35.16%,49.28% 30.27%,47.07% 25.68%,44.60% 21.48%,42.58% 16.21%,41.15% 13.67%,39.71% 12.89%,38.61% 13.48%,38.09% 15.23%,38.28% 17.77%,39.26% 21.09%,40.62% 24.80%,42.06% 27.83%,41.73% 28.91%,40.04% 29.30%,38.15% 28.52%,35.68% 26.86%,33.59% 24.41%,30.73% 22.27%,28.26% 20.12%,25.20% 17.68%,23.70% 17.58%,22.46% 18.55%,21.68% 19.82%,22.27% 21.48%,23.96% 23.63%,25.65% 25.20%,27.99% 28.22%,30.92% 30.86%,32.10% 32.62%,30.99% 32.62%,28.97% 31.45%,26.76% 28.42%,24.15% 25.49%,22.79% 25.29%,21.74% 26.27%,21.42% 27.44%,22.01% 29.59%,23.44% 31.54%,23.89% 33.59%,24.74% 35.74%,25.33% 37.40%,25.39% 39.65%,26.17% 41.50%,27.34% 43.07%,28.78% 43.95%,29.36% 46.19%,30.73% 47.95%,32.42% 49.61%,33.79% 51.37%,35.81% 52.54%,37.76% 53.61%,39.71% 55.18%,41.93% 55.76%,44.34% 56.74%,46.55% 59.47%,49.15% 62.30%,52.28% 64.94%,51.89% 70.21%,51.50% 74.61%,51.43% 78.81%,56.45% 82.32%,62.83% 85.94%,69.47% 90.23%,76.04% 95.70%,80.73% 98.14%,87.24% 99.12%,93.10% 97.85%,100.00% 95.12%)}.mini-deck{z-index:1;left:4%;top:18px;width:86%;height:auto;aspect-ratio:16/10;box-sizing:border-box;border:5px solid #303943;box-shadow:0 0 45px #beeaff26,0 22px 30px #0009,inset 0 0 28px #aec4d52b;background:radial-gradient(ellipse at 50% 38%,#fff,#e9f1f6 85%);padding:20px 23px;overflow:visible}.mini-deck::before{content:"";position:absolute;left:-10px;right:-10px;top:-10px;height:6px;border-radius:4px;background:linear-gradient(#65707b,#26313b);box-shadow:0 5px 9px #0008}.mini-deck::after{left:-9px;right:-9px;bottom:-8px;height:5px;background:#64707a;box-shadow:0 7px 12px #0009}.demo-slide h2{font-size:28px}.wrist-label{z-index:6;bottom:12px}.explorer-label{position:relative;padding:26px 30px;margin-bottom:12px;background:#eaf5fc;border-left:4px solid #008ace;border-radius:0 12px 12px 0;color:#143b54}.explorer-label .overline{margin-bottom:7px;font-size:10px}.explorer-label h2{font-size:27px;line-height:1.5;margin-bottom:8px;letter-spacing:-.035em}.explorer-label>p:last-of-type{font-size:13px;color:#47657a;line-height:1.8;padding-right:35px}.explorer-label>svg{position:absolute;right:28px;bottom:26px;color:#008ace;width:24px;height:24px}.enchant-band>.wrap{grid-template-columns:.85fr 1.15fr;gap:35px}.enchant-band img{height:285px;width:100%;max-width:100%;object-fit:cover;object-position:50% 40%;mask-image:linear-gradient(to right,transparent,#000 12%);opacity:1}
@media(max-width:760px){.hero-layout{grid-template-columns:1fr;padding-top:43px;gap:35px}.hero-copy h1{font-size:32px}.hero-deck{font-size:17px}.hero-body{font-size:13px}.gesture-visual{height:460px}.gesture-photo{top:228px;left:-8%;width:116%}.mini-deck{width:90%;left:5%;top:15px;height:auto;aspect-ratio:16/10;padding:15px 17px}.deck-top{font-size:6px;padding-bottom:8px}.demo-slide{padding-top:12px}.demo-slide h2{font-size:26px}.deck-progress{bottom:12px;left:17px;right:17px}.explorer-label{padding:20px;margin-bottom:18px}.explorer-label h2{font-size:22px}.explorer-label>p:last-of-type{font-size:12px}.enchant-band>.wrap{grid-template-columns:1fr;gap:20px;padding-top:28px;padding-bottom:0}.enchant-band img{height:220px;width:100%;mask-image:none;object-position:center 42%;border-radius:10px 10px 0 0}.enchant-band .overline{font-size:9px}.enchant-band h2{font-size:25px}.enchant-band p:not(.overline){font-size:12px}}
@media(max-width:390px){.hero-copy h1{font-size:29px}.gesture-visual{height:405px}.gesture-photo{top:205px}.mini-deck{height:auto}.demo-slide h2{font-size:22px}.demo-slide p{font-size:8px}.slide-kicker{font-size:6px}.demo-slide{padding-top:8px}}

/* ---- 2026-09-12 教授コメント対応 ---- */
/* App icon: the P/G glyph classes (.st6/.st9) had no fill → black. White glyph on brand gradient. */
.brand img,footer .brand img{width:34px;height:34px;border-radius:9px}
.nav .brand{font-size:24px;font-weight:750;letter-spacing:-.02em;gap:11px}
/* Nav: brand prominent, links pushed right */
.nav .primary-nav{margin-left:auto}.nav .sp{display:none}.nav a.lnk{font-size:14px}
/* Hero: larger, blended photo */
.hero-layout{grid-template-columns:.95fr 1.15fr;gap:36px;padding-top:56px;padding-bottom:28px;min-height:0}
.hero-shot{position:relative;border:0;border-radius:0;box-shadow:none;overflow:visible;margin-right:-40px}
.hero-shot img{border-radius:22px;mask-image:radial-gradient(120% 100% at 60% 50%,#000 55%,transparent 100%);-webkit mask-image:radial-gradient(120% 100% at 60% 50%,#000 55%,transparent 100%);-webkit-mask-image:radial-gradient(120% 100% at 60% 50%,#000 55%,transparent 100%);opacity:.96}
.hero-shot::after{content:"";position:absolute;inset:-10%;background:radial-gradient(60% 55% at 60% 50%,rgba(0,138,206,.22),transparent 70%);z-index:-1;pointer-events:none}
.hero-body{font-size:16px;line-height:1.95;max-width:520px;text-wrap:pretty;word-break:auto-phrase}
.hero-story{margin-top:16px}
/* Tabs: clearly selected */
.device-tabs>.choice-tabs>[role=tab][aria-selected=true]{background:#008ace;color:#fff;box-shadow:0 4px 12px rgba(0,138,206,.32)}
.device-tabs>.choice-tabs>[role=tab][aria-selected=true]:hover{background:#007dbb;color:#fff}
.watch-tabs>.choice-tabs>[role=tab][aria-selected=true],.resource-tabs>.choice-tabs>[role=tab][aria-selected=true]{color:#fff;background:#008ace;border-bottom-color:#006da5;border-radius:8px 8px 0 0}
.watch-tabs>.choice-tabs>[role=tab][aria-selected=true]:hover,.resource-tabs>.choice-tabs>[role=tab][aria-selected=true]:hover{background:#007dbb;color:#fff}
.watch-tabs>.choice-tabs>[role=tab]{font-size:14px}.resource-tabs>.choice-tabs>[role=tab]{font-size:15px}
/* Explorer type scale (bigger, phrase-safe wrapping) */
.device-intro{grid-template-columns:1fr}.device-intro h2{font-size:clamp(20px,2.2vw,27px);line-height:1.5;text-wrap:nowrap;white-space:nowrap;word-break:keep-all;letter-spacing:-.03em}
.panel-copy h3{text-wrap:balance;word-break:auto-phrase}
#watch-time .panel-copy h3,#watch-slides .panel-copy h3,#watch-settings .panel-copy h3{font-size:clamp(18px,1.9vw,24px);white-space:nowrap;text-wrap:nowrap;word-break:keep-all;letter-spacing:-.03em}
.panel-copy>p{font-size:15px;line-height:1.9;text-wrap:pretty;word-break:auto-phrase}
.feature-points h4{font-size:17px}
.feature-points p{font-size:14.5px;line-height:1.85;text-wrap:pretty;word-break:auto-phrase}
.panel-copy .detail-note{font-size:13.5px;line-height:1.8;text-wrap:pretty;word-break:auto-phrase}
.enchant-band p:not(.overline){font-size:16px;font-weight:500}
/* Resource hub */
.resource-tabs .sub2{font-size:15px;line-height:1.9;text-wrap:pretty;word-break:auto-phrase}
.resource-tabs .feat p{font-size:15px;line-height:1.75;text-wrap:pretty;word-break:auto-phrase}
.resource-tabs .feat{min-height:0}
.resource-tabs .grid2r{grid-template-columns:1fr 1fr}
.resource-tabs .eula-gate{font-size:15px;padding:16px 18px;background:#eef7fd;border:1px solid #bfe0f3;border-radius:12px;align-items:flex-start;gap:14px}
.resource-tabs .eula-gate input{width:22px;height:22px;flex:none;margin-top:2px;accent-color:#008ace}
.resource-tabs .eula-gate b{font-weight:650;color:#0a2540}.resource-tabs .eula-gate a{text-decoration:underline;color:#006da5}
.eula-sub{display:inline-block;font-size:12.5px;color:#4d6072;margin-top:4px}
.card-note{font-size:11px;color:#6f7d8c;margin:8px 0 0;line-height:1.6}
.store-row{display:grid;grid-template-columns:1fr 1fr;gap:15px;margin-top:15px}
.store-card{display:flex;align-items:center;gap:16px;background:#f7f9fb;border:1px solid var(--line);border-radius:var(--radius);padding:18px 22px}
.store-card .fi{width:46px;height:46px;border-radius:12px;background:#e7f5fe;color:#0085c5;display:flex;align-items:center;justify-content:center;flex:none}
.store-card>div:nth-child(2){flex:1;min-width:0}.store-card h3{font-size:16px;font-weight:700;color:var(--navy);margin-bottom:3px}.store-card p{font-size:12.5px;color:var(--mut);line-height:1.7}
.store-slot{flex:none}.store-slot .store-note{font-size:12.5px;padding:11px 16px}
.store-slot img{height:44px;width:auto;display:block}
/* Founder note */
.founder-note summary{font-size:22px;font-weight:700;letter-spacing:-.02em}
.founder-note details>div p{font-size:15.5px;line-height:2;text-wrap:pretty;word-break:auto-phrase;margin-bottom:16px}
@media(max-width:1000px){.hero-layout{grid-template-columns:1fr 1fr}.hero-shot{margin-right:0}}
@media(max-width:760px){#watch-time .panel-copy h3,#watch-slides .panel-copy h3,#watch-settings .panel-copy h3{white-space:normal;text-wrap:balance;font-size:22px}.device-intro h2{white-space:normal;text-wrap:balance;font-size:22px}.nav .brand{font-size:20px}.brand img,footer .brand img{width:30px;height:30px}.hero-shot{margin-right:0;max-width:none}.hero-shot img{mask-image:none;-webkit-mask-image:none;border-radius:16px}.store-row,.resource-tabs .grid2r{grid-template-columns:1fr}.store-card{flex-wrap:wrap}.feature-points h4{font-size:15.5px}.feature-points p{font-size:13.5px}.panel-copy>p{font-size:14px}.founder-note summary{font-size:19px}.founder-note details>div p{font-size:14.5px}}

/* Compatibility strip: apps shown as icon chips so they read as presentation apps */
.compatibility .app-names{justify-content:center;gap:12px;font-size:16px;letter-spacing:-.02em}
.app-label{display:inline-flex;align-items:center;gap:8px;font-size:12px;font-weight:650;letter-spacing:.08em;color:#c9e7f6;text-transform:uppercase;margin-right:8px}
.app-label svg{width:18px;height:18px}
.app-chip{display:inline-flex;align-items:center;gap:9px;padding:10px 18px;border-radius:999px;background:rgba(255,255,255,.12);border:1px solid rgba(255,255,255,.28);color:#fff;font-weight:650;white-space:nowrap}
.app-chip svg{width:18px;height:18px;flex:none;color:#d9f0fb}
@media(max-width:760px){.compatibility .app-names{gap:8px;font-size:14px}.app-chip{padding:8px 13px;gap:7px}.app-chip svg{width:16px;height:16px}.app-label{width:100%;justify-content:center;margin:0 0 4px}}


.device-tabs>.choice-tabs>[role=tab]{display:inline-flex;align-items:center;justify-content:center;gap:9px}
.device-tabs>.choice-tabs>[role=tab]>svg{width:20px;height:20px;flex:none}
@media(max-width:760px){.device-tabs>.choice-tabs>[role=tab]{gap:6px}.device-tabs>.choice-tabs>[role=tab]>svg{width:16px;height:16px}}

.watch-tabs>.choice-tabs>[role=tab]{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.watch-tabs>.choice-tabs>[role=tab]>svg{width:18px;height:18px;flex:none}
@media(max-width:760px){.watch-tabs>.choice-tabs>[role=tab]{gap:5px}.watch-tabs>.choice-tabs>[role=tab]>svg{width:14px;height:14px}}

.resource-tabs>.choice-tabs>[role=tab]{display:inline-flex;align-items:center;justify-content:center;gap:8px}
.resource-tabs>.choice-tabs>[role=tab]>svg{width:18px;height:18px;flex:none}
@media(max-width:760px){.resource-tabs>.choice-tabs>[role=tab]{gap:4px;flex-direction:column}.resource-tabs>.choice-tabs>[role=tab]>svg{width:16px;height:16px}}
/* merged iPhone/Watch card spans full width */
#download .store-row.single{grid-column:1/-1;width:100%}
#download .store-row.single .store-card{grid-column:1/-1}

#download .store-row.single{display:grid;grid-template-columns:1fr!important}
#download .store-row.single .store-card{width:100%}
#download .store-card h3{white-space:nowrap}

/* ── アイコンと文字の見え方（教授指摘：ずれている・間が狭い）──────────────
   日本語フォントは「行ボックスの中心」より「グリフの見た目の中心」が下にあるため、
   align-items:center だけではアイコンが上に浮いて見える。わずかに下げて視覚的な中央へ。
   間隔は半角スペース1つぶん（約0.5em）を目安に、文字サイズに追随させる。 */
svg.lucide{position:relative;top:1px;flex:none}
.app-label{gap:.55em}
.app-chip{gap:.55em;padding:10px 20px}
.btn{gap:.55em}
.text-link{gap:.55em}
.connection-route{gap:.5em}
.usb-callout{gap:.7em}
.feature-points li{gap:.9em}
.searchbar{gap:.55em}
.hero-bottom a{gap:.6em}
/* アイコンだけを収めるタイル（.fi）は中央配置のままでよい＝上記の微調整を戻す */
.fi svg.lucide{top:0}

/* 対応プレゼンアプリ：同じアイコンを6つ並べるより、枠だけのほうが名前が読みやすい。
   Claude Design 側の見せ方に合わせ、枠を少し立たせる。 */
.app-chip{background:rgba(255,255,255,.14);border:1.5px solid rgba(255,255,255,.42)}

/* 教授指定：この見出しは1行に収める。
   nowrap の指定が Apple Watch の3タブ（#watch-time/#watch-slides/#watch-settings）
   にしか掛かっておらず、Receiver タブだけ2行に折れていた。 */
#receiver-overview .panel-copy h3{font-size:clamp(17px,1.55vw,21px);white-space:nowrap;text-wrap:nowrap;word-break:keep-all;letter-spacing:-.03em}
@media(max-width:760px){#receiver-overview .panel-copy h3{white-space:normal;text-wrap:balance;font-size:22px}}

/* 言語切替はブランド名の隣に置く（教授指示）。見落とされないよう、
   ヘッダー内の他要素より一段はっきりした配色・サイズにする。 */
.nav .langsw{margin-left:14px;background:#e3eef7;border:1.5px solid #b6d4e9;padding:3px;border-radius:999px}
.nav .langsw button{padding:7px 15px;font-size:13px;font-weight:700;color:#2c4256;border-radius:999px;min-height:34px}
.nav .langsw button.on{background:#007fb9;color:#fff;box-shadow:0 1px 3px rgba(0,63,92,.25)}
@media(max-width:760px){.nav .langsw{margin-left:9px}.nav .langsw button{padding:6px 11px;font-size:12px}}

/* 「いつものプレゼンテーションアプリで使える。」を1段大きく（教授指示） */
.compatibility .overline{font-size:19px}
@media(max-width:760px){.compatibility .overline{font-size:17px}}

/* iPhoneタブの見出しも1行に揃える（他タブと同じ扱い） */
#iphone-overview .device-intro h2{font-size:clamp(20px,2.1vw,26px);white-space:nowrap;text-wrap:nowrap;word-break:keep-all;letter-spacing:-.03em}
#iphone-overview .panel-copy h3{font-size:clamp(17px,1.6vw,22px);white-space:nowrap;text-wrap:nowrap;word-break:keep-all;letter-spacing:-.03em}
@media(max-width:760px){#iphone-overview .device-intro h2,#iphone-overview .panel-copy h3{white-space:normal;text-wrap:balance;font-size:22px}}

/* 生成AIサポート資料は日英で別ファイル。ボタン自体を言語で出し分けるため、
   .t-en の既定（display:inline）ではなく inline-flex を明示する（アイコンが崩れるため）。 */
body[data-lang="en"] a.btn.t-en{display:inline-flex}

/* ══ スマホ表示の調整 ══════════════════════════════════════════════
   ⚠️ この節は**ファイル末尾に置くこと**。
   ヒーローがスマホでも2段組のままで、本文が1行10文字ほどに潰れていた。
   原因は、このファイル内で後から来る .hero-layout の指定
   （メディアクエリ外の「.95fr 1.15fr」と @media(max-width:1000px) の「1fr 1fr」）が、
   先に書かれた max-width:760px の1カラム指定を打ち消していたため。
   同じ詳細度なら後勝ちなので、末尾で確定させる。 */
@media(max-width:760px){
  .hero-layout{grid-template-columns:1fr;gap:26px;padding-top:40px;padding-bottom:30px}
  .hero-copy{max-width:none}
  /* 「プレゼンテー／ションを」と語の途中で折れていたので、文節で折る */
  .hero-copy h1{font-size:clamp(27px,7.6vw,36px);line-height:1.4;word-break:keep-all;overflow-wrap:break-word}
  .hero-deck{font-size:16px}
  .hero-body{font-size:14px;line-height:1.9;max-width:none}
  .hero-shot{max-width:none;margin:0;border-radius:14px}
  .hero-actions{gap:14px}

  /* タブの文字が2行に折り返して読みにくい。縦に積んで全幅で見せる */
  .device-tabs>.choice-tabs{display:grid;grid-template-columns:1fr;gap:5px}
  .device-tabs>.choice-tabs>[role=tab]{justify-content:flex-start;padding:12px 14px;min-height:46px;font-size:15px;white-space:nowrap}
  .watch-tabs>.choice-tabs{display:grid;grid-template-columns:1fr;gap:4px;justify-content:stretch;padding:6px}
  .watch-tabs>.choice-tabs>[role=tab]{text-align:left;justify-content:flex-start;font-size:13.5px;padding:11px 12px;white-space:nowrap}

  /* はじめ方のタブ（動作環境／ダウンロード／マニュアル／FAQ）は4つ横並びだと
     ラベルが折り返すので、2×2に組み替える */
  .resource-tabs>.choice-tabs{display:grid;grid-template-columns:1fr 1fr;gap:4px;padding:6px;border-radius:12px}
  .resource-tabs>.choice-tabs>[role=tab]{padding:12px 8px;font-size:13px;min-height:46px;white-space:nowrap;border-radius:8px;border-bottom:0}
  .resource-tabs>.choice-panel{padding:24px 18px;border-radius:14px;border-top:1px solid #dce4eb;min-height:0}

  /* 対応プレゼンアプリのチップを詰めて、バラけた印象を抑える */
  .app-names{column-gap:8px;row-gap:8px}
  .app-chip{padding:8px 14px;font-size:14px}
}

/* ── デバイス連携の図（見出しの右）────────────────────────────────
   ⚠️ Apple製品の形は描かないこと。Apple 提供の公式素材以外で製品を表現するのは
   ガイドライン違反にあたるため、機種を特定しない汎用アイコンで「つながり」だけを示す。
   デバイスは大きく、接続（電波/ケーブル）のアイコンは小さいまま文字の横に置く。 */
.explorer-label{display:grid;grid-template-columns:1fr auto;align-items:center;gap:30px}
/* 下向き矢印は説明文の行頭に置く（離して置くと何を指すのか伝わらない）。 */
.explorer-hint{display:flex;align-items:center;gap:9px}
.explorer-hint svg{width:20px;height:20px;color:#008ace;flex:none}
.explorer-label>.overline,.explorer-label>h2,.explorer-label>p{grid-column:1}
/* ⚠️ grid-row:1/-1 は「明示グリッド」の終端を指す。ここは暗黙行しか無いので
   1/1 と同じ扱いになり縦中央に来ない。span で指定すること。 */
.link-map{grid-column:2;grid-row:1/span 3;align-self:center;display:flex;align-items:center;gap:10px;
  padding:16px 20px;background:#fff;border:1px solid #cfe3f1;border-radius:14px;
  box-shadow:0 6px 18px rgba(16,46,68,.06)}
.lm-node{display:flex;flex-direction:column;align-items:center;gap:7px;min-width:84px}
.lm-ico{display:flex;align-items:center;justify-content:center;width:62px;height:62px;
  border-radius:17px;background:#eaf5fc;border:1px solid #cbe4f4;color:#0b7fb8}
.lm-ico svg{width:32px;height:32px}
.lm-name{font-size:12px;font-weight:700;color:#2b4256;letter-spacing:-.01em;white-space:nowrap}
/* つなぎ目：点線の上に「アイコン＋文字」を横一列で乗せる */
/* アイコンの中心（= 62px の半分）に合わせる。節（.lm-node）はラベルのぶん背が高いので、
   flex の中央揃えに任せると点線と文字が下にずれる。上端から固定量で合わせる。 */
.lm-hop{position:relative;display:flex;align-items:center;justify-content:center;
  align-self:flex-start;margin-top:31px;transform:translateY(-50%)}
.lm-hop::before{content:"";position:absolute;left:-16px;right:-16px;top:50%;
  border-top:2px dotted #9fc9e2;z-index:0}
.lm-line{position:relative;z-index:1;display:flex;align-items:center;gap:4px;
  background:#fff;padding:3px 7px;color:#0b7fb8}
.lm-line svg{width:15px;height:15px;flex:none}
.lm-line em{font-style:normal;font-size:11px;color:#8fa7b8}
.lm-line small{font-size:10.5px;font-weight:700;color:#5b7387;white-space:nowrap}
.lm-short{display:none}
/* スマホでも横並びのまま。幅が足りないぶんは各部を少しずつ詰める。 */
@media(max-width:1000px){.explorer-label{grid-template-columns:1fr;gap:18px}
  .link-map{grid-column:1;grid-row:auto;justify-content:center}}
@media(max-width:760px){
  .explorer-label{padding:22px 18px}
  .link-map{padding:13px 6px;gap:2px}
  .lm-node{min-width:50px;gap:5px}
  .lm-ico{width:44px;height:44px;border-radius:13px}
  .lm-ico svg{width:23px;height:23px}
  .lm-name{font-size:10px}
  .lm-hop{margin-top:22px}
  .lm-hop::before{left:-8px;right:-8px}
  .lm-line{padding:2px 3px;gap:2px}
  .lm-line svg{width:12px;height:12px}
  .lm-line small{font-size:8.5px}
  .lm-line em{font-size:8.5px}
  /* 「無線 または 有線」は幅を食うので、狭い画面では短い表記に差し替える */
  .lm-long{display:none}
  .lm-short{display:inline}
}

/* 本質的な位置づけの宣言（教授指示）。「リモコンではない／設計と魅了の間に欠けていた層」。
   ヒーローと開発者メッセージの両方に置き、単なるリモコンとの差別化を最初に伝える。
   ⚠️ 言語切替は body[data-lang="en"] .block.t-en{display:block} を使う。
      .hero-manifesto .t-en{display:block} と書いても body[data-lang] 側の詳細度に負ける。 */
.hero-manifesto{margin:0 0 22px;max-width:520px}
.hero-manifesto .t-ja{display:block}
.hero-manifesto .mf-not{display:block;font-size:13px;font-weight:600;color:#8291a1;margin-bottom:7px;letter-spacing:-.01em}
.hero-manifesto .mf-is{display:block;font-size:16px;font-weight:700;line-height:1.75;letter-spacing:-.03em;color:#eaf4fb;border-left:2px solid #68c8ff;padding-left:14px}
.founder-lede{margin-bottom:16px}
.founder-lede .t-ja{display:block}
.founder-lede .t-ja,.founder-lede .t-en{font-weight:700;color:#12324a;line-height:1.9;border-left:3px solid #008ace;padding-left:15px}
@media(max-width:760px){
  .hero-manifesto{margin-bottom:18px}
  .hero-manifesto .mf-not{font-size:12px}
  .hero-manifesto .mf-is{font-size:14px;padding-left:11px}
  .founder-lede .t-ja,.founder-lede .t-en{padding-left:12px}
}


/* 本番前の推奨設定（2026-09-17）。
   ⚠️ これは装飾ではなく**動作条件**の案内。①を外したまま使うと「振っても効かない」が起きるため、
   手順(.setup-steps)の直後・マニュアルカードの前という、必ず目に入る位置に置く。 */
.preflight{margin:22px 0 4px;padding:18px 20px;border:1.5px solid var(--line);border-radius:14px;background:#fbfcfe}
.preflight>h3{margin:0 0 6px;font-size:1.05rem;font-weight:800}
.preflight-lead{margin:0 0 14px;font-size:.92rem;color:var(--muted)}
.preflight-list{margin:0;padding-left:1.35em;display:grid;gap:14px}
.preflight-list>li::marker{font-weight:800;color:var(--brand)}
.preflight-list h4{margin:0 0 5px;font-size:.98rem;font-weight:800}
.preflight-list code{display:block;margin:0 0 6px;padding:8px 10px;border-radius:8px;
  background:#eef2f8;font-size:.86rem;line-height:1.5;word-break:break-word}
.preflight-list p{margin:0;font-size:.88rem;color:var(--muted)}
@media (max-width:640px){.preflight{padding:15px 14px}.preflight-list{padding-left:1.15em}}


/* 「腕を下ろしたまま送る」と「ダブルタップ」は両立しない（2026-09-21）。
   ⚠️ 片方だけ勧めると、もう片方を使っていた人には「壊れた」に見える。代償ごと並べて選ばせる。 */
.preflight-choice{margin:0 0 16px;padding:14px 16px;border:1.5px solid var(--brand);border-radius:12px;background:#fff}
.preflight-choice>p{margin:0 0 10px;font-size:.9rem}
.preflight-note{margin:10px 0 0 !important;font-size:.84rem;color:var(--muted)}
.preflight-table{width:100%;border-collapse:collapse;font-size:.84rem}
.preflight-table th,.preflight-table td{border:1px solid var(--line);padding:7px 9px;vertical-align:top;text-align:left}
.preflight-table th{background:#f2f6fb;font-weight:800}
.preflight-table tr td:first-child{font-weight:700;white-space:nowrap;background:#fafbfd}
@media (max-width:640px){.preflight-table{font-size:.78rem}.preflight-table th,.preflight-table td{padding:5px 6px}}

/* ── App Store バッジ（Apple 公式素材・無改変）──────────────────────────────
   ⚠️ 発売前は告知、発売後はバッジ。切り替えは <body> の data-prelaunch だけで行う。
      当日は index.html の data-prelaunch="1" を**削除**する → 4箇所が同時に切り替わる。
   ⚠️ バッジは Apple Marketing Tools 取得の公式 SVG を**無改変**で使うこと。
      自作・文言改変・Apple ロゴの単独使用はいずれも規約違反。
      Apple は「近日公開」バッジを配布していないので、発売前は文字の告知にする。 */
.store-live{display:none}
body:not([data-prelaunch]) .store-soon{display:none}
body:not([data-prelaunch]) .store-live{display:inline-block}
/* Apple の指定: 周囲に最低でもバッジ高さの10%の余白を確保する。 */
.store-live{margin:2px 4px}
.store-live img{height:44px;width:auto;display:block}
.store-live .badge-en{display:none}
body[data-lang="en"] .store-live .badge-ja{display:none}
body[data-lang="en"] .store-live .badge-en{display:block}
