/* 自動生成（scripts/build-columns.py）← columns/ecocute-subsidy-2026/style.css（GPT の CSS そのまま。.col-gpt 配下にスコープしただけ） */

.col-gpt .sub-hero{position:relative;isolation:isolate;display:grid;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr);align-items:center;gap:12px;width:100%;aspect-ratio:3/2;margin:0 0 32px;padding:34px 32px 54px;overflow:hidden;border:1px solid #cfdee5;border-radius:16px;background:#fffaf0;color:#5d4c3d;min-height:0}
.col-gpt .sub-hero::before{content:"";position:absolute;right:-165px;top:-90px;width:460px;height:660px;border-radius:48% 0 0 52%;background:#e5efe5;transform:rotate(-13deg);z-index:-1}
.col-gpt .sub-hero-copy{position:relative;z-index:2;min-width:0}
.col-gpt .sub-hero-kicker{font-size:15px;font-weight:500;letter-spacing:.045em;margin:0 0 19px}
.col-gpt .sub-hero h1{margin:0;font-size:inherit;font-weight:500;line-height:1.4;letter-spacing:.025em;border:0;padding:0}
.col-gpt .sub-hero-year{display:table;border:1px solid #4d8068;border-radius:999px;padding:4px 17px 7px;background:#ffffffc9;font-size:20px;line-height:1.4;color:#4d8068;margin:0 0 18px;font-weight:500}
.col-gpt .sub-hero-heading{display:block;font-size:35px;line-height:1.5}
.col-gpt .sub-hero-topic-line{display:flex;align-items:baseline;gap:5px;flex-wrap:wrap;color:#4d8068;line-height:1.5}
.col-gpt .sub-hero-topic{font-size:56px;font-weight:600}
.col-gpt .sub-hero-tail{font-size:29px;font-weight:500}
.col-gpt .sub-hero-question{display:block;font-size:31px;line-height:1.6;margin-top:2px}
.col-gpt .sub-hero-art{position:relative;z-index:2;min-width:0;height:290px;color:#4d8068}
.col-gpt .sub-hero-art::before{content:"";position:absolute;left:2%;top:74px;width:245px;height:245px;border-radius:50%;border:1px solid #fff;background:#ffffff80}
.col-gpt .sub-hero-bear{position:absolute;left:0;bottom:0;width:180px;height:auto}
.col-gpt .sub-hero-pocket{position:absolute;right:0;bottom:-9px;width:78px;height:auto;transform:rotate(8deg)}
.col-gpt .sub-hero-document{position:absolute;right:4%;top:10px;width:74px;height:74px;transform:rotate(7deg)}
.col-gpt .sub-hero-wave{position:absolute;left:0;bottom:0;width:100%;height:62px;z-index:0}
@media(max-width:1199px) and (min-width:761px){.col-gpt .sub-hero{padding-inline:30px;grid-template-columns:minmax(0,1.8fr) minmax(0,1fr)}.col-gpt .sub-hero-topic{font-size:52px}.col-gpt .sub-hero-tail{font-size:27px}.col-gpt .sub-hero-heading{font-size:30px}.col-gpt .sub-hero-question{font-size:27px}.col-gpt .sub-hero-bear{width:175px}.col-gpt .sub-hero-pocket{width:78px}.col-gpt .sub-hero-art::before{width:220px;height:220px;top:98px}.col-gpt .sub-hero-document{width:74px;height:74px;top:14px}}
@media(max-width:760px){.col-gpt .sub-hero{grid-template-columns:minmax(0,1fr);width:100%;aspect-ratio:auto;gap:0;padding:24px 22px 29px;margin-bottom:24px;min-height:0}.col-gpt .sub-hero::before{right:-145px;top:122px;width:410px;height:490px}.col-gpt .sub-hero-kicker{font-size:12px;margin-bottom:16px;letter-spacing:.02em}.col-gpt .sub-hero-year{font-size:16px;padding:3px 14px 5px;margin-bottom:14px}.col-gpt .sub-hero-heading{font-size:26px}.col-gpt .sub-hero-topic{font-size:48px}.col-gpt .sub-hero-tail{font-size:24px}.col-gpt .sub-hero-question{font-size:25px;margin-top:2px}.col-gpt .sub-hero-art{height:176px;width:240px;max-width:100%;justify-self:end;margin-top:12px}.col-gpt .sub-hero-art::before{top:14px;width:180px;height:180px;left:10px}.col-gpt .sub-hero-bear{width:134px;left:12px;bottom:0}.col-gpt .sub-hero-pocket{width:65px;right:3px;bottom:0}.col-gpt .sub-hero-document{width:53px;height:53px;right:8px;top:0}.col-gpt .sub-hero-wave{height:42px}}
@media(max-width:370px){.col-gpt .sub-hero{padding-inline:20px}.col-gpt .sub-hero-heading{font-size:24px}.col-gpt .sub-hero-topic{font-size:42px}.col-gpt .sub-hero-tail{font-size:19px}.col-gpt .sub-hero-question{font-size:23px}}
.col-gpt .sub-updated{border-left:4px solid #84bfcb;padding:15px 20px;background:#f1f9fb;margin:0 0 24px}
.col-gpt .sub-updated .sub-updated-label{font-size:14px;font-weight:500;color:#315b70;margin:0 0 5px}
.col-gpt .sub-updated p:last-child{margin:0}
.col-gpt .sub-deadlines{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:22px;margin:24px 0}
.col-gpt .sub-deadline{border-top:4px solid #69afc2;border-bottom:1px solid #d2e5eb;padding:20px 18px;background:#f1f9fb}
.col-gpt .sub-deadline--reservation{border-top-color:#8eb5a2;background:#f4faf6}
.col-gpt .sub-deadline .sub-deadline-label{font-size:17px;font-weight:500;margin:0 0 14px}
.col-gpt .sub-deadline .sub-deadline-date{line-height:1.6;margin:0 0 14px;font-size:16px}
.col-gpt .sub-deadline-date>span{display:block;font-size:14px}
.col-gpt .sub-deadline-date strong{font-size:32px;font-weight:600;white-space:nowrap;color:#205a73}
.col-gpt .sub-deadline p:last-child{margin:0;font-size:15px}
.col-gpt .sub-cite{font-size:13px;color:#536c7b;margin:12px 0 24px;line-height:1.8}
.col-gpt .sub-cite a{color:#276e8c}
.col-gpt .sub-budget{border-top:1px solid #cfe3e9;border-bottom:1px solid #cfe3e9;margin:28px 0 0;padding:20px 0}
.col-gpt .sub-budget p{margin:0 0 12px}
.col-gpt .sub-budget p:last-child{margin:0;font-size:14px}
.col-gpt .sub-budget dl{display:flex;gap:36px;margin:12px 0 16px}
.col-gpt .sub-budget dl>div{display:flex;align-items:center;gap:14px}
.col-gpt .sub-budget dt{font-size:15px}
.col-gpt .sub-budget dd{margin:0;font-size:29px;font-weight:500;color:#276e8c;line-height:1.5;font-variant-numeric:tabular-nums}
.col-gpt .sub-budget dd span{font-size:16px;margin-left:2px}
.col-gpt .sub-amounts{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:20px;margin:24px 0}
.col-gpt .sub-amounts>div{border-left:3px solid #9dccd8;padding:8px 18px}
.col-gpt .sub-amounts dt{font-size:16px;font-weight:500;line-height:1.7}
.col-gpt .sub-amounts dd{margin:10px 0 8px;font-size:16px}
.col-gpt .sub-amounts dd strong{font-size:34px;font-weight:600;color:#205a73}
.col-gpt .sub-amounts dd span{margin-left:8px;white-space:nowrap}
.col-gpt .sub-amounts p{font-size:14px;margin:0}
.col-gpt .sub-note{background:#f7f8f7;border-left:3px solid #b7c5bb;padding:18px 22px;margin:24px 0}
.col-gpt .sub-note p{margin:0 0 6px}
.col-gpt .sub-note p:last-child{margin:0}
.col-gpt .sub-steps{counter-reset:sub-step;list-style:none;padding:0;margin:28px 0}
.col-gpt .sub-steps>li{counter-increment:sub-step;position:relative;border-left:1px solid #bddce5;padding:0 0 28px 48px;margin-left:17px}
.col-gpt .sub-steps>li:last-child{border-left-color:transparent;padding-bottom:0}
.col-gpt .sub-steps>li::before{content:counter(sub-step);position:absolute;left:-18px;top:0;width:36px;height:36px;border-radius:50%;background:#e6f3f7;color:#245f76;text-align:center;font-size:17px;font-weight:500;line-height:36px}
.col-gpt .sub-step-who{display:block;font-size:13px;color:#536c7b;line-height:1.6}
.col-gpt .sub-steps h3{margin:5px 0 8px;font-size:19px;font-weight:500;line-height:1.7}
.col-gpt .sub-steps p{margin:0}
.col-gpt .sub-documents{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px;margin:24px 0}
.col-gpt .sub-documents section{border-top:2px solid #b8dce6;padding-top:15px}
.col-gpt .sub-documents h3{font-size:18px;font-weight:500;margin:0 0 10px}
.col-gpt .sub-documents ul{padding-left:1.2em;margin:0}
.col-gpt .sub-documents li{padding:0 0 6px}
.col-gpt .sub-city-table-wrap{margin:22px 0}
.col-gpt .sub-city-table{width:100%;border-collapse:collapse;table-layout:fixed;font-size:15px;line-height:1.9}
.col-gpt .sub-city-table caption{caption-side:top;text-align:left;font-size:14px;color:#536c7b;margin-bottom:12px}
.col-gpt .sub-city-table th,.col-gpt .sub-city-table td{text-align:left;vertical-align:top;padding:17px 16px;border-bottom:1px solid #cfe3e9;overflow-wrap:anywhere}
.col-gpt .sub-city-table thead th{background:#eef7fa;font-weight:500;border-top:1px solid #cfe3e9}
.col-gpt .sub-city-table th:first-child{width:110px}
.col-gpt .sub-city-table tbody th{font-weight:500;background:#fcfdfd}
.col-gpt .sub-status{display:inline-block;padding:1px 10px;border-radius:999px;background:#eef1f1;color:#48606c;font-size:13px;font-weight:500;margin-bottom:5px}
.col-gpt .sub-status--limited{background:#e9f4ed;color:#436352}
.col-gpt .sub-faq details{border-top:1px solid #cfe3e9;margin:0}
.col-gpt .sub-faq details:last-child{border-bottom:1px solid #cfe3e9}
.col-gpt .sub-faq summary{position:relative;list-style:none;cursor:pointer;padding:21px 30px 21px 0;font-size:17px;font-weight:500;line-height:1.8;color:#204d65}
.col-gpt .sub-faq summary::-webkit-details-marker{display:none}
.col-gpt .sub-faq summary::after{content:'＋';position:absolute;right:0;top:21px;color:#5b899c}
.col-gpt .sub-faq details[open] summary::after{content:'−'}
.col-gpt .sub-faq p{padding:0 0 22px;margin:0}
.col-gpt .sub-product-links{border-top:2px solid #b8dce6;border-bottom:1px solid #cfe3e9;margin:24px 0;padding:20px 0}
.col-gpt .sub-product-links h3{margin:0 0 12px;font-size:19px;font-weight:500}
.col-gpt .sub-product-links ul{padding-left:1.2em;margin:12px 0 18px}
.col-gpt .sub-product-links li{margin:7px 0}
.col-gpt .sub-product-links a{overflow-wrap:anywhere}
.col-gpt .sub-product-links p:last-child{margin-bottom:0}
.col-gpt .sub-article-note{margin-top:30px;font-size:13px;color:#536c7b}
@media(max-width:760px){
 .col-gpt .sub-updated{padding:14px 16px}
 .col-gpt .sub-deadlines{grid-template-columns:1fr;gap:16px;margin:20px 0}
 .col-gpt .sub-deadline{padding:17px 18px}
 .col-gpt .sub-deadline-date strong{font-size:30px}
 .col-gpt .sub-budget dl{gap:12px 24px;flex-wrap:wrap}
 .col-gpt .sub-budget dl>div{gap:10px}
 .col-gpt .sub-amounts{gap:12px}
 .col-gpt .sub-amounts>div{padding:6px 12px}
 .col-gpt .sub-amounts dt{font-size:14px;min-height:3.4em}
 .col-gpt .sub-amounts dd strong{font-size:28px;white-space:nowrap}
 .col-gpt .sub-amounts dd span{font-size:13px;margin-left:3px}
 .col-gpt .sub-documents{grid-template-columns:1fr;gap:22px}
 .col-gpt .sub-steps>li{padding-left:34px}
 .col-gpt .sub-steps h3{font-size:18px}
 .col-gpt .sub-city-table{font-size:14px;line-height:1.9}
 .col-gpt .sub-city-table th:first-child{width:96px}
 .col-gpt .sub-city-table th,.col-gpt .sub-city-table td{padding:15px 10px}
 .col-gpt .sub-faq summary{font-size:16px}
}
