.pocket-246-body {
    --p246-ink:#123b52;
    --p246-ink-2:#2d586d;
    --p246-cyan:#008fc5;
    --p246-cyan-dark:#006f9e;
    --p246-magenta:#c51f5d;
    --p246-soft:#f1f8fb;
    --p246-soft-2:#f8fbfc;
    --p246-line:#d4e3e9;
    --p246-text:#344b57;
    --p246-white:#ffffff;
    color:var(--p246-text);
    font-family:"Noto Sans JP",sans-serif;
}
.pocket-246-body .pocket-246-page { max-width:940px; margin:0 auto; padding:0 0 60px; font-size:16px; line-height:1.9; }
.pocket-246-body .pocket-246-page *, .pocket-246-body .pocket-246-page *::before, .pocket-246-body .pocket-246-page *::after { box-sizing:border-box; }
.pocket-246-body .pocket-246-page a { color:var(--p246-cyan-dark); text-decoration:underline; text-underline-offset:3px; }
.pocket-246-body .pocket-246-page a:hover { color:var(--p246-magenta); }
.pocket-246-body .pocket-246-page a:focus-visible { outline:3px solid #f3b7cd; outline-offset:3px; border-radius:3px; }
.pocket-246-body .pocket-246-hero { margin:22px 0 30px; overflow:hidden; border-radius:18px; background:#eef4f6; box-shadow:0 16px 38px rgba(20,57,73,.12); }
.pocket-246-body .pocket-246-hero img { display:block; width:100%; height:auto; aspect-ratio:3/2; object-fit:cover; }
.pocket-246-body .pocket-246-lead { padding:32px 34px; border-top:5px solid var(--p246-cyan); border-radius:0 0 16px 16px; background:linear-gradient(135deg,#f2f9fc 0%,#fff 76%); }
.pocket-246-body .pocket-246-eyebrow { margin:0 0 9px; color:var(--p246-magenta); font-family:"M PLUS 1 Code",monospace; font-size:13px; font-weight:700; letter-spacing:.11em; }
.pocket-246-body .pocket-246-lead h2 { margin:0 0 18px; color:var(--p246-ink); font-size:29px; line-height:1.55; }
.pocket-246-body .pocket-246-lead p { margin:0 0 13px; }
.pocket-246-body .pocket-246-lead p:last-child { margin-bottom:0; }
.pocket-246-body .pocket-246-summary { margin:26px 0; padding:27px 30px; border:1px solid var(--p246-line); border-radius:16px; background:#fff; box-shadow:0 9px 24px rgba(20,57,73,.06); }
.pocket-246-body .pocket-246-summary h2 { margin:0 0 15px; color:var(--p246-ink); font-size:23px; }
.pocket-246-body .pocket-246-summary ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:11px 24px; margin:0; padding:0; list-style:none; }
.pocket-246-body .pocket-246-summary li { position:relative; padding-left:24px; }
.pocket-246-body .pocket-246-summary li::before { content:"✓"; position:absolute; left:0; color:var(--p246-cyan); font-weight:800; }
.pocket-246-body .pocket-246-toc { margin:26px 0 48px; padding:28px 31px; border-radius:16px; background:var(--p246-ink); color:#fff; }
.pocket-246-body .pocket-246-toc__title { margin:0 0 13px; font-weight:800; letter-spacing:.06em; }
.pocket-246-body .pocket-246-toc ol { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:7px 28px; margin:0; padding-left:22px; }
.pocket-246-body .pocket-246-toc a, .pocket-246-body .pocket-246-toc a:visited { color:#fff; text-decoration-color:rgba(255,255,255,.5); }
.pocket-246-body .pocket-246-toc a:hover { color:#d5f1ff; }
.pocket-246-body .pocket-246-toc a:focus-visible { outline-color:#fff; }
.pocket-246-body .pocket-246-section { margin:0 0 52px; }
.pocket-246-body .pocket-246-section--soft { margin-left:-18px; margin-right:-18px; padding:37px 32px; border-radius:20px; background:var(--p246-soft); }
.pocket-246-body .pocket-246-heading { display:flex; align-items:flex-start; gap:15px; margin-bottom:20px; }
.pocket-246-body .pocket-246-heading > span { display:grid; place-items:center; min-width:45px; height:45px; border-radius:50%; background:var(--p246-cyan); color:#fff; font-family:"M PLUS 1 Code",monospace; font-weight:700; }
.pocket-246-body .pocket-246-heading h2 { margin:0; color:var(--p246-ink); font-size:28px; line-height:1.55; }
.pocket-246-body .pocket-246-section h3 { margin:28px 0 12px; color:var(--p246-ink); font-size:21px; line-height:1.55; }
.pocket-246-body .pocket-246-section p { margin:0 0 16px; }
.pocket-246-body .pocket-246-steps { display:grid; gap:14px; margin:25px 0; padding:0; list-style:none; }
.pocket-246-body .pocket-246-steps li { display:grid; grid-template-columns:100px minmax(0,1fr); gap:20px; align-items:start; padding:22px 24px; border:1px solid var(--p246-line); border-radius:15px; background:#fff; box-shadow:0 7px 19px rgba(20,57,73,.045); }
.pocket-246-body .pocket-246-steps li > span { display:grid; place-items:center; min-height:41px; border-radius:999px; background:#e5f5fb; color:var(--p246-cyan-dark); font-family:"M PLUS 1 Code",monospace; font-weight:700; }
.pocket-246-body .pocket-246-steps h3 { margin:0 0 7px; font-size:20px; }
.pocket-246-body .pocket-246-steps p { margin:0; }
.pocket-246-body .pocket-246-note { margin:25px 0; padding:22px 24px; border-left:5px solid var(--p246-magenta); border-radius:0 12px 12px 0; background:#fff6f9; }
.pocket-246-body .pocket-246-note strong { display:block; margin-bottom:7px; color:var(--p246-ink); font-size:19px; }
.pocket-246-body .pocket-246-note p { margin:0; }
.pocket-246-body .pocket-246-table-wrap { overflow-x:auto; margin:24px 0; border:1px solid var(--p246-line); border-radius:14px; background:#fff; -webkit-overflow-scrolling:touch; }
.pocket-246-body .pocket-246-compare-table { width:100%; min-width:720px; border-collapse:collapse; }
.pocket-246-body .pocket-246-compare-table th, .pocket-246-body .pocket-246-compare-table td { padding:16px 17px; border-right:1px solid var(--p246-line); border-bottom:1px solid var(--p246-line); text-align:left; vertical-align:top; }
.pocket-246-body .pocket-246-compare-table thead th { background:var(--p246-ink); color:#fff; font-weight:700; }
.pocket-246-body .pocket-246-compare-table tbody th { width:24%; background:#eaf5f9; color:var(--p246-ink); }
.pocket-246-body .pocket-246-compare-table tr:last-child th, .pocket-246-body .pocket-246-compare-table tr:last-child td { border-bottom:0; }
.pocket-246-body .pocket-246-compare-table th:last-child, .pocket-246-body .pocket-246-compare-table td:last-child { border-right:0; }
.pocket-246-body .pocket-246-example { margin:25px 0 0; padding:24px 26px; border:1px dashed #7cabbf; border-radius:14px; background:#fff; }
.pocket-246-body .pocket-246-example__label { display:inline-block; margin:0 0 9px !important; padding:5px 12px; border-radius:999px; background:var(--p246-cyan); color:#fff; font-weight:700; }
.pocket-246-body .pocket-246-example p:last-child { margin-bottom:0; }
.pocket-246-body .pocket-246-card-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:17px; margin:24px 0; }
.pocket-246-body .pocket-246-card-grid article { min-width:0; padding:24px; border:1px solid var(--p246-line); border-radius:15px; background:#fff; box-shadow:0 7px 20px rgba(20,57,73,.05); }
.pocket-246-body .pocket-246-card-grid span { display:inline-block; margin-bottom:9px; color:var(--p246-magenta); font-family:"M PLUS 1 Code",monospace; font-size:12px; font-weight:700; letter-spacing:.08em; }
.pocket-246-body .pocket-246-card-grid h3 { margin:0 0 10px; font-size:21px; }
.pocket-246-body .pocket-246-card-grid p { margin:0; }
.pocket-246-body .pocket-246-check-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:10px 22px; margin:20px 0; padding:0; list-style:none; }
.pocket-246-body .pocket-246-check-grid li { position:relative; padding:13px 14px 13px 39px; border:1px solid var(--p246-line); border-radius:11px; background:#fff; }
.pocket-246-body .pocket-246-check-grid li::before { content:""; position:absolute; left:14px; top:17px; width:13px; height:13px; border:2px solid var(--p246-cyan); border-radius:3px; }
.pocket-246-body .pocket-246-caution { padding:18px 21px; border-radius:12px; background:#fff3f6; color:#5d3342; }
.pocket-246-body .pocket-246-flow { display:grid; grid-template-columns:repeat(5,minmax(0,1fr)); gap:11px; margin:26px 0; }
.pocket-246-body .pocket-246-flow article { position:relative; min-width:0; padding:20px 15px; border:1px solid var(--p246-line); border-radius:14px; background:#fff; text-align:center; }
.pocket-246-body .pocket-246-flow b { display:grid; place-items:center; width:38px; height:38px; margin:0 auto 11px; border-radius:50%; background:var(--p246-magenta); color:#fff; font-family:"M PLUS 1 Code",monospace; }
.pocket-246-body .pocket-246-flow h3 { margin:0 0 8px; font-size:18px; }
.pocket-246-body .pocket-246-flow p { margin:0; font-size:14px; line-height:1.75; }
.pocket-246-body .pocket-246-checklist { margin:28px 0 0; padding:25px 27px; border-radius:15px; background:var(--p246-ink); color:#fff; }
.pocket-246-body .pocket-246-checklist h3 { margin:0 0 15px; color:#fff; }
.pocket-246-body .pocket-246-checklist ul { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:9px 22px; margin:0; padding-left:21px; }
.pocket-246-body .pocket-246-schedule-grid { display:grid; grid-template-columns:repeat(3,minmax(0,1fr)); gap:16px; margin:25px 0; }
.pocket-246-body .pocket-246-schedule-grid article { min-width:0; padding:24px; border:1px solid var(--p246-line); border-radius:15px; background:#fff; box-shadow:0 8px 22px rgba(20,57,73,.05); }
.pocket-246-body .pocket-246-schedule-grid i { display:grid; place-items:center; width:44px; height:44px; margin-bottom:13px; border-radius:13px; background:#e6f5fb; color:var(--p246-cyan-dark); font-size:21px; }
.pocket-246-body .pocket-246-schedule-grid h3 { margin:0 0 8px; font-size:20px; }
.pocket-246-body .pocket-246-schedule-grid p { margin:0; }
.pocket-246-body .pocket-246-support-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; margin:24px 0; }
.pocket-246-body .pocket-246-support-grid a, .pocket-246-body .pocket-246-related-grid a { display:flex; flex-direction:column; gap:4px; min-width:0; padding:19px 20px; border:1px solid var(--p246-line); border-radius:13px; background:#fff; color:var(--p246-text); text-decoration:none; box-shadow:0 6px 18px rgba(20,57,73,.04); transition:transform .18s ease,border-color .18s ease,box-shadow .18s ease; }
.pocket-246-body .pocket-246-support-grid a:hover, .pocket-246-body .pocket-246-related-grid a:hover { transform:translateY(-2px); border-color:var(--p246-cyan); color:var(--p246-text); box-shadow:0 10px 25px rgba(20,57,73,.1); }
.pocket-246-body .pocket-246-support-grid a:focus-visible, .pocket-246-body .pocket-246-related-grid a:focus-visible { outline:3px solid #8bd3ef; outline-offset:3px; }
.pocket-246-body .pocket-246-support-grid strong, .pocket-246-body .pocket-246-related-grid strong { color:var(--p246-ink); font-size:18px; }
.pocket-246-body .pocket-246-support-grid span, .pocket-246-body .pocket-246-related-grid span { color:#5e727c; font-size:14px; }
.pocket-246-body .pocket-246-hub-back { margin:20px 0 0 !important; text-align:right; }
.pocket-246-body .pocket-246-related { margin:0 0 52px; padding:31px; border:1px solid var(--p246-line); border-radius:18px; background:#fff; }
.pocket-246-body .pocket-246-related h2 { margin:0 0 20px; color:var(--p246-ink); font-size:26px; }
.pocket-246-body .pocket-246-related-grid { display:grid; grid-template-columns:repeat(2,minmax(0,1fr)); gap:13px; }
.pocket-246-body .pocket-246-faq details { margin:0 0 12px; border:1px solid var(--p246-line); border-radius:13px; background:#fff; overflow:hidden; }
.pocket-246-body .pocket-246-faq summary { position:relative; padding:20px 54px 20px 22px; color:var(--p246-ink); font-weight:700; cursor:pointer; list-style:none; }
.pocket-246-body .pocket-246-faq summary::-webkit-details-marker { display:none; }
.pocket-246-body .pocket-246-faq summary::after { content:"＋"; position:absolute; right:21px; top:50%; transform:translateY(-50%); color:var(--p246-cyan); font-size:24px; }
.pocket-246-body .pocket-246-faq details[open] summary::after { content:"−"; }
.pocket-246-body .pocket-246-faq details p { margin:0; padding:0 22px 21px; }
.pocket-246-body .pocket-246-final-cta { margin:54px 0 0; padding:38px 34px; border-radius:20px; background:linear-gradient(135deg,var(--p246-ink) 0%,#006f92 100%); color:#fff; text-align:center; box-shadow:0 18px 38px rgba(18,59,82,.18); }
.pocket-246-body .pocket-246-final-cta .pocket-246-eyebrow { color:#aee9ff; }
.pocket-246-body .pocket-246-final-cta h2 { margin:0 0 13px; color:#fff; font-size:29px; line-height:1.55; }
.pocket-246-body .pocket-246-final-cta p { margin:0 auto 23px; max-width:760px; }
.pocket-246-body .pocket-246-final-cta__buttons { display:flex; flex-wrap:wrap; justify-content:center; gap:13px; }
.pocket-246-body .pocket-246-button, .pocket-246-body .pocket-246-button:visited { display:inline-flex; align-items:center; justify-content:center; min-width:250px; min-height:54px; padding:13px 23px; border:2px solid transparent; border-radius:999px; font-weight:800; text-decoration:none; transition:background-color .18s ease,color .18s ease,border-color .18s ease,transform .18s ease; }
.pocket-246-body .pocket-246-button--primary, .pocket-246-body .pocket-246-button--primary:visited { background:#fff; color:var(--p246-ink); border-color:#fff; }
.pocket-246-body .pocket-246-button--primary:hover { background:#e6f6fc; color:var(--p246-ink); border-color:#e6f6fc; transform:translateY(-1px); }
.pocket-246-body .pocket-246-button--outline, .pocket-246-body .pocket-246-button--outline:visited { background:transparent; color:#fff; border-color:#fff; }
.pocket-246-body .pocket-246-button--outline:hover { background:#fff; color:var(--p246-ink); border-color:#fff; transform:translateY(-1px); }
.pocket-246-body .pocket-246-button:focus-visible { outline:3px solid #ffb9d2; outline-offset:4px; }
.pocket-246-body .pocket-246-anchor:target { scroll-margin-top:95px; }

@media (max-width:900px) {
    .pocket-246-body .pocket-246-page { padding-left:12px; padding-right:12px; }
    .pocket-246-body .pocket-246-flow { grid-template-columns:repeat(2,minmax(0,1fr)); }
    .pocket-246-body .pocket-246-schedule-grid { grid-template-columns:1fr; }
}
@media (max-width:700px) {
    .pocket-246-body .pocket-246-lead { padding:27px 22px; }
    .pocket-246-body .pocket-246-lead h2 { font-size:25px; }
    .pocket-246-body .pocket-246-summary, .pocket-246-body .pocket-246-toc, .pocket-246-body .pocket-246-related, .pocket-246-body .pocket-246-final-cta { padding:24px 20px; border-radius:14px; }
    .pocket-246-body .pocket-246-summary ul, .pocket-246-body .pocket-246-toc ol, .pocket-246-body .pocket-246-card-grid, .pocket-246-body .pocket-246-check-grid, .pocket-246-body .pocket-246-checklist ul, .pocket-246-body .pocket-246-support-grid, .pocket-246-body .pocket-246-related-grid { grid-template-columns:1fr; }
    .pocket-246-body .pocket-246-section--soft { margin-left:-8px; margin-right:-8px; padding:31px 16px; border-radius:16px; }
    .pocket-246-body .pocket-246-heading { gap:12px; }
    .pocket-246-body .pocket-246-heading > span { min-width:38px; height:38px; }
    .pocket-246-body .pocket-246-heading h2 { font-size:24px; }
    .pocket-246-body .pocket-246-steps li { grid-template-columns:1fr; gap:12px; padding:20px; }
    .pocket-246-body .pocket-246-steps li > span { width:88px; min-height:38px; }
    .pocket-246-body .pocket-246-flow { grid-template-columns:1fr; }
    .pocket-246-body .pocket-246-final-cta__buttons { display:grid; }
    .pocket-246-body .pocket-246-button { width:100%; min-width:0; }
}
@media (max-width:480px) {
    .pocket-246-body .pocket-246-lead h2, .pocket-246-body .pocket-246-heading h2 { overflow-wrap:anywhere; }
    .pocket-246-body .pocket-246-compare-table { min-width:690px; }
    .pocket-246-body .pocket-246-faq summary { padding:18px 48px 18px 18px; }
    .pocket-246-body .pocket-246-faq details p { padding:0 18px 19px; }
}
