/* 2026-11-02 / v6: v5トップを基準に下層を統一。APPSに実画面のPC・スマホモックアップ。 */
.portal-v5 .nav-panel{max-width:none}
.portal-v5 .nav-panel a:last-child{flex-basis:auto;text-align:left}
.portal-v5 .app-feature{display:block}
.portal-v5 .device-showcase{background:#e6ebfb;background-image:linear-gradient(#173df409 1px,transparent 1px),linear-gradient(90deg,#173df409 1px,transparent 1px);background-size:28px 28px;min-height:0;padding:30px 48px;color:var(--blue);overflow:visible}
.portal-v5 .device-showcase:before{display:none}
.device-showcase .art-top{color:var(--blue)}
.device-pair{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,.27fr);gap:48px;align-items:center;margin:30px auto 20px;width:100%;max-width:1100px}
.device-pair figure{margin:0;min-width:0}.device-pair figcaption{font:10px/1.5 Arial,sans-serif;letter-spacing:.12em;color:var(--blue);margin-top:22px;text-align:center}
.desktop-frame{position:relative;border:7px solid #17213a;border-top-width:20px;border-radius:10px 10px 4px 4px;background:#10130f;box-shadow:0 18px 38px #14265c22}
.desktop-frame:before{content:"";position:absolute;top:-13px;left:50%;height:5px;width:5px;border-radius:50%;background:#77829a}
.desktop-frame:after{content:"";position:absolute;left:-4%;right:-4%;bottom:-12px;height:12px;border-radius:2px 2px 14px 14px;background:linear-gradient(#c8cedd,#9faabc);border-top:2px solid #e1e6ef}
.device-screen{display:block;width:100%;height:auto}
.phone-frame{position:relative;background:#11182a;border:7px solid #17213a;border-top-width:20px;border-bottom-width:13px;border-radius:26px;overflow:hidden;box-shadow:0 18px 38px #14265c22}
.phone-frame:before{content:"";position:absolute;top:-13px;left:40%;width:20%;height:4px;border-radius:5px;background:#718099}
.phone-frame:after{content:"";position:absolute;bottom:3px;left:33%;width:34%;height:3px;border-radius:3px;background:#a9b0c1}
.portal-v5 .device-showcase .art-caption{color:#536084;font-size:10px;text-align:left;margin-top:25px}
.portal-v5 .app-information{display:grid;grid-template-columns:1fr 1fr;column-gap:65px;padding:38px 48px 44px}
.portal-v5 .app-information .app-category,.portal-v5 .app-information h3,.portal-v5 .app-provider{grid-column:1}
.portal-v5 .app-description{grid-column:2;grid-row:1 / 4;margin:0;align-self:center;max-width:34em;font-size:14px}
.portal-v5 .app-tags,.portal-v5 .app-device{grid-column:1}
.portal-v5 .app-link{grid-column:2;grid-row:4 / 6;margin-top:22px;align-self:center}
.portal-v5 .app-link-note{grid-column:2;margin-top:0}
.portal-subpage{--muted:#5c6887;--light:#e5eafa;--white:#fff;--green:#173df4;background-image:linear-gradient(#173df408 1px,transparent 1px),linear-gradient(90deg,#173df408 1px,transparent 1px);background-size:28px 28px}
.portal-subpage .site-header{background:#f0f2f7ed;backdrop-filter:blur(12px)}
.portal-subpage>main{padding-top:132px}
.portal-subpage .breadcrumb{padding-block:20px 34px;color:var(--muted);font-size:11px}
.portal-subpage .eyebrow{color:var(--blue);font:700 11px/1.5 Arial,sans-serif;letter-spacing:.1em}
.page-display{font:800 clamp(56px,7vw,108px)/.95 Arial,sans-serif;letter-spacing:-.045em;color:transparent;-webkit-text-stroke:1px var(--blue);margin:16px 0 28px;overflow-wrap:normal;text-wrap:initial}
.page-display span{display:block}
.portal-subpage .detail-hero{grid-template-columns:minmax(0,1fr) minmax(0,1.1fr);gap:72px;padding-block:14px 80px;align-items:center}
.portal-subpage .detail-hero h1{font-size:clamp(28px,3vw,43px);color:var(--blue);line-height:1.5}
.portal-subpage .detail-provider{color:var(--muted);font:12px Arial,sans-serif;margin-top:10px}
.portal-subpage .detail-lead{font-size:14px;line-height:1.9;max-width:36em;margin-top:26px}
.detail-preview{margin:0;min-width:0}.detail-preview figcaption{font-size:10px;color:var(--muted);margin-top:32px;line-height:1.8}
.portal-subpage .app-tags li{border-color:var(--line);color:var(--blue)}
.portal-subpage .button-primary{background:var(--blue);color:white;border:1px solid var(--blue);padding:20px 24px;border-radius:0;display:flex;align-items:center;justify-content:space-between;font-size:14px;text-decoration:none;gap:25px}
.portal-subpage .button-primary:hover{background:#0e2dcc}
.portal-subpage .button-primary span{font-size:23px}
.portal-subpage .requirements{color:var(--muted);font-size:11px;line-height:1.9;max-width:36em}
.portal-subpage .detail-feature-grid{grid-template-columns:1fr 1.2fr;gap:100px;padding-block:48px;border-color:var(--line)}
.feature-number{display:block;font:11px/1 Arial,sans-serif;letter-spacing:.1em;color:var(--blue);margin-bottom:20px}
.portal-subpage .detail-feature-grid h2{color:var(--blue);font-size:28px;line-height:1.6}
.portal-subpage .copy{font-size:14px;line-height:1.9;max-width:39em}
.portal-subpage .copy .note,.portal-subpage .acquire-layout .note{border-color:var(--blue);background:#e9edfa80;padding:14px 18px;font-size:12px;color:var(--muted)}
.portal-subpage .detail-steps{font-size:14px;line-height:1.9}
.portal-subpage .detail-feature-grid:last-child{padding-bottom:90px}
.portal-subpage .site-footer{border-top:1px solid var(--line);background:transparent}
.portal-subpage .acquire-layout,.portal-subpage .legal-main{max-width:1000px;padding-bottom:90px}
.portal-subpage .back-link{margin:16px 0 38px;color:var(--muted);font-size:11px}
.portal-subpage .acquire-layout h1{color:var(--blue);font-size:clamp(29px,3.5vw,46px);line-height:1.5;margin-top:0}
.portal-subpage .acquire-lead{font-size:14px;line-height:1.9;max-width:38em}
.portal-subpage .acquire-box{padding:34px;border:1px solid var(--line);background:white;margin-top:35px}
.portal-subpage .acquire-box>.button-primary{max-width:520px}
.portal-subpage .acquire-box p{font-size:12px;max-width:45em;color:var(--muted)}
.portal-subpage .acquire-layout h2{color:var(--blue);font-size:27px;margin-top:55px}
.install-grid{display:grid;grid-template-columns:1fr 1fr;column-gap:45px;margin-top:28px;counter-reset:installation}
.portal-subpage .install-instruction{border-color:var(--line);padding-block:25px;margin:0;counter-increment:installation}
.portal-subpage .install-instruction:before{content:"0" counter(installation);font:11px Arial,sans-serif;color:var(--blue);display:block;margin-bottom:18px}
.portal-subpage .install-instruction h3{font-size:17px;color:var(--blue);margin-bottom:12px}
.portal-subpage .install-instruction p{font-size:13px;line-height:1.9}
.portal-subpage .legal-title{color:var(--blue);font-size:clamp(30px,3.8vw,47px);margin-top:0}
.portal-subpage .legal-date{color:var(--muted)}
.portal-subpage .legal-lead{font-size:14px;line-height:1.9;max-width:39em}
.portal-subpage .legal-nav{border-color:var(--blue);color:var(--blue);margin-top:38px}
.portal-subpage .legal-section{scroll-margin-top:115px;padding-top:42px}
.portal-subpage .legal-section h2{color:var(--blue);font-size:29px;margin-bottom:30px}
.portal-subpage .legal-section h3{color:var(--ink);font-size:17px;margin-top:30px}
.portal-subpage .legal-section p{max-width:42em;font-size:14px;line-height:1.9}
.portal-subpage .legal-contact{font-size:14px}.portal-subpage .legal-contact dt{color:var(--muted)}
.portal-subpage .legal-draft{background:#e5eafa;color:var(--muted);border-left:2px solid var(--blue)}
.portal-subpage .ad-preview{background-color:var(--paper);background-image:linear-gradient(#173df40b 1px,transparent 1px),linear-gradient(90deg,#173df40b 1px,transparent 1px);background-size:24px 24px;border-radius:0;border:1px solid var(--blue);color:var(--ink)}
.portal-subpage .ad-preview::backdrop{background:#0c174ab8;backdrop-filter:blur(7px)}
.portal-subpage .ad-preview-head{color:var(--blue);border-color:var(--line)}
.portal-subpage .ad-close{border-color:var(--blue);color:var(--blue);background:white}
.portal-subpage .ad-preview h2{color:var(--blue);font-size:31px}
.portal-subpage .ad-placeholder{background:var(--blue);color:white;border:0;min-height:130px}
.portal-subpage .ad-placeholder>span{font-size:30px;letter-spacing:-.04em}
.portal-subpage .ad-cancel{color:var(--muted)}
@media(max-width:900px){.device-pair{gap:28px}.portal-v5 .device-showcase{padding:25px 30px}.portal-v5 .app-information{gap:0 35px;padding:30px}.portal-subpage .detail-hero{gap:40px;grid-template-columns:1fr}.detail-preview{max-width:760px}.portal-subpage .detail-feature-grid{gap:40px;grid-template-columns:1fr 1.2fr}}
@media(max-width:600px){.portal-v5 .device-showcase{padding:22px 20px}.device-pair{grid-template-columns:1fr;gap:38px;margin-top:24px}.device-pair .phone-device{width:min(78%,230px);justify-self:center}.desktop-frame{border-width:5px;border-top-width:15px;border-radius:7px 7px 3px 3px}.desktop-frame:before{top:-10px;width:4px;height:4px}.device-pair figcaption{font-size:10px;margin-top:23px}.portal-v5 .device-showcase .art-caption{font-size:10px;text-align:center}.portal-v5 .app-information{display:block;padding:30px 24px}.portal-v5 .app-description{font-size:13px;margin-top:22px}.portal-v5 .app-link{margin-top:25px}.portal-v5 .app-link-note{margin-top:12px}.portal-subpage>main{padding-top:105px}.portal-subpage .breadcrumb{font-size:10px;padding-block:15px 28px;flex-wrap:wrap}.page-display{font-size:clamp(49px,15vw,82px);margin:18px 0 26px}.portal-subpage .detail-hero{gap:37px;padding-block:0 55px}.portal-subpage .detail-hero h1{font-size:29px}.portal-subpage .detail-lead{font-size:13px}.portal-subpage .detail-feature-grid{grid-template-columns:1fr;gap:22px;padding-block:33px}.portal-subpage .detail-feature-grid h2{font-size:26px}.portal-subpage .copy,.portal-subpage .detail-steps{font-size:13px}.portal-subpage .button-primary{font-size:13px;padding:17px 19px}.portal-subpage .back-link{margin:12px 0 33px}.portal-subpage .acquire-box{padding:23px 20px}.portal-subpage .acquire-layout h2{font-size:24px}.install-grid{grid-template-columns:1fr;gap:0}.portal-subpage .install-instruction{padding-block:24px}.portal-subpage .legal-section h2{font-size:25px}.portal-subpage .legal-section h3{font-size:16px}.portal-subpage .legal-section p{font-size:13px}.portal-subpage .legal-nav{gap:15px;font-size:12px}.portal-subpage .ad-preview h2{font-size:27px}.portal-subpage .ad-preview-body{padding:24px}.portal-subpage .acquire-layout,.portal-subpage .legal-main{padding-bottom:55px}}
.portal-subpage .acquire-layout .page-display,.portal-subpage .legal-main .page-display{font-size:clamp(30px,6.5vw,90px)}

@media(max-width:600px){.portal-subpage .acquire-layout h1{font-size:clamp(24px,6.8vw,29px);text-wrap:initial}}
