:root{--bg:#f7fbfb;--soft:#eaf8f6;--accent:#63c9c0;--deep:#267a74;--text:#173d3a;--muted:#647b78;--line:#d6ebe8}
*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;font-family:-apple-system,BlinkMacSystemFont,"Segoe UI","Hiragino Sans","Yu Gothic UI",Meiryo,sans-serif;color:var(--text);background:var(--bg);line-height:1.75}a{text-decoration:none;color:inherit}.wrap{width:min(1100px,calc(100% - 40px));margin:auto}
header{position:sticky;top:0;z-index:5;background:#f7fbfbe8;backdrop-filter:blur(12px);border-bottom:1px solid var(--line)}.nav{height:70px;display:flex;align-items:center;justify-content:space-between}.brand{display:flex;gap:10px;align-items:center;font-weight:800}.brand span{width:38px;height:38px;border-radius:13px;display:grid;place-items:center;color:#fff;background:linear-gradient(145deg,#84d9d2,#48b8b0)}nav{display:flex;gap:24px;color:var(--muted);font-size:.92rem;font-weight:650}
.hero{padding:78px 0 70px;background:radial-gradient(circle at 78% 28%,#def5f2 0 18%,transparent 38%)}.hero-grid{display:grid;grid-template-columns:1.12fr .88fr;gap:44px;align-items:center}.eyebrow{margin:0 0 8px;color:#329b92;font-size:.78rem;font-weight:800;letter-spacing:.16em}h1,h2,h3,h4{line-height:1.25}h1{font-size:clamp(2.6rem,5.2vw,4.25rem);letter-spacing:-.05em;margin:0 0 20px}.hero-line{white-space:nowrap}h2{font-size:clamp(2rem,4vw,3rem);letter-spacing:-.035em;margin:0 0 12px}h3{margin:0;font-size:1.35rem}h4{margin:7px 0 8px;color:#315c57}.lead,.intro,.card p,.soft p,.contact p{color:var(--muted)}.lead{max-width:640px;margin-bottom:28px}
.btn{display:inline-flex;min-height:48px;padding:0 22px;border-radius:999px;align-items:center;justify-content:center;color:white;font-weight:800;background:linear-gradient(135deg,#74d4cc,#3dadA5);box-shadow:0 12px 26px #2f9d9428}.btn.pale{color:var(--deep);background:var(--soft);box-shadow:none;border:1px solid var(--line)}
.visual{min-height:420px;display:grid;place-items:center;position:relative}.orb{position:absolute;width:330px;height:330px;border-radius:50%;background:#e5f8f5}.phone{position:relative;width:235px;height:400px;padding:24px 20px;border-radius:36px;background:#fff;border:1px solid var(--line);box-shadow:0 18px 50px #267a7418;transform:rotate(5deg)}.phone i{display:block;width:52px;height:7px;margin:0 auto 34px;border-radius:8px;background:#caebe7}.phone b{display:block;height:80px;margin:0 0 14px;border-radius:20px;background:linear-gradient(135deg,#eaf8f6,#d7f0ed)}.phone b.short{height:50px}.grid{display:grid;grid-template-columns:repeat(3,1fr);gap:9px;margin-top:26px}.grid em{aspect-ratio:1;border-radius:14px;background:#f1f9f8;border:1px solid #dcefeb}
.section{padding:82px 0}.cards{display:grid;grid-template-columns:repeat(2,1fr);gap:22px;margin-top:32px}.card{display:grid;grid-template-columns:112px 1fr;gap:22px;padding:28px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 10px 30px #267a740d}.app-link-card{cursor:pointer;transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease}.app-link-card:hover{border-color:var(--accent);box-shadow:0 14px 34px #267a7418;transform:translateY(-2px)}.app-link-card:focus-visible{outline:3px solid #63c9c0;outline-offset:4px}.app-icon-image{width:108px;height:108px;display:block;object-fit:cover;border-radius:27px;box-shadow:0 10px 26px #267a7419}.title{display:block}.title h3{white-space:nowrap}.status-row{display:flex;gap:7px;flex-wrap:wrap;justify-content:flex-start;margin-top:8px}.title small{display:inline-flex;align-items:center;min-height:28px;padding:4px 10px;border-radius:999px;font-size:.76rem;font-weight:800;white-space:nowrap}.title small.platform{color:#256d53;background:#e6f6e9}.title small.status.development{color:#2a6593;background:#e8f2fb}.title small.status.live{color:var(--deep);background:var(--soft)}.chips{display:flex;gap:8px;flex-wrap:wrap;margin-top:16px}.chips span{padding:5px 10px;border-radius:999px;background:#f2f9f8;color:#58736f;font-size:.75rem;font-weight:700}
.soft{background:linear-gradient(#eef9f7,#f7fbfb);border-block:1px solid var(--line)}.split{display:grid;grid-template-columns:.9fr 1.1fr;gap:70px}.contact{padding:34px;border-radius:26px;background:#fff;border:1px solid var(--line);display:flex;justify-content:space-between;align-items:center;gap:30px;box-shadow:0 18px 50px #267a7410}.contact h2,.contact p{margin-bottom:4px}.actions{display:flex;align-items:center;gap:18px;flex-wrap:wrap}.link{color:var(--deep);font-weight:800}
footer{padding:28px 0;color:#6c8582;font-size:.84rem}.foot{display:flex;justify-content:space-between;gap:20px}
@media(max-width:800px){nav{display:none}.hero-grid,.cards,.split{grid-template-columns:1fr}.hero-grid{gap:10px}.visual{min-height:330px}.phone{width:205px;height:350px}.contact,.foot{align-items:flex-start;flex-direction:column}.card{grid-template-columns:88px 1fr}.app-icon-image{width:84px;height:84px;border-radius:22px}.status-row{justify-content:flex-start}}@media(max-width:520px){h1{font-size:2.15rem}.hero-line{white-space:normal}.card{grid-template-columns:1fr}.app-icon-image{width:96px;height:96px}.title h3{white-space:normal}.status-row{justify-content:flex-start}}
.privacy-hub{padding:82px 0}.privacy-hub h1{margin-bottom:12px}.privacy-hub .intro{max-width:720px}.privacy-policy-list{display:grid;gap:18px;margin-top:32px;max-width:820px}.privacy-policy-card{display:grid;grid-template-columns:88px 1fr;gap:20px;align-items:center;padding:24px;background:#fff;border:1px solid var(--line);border-radius:22px;box-shadow:0 10px 30px #267a740d}.privacy-policy-card:hover{border-color:var(--accent)}.privacy-policy-card .app-icon-image{width:88px;height:88px;border-radius:22px}.privacy-policy-card h2{margin:0 0 4px;font-size:1.25rem}.privacy-policy-card p{margin:0 0 12px;color:var(--muted)}.privacy-policy-card .link{display:inline-flex;align-items:center;gap:8px}.language-switch{display:flex;gap:8px;justify-content:flex-end;margin:0 0 20px}.language-switch a{display:inline-flex;align-items:center;justify-content:center;min-height:38px;padding:5px 14px;border:1px solid var(--line);border-radius:999px;color:var(--deep);font-size:.9rem;font-weight:800}.language-switch a[aria-current="page"]{color:#fff;background:var(--deep);border-color:var(--deep)}.policy-page{padding:58px 0 82px}.policy-page> .wrap>h1{margin-bottom:12px}.policy-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin-top:28px;align-items:start}.policy-grid.single-policy{grid-template-columns:minmax(0,780px)}.policy-card{min-width:0;padding:30px;background:#fff;border:1px solid var(--line);border-radius:26px;box-shadow:0 10px 30px #267a740d;overflow-wrap:anywhere}.policy-card h2{font-size:1.65rem;margin:0 0 6px}.policy-card h3{font-size:1.12rem;margin:26px 0 8px;padding-top:10px;border-top:1px solid var(--line)}.policy-card p{margin:10px 0;color:var(--muted)}.policy-card p.policy-date{margin-top:0;color:var(--deep);font-weight:700}.policy-card p.policy-bullet{margin:4px 0;padding-left:1em;color:var(--text)}.policy-card a{color:var(--deep);font-weight:700}@media(max-width:900px){.policy-grid{grid-template-columns:1fr}.policy-grid.single-policy{grid-template-columns:1fr}}@media(max-width:520px){.privacy-hub{padding:52px 0}.privacy-policy-card{grid-template-columns:1fr;padding:20px}.privacy-policy-card .app-icon-image{width:84px;height:84px}.policy-page{padding:46px 0 60px}.policy-card{padding:22px}.policy-card h2{font-size:1.4rem}.language-switch{justify-content:flex-start}}
