@import "https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;500;700;900&family=Barlow:wght@300;400;600;700;800&family=Barlow+Condensed:wght@400;600;700&display=swap";
.doc-oms-architecture{min-height:100vh}.doc-oms-architecture *,.doc-oms-architecture :before,.doc-oms-architecture :after{box-sizing:border-box;margin:0;padding:0}.doc-oms-architecture{--shouen:#c0392b;--ink:#0b5394;--pos:#e67e22;--bg:#fff;--bg2:#f5f7fa;--bg3:#eceef3;--t1:#16161d;--t2:#4a4a57;--t3:#8a8a98;--bd:#00000014;--bd2:#00000024;--ok:#1e7b3c;--ok-l:#e8f5ec;--r:12px;--rl:18px;--pos-dim:#e67e2212;--api-dim:#0b539412;--b2b-dim:#c0392b12;--plat-c:#5c6bc0;--font:var(--font-noto-sans-jp),"Noto Sans JP","Hiragino Kaku Gothic Pro","Yu Gothic","Meiryo",sans-serif}@media (prefers-color-scheme:dark){.doc-oms-architecture{--bg:#0f0f15;--bg2:#181820;--bg3:#22222e;--t1:#e6e6ee;--t2:#a2a2b2;--t3:#5a5a64;--bd:#ffffff17;--bd2:#ffffff29;--ok:#5ad17e;--ok-l:#0a2113;--pos-dim:#e67e221f;--api-dim:#0b539426;--b2b-dim:#c0392b1f}}.doc-oms-architecture{font-family:var(--font);background:var(--bg);color:var(--t1);-webkit-font-smoothing:antialiased;font-size:14px;line-height:1.7}.doc-oms-architecture .hdr{border-bottom:1px solid var(--bd);background:var(--bg);z-index:100;justify-content:space-between;align-items:center;padding:16px 48px;display:flex;position:sticky;top:0}.doc-oms-architecture .hdr-brand{align-items:center;gap:12px;display:flex}.doc-oms-architecture .hdr-logo{color:var(--t1);letter-spacing:.02em;font-family:Barlow,sans-serif;font-size:18px;font-weight:800}.doc-oms-architecture .hdr-logo span{color:var(--shouen)}.doc-oms-architecture .hdr-tag{letter-spacing:.15em;color:var(--t3);text-transform:uppercase;border:1px solid var(--bd2);border-radius:20px;padding:3px 10px;font-family:Barlow Condensed,sans-serif;font-size:11px}.doc-oms-architecture .hdr-title{letter-spacing:.12em;text-transform:uppercase;color:var(--t3);font-family:Barlow Condensed,sans-serif;font-size:12px;font-weight:600}.doc-oms-architecture .hero{text-align:center;padding:44px 48px 0}.doc-oms-architecture .hero-en{letter-spacing:.2em;color:var(--ink);text-transform:uppercase;margin-bottom:8px;font-family:Barlow Condensed,sans-serif;font-size:11px;font-weight:600}.doc-oms-architecture .hero-ja{margin-bottom:6px;font-size:28px;font-weight:900;line-height:1.3}.doc-oms-architecture .hero-sub{color:var(--t2);font-size:13px;font-weight:400}.doc-oms-architecture .diagram{grid-template-columns:1fr 220px 1fr;align-items:stretch;gap:0;max-width:1400px;margin:0 auto;padding:32px 48px 0;display:grid}.doc-oms-architecture .zone{border-radius:var(--rl);border:1px solid var(--bd2);background:var(--bg2);border-left:4px solid;padding:22px 20px}.doc-oms-architecture .zone-pos{border-left-color:var(--pos);background:linear-gradient(145deg,var(--pos-dim),var(--bg2))}.doc-oms-architecture .zone-b2b{border-left-color:var(--shouen);background:linear-gradient(145deg,var(--b2b-dim),var(--bg2))}.doc-oms-architecture .zone:hover{box-shadow:0 4px 20px var(--bd)}.doc-oms-architecture .zone-header{border-bottom:1px solid var(--bd);align-items:flex-start;gap:10px;margin-bottom:16px;padding-bottom:14px;display:flex}.doc-oms-architecture .zone-dot{border-radius:50%;flex-shrink:0;width:10px;height:10px;margin-top:5px}.doc-oms-architecture .zone-label{letter-spacing:.15em;text-transform:uppercase;font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:700}.doc-oms-architecture .zone-name{color:var(--t1);font-family:Barlow,sans-serif;font-size:18px;font-weight:800;line-height:1.2}.doc-oms-architecture .zone-name-ja{color:var(--t3);font-size:11px;font-weight:400}.doc-oms-architecture .feat-section{margin-bottom:14px}.doc-oms-architecture .feat-section-title{letter-spacing:.15em;text-transform:uppercase;color:var(--t3);border-bottom:1px solid var(--bd);margin-bottom:6px;padding-bottom:3px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700}.doc-oms-architecture .fn-item{color:var(--t2);margin-bottom:1px;padding-left:13px;font-size:12px;line-height:1.55;position:relative}.doc-oms-architecture .fn-item:before{content:"·";font-weight:700;position:absolute;left:2px}.doc-oms-architecture .zone-pos .fn-item:before{color:var(--pos)}.doc-oms-architecture .zone-b2b .fn-item:before{color:var(--shouen)}.doc-oms-architecture .tech-tags{flex-wrap:wrap;gap:4px;margin-top:12px;display:flex}.doc-oms-architecture .tag{letter-spacing:.06em;border:1px solid var(--bd2);color:var(--t3);background:var(--bg3);border-radius:4px;padding:2px 7px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:600}.doc-oms-architecture .tag-pos{background:color-mix(in srgb,var(--pos) 10%,transparent);color:var(--pos);border-color:color-mix(in srgb,var(--pos) 25%,transparent)}.doc-oms-architecture .tag-b2b{background:color-mix(in srgb,var(--shouen) 8%,transparent);color:var(--shouen);border-color:color-mix(in srgb,var(--shouen) 20%,transparent)}.doc-oms-architecture .tag-api{background:color-mix(in srgb,var(--ink) 8%,transparent);color:var(--ink);border-color:color-mix(in srgb,var(--ink) 20%,transparent)}.doc-oms-architecture .offline-badge{letter-spacing:.06em;background:var(--ok-l);border:1px solid color-mix(in srgb,var(--ok) 30%,transparent);color:var(--ok);border-radius:20px;align-items:center;gap:5px;margin-top:8px;padding:3px 10px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700;display:inline-flex}.doc-oms-architecture .role-block{margin-bottom:12px}.doc-oms-architecture .role-title{letter-spacing:.1em;text-transform:uppercase;color:var(--shouen);border-bottom:1px solid color-mix(in srgb,var(--shouen) 20%,transparent);margin-bottom:5px;padding-bottom:3px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700}.doc-oms-architecture .zone-center{flex-direction:column;justify-content:center;align-items:center;gap:12px;padding:0 16px;display:flex}.doc-oms-architecture .api-card{border-radius:var(--r);border:1px solid color-mix(in srgb,var(--ink) 25%,transparent);background:color-mix(in srgb,var(--ink) 6%,var(--bg));width:100%;padding:16px 14px}.doc-oms-architecture .api-card:hover{border-color:color-mix(in srgb,var(--ink) 45%,transparent)}.doc-oms-architecture .api-card-label{letter-spacing:.15em;text-transform:uppercase;color:var(--ink);margin-bottom:5px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700}.doc-oms-architecture .api-card-name{color:var(--ink);margin-bottom:8px;font-family:Barlow,sans-serif;font-size:14px;font-weight:800;line-height:1.2}.doc-oms-architecture .ep{color:var(--ink);background:color-mix(in srgb,var(--ink) 10%,transparent);white-space:nowrap;border-radius:3px;margin-bottom:2px;padding:2px 6px;font-family:monospace;font-size:9px;display:block}.doc-oms-architecture .db-card{border-radius:var(--r);border:1px solid color-mix(in srgb,var(--plat-c) 25%,transparent);background:color-mix(in srgb,var(--plat-c) 5%,var(--bg));text-align:center;width:100%;padding:10px 14px}.doc-oms-architecture .db-name{color:var(--plat-c);font-family:Barlow,sans-serif;font-size:12px;font-weight:700}.doc-oms-architecture .db-sub{color:var(--t3);letter-spacing:.06em;font-family:Barlow Condensed,sans-serif;font-size:9px}.doc-oms-architecture .flow-arrow{letter-spacing:.06em;border-radius:10px;align-items:center;gap:4px;padding:3px 8px;font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700;display:flex}.doc-oms-architecture .flow-ul{background:color-mix(in srgb,var(--pos) 10%,transparent);color:color-mix(in srgb,var(--pos) 100%,#5a2c00);border:1px solid color-mix(in srgb,var(--pos) 25%,transparent)}.doc-oms-architecture .flow-dl{background:var(--ok-l);color:var(--ok);border:1px solid color-mix(in srgb,var(--ok) 25%,transparent)}.doc-oms-architecture .flow-sep{background:var(--bd2);width:1px;height:20px}.doc-oms-architecture .flow-labels{grid-template-columns:1fr 220px 1fr;gap:0;max-width:1400px;margin:14px auto 0;padding:0 48px;display:grid}.doc-oms-architecture .flow-left{flex-direction:column;align-items:flex-end;gap:4px;padding-right:14px;display:flex}.doc-oms-architecture .flow-right{padding-left:14px}.doc-oms-architecture .flow-text{letter-spacing:.06em;font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:600}.doc-oms-architecture .flow-text-ul{color:color-mix(in srgb,var(--pos) 100%,#5a2c00)}.doc-oms-architecture .flow-text-dl,.doc-oms-architecture .flow-text-b2b-dl{color:var(--ink)}.doc-oms-architecture .flow-text-b2b-ul{color:var(--shouen)}.doc-oms-architecture .platform{max-width:1400px;margin:24px auto 0;padding:0 48px}.doc-oms-architecture .plat-card{border-radius:var(--r);border:1px solid color-mix(in srgb,var(--plat-c) 25%,transparent);background:color-mix(in srgb,var(--plat-c) 5%,var(--bg));align-items:center;gap:0;padding:16px 24px;display:flex}.doc-oms-architecture .plat-label{letter-spacing:.15em;text-transform:uppercase;color:var(--plat-c);white-space:nowrap;flex-shrink:0;margin-right:28px;font-family:Barlow Condensed,sans-serif;font-size:10px;font-weight:700;line-height:1.5}.doc-oms-architecture .plat-items{flex:1;gap:0;display:flex}.doc-oms-architecture .plat-item{border-right:1px solid color-mix(in srgb,var(--plat-c) 18%,transparent);flex-direction:column;flex:1;gap:3px;padding:0 20px;display:flex}.doc-oms-architecture .plat-item:last-child{border-right:none}.doc-oms-architecture .plat-item-name{color:var(--plat-c);font-family:Barlow,sans-serif;font-size:13px;font-weight:700}.doc-oms-architecture .plat-item-desc{color:var(--t2);font-size:11px}.doc-oms-architecture .legend{max-width:1400px;margin:18px auto;padding:0 48px 40px}.doc-oms-architecture .legend-inner{background:var(--bg2);border:1px solid var(--bd2);border-radius:var(--r);flex-wrap:wrap;align-items:center;gap:20px;padding:12px 18px;display:flex}.doc-oms-architecture .legend-title{letter-spacing:.15em;text-transform:uppercase;color:var(--t3);font-family:Barlow Condensed,sans-serif;font-size:9px;font-weight:700}.doc-oms-architecture .leg-item{color:var(--t2);align-items:center;gap:6px;font-size:11px;display:flex}.doc-oms-architecture .leg-line{border-radius:2px;width:24px;height:2px}.doc-oms-architecture .leg-info{color:var(--t3);margin-left:auto;font-size:10px}@keyframes flowDash__oms_architecture{to{stroke-dashoffset:-40px}}.doc-oms-architecture .flow-path{animation:1.4s linear infinite flowDash__oms_architecture}
