:root{--app-bg:#f6f8fb;--app-surface:#fff;--app-surface-muted:#f8fafc;--app-surface-tint:#f5f9ff;--app-surface-warm:#fff8ed;--app-text:#202936;--app-text-strong:#111827;--app-text-muted:#667085;--app-border:#dbe5ef;--app-border-soft:#eef2f7;--app-accent:#0068b7;--app-accent-strong:#00508f;--app-accent-soft:#eef8ff;--app-rose:#d93887;--app-rose-strong:#b91c62;--app-rose-soft:#fff1f7;--app-danger:#be123c;--app-danger-soft:#fff1f2;--app-warning:#b45309;--app-warning-soft:#fff7ed;--app-success:#047857;--app-success-soft:#ecfdf5;--app-radius:8px;--app-radius-sm:6px;--app-radius-pill:999px;--app-shadow-sm:0 2px 8px rgba(31,41,55,.07);--app-shadow-md:0 12px 30px rgba(31,41,55,.08);--app-focus-ring:0 0 0 3px rgba(0,104,183,.18)}body{background:var(--app-bg);color:var(--app-text);font-family:メイリオ,Meiryo,ＭＳ ゴシック,Hiragino Kaku Gothic ProN,ヒラギノ角ゴ ProN W3,sans-serif!important;margin:0 0 50px 0}input,select,textarea{font-size:16px}.hero-image{width:100%;height:100px;-o-object-fit:cover;object-fit:cover;-o-object-position:bottom;object-position:bottom;overflow:hidden}.mobile-nav-bar{display:none}.app-nav{background:var(--app-surface);border-bottom:1px solid var(--app-border-soft);padding:8px 12px;text-align:center}.cute-button{display:inline-block;padding:10px 15px;margin:5px;background-color:var(--app-accent);color:#fff;text-decoration:none;border-radius:var(--app-radius);font-weight:800;transition:background-color .2s ease,box-shadow .2s ease,transform .2s ease}.cute-button:focus-visible,.cute-button:hover{background-color:var(--app-accent-strong);box-shadow:var(--app-shadow-sm);transform:translateY(-1px)}.cute-button:focus-visible{outline:none}.app-footer{border-top:1px solid var(--app-border);color:var(--app-text-muted);font-size:.85rem;margin:30px auto 0;max-width:1200px;padding:16px 12px 24px;text-align:center}.footer-links{align-items:center;display:flex;flex-wrap:wrap;gap:8px;justify-content:center}.footer-link{color:var(--app-text-muted);text-decoration:underline}.footer-separator{color:#9ca3af}.footer-link:hover{color:var(--app-accent)}.back-to-top{align-items:center;background:var(--app-accent);border:none;border-radius:var(--app-radius-pill);bottom:22px;box-shadow:0 8px 20px rgba(0,104,183,.24);color:#fff;cursor:pointer;display:inline-flex;font-size:1.65rem;font-weight:700;height:56px;justify-content:center;line-height:1;opacity:0;pointer-events:none;position:fixed;right:22px;transform:translateY(8px);transition:opacity .2s ease,transform .2s ease,background-color .2s ease;width:56px;z-index:1000}.back-to-top.is-visible{opacity:1;pointer-events:auto;transform:translateY(0)}.back-to-top:hover{background:var(--app-accent-strong)}.back-to-top:focus-visible{outline:3px solid rgba(0,104,183,.25);outline-offset:3px}div{text-align:center;-webkit-user-select:none;-moz-user-select:none;user-select:none}.container{max-width:1200px;padding:0 20px}.container,.page-frame{text-align:left;margin:0 auto}.page-frame{color:var(--app-text);max-width:1180px;padding:18px 18px 36px}.page-frame,.page-frame *,.page-frame :after,.page-frame :before{box-sizing:border-box}.page-frame :where(div,section,article,header,p,h1,h2,span,strong,small,ul,li,table,th,td){text-align:left}.page-header{align-items:flex-end;border-bottom:2px solid var(--app-border);display:flex;gap:16px;justify-content:space-between;margin-bottom:14px}.page-header-main{min-width:0}.page-header.has-action .page-header-main{flex:1 1 auto}.page-header .page-header-title{color:var(--app-accent);font-size:28px;line-height:1.3;margin:0 0 8px}.page-header .page-header-summary{color:var(--app-text-muted);font-size:13px;margin:0 0 10px;text-align:right}.page-header-actions{align-items:center;display:flex;flex:0 0 auto;gap:10px;margin-bottom:8px}.page-header-actions .page-header-summary{margin:0}.page-header-action-button{align-items:center;background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);color:var(--app-accent);cursor:pointer;display:inline-flex;font:inherit;font-size:.86rem;font-weight:800;justify-content:center;min-height:36px;padding:0 12px;white-space:nowrap}.page-header-action-button:focus-visible,.page-header-action-button:hover{background:var(--app-accent-soft);border-color:var(--app-accent)}.page-header-action-button:focus-visible{box-shadow:var(--app-focus-ring);outline:none}.page-header.has-action .page-header-action-button{flex:0 0 auto;margin-bottom:8px}.guide-callout{align-items:center;background:var(--app-surface-tint);border:1px solid var(--app-border);border-left:4px solid var(--app-accent);border-radius:var(--app-radius);display:flex;gap:14px;justify-content:space-between;margin:0 0 14px;padding:12px 14px}.guide-callout-title{color:var(--app-text-strong);display:block;font-size:.95rem;font-weight:800;margin-bottom:3px}.guide-callout p{color:var(--app-text-muted);font-size:.86rem;line-height:1.55;margin:0}.guide-callout-link{align-items:center;background:var(--app-accent);border-radius:var(--app-radius);color:#fff;display:inline-flex;flex:0 0 auto;font-size:.86rem;font-weight:800;min-height:36px;padding:0 12px;text-decoration:none}.guide-callout-link:focus-visible,.guide-callout-link:hover{background:var(--app-accent-strong);outline:none}@media (max-width:600px){body{font-size:14px;margin-bottom:50px}.app-header{position:relative;z-index:1100}.container{padding:10px}.page-frame{padding:14px 10px 30px}.page-header{align-items:stretch;flex-direction:column;gap:4px}.page-header .page-header-title{font-size:24px}.page-header .page-header-summary{margin-top:-2px;text-align:left}.page-header-actions{align-items:flex-start;flex-direction:column;margin-bottom:10px}.page-header.has-action{align-items:start;display:grid;grid-template-columns:minmax(0,1fr) auto;-moz-column-gap:12px;column-gap:12px}.page-header.has-action .page-header-main{grid-column:1;min-width:0}.page-header.has-action .page-header-summary{margin:0 0 8px;text-align:left}.page-header.has-action .page-header-action-button{align-self:start;grid-column:2;grid-row:1;justify-self:end;margin:0 0 8px}.mobile-nav-bar{align-items:center;background:var(--app-surface);border-bottom:1px solid var(--app-border);box-sizing:border-box;display:flex;justify-content:space-between;padding:8px 64px 8px 12px}.mobile-nav-title{color:#374151;font-size:1rem;font-weight:700}.mobile-menu-button{align-items:center;background:var(--app-accent);border:none;border-radius:var(--app-radius-pill);box-shadow:0 4px 12px rgba(0,104,183,.2);cursor:pointer;display:inline-flex;height:42px;justify-content:center;padding:0;position:fixed;right:12px;top:8px;transition:background-color .2s ease,box-shadow .2s ease;width:42px;z-index:1300}.mobile-menu-button:focus-visible,.mobile-menu-button:hover{background:var(--app-accent-strong)}.mobile-menu-button:focus-visible{outline:3px solid rgba(0,104,183,.25);outline-offset:3px}.hamburger-lines{display:flex;flex-direction:column;gap:4px;height:16px;justify-content:center;width:20px}.hamburger-lines span{background:#fff;border-radius:999px;display:block;height:2px;transition:opacity .2s ease,transform .2s ease;width:100%}.mobile-menu-button.is-open .hamburger-lines span:first-child{transform:translateY(6px) rotate(45deg)}.mobile-menu-button.is-open .hamburger-lines span:nth-child(2){opacity:0}.mobile-menu-button.is-open .hamburger-lines span:nth-child(3){transform:translateY(-6px) rotate(-45deg)}.app-nav{background:var(--app-surface);border:1px solid var(--app-border);border-radius:var(--app-radius);box-shadow:0 16px 34px rgba(31,41,55,.16);display:none;gap:8px;left:12px;max-height:calc(100vh - 82px);overflow-y:auto;padding:10px 12px 12px;position:fixed;right:12px;top:58px;z-index:1250}.app-nav.is-open{display:grid}.cute-button{border-radius:var(--app-radius);box-sizing:border-box;display:flex;justify-content:center;margin:0;padding:12px 14px;width:100%}.back-to-top{bottom:16px;height:52px;right:16px;width:52px}.guide-callout{align-items:stretch;flex-direction:column;gap:10px}.guide-callout-link{justify-content:center;width:100%}}@media (min-width:601px) and (max-width:1024px){body{font-size:16px}.container{padding:20px}}@media (min-width:1025px){body{font-size:18px}.container{padding:20px}}