@font-face{font-family:'Noto Sans JP';src:url(../assets/fonts/01.woff) format('woff');font-display:swap;font-weight:100 900}@font-face{font-family:'Noto Serif JP';src:url(../assets/fonts/02.woff) format('woff');font-display:swap;font-weight:100 900}
:root{--green:#228827;--ink:#263326;--line:#a6c69a;--sage:#f2f7ee;--orange:#ff9400}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:#fff;color:var(--ink);font:17px/1.9 'Noto Sans JP',sans-serif}a{color:var(--green);text-underline-offset:5px}a:hover{text-decoration-thickness:2px}a:focus-visible,.table-scroll:focus-visible{outline:3px solid #bd6400;outline-offset:5px}img{max-width:100%;display:block}h1,h2,h3,p{margin:0}h1,h2,.minor-title{font-family:'Noto Serif JP',serif}h1{font-size:clamp(30px,3.6vw,54px);font-weight:700;line-height:1.6;letter-spacing:.045em;text-align:center;color:#163a21}h2{font-size:clamp(27px,2.8vw,40px);line-height:1.6;letter-spacing:.05em;text-align:center;font-weight:700}h3{font-size:21px;line-height:1.65;font-weight:700;color:var(--green)}.sub-header{max-width:1280px;margin:auto;min-height:82px;display:flex;justify-content:space-between;align-items:center;padding:14px 36px;border-bottom:1px solid #e3ebdf;gap:24px}.sub-header img{width:205px;height:auto}.sub-header nav{display:flex;gap:28px;font-size:15px}.sub-header nav a{text-decoration:none}.breadcrumb{max-width:1232px;margin:16px auto 0;padding:0 24px;font-size:13px;color:#667360}.breadcrumb a{color:#667360}.skip-link{position:absolute;left:10px;top:-100px;padding:10px;background:white;z-index:10}.skip-link:focus{top:10px}.panel{position:relative;isolation:isolate;max-width:1672px;margin:auto;padding:58px 48px 64px;overflow:hidden}.panel-content{position:relative;max-width:1224px;margin:auto;z-index:1}.ornament{position:absolute;z-index:0;pointer-events:none;top:35px;left:14px;width:calc(100% - 28px);height:calc(100% - 70px);object-fit:fill;opacity:.68}.panel:nth-child(even) .ornament{transform:scaleX(-1)}.panel:nth-child(3) .ornament{opacity:.28}.title-rule{display:flex;align-items:center;gap:14px;width:min(520px,75%);margin:21px auto 30px;color:var(--orange);font-size:13px;line-height:1}.title-rule:before,.title-rule:after{content:'';height:1px;background:var(--line);flex:1}.eyebrow{text-align:center;font-family:'Noto Serif JP',serif;color:var(--green);font-size:20px;letter-spacing:.09em;margin:0 0 16px}.intro{max-width:1040px;margin:0 auto 30px;text-align:center;line-height:2}.minor-title{font-size:28px;text-align:center;margin:30px 0 24px;color:var(--ink)}.cards{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}.card{border:1px solid var(--line);border-radius:10px;padding:20px 24px 24px;background:#fff;min-width:0;text-align:center}.card p{text-align:left;margin-top:14px;font-size:17px;line-height:1.85}.number{display:block;font-family:'Noto Serif JP',serif;font-size:29px;font-weight:600;line-height:1.3;color:var(--green)}.card .number{margin-bottom:9px}.illustration{width:100%;height:180px;object-fit:contain;margin:0 auto 14px}.card h3{font-family:'Noto Serif JP',serif;font-size:24px;color:var(--ink)}.checklist{margin:20px 0 24px;padding:0;list-style:none;display:grid;gap:0;background:rgba(255,255,255,.92)}.checklist li{padding:22px 12px;display:flex;gap:22px;border-bottom:1px solid #cdddc5;align-items:flex-start}.checklist .number{min-width:44px;padding-top:2px}.checklist h3{margin-bottom:6px}.checklist p{font-size:17px}.checklist.two-col{grid-template-columns:repeat(2,minmax(0,1fr));gap:0 32px}.comparison{grid-template-columns:repeat(2,minmax(0,1fr))}.comparison .card{background:var(--sage)}.comparison .number{display:none}.note{font-size:14px;line-height:1.9;color:#5c6857;margin:22px auto 0;text-align:center;max-width:1080px}.steps{grid-template-columns:repeat(4,minmax(0,1fr));gap:20px}.steps .card{padding:22px 20px;position:relative}.steps .card:not(:last-child):after{content:'›';font-family:serif;font-size:32px;position:absolute;right:-17px;top:45%;color:var(--orange)}.steps .card h3{font-family:'Noto Sans JP',sans-serif;font-size:19px;color:var(--green)}.steps .card p{font-size:16px}.support{display:grid;grid-template-columns:1fr 290px;align-items:center;gap:30px;padding:30px;border:1px solid var(--line);border-radius:10px;margin-top:32px;background:var(--sage)}.support p{margin-top:12px}.support img{width:100%;height:auto}.faq{margin-top:14px;background:rgba(255,255,255,.94)}.faq article{padding:22px 0;border-bottom:1px solid #cdddc5}.faq h3{display:flex;gap:16px;color:var(--ink);font-size:20px}.faq h3 span{font-family:serif;color:var(--green);font-size:28px;line-height:1.25}.faq p{margin:10px 0 0 40px;font-size:17px}.consult{padding:32px 36px;margin-top:36px;background:var(--sage);border:1px solid var(--line);border-radius:10px;text-align:center;display:flex;flex-direction:column;align-items:center;gap:24px}.consult h3{font-family:'Noto Serif JP',serif;font-size:27px}.consult p{margin-top:12px}.button{background:#ffad19;color:#253524;display:inline-flex;align-items:center;justify-content:center;gap:22px;padding:18px 36px;border-radius:999px;line-height:1.5;text-decoration:none;font-weight:700;font-size:19px;box-shadow:0 3px 0 #e4e8df;max-width:100%}.button:hover{background:#ffb733}.button span{font-size:28px}.table-scroll{overflow-x:auto;border:1px solid var(--line);border-radius:10px;background:#fff}table{width:100%;border-collapse:collapse;font-size:16px;text-align:left}th,td{padding:18px 22px;border-bottom:1px solid #d8e3d1;border-right:1px solid #d8e3d1;vertical-align:top}thead th{background:var(--green);color:white;font-size:18px}tbody th{background:var(--sage);width:20%;color:var(--green)}td{width:40%}tr:last-child td,tr:last-child th{border-bottom:none}th:last-child,td:last-child{border-right:none}.callout{padding:28px 36px;border:1px solid var(--line);background:var(--sage);text-align:center;border-radius:8px;margin-top:28px}.callout p{margin-top:8px}.needs{display:grid;grid-template-columns:repeat(3,1fr);gap:18px}.needs p{border-left:3px solid var(--orange);padding:8px 18px;font-weight:700;color:var(--green)}footer{background:var(--sage);border-top:1px solid #d5e2cd;text-align:center;padding:46px 24px 30px}footer h2{font-size:27px}footer p{font-size:14px;margin-top:10px}.phone{font-size:32px;font-weight:700;text-decoration:none;display:inline-block;margin-top:10px}footer nav{display:flex;gap:28px;justify-content:center;margin:25px 0;font-size:15px}footer small{color:#65705e;font-size:12px}
@media(min-width:1400px){.panel{padding-top:64px;padding-bottom:72px}.intro-panel{padding-top:40px}.illustration{height:200px}}
@media(max-width:1000px){body{font-size:16px}.panel{padding:44px 28px}.cards{gap:16px}.card{padding:18px}.card h3{font-size:21px}.card p{font-size:16px}.illustration{height:150px}.steps{grid-template-columns:repeat(2,minmax(0,1fr))}.steps .card:nth-child(2):after{display:none}.support{grid-template-columns:1fr 200px}.checklist.two-col{gap:0 22px}.checklist li{gap:14px}.minor-title{font-size:25px}.ornament{opacity:.4}}
@media(max-width:620px){body{font-size:16px}.sub-header{padding:14px 20px;min-height:70px;gap:14px}.sub-header img{width:155px}.sub-header nav{gap:14px;font-size:12px}.breadcrumb{font-size:12px;margin-top:12px;padding:0 20px}.panel{padding:36px 20px 42px}.eyebrow{font-size:14px;letter-spacing:.035em}h1{font-size:29px;letter-spacing:0;line-height:1.65}h2{font-size:26px;letter-spacing:0;line-height:1.65}.title-rule{margin:20px auto 24px}.intro{text-align:left;line-height:1.95;margin-bottom:26px}.minor-title{font-size:23px;margin:28px 0 20px}.cards,.comparison,.steps,.checklist.two-col,.needs{grid-template-columns:1fr}.cards{gap:18px}.card{padding:22px}.card h3{font-size:23px}.card p{line-height:1.9}.illustration{height:190px;max-width:320px}.steps .card{text-align:left;padding:22px}.steps .number{margin-bottom:12px}.steps .card:after{display:none}.support{grid-template-columns:1fr;padding:24px;gap:20px}.support img{max-width:230px;margin:auto}.checklist li{padding:22px 0;gap:14px}.checklist .number{font-size:25px;min-width:32px}.checklist h3{font-size:20px}.checklist p{font-size:16px}.faq article{padding:22px 0}.faq h3{font-size:18px;gap:12px}.faq p{font-size:16px;margin-left:0}.consult{padding:26px 20px;gap:22px}.consult h3{font-size:23px}.button{font-size:17px;padding:17px 22px;gap:12px}.note{text-align:left;font-size:13px}.callout{padding:24px}.callout h3{font-size:19px}.ornament{opacity:.24;top:24px;left:8px;width:calc(100% - 16px);height:calc(100% - 48px)}table{font-size:14px;min-width:0;table-layout:fixed}th,td{padding:12px 9px;overflow-wrap:anywhere}thead th{font-size:14px}tbody th{width:24%}td{width:38%}footer nav{flex-direction:column;gap:14px}footer h2{font-size:24px}.phone{font-size:29px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}


.panel .ornament{object-fit:contain;object-position:center;opacity:.34}
.panel:nth-child(3) .ornament{opacity:.28}
@media(max-width:620px){.panel .ornament{object-position:center top;opacity:.32}}
