:root{--brand-900:#0a3357;--brand-edge:#072742;--brand-700:#0f4c81;--brand-500:#1a6fb5;--brand-200:#cfe0ef;--brand-100:#eef5fb;--go-light:#17833f;--go-dark:#0f6b33;--go-edge:#0a4d24;--ink:#1a1a1a;--ink-muted:#5a5f66;--line:#e2e5e9;--bg:#fff;--bg-soft:#f7f9fb;--maxw:720px;--font:"Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, system-ui, sans-serif}*{box-sizing:border-box}html{scroll-behavior:smooth}body{font-family:var(--font);color:var(--ink);background:var(--bg);-webkit-text-size-adjust:100%;margin:0;font-size:16px;line-height:1.9;overflow-x:hidden}.wrap{max-width:var(--maxw);margin:0 auto;padding:0 20px}h1{letter-spacing:.01em;margin:0 0 1.2em;font-size:1.75rem;line-height:1.5}h2{background:var(--brand-700);color:#fff;border-radius:4px;margin:3em 0 1em;padding:.6em .8em;font-size:1.35rem;line-height:1.6}h3{border-left:5px solid var(--brand-500);margin:2.4em 0 .8em;padding-left:.6em;font-size:1.12rem;line-height:1.6}h4{margin:2em 0 .6em;font-size:1rem}p{margin:0 0 1.2em}a{color:var(--brand-700);text-underline-offset:3px}a:hover{color:var(--brand-500)}strong{font-weight:700}ul,ol{margin:0 0 1.4em;padding-left:1.4em}li{margin-bottom:.4em}img{max-width:100%;height:auto;margin:1.4em auto;display:block}hr{border:0;border-top:1px solid var(--line);margin:3em 0}blockquote{border-left:4px solid var(--brand-200);color:var(--ink-muted);margin:1.6em 0;padding:.2em 1.2em}.table-scroll{-webkit-overflow-scrolling:touch;overscroll-behavior-x:contain;margin:1.6em 0;overflow-x:auto}table{border-collapse:collapse;width:auto;min-width:100%;font-size:.94rem}th,td{border:1px solid var(--line);text-align:left;vertical-align:top;word-break:normal;overflow-wrap:break-word;line-break:strict;max-width:22em;padding:.7em .8em}th{background:var(--bg-soft);white-space:nowrap;font-weight:700}.box{background:var(--brand-100);border:1px solid var(--brand-200);border-radius:6px;margin:1.8em 0;padding:1.2em 1.4em}.box>:first-child{margin-top:0}.box>:last-child{margin-bottom:0}.box strong:first-child{color:var(--brand-900)}.box ul,.box ol{margin-bottom:0}.box.parent-link,.box.child-links{font-size:.95rem}.box.parent-link p+p,.box.child-links ul{margin-top:.5em}.box.child-links li+li{margin-top:.35em}.cta{text-align:center;margin:2.4em 0 2.6em}.cta-button{background:linear-gradient(180deg, var(--brand-700) 0%, var(--brand-900) 100%);color:#fff;letter-spacing:.02em;text-align:center;cursor:pointer;box-shadow:0 4px 0 var(--brand-edge), 0 6px 16px #07274238;border:0;border-radius:8px;padding:1.05em 2.4em;font-family:inherit;font-size:1.05rem;font-weight:700;text-decoration:none;transition:transform 80ms,box-shadow 80ms,filter .15s;display:inline-block}.cta-button:hover{color:#fff;filter:brightness(1.12)}.cta-button:active{box-shadow:0 0 0 var(--brand-edge), 0 2px 6px #0727422e;transform:translateY(4px)}.cta-button:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px}.hero+hr{display:none}.hero{border-bottom:1px solid var(--brand-200);background:linear-gradient(#e4eff9 0%,#f6fafd 100%);margin:-1px calc(50% - 50vw) 2em;padding:3.2em 0 2.8em}.hero>*{max-width:var(--maxw);margin-left:auto;margin-right:auto;padding-left:20px;padding-right:20px}.hero h1{letter-spacing:-.01em;color:var(--brand-900);margin-bottom:.35em;font-size:2.4rem;line-height:1.4}.hero h2{color:var(--ink);background:0 0;margin:0 auto 1.4em;padding-top:0;padding-bottom:0;font-size:1.3rem;line-height:1.6}.hero p{margin-bottom:1em}.stats{grid-template-columns:repeat(3,1fr);gap:14px;margin:1.8em auto 1.6em;display:grid}.stat{border:1px solid var(--brand-200);text-align:center;background:#fff;border-radius:8px;padding:1.1em 1em}.stat-label{color:var(--ink-muted);border-bottom:1px solid var(--line);margin-bottom:.7em;padding-bottom:.6em;font-size:.8rem;display:block}.stat-value{flex-direction:column;align-items:center;gap:.1em;display:flex}.stat-value .was{color:var(--ink-muted);font-size:.88rem}.stat-value .arrow{color:var(--brand-500);font-size:.9rem;font-weight:700;line-height:1.2}.stat-value b{color:var(--brand-700);letter-spacing:-.01em;font-size:1.55rem;line-height:1.3}.cta-row{flex-wrap:wrap;gap:14px;margin:1.8em auto 2.2em;display:flex}.cta-row .cta-button{margin:0}.cta-row:has(>.cta-button+.cta-button)>.cta-button{text-align:center;flex:1 1 0;min-width:0}@media (width<=700px){.hero{padding:2.2em 0 2em}.hero h1{font-size:1.75rem}.hero h2{font-size:1.1rem}.stats{grid-template-columns:1fr;gap:10px}.stat{text-align:left;justify-content:space-between;align-items:center;padding:.85em 1.1em;display:flex}.stat-label{border-bottom:0;margin-bottom:0;padding-bottom:0}.stat-value{flex-direction:row;align-items:baseline;gap:.4em}.stat-value .arrow{font-size:1rem}.stat-value b{font-size:1.25rem}.cta-row{flex-direction:column}.cta-row .cta-button{text-align:center}}h1+h2,h1+p+h2{color:var(--ink);background:0 0;margin:-.6em 0 1.4em;padding:0;font-size:1.25rem;line-height:1.6}p br+*{margin-top:0}.service-cards{grid-template-columns:repeat(2,1fr);gap:16px;margin:1.8em 0 0;display:grid}.service-card{border:1px solid var(--brand-200);background:#fff;border-radius:10px;flex-direction:column;padding:1.4em 1.5em 1.2em;display:flex}.service-card.featured{background:var(--brand-100);grid-column:1/-1}.service-card h3{color:var(--brand-900);border-left:0;margin:0 0 .7em;padding-left:0;font-size:1.18rem}.service-card.featured h3{font-size:1.35rem}.service-card p{margin-bottom:.8em;font-size:.95rem}.service-card ul{margin-bottom:1em;font-size:.92rem}.service-card li{margin-bottom:.25em}.service-foot{border-top:1px solid var(--line);flex-wrap:wrap;justify-content:space-between;align-items:center;gap:1em;padding-top:.9em;display:flex;margin:auto 0 0!important}.service-card.featured .service-foot{border-top-color:var(--brand-200)}.service-foot .price{color:var(--brand-700);font-size:1.05rem;font-weight:700}.service-link{white-space:nowrap;font-size:.9rem;font-weight:700;text-decoration:none}.service-link:after{content:" →"}@media (width<=640px){.service-cards{grid-template-columns:1fr}.service-card.featured{grid-column:auto}}figure{margin:2em 0}figure img{border:1px solid var(--line);border-radius:6px;margin:0 auto}figcaption{color:var(--ink-muted);text-align:center;margin-top:.7em;font-size:.84rem;line-height:1.7}figure.wide{margin-left:calc(-1 * (100vw - var(--maxw)) / 6);margin-right:calc(-1 * (100vw - var(--maxw)) / 6)}@media (width<=900px){figure.wide{margin-left:0;margin-right:0}}.video-card{margin:2em 0}.video-link{color:var(--ink);text-decoration:none;display:block}.video-thumb{display:block;position:relative}.video-thumb img{width:100%;margin:0}.video-play{background:#000000b8;border-radius:14px;width:76px;height:54px;transition:background .15s;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.video-play:before{content:"";border:12px solid #0000;border-left:21px solid #fff;border-right-width:0;position:absolute;top:50%;left:50%;transform:translate(-35%,-50%)}.video-link:hover .video-play,.video-link:focus-visible .video-play{background:#e00}.video-link:focus-visible{outline:3px solid var(--brand-500);outline-offset:3px}.video-caption{color:var(--brand-700);text-align:center;margin-top:.6em;font-size:.92rem;font-weight:700;line-height:1.6;display:block}.video-caption:before{content:"▶ "}.video-link:hover .video-caption{text-decoration:underline}.eyecatch-fig{margin-top:0;margin-bottom:2.2em}.grid{gap:1em;margin:1.8em 0;display:grid}.grid-3{grid-template-columns:repeat(3,1fr)}.grid-2{grid-template-columns:repeat(2,1fr)}.grid figure{margin:0}.grid figure img{border-radius:4px;width:100%}.grid figcaption{text-align:left;margin-top:.5em;font-size:.76rem}@media (width<=700px){.grid-3{grid-template-columns:repeat(2,1fr)}}@media (width<=460px){.grid-3,.grid-2{grid-template-columns:1fr}}.portrait{max-width:480px;margin:2em auto}.portrait img{border-radius:8px;width:100%}.cta-button.contact{background:linear-gradient(180deg, var(--go-light) 0%, var(--go-dark) 100%);min-width:340px;box-shadow:0 4px 0 var(--go-edge), 0 6px 16px #0a4d2442;padding:1.05em 3.4em;font-size:1.1rem}.cta-button.contact:active{box-shadow:0 0 0 var(--go-edge), 0 2px 6px #0a4d2433}.cta-row:has(>.contact:only-child){justify-content:center;margin:2.2em auto}@media (width<=700px){.cta-button.contact{width:100%;min-width:0;padding:1em 1.4em;font-size:1.05rem}}.site-header{border-bottom:1px solid var(--line);z-index:10;background:#fff;position:sticky;top:0}.site-header .wrap{justify-content:space-between;align-items:center;max-width:1000px;height:62px;display:flex}.logo{color:var(--brand-700);letter-spacing:.02em;font-size:1.1rem;font-weight:700;text-decoration:none}.nav{gap:1.1em;font-size:.9rem;display:flex}.nav a{color:var(--ink);text-decoration:none}.nav a:hover{color:var(--brand-700)}.site-footer{background:var(--bg-soft);border-top:1px solid var(--line);margin-top:5em;padding:2.4em 0;font-size:.88rem}.site-footer .wrap{max-width:1000px}.site-footer .nav{flex-wrap:wrap;gap:.8em 1.4em;margin-bottom:1.2em}.copyright{color:var(--ink-muted)}.author-card{background:var(--bg-soft);border:1px solid var(--line);border-radius:10px;grid-template-columns:96px 1fr;align-items:start;gap:1.2em;margin:2em 0;padding:1.3em 1.5em;display:grid}.author-face{object-fit:cover;border:3px solid #fff;border-radius:50%;width:96px;height:96px;margin:0;box-shadow:0 1px 4px #0000001f}.author-name{color:var(--ink);flex-wrap:wrap;align-items:center;gap:.6em;margin:0 0 .7em;font-size:1.12rem;font-weight:700;display:flex}.author-role{background:var(--brand-700);color:#fff;letter-spacing:.04em;border-radius:3px;padding:.25em .7em;font-size:.72rem;font-weight:700}.author-facts{margin:0 0 .8em;padding-left:1.2em;font-size:.9rem}.author-facts li{margin-bottom:.3em}.author-more{font-size:.86rem;margin:0!important}.author-more a{font-weight:700;text-decoration:none}.author-more a:after{content:" →"}@media (width<=560px){.author-card{grid-template-columns:68px 1fr;gap:1em;padding:1.1em 1.2em}.author-face{width:68px;height:68px}.author-name{font-size:1rem}}.eyecatch{border-radius:8px;width:100%;height:auto;margin:0 0 1.6em}.post-list{padding:0;list-style:none}.post-list li{border-bottom:1px solid var(--line);grid-template-columns:220px 1fr;gap:1.2em;margin:0;padding:1.6em 0;display:grid}.post-thumb{display:block}.post-thumb img{border-radius:6px;width:100%;height:auto;display:block}.post-body a{font-size:1.05rem;font-weight:700;line-height:1.6;text-decoration:none}.post-list p{color:var(--ink-muted);margin:.5em 0 .6em;font-size:.9rem}.post-date{color:var(--ink-muted);font-size:.84rem}@media (width<=560px){.post-list li{grid-template-columns:1fr;gap:.8em}}.draft-badge{color:#fff;vertical-align:middle;background:#b4232a;border-radius:3px;margin-left:.6em;padding:.15em .6em;font-size:.72rem;display:inline-block}@media (width<=640px){body{font-size:15.5px}table{font-size:.88rem}th,td{min-width:8em;max-width:15em;padding:.6em .65em}th:first-child,td:first-child{min-width:8em}.nw{white-space:nowrap}.table-scroll{background:linear-gradient(90deg,#fff 30%,#fff0) 0/28px 100% no-repeat local,linear-gradient(270deg,#fff 30%,#fff0) 100%/28px 100% no-repeat local,radial-gradient(farthest-side at 0,#0000001f,#0000) 0/12px 100% no-repeat,radial-gradient(farthest-side at 100%,#0000001f,#0000) 100%/12px 100% no-repeat}h1{font-size:1.5rem}h2{font-size:1.2rem}.nav{display:none}}.contact-form{margin:1.6em 0 2em}.contact-form label{color:#1a1a1a;margin:1.1em 0 .35em;font-size:.95rem;font-weight:700;display:block}.contact-form .req{color:#fff;vertical-align:middle;background:#b4232a;border-radius:3px;margin-left:.6em;padding:.1em .5em;font-size:.68rem;font-weight:700;display:inline-block}.contact-form input,.contact-form select,.contact-form textarea{box-sizing:border-box;width:100%;font:inherit;color:#1a1a1a;background:#fff;border:1px solid #c4ccd4;border-radius:5px;padding:.65em .75em;font-size:1rem}.contact-form textarea{resize:vertical;line-height:1.7}.contact-form input:focus,.contact-form select:focus,.contact-form textarea:focus{outline:2px solid var(--brand-700);outline-offset:1px;border-color:var(--brand-700)}.contact-form button[disabled]{opacity:.55;cursor:not-allowed}.contact-form .form-note{margin:1.2em 0 0;font-size:.9rem}.contact-form .consent label{align-items:flex-start;gap:.5em;margin:0;font-weight:400;display:flex}.contact-form .consent input[type=checkbox]{flex:none;width:auto;margin:.45em 0 0;padding:0}.contact-form .hp{clip:rect(0 0 0 0);clip-path:inset(50%);white-space:nowrap;width:1px;height:1px;position:absolute;overflow:hidden}.contact-form .cf-turnstile{min-height:65px;margin:1.4em 0 0}.form-status{min-height:1.5em;margin:.2em 0 0;font-size:.95rem}.form-status.ok{color:var(--go-dark);font-weight:700}.form-status.ng{color:#b4232a;font-weight:700}@media (width>=641px){.table-scroll.wide th,.table-scroll.wide td{min-width:8.5em;max-width:20em}.table-scroll.wide th:first-child,.table-scroll.wide td:first-child{min-width:9em}.table-scroll.wide .nw{white-space:nowrap}.table-scroll.wide{background:linear-gradient(90deg,#fff 30%,#fff0) 0/28px 100% no-repeat local,linear-gradient(270deg,#fff 30%,#fff0) 100%/28px 100% no-repeat local,radial-gradient(farthest-side at 0,#0000001f,#0000) 0/12px 100% no-repeat,radial-gradient(farthest-side at 100%,#0000001f,#0000) 100%/12px 100% no-repeat}}.toc{background:var(--bg-soft);border:1px solid var(--line);border-radius:8px;margin:2.2em 0 2.6em;padding:1.2em 1.4em 1em}.toc summary{cursor:pointer;text-align:center;color:var(--ink);font-size:1.05rem;font-weight:700;list-style:none}.toc summary::-webkit-details-marker{display:none}.toc-title:before{content:"☰";color:var(--brand-700);margin-right:.5em}.toc summary:after{content:"［閉じる］";color:var(--brand-700);margin-left:.5em;font-size:.82rem;font-weight:400}.toc details:not([open]) summary:after{content:"［開く］"}.toc ol{margin:0;padding:0;list-style:none}.toc>details>ol{margin-top:.9em}.toc li{margin:0}.toc a{color:var(--ink);border-bottom:1px dotted var(--line);gap:.7em;padding:.55em .2em;line-height:1.55;text-decoration:none;display:flex}.toc a:hover{color:var(--brand-700);background:#fff}.toc>details>ol>li>a{font-weight:700}.toc ol ol a{padding-left:1.6em;font-size:.93rem}.toc-num{min-width:2.2em;color:var(--ink-muted);flex:none;font-weight:700}h2[id],h3[id]{scroll-margin-top:80px}.toc-all{opacity:0;pointer-events:none;position:absolute}.toc-more{display:none}@media (width<=640px){.toc{padding:1em 1em .8em}.toc ol ol a{padding-left:1em;font-size:.9rem}.toc-all:not(:checked)~ol ol{display:none}.toc-more{text-align:center;cursor:pointer;color:var(--brand-700);border:1px solid var(--line);background:#fff;border-radius:6px;margin-top:.8em;padding:.6em;font-size:.9rem;font-weight:700;display:block}.toc-all:checked~.toc-more{display:none}}article details:not(.toc details){margin:1.6em 0}article details:not(.toc details)>summary{cursor:pointer;background:var(--brand-700);color:#fff;text-align:center;box-shadow:0 4px 0 var(--brand-edge);border-radius:8px;justify-content:center;align-items:center;gap:.6em;padding:.95em 1.2em;font-size:1.05rem;font-weight:700;line-height:1.5;list-style:none;display:flex}article details:not(.toc details)>summary::-webkit-details-marker{display:none}article details:not(.toc details)>summary:before{content:"▼";font-size:.85em}article details:not(.toc details)[open]>summary:before{content:"▲"}article details:not(.toc details)>summary:hover{background:var(--brand-500)}article details:not(.toc details)[open]>summary{margin-bottom:1em}.post-aside{display:none}.post-present-bottom{margin:2.6em 0 0;display:block}.post-present-bottom .present-button{max-width:360px;margin:0 auto}@media (width>=1100px){.wrap-aside{grid-template-columns:minmax(0, var(--maxw)) 280px;justify-content:center;align-items:start;gap:40px;max-width:1080px;display:grid}.wrap-aside figure.wide{margin-left:0;margin-right:0}.post-aside{padding-top:4px;display:block;position:sticky;top:86px}.post-present-bottom{display:none}}.present-card{background:linear-gradient(180deg, var(--brand-100) 0%, #fff 100%);border:2px solid var(--brand-700);border-radius:10px;padding:1.3em 1.2em 1.2em;line-height:1.7;box-shadow:0 6px 18px #0727421f}.present-card p{margin:0}.present-badge{color:#fff;letter-spacing:.06em;background:#b4232a;border-radius:999px;padding:.15em .8em;font-size:.8rem;font-weight:700;display:inline-block;margin-bottom:.8em!important}.present-card .present-badge{letter-spacing:.08em;padding:.3em 1.1em;font-size:1.05rem;margin-bottom:.9em!important}.present-title{color:var(--brand-900);font-size:1.08rem;font-weight:700;line-height:1.55}.present-title strong{color:#b4232a;white-space:nowrap}.present-lead{font-size:.9rem;font-weight:700;margin-top:.7em!important}.present-points{margin:.8em 0 1.1em;padding-left:1.2em;font-size:.88rem}.present-points li{margin-bottom:.2em}.cta-button.contact.present-button{width:100%;min-width:0;padding:.9em .6em;font-size:1rem;display:block}.present-note{color:var(--ink-muted);font-size:.76rem;margin-top:.9em!important}.present-band{background:var(--brand-100);border:2px solid var(--brand-700);border-radius:8px;flex-wrap:wrap;align-items:center;gap:.5em .9em;margin:0 0 2em;padding:.9em 1.1em;font-size:.92rem;line-height:1.6;display:flex}.present-band .present-badge{margin:0!important}.present-band-text{flex:18em}.present-band-text strong{color:#b4232a}.present-band-link{white-space:nowrap;font-weight:700}.present-band-link:after{content:" →"}.mk{text-align:center;font-size:1.2em;font-weight:700;line-height:1.4;display:block}.mk.ok{color:var(--go-dark)}.mk.ng{color:#a3aab2}.mk.mid{color:#b07d10}table:has(.mk) th:not(:first-child),table:has(.mk) td:has(>.mk){text-align:center;width:4.2em;min-width:4.2em}table:has(.mk) th:first-child{min-width:0}@media (width<=640px){table:has(.mk) td:first-child{min-width:0;max-width:none}}
