/* 鮮やかなグリーンの相談ボタンと、各場面の人物イラスト */
#reservation .date-control input[type=date]{display:flex;align-items:center;justify-content:center;text-align:center;position:relative;padding:0 26px;line-height:46px}
#reservation input[type=date]::-webkit-datetime-edit{display:flex;align-items:center;justify-content:center;padding:0;width:100%;height:100%}
#reservation input[type=date]::-webkit-datetime-edit-fields-wrapper{padding:0;display:inline-flex;align-items:center;justify-content:center}
#reservation input[type=date]::-webkit-date-and-time-value{text-align:center;margin:auto;line-height:46px}
#reservation input[type=date]::-webkit-calendar-picker-indicator{position:absolute;right:8px;top:50%;transform:translateY(-50%);margin:0}
.btn[data-open]{background:linear-gradient(180deg,#3cdd38 0%,#00bc00 100%);box-shadow:0 5px 0 #009b00;color:#fff;border:1px solid #25d725}
.btn[data-open]:hover{background:linear-gradient(180deg,#32d62e 0%,#00a900 100%)}
.btn[data-open]:focus-visible{outline-color:#008900}
.header .btn[data-open]{box-shadow:0 3px 0 #008900}
.editorial-illustration{display:block;width:100%;height:auto;aspect-ratio:3/2;object-fit:cover;border-radius:14px;margin:16px 0 22px;background:#fff8f2}
.worry-grid{gap:28px}
.worry-grid>div{padding:22px;border:1px solid #f0ded6;border-radius:18px;background:#fffcfa}
.worry-grid h3{font-size:20px}
.worry-grid p{margin-bottom:0}
.reason-grid article{padding:24px;border:1px solid #eaded9;border-radius:18px;background:#fffdfa}
.reason-grid h3{font-size:20px}
.reverse-steps li{display:flex;flex-direction:column}
.reverse-steps li>small.step-takeaway{display:flex;align-items:center;justify-content:center;width:100%;min-height:76px;margin-top:auto;padding:14px 16px;border:2px solid #df6460;border-radius:12px;background:#fff;color:#a4363c;font-size:17px;font-weight:800;line-height:1.8;text-align:center;box-shadow:0 4px 0 #f5d5cb}
.section-conversion{text-align:center;margin:42px auto 0;grid-column:1/-1}
.section-conversion>p{margin:0 0 12px;color:#596b26;font-size:12px;font-weight:700;letter-spacing:.08em}
.section-conversion .btn{min-width:340px}
.about{grid-template-columns:1fr;gap:30px}
.about-title{max-width:740px;margin:auto;text-align:center}
.about .about-title h2{text-align:center}
.approach-list{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:26px;margin:0}
.approach-list li{display:flex;flex-direction:column;gap:0;padding:22px;border:1px solid #eaded9;border-radius:18px;background:#fffdfa}
.approach-list li>span{font-size:26px;line-height:1.4}
.approach-list h3{font-size:18px}
.approach-list .editorial-illustration{margin-top:16px}
.about>.section-conversion{margin-top:8px}
.final-fp-illustration{display:block;width:280px;max-width:80%;height:auto;aspect-ratio:3/2;object-fit:cover;margin:0 auto 24px;border-radius:100px 100px 20px 20px}
@media(max-width:1050px) and (min-width:701px){.worry-grid,.reason-grid,.approach-list{gap:16px}.worry-grid>div,.reason-grid article,.approach-list li{padding:16px}.reverse-steps li>small.step-takeaway{font-size:14px}.reason-grid h3,.worry-grid h3{font-size:17px}}
@media(max-width:700px){
 #reservation .date-control input[type=date]{padding:0 18px;line-height:44px}
 #reservation input[type=date]::-webkit-calendar-picker-indicator{right:4px}
 #reservation input[type=date]::-webkit-date-and-time-value{line-height:44px}
 .worry-grid,.reason-grid,.approach-list{grid-template-columns:1fr;gap:24px}
 .worry-grid>div,.reason-grid article,.approach-list li{padding:22px}
 .worry-grid h3,.reason-grid h3{font-size:20px}
 .reason-number{position:static;display:block;font-size:24px}
 .editorial-illustration{max-width:340px;margin:14px auto 20px}
 .reverse-steps li>small.step-takeaway{font-size:16px;min-height:68px;margin-top:8px;padding:12px}
 .section-conversion{margin-top:30px}
 .section-conversion .btn{min-width:0;width:100%;max-width:360px;font-size:14px;gap:16px;padding:18px}
 .section-conversion>p{font-size:11px}
 .about{gap:24px}.about-title{width:100%}.about .about-title h2{font-size:26px}
 .final-fp-illustration{width:240px;margin-bottom:20px}
}

/* 全幅の文章と、各セクション共通の相談ボタン幅 */
.worry-grid>div{display:flex;flex-direction:column;min-width:0}.worry-grid h3,.worry-grid p{width:100%;max-width:none;grid-column:1/-1}.worry-grid h3{line-height:1.65}.worry-grid .worry-title-line{display:block;font:inherit;color:inherit;white-space:nowrap}.worry-grid p{line-height:1.95;text-align:left}.section-conversion{width:100%;min-width:0}.section-conversion .btn{width:min(100%,360px);min-width:0;min-height:62px;padding:18px 24px;box-sizing:border-box}.field .phone-help{display:block;margin:7px 0 0;font-size:11px;line-height:1.7;font-weight:400}
@media(max-width:700px){.worry-grid h3{font-size:20px;margin:0 0 12px}.worry-grid p{font-size:13px;margin:0}.section-conversion .btn{font-size:14px;gap:20px}.worry-grid .editorial-illustration{margin:14px auto 20px}}
@media(max-width:360px){.worry-grid h3{font-size:18px}}

/* Readable conversion labels, including the header and mobile fixed bar. */
.btn[data-open]{font-size:18px;line-height:1.5;white-space:normal}
.btn[data-open]>span{flex-shrink:0}
.header .btn[data-open]{font-size:14px}
.header .btn[data-open]>.cv-label{font:inherit;line-height:1.4;word-break:keep-all;flex-shrink:1}
@media(max-width:700px){
 .btn[data-open]{font-size:16px;gap:14px}
 .hero .main-cta[data-open]{font-size:16px}
 .header .btn[data-open]{font-size:12px;max-width:50%;padding:11px 12px;gap:6px;flex-shrink:0}
 .mobile-bar .btn[data-open]{font-size:14px;padding:12px 16px;gap:12px;flex-shrink:0}
 .final-cta .btn[data-open]{font-size:16px;max-width:100%;padding:16px 14px;gap:10px}
}
