@font-face{font-family:'Anton';src:url('anton-subset.woff2') format('woff2');font-weight:400;font-display:swap;}
*{margin:0;padding:0;box-sizing:border-box;}
html{scroll-behavior:smooth;}
body{background:#111113;color:#f4f4f4;font-family:"Hiragino Kaku Gothic ProN","Hiragino Sans","Noto Sans JP",sans-serif;-webkit-font-smoothing:antialiased;}
.wrap{max-width:680px;margin:0 auto;padding:0 20px 64px;}
.infobar{display:flex;justify-content:space-between;align-items:center;padding:12px 20px;border-bottom:1px solid #2c2c2e;font-size:10.5px;font-weight:600;letter-spacing:.12em;color:#bdbdbd;white-space:nowrap;max-width:680px;margin:0 auto;}
.ptitle{padding:28px 0 0;}
.ptitle .en{font-family:'Anton','Arial Narrow',sans-serif;font-size:44px;line-height:1;letter-spacing:.015em;}
.ptitle h1{font-size:24px;font-weight:700;margin-top:12px;letter-spacing:.02em;}
.lead{margin-top:12px;font-size:14.5px;line-height:1.9;color:#d8d8d8;}
.toc{margin-top:26px;border-top:1px solid #2c2c2e;}
.toc a{display:flex;align-items:baseline;gap:14px;padding:13px 4px;border-bottom:1px solid #2c2c2e;text-decoration:none;color:#f4f4f4;touch-action:manipulation;transition:background-color 120ms ease;}
.toc a:active{background-color:rgba(255,255,255,.08);}
.toc .no{font-family:'Anton',sans-serif;font-size:13px;color:#8e8e93;min-width:24px;}
.toc .tx{font-size:15px;font-weight:700;}
.toc .arw{margin-left:auto;color:#8e8e93;}
section{margin-top:44px;}
.sec-head{display:flex;align-items:baseline;gap:12px;border-bottom:2px solid #f4f4f4;padding-bottom:10px;}
.sec-head .no{font-family:'Anton',sans-serif;font-size:15px;color:#8e8e93;}
.sec-head h2{font-size:20px;font-weight:700;letter-spacing:.02em;}
.sec-head .en{margin-left:auto;font-family:'Anton',sans-serif;font-size:12px;letter-spacing:.14em;color:#8e8e93;}
p.body{margin-top:14px;font-size:15px;line-height:1.9;color:#e6e6e6;}
.note{font-size:12.5px;line-height:1.8;color:#9a9aa0;margin-top:10px;}
table.price{width:100%;border-collapse:collapse;margin-top:16px;}
table.price th,table.price td{padding:13px 4px;border-bottom:1px solid #2c2c2e;font-size:15px;text-align:left;vertical-align:top;line-height:1.7;}
table.price td.p{text-align:right;font-weight:700;white-space:nowrap;padding-left:12px;}
.subhead{margin-top:28px;font-size:16px;font-weight:700;}
.steps{margin-top:16px;}
.step{display:flex;gap:16px;padding:16px 0;border-bottom:1px solid #2c2c2e;}
.step .n{font-family:'Anton',sans-serif;font-size:22px;color:#f4f4f4;background:#26262a;border-radius:2px;min-width:40px;height:40px;display:flex;align-items:center;justify-content:center;}
.step h3{font-size:15.5px;font-weight:700;}
.step p{margin-top:6px;font-size:14px;line-height:1.85;color:#d8d8d8;}
ul.check{margin-top:14px;list-style:none;}
ul.check li{font-size:14.5px;line-height:1.85;padding:10px 0 10px 22px;border-bottom:1px solid #232326;position:relative;color:#e6e6e6;}
ul.check li::before{content:"";position:absolute;left:2px;top:19px;width:8px;height:8px;background:#f4f4f4;}
.cta{display:block;margin-top:28px;background:#f4f4f4;color:#111113;text-align:center;text-decoration:none;font-weight:700;font-size:16px;padding:17px 10px;border-radius:2px;touch-action:manipulation;}
.cta-sub{display:block;text-align:center;margin-top:10px;font-size:12.5px;color:#9a9aa0;}
.btn-ghost{display:block;margin-top:14px;border:1px solid #4a4a4f;color:#f4f4f4;text-align:center;text-decoration:none;font-weight:700;font-size:14.5px;padding:14px 10px;border-radius:2px;}
.faq-item{border-bottom:1px solid #2c2c2e;}
.faq-item summary{cursor:pointer;list-style:none;padding:17px 26px 17px 4px;font-size:15px;font-weight:700;position:relative;line-height:1.7;}
.faq-item summary::-webkit-details-marker{display:none;}
.faq-item summary::after{content:"+";position:absolute;right:6px;top:15px;font-size:18px;color:#8e8e93;}
.faq-item[open ] summary::after{content:"−";}
.faq-item .a{padding:0 4px 18px;font-size:14.5px;line-height:1.9;color:#d8d8d8;}
.care-phase{margin-top:20px;}
.care-phase h3{font-size:15.5px;font-weight:700;border-left:4px solid #f4f4f4;padding-left:10px;}
.care-phase p{margin-top:8px;font-size:14.5px;line-height:1.9;color:#d8d8d8;}
footer{margin-top:56px;border-top:1px solid #2c2c2e;padding-top:22px;}
footer .brand{font-family:'Anton',sans-serif;font-size:19px;letter-spacing:.03em;}
footer p{margin-top:10px;font-size:12.5px;line-height:1.9;color:#9a9aa0;}
footer .home-link{display:inline-block;margin-top:16px;color:#f4f4f4;font-size:13.5px;font-weight:700;text-decoration:none;border-bottom:1px solid #4a4a4f;padding-bottom:2px;}
.slot-list{margin-top:14px;}
.slot{display:flex;justify-content:space-between;gap:12px;padding:12px 4px;border-bottom:1px solid #2c2c2e;font-size:14.5px;}
.slot .d{font-weight:700;white-space:nowrap;}
.slot .t{color:#d8d8d8;text-align:right;}
input[type=text],textarea,select{width:100%;background:#1c1c1f;border:1px solid #3a3a3f;color:#f4f4f4;font-size:15px;padding:12px;border-radius:2px;margin-top:6px;font-family:inherit;}
label.fl{display:block;margin-top:18px;font-size:14px;font-weight:700;}
label.fl .req{color:#111113;background:#f4f4f4;font-size:10.5px;padding:2px 6px;border-radius:2px;margin-left:8px;vertical-align:2px;}
label.fl .opt{color:#9a9aa0;font-size:10.5px;border:1px solid #4a4a4f;padding:2px 6px;border-radius:2px;margin-left:8px;vertical-align:2px;}
label.fl .hint{display:block;font-weight:400;font-size:12.5px;color:#9a9aa0;margin-top:5px;line-height:1.7;}
#dm-output{white-space:pre-wrap;background:#1c1c1f;border:1px solid #3a3a3f;padding:14px;font-size:14px;line-height:1.8;margin-top:14px;display:none;}
