.service-section{padding:72px 0;color:#111c36;background:#fff;scroll-margin-top:32px}
.service-section--collapse{padding:18px 0}
.service-collapse,.service-wallet-collapse{border:0}
.service-collapse summary,.service-wallet-collapse summary{display:grid;grid-template-columns:1fr auto;align-items:center;column-gap:22px;cursor:pointer;list-style:none;padding:12px 2px}
.service-collapse summary::-webkit-details-marker,.service-wallet-collapse summary::-webkit-details-marker{display:none}
.service-collapse summary .service-kicker,.service-wallet-collapse summary .service-kicker{grid-column:1}
.service-collapse summary h2,.service-wallet-collapse summary h2{grid-column:1;margin:2px 0;font-size:clamp(1.25rem,2vw,1.65rem)}
.service-collapse summary:after,.service-wallet-collapse summary:after{content:"＋ 開く";grid-column:2;grid-row:1/3;color:#284ed1;font-weight:700;font-size:.9rem;white-space:nowrap}
.service-collapse[open] summary:after,.service-wallet-collapse[open] summary:after{content:"− 閉じる"}
.service-collapse summary:focus-visible,.service-wallet-collapse summary:focus-visible{outline:3px solid #4967ff;outline-offset:6px;border-radius:8px}
.service-collapse-body{padding:26px 0 4px;border-top:1px solid #e2e8f3;animation:service-reveal .22s ease both}
.service-collapse--wide summary{padding:10px 16px;border:1px solid #d7dfef;border-radius:14px;background:#fff}
.service-collapse--wide[open] summary{border-radius:14px 14px 0 0;border-bottom-color:transparent}
.service-collapse--wide .service-collapse-body{padding:28px 0 8px}
.service-collapse--wide .service-details-grid{margin-top:30px}
.service-lounge-link{display:block;width:max-content;max-width:100%;margin:18px 0 0;padding:8px 2px}
.service-wallet-collapse{display:block;margin-top:28px;border:1px solid #c9a169;border-radius:18px;background:linear-gradient(135deg,#fffaf2,#f7eee1);overflow:hidden}
.service-wallet-collapse summary{padding:18px 22px}
.service-wallet-collapse summary .service-kicker{color:#8a5a2e}
.service-wallet-collapse summary:after{color:#7a4d27}
.service-wallet-collapse .service-wallet{margin:0;border:0;border-top:1px solid #c9a16966;border-radius:0;background:#fff;animation:service-reveal .22s ease both}
@keyframes service-reveal{from{opacity:.2;transform:translateY(-5px)}to{opacity:1;transform:none}}
.service-section--tint{background:#f4f7fc;border-block:1px solid #e2e8f3}
#service-structure{padding:18px 0}
.service-section h2{margin:10px 0 20px;font-size:clamp(1.65rem,2.8vw,2.5rem);line-height:1.45;letter-spacing:-.025em}
.service-section p,.service-section li{font-size:1rem;line-height:1.95;color:#465570}
.service-section p{margin:0 0 18px}
.service-section .service-lead{max-width:960px;font-size:1.0625rem}
.service-kicker{display:block;color:#4967ff;font:700 .875rem/1.5 Outfit,system-ui,sans-serif;letter-spacing:.13em}
.service-links{display:flex;flex-wrap:wrap;gap:12px 28px;margin-top:22px}
.service-section a,.service-links a{color:#284ed1;text-decoration:underline;text-underline-offset:5px;text-decoration-thickness:1px;font-size:1rem;line-height:1.8;font-weight:700;overflow-wrap:anywhere}
.service-section a:hover,.service-links a:hover{color:#703ac4}
.service-section a:focus-visible,.service-links a:focus-visible,.service-faq summary:focus-visible{outline:3px solid #4967ff;outline-offset:5px;border-radius:4px}
.service-section .service-note{font-size:.875rem;color:#566780;margin-top:22px;max-width:960px}
.service-roles{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin:28px 0}
.service-role{min-width:0;padding:25px;border:1px solid #dce4f2;border-top:3px solid #4967ff;border-radius:18px;background:#fff}
.service-role:nth-child(2){border-top-color:#9d48cc}.service-role:nth-child(3){border-top-color:#267f91}
.service-role h3{font-size:1.25rem;line-height:1.5;margin:6px 0 12px}
.service-role ul{padding-left:1.3em;margin:12px 0 0}
.service-role p{margin:0}
.service-details-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px}
.service-detail{padding:28px;min-width:0;border:1px solid #dce4f2;border-radius:20px;background:#fff;scroll-margin-top:32px}
.service-detail h2{font-size:clamp(1.35rem,2vw,1.7rem)}
.service-detail p:last-child{margin-bottom:0}
.service-wallet{display:grid;grid-template-columns:1fr 1fr;align-items:center;gap:36px;margin-top:26px;padding:30px;border-radius:22px;background:#0d1c37;color:#fff}
.service-wallet p{color:#d3deed}.service-wallet .service-kicker{color:#81dff0}.service-wallet a{color:#94e5f5}.service-wallet h2{color:#fff}
.service-wallet figure{margin:0;min-width:0}.service-wallet img{display:block;width:100%;height:auto;border-radius:13px}.service-wallet figcaption{font-size:.875rem;color:#d3deed;margin-top:10px}
.service-faq{padding-bottom:88px}.service-faq details{border-bottom:1px solid #dce4f2;padding:20px 0}.service-faq summary{cursor:pointer;font-weight:700;font-size:1.0625rem;line-height:1.8;padding-right:16px}.service-faq details p{margin:14px 0 0;max-width:960px}
.service-footer-links{display:flex;flex-wrap:wrap;gap:12px 22px;justify-content:center;padding:20px 0;border-top:1px solid #ffffff26;background:#070a1b;color:#dae4ff}.service-footer-links a{font-size:.875rem;line-height:1.8;text-decoration:underline;text-underline-offset:4px}
.hero-title h2{font-size:clamp(2rem,4vw,4.4rem);line-height:1.12;letter-spacing:-.05em;margin:10px 0 8px}
.hero-title .photo-service-copy{max-width:730px;margin:14px auto 0;font-size:1rem;line-height:1.8}
.video-copy h1{max-width:620px}.video-copy h1 span{display:block}
.feature-extra-links a{color:inherit;text-decoration:underline;text-underline-offset:5px}
.service-demo-intro{max-width:760px;margin:0 auto 24px}.service-demo-intro h1{font-size:clamp(1.35rem,2.5vw,2rem);line-height:1.5;margin:0 0 12px}.service-demo-intro p{font-size:1rem;line-height:1.85;margin:0 0 12px}.service-demo-intro a{font-size:.9375rem;text-underline-offset:4px}
.service-demo-footer{max-width:1080px;margin:20px auto;padding:20px 24px 30px;font:1rem/1.85 system-ui,sans-serif}.service-demo-footer nav{display:flex;flex-wrap:wrap;gap:12px 24px;border:0;background:transparent;overflow:visible}.service-demo-footer a{color:inherit;font-size:.9375rem;line-height:1.8;padding:0;border:0;text-decoration:underline;text-underline-offset:4px}.service-demo-footer p{font-size:.875rem;line-height:1.8}
.service-lounge-about{padding:22px;margin:0 0 22px;border:1px solid #8b682c88;border-radius:24px;background:#110d09ee}.service-lounge-about h2{font-size:1.25rem;line-height:1.5;margin:0 0 12px;color:#f1d18b}.service-lounge-about p{font-size:1rem;line-height:1.8;color:#d6cbbb;margin:0 0 12px}.service-lounge-about a{font-size:.9375rem;line-height:1.9;color:#f1d18b;text-underline-offset:4px}
@media(max-width:760px){.service-section{padding:48px 0}.service-section--collapse,#service-structure{padding:12px 0}.service-roles,.service-details-grid,.service-wallet{grid-template-columns:minmax(0,1fr)}.service-role,.service-detail{padding:22px}.service-wallet{padding:24px;gap:20px}.service-links{gap:14px}.service-links a{flex-basis:100%}.service-collapse summary,.service-wallet-collapse summary{column-gap:10px}.service-collapse summary:after,.service-wallet-collapse summary:after{font-size:.8rem}.service-collapse--wide summary{grid-template-columns:minmax(0,1fr) auto;padding:12px 13px}.service-collapse--wide summary h2{min-width:0;margin:0;font-size:clamp(.78rem,3.35vw,.95rem);line-height:1.25;letter-spacing:-.045em;white-space:nowrap;overflow:hidden;text-overflow:ellipsis}.service-collapse--wide summary:after{content:"＋";font-size:1rem}.service-collapse--wide[open] summary:after{content:"−"}.service-collapse--wide .service-collapse-body{padding-top:22px}.service-lounge-link{font-size:.9rem;line-height:1.55;margin-top:12px}.service-wallet-collapse{margin-top:14px}.service-wallet-collapse summary{padding:15px 17px}.service-demo-footer{padding:20px 18px 30px}.moresta-nav{flex-wrap:wrap;justify-content:flex-end}.service-footer-links{padding:24px 104px 24px 18px;justify-content:flex-start}}
@media(max-width:520px){.video-copy h1{font-size:1.25rem;line-height:1.5}.video-copy p{font-size:.875rem;line-height:1.7}.hero-title h2{font-size:2rem}}
