/* 下層ページ：トップと共通の色・線画・写真で、長文を読みやすく。 */
.subpage{--maxw-narrow:850px;--fs-body:15px;--fs-h2:29px}.subpage main{overflow:hidden}.subpage .section{padding:78px 30px}.subpage .inner{max-width:1100px}.subpage .inner--narrow{max-width:850px}.subpage .crumb{font-size:11px;line-height:1.9;color:#777a70;margin-bottom:32px}.crumb a{text-decoration:none}.crumb a:hover{text-decoration:underline}
.service-hero{background:#f5f3ec;position:relative;border-bottom:1px solid #dfdfd4}.service-hero::before{content:"";position:absolute;top:0;right:0;width:34%;height:580px;background:#e5eadd;clip-path:polygon(50% 0,100% 0,100% 100%,0 100%);pointer-events:none}.subpage .service-hero{padding-top:28px;padding-bottom:48px}.service-hero .inner{position:relative}.service-hero-grid{display:grid;grid-template-columns:1.12fr 1fr;gap:58px;align-items:center}.service-hero h1{font-size:34px;letter-spacing:.025em;line-height:1.7;margin-top:12px;max-width:580px}.service-hero h1>span{display:block;font-size:25px;line-height:1.8;font-weight:600;margin-top:12px;color:var(--purple)}.service-hero .band{background:none;padding:0 0 12px;color:#738064;font-size:12px;border-bottom:1px solid #c4c9b7;letter-spacing:.09em}.service-hero .lead{font-size:14px;line-height:2.1;margin:24px 0}.service-hero .cta-row{flex-wrap:wrap;gap:12px}.service-hero .btn{font-size:12px;padding:15px 20px;gap:10px}.service-hero .note{font-size:10px;line-height:1.9}.service-photo{position:relative;margin:10px 0 20px}.service-photo::before{content:"";position:absolute;inset:-13px 15px 28px -13px;border:1px solid #aab79b;z-index:0}.service-photo::after{content:"";position:absolute;right:-16px;bottom:-12px;width:85px;height:65px;background-image:radial-gradient(#929a7c 1px,transparent 1px);background-size:8px 8px;z-index:0}.service-photo img{position:relative;width:100%;height:370px;object-fit:cover;z-index:1}.service-photo figcaption{position:relative;z-index:1;font-size:10px;text-align:right;color:#6e7664;padding-top:10px}.service-hero[data-service="juryo-tekkotsu"] .service-photo img{object-position:55% center}
.service-benefits{grid-template-columns:repeat(4,minmax(0,1fr));gap:0;margin-top:42px;background:#fffdf8;border-top:1px solid #d8d8c8;border-bottom:1px solid #d8d8c8}.service-benefits .badge{position:relative;background:transparent;padding:22px 18px 22px 44px;text-align:left;border-right:1px solid #deded1}.service-benefits .badge:last-child{border:0}.service-benefits .k{font-size:10px;color:#7c816f}.service-benefits .v{margin:7px 0 0;font-size:14px;color:#4d6049;line-height:1.65}.benefit-index{position:absolute;top:26px;left:15px;font:12px/1.5 Georgia;color:#a38e66}.summary{position:relative;background:#e9eee2;padding:32px 38px;border-left:3px solid #849676;box-shadow:5px 5px 0 #e1e4d6}.summary::after{content:"+";position:absolute;right:16px;top:10px;color:#a5ac96}.summary .block-label{font-weight:700;color:#536846;font-size:13px;margin-bottom:12px}.summary ol{margin-left:1.3em;font-size:14px;line-height:2.1}.summary li+li{margin-top:7px}
.subpage .article-intro{padding-top:52px!important}.article{font-size:15px;line-height:2.15}.article h2{font-size:28px;line-height:1.75;margin:0 0 30px;letter-spacing:.025em}.article h3{font-size:20px;line-height:1.8;margin:38px 0 14px;padding-left:17px;border-left:2px solid #a09a79}.article h4{font-size:17px;line-height:1.8;margin:28px 0 12px;color:#506346}.article p{margin:17px 0 0}.article ul,.article ol{margin:20px 0 0 1.4em}.article li{padding-left:4px;margin-top:8px}.article strong{color:#4a5844}.article a{text-underline-offset:4px;color:var(--purple)}
.article-section{position:relative;border-top:1px solid #e4e5dc}.article-section.section--sub{background:#f7f6f0}.article-section .article{position:relative}.article-section .article>h2::before{content:attr(data-number)}.article-section::before{content:attr(data-section-number);position:absolute;top:84px;left:max(20px,calc((100% - 1040px)/2 - 10px));font:italic 30px/1 Georgia;color:#a59776}.article-section::after{content:"";position:absolute;left:max(30px,calc((100% - 1040px)/2));top:135px;height:110px;width:1px;background:linear-gradient(#b5b49e,transparent)}.article table{margin:28px 0 10px;font-size:13px;line-height:1.9;min-width:0;table-layout:auto}.article thead th{background:#53644f;color:white;font-weight:500;padding:17px 20px}.article td{border-bottom:1px solid #dfe2d6;padding:18px 20px}.article tbody tr:nth-child(odd){background:#eef1e8}.article tbody tr:nth-child(even){background:white}.article table strong{color:inherit}.article-photo{margin:30px 0 38px}.article-photo img{display:block;width:100%;aspect-ratio:16/8;object-fit:cover}.article-photo figcaption{font-size:11px;line-height:1.8;padding:10px 0;color:#7a7d6d;border-bottom:1px solid #d4dacb}.article-photo::after{display:none}
.contents-box{margin-top:38px;border:1px solid #d4d9c9;background:#fbfcf7;padding:24px 30px}.contents-box summary{font-size:15px;color:#53664b;font-weight:700;cursor:pointer;padding-bottom:0}.contents-box[open] summary{padding-bottom:20px;border-bottom:1px solid #d4d9c9}.article .toc{display:grid;grid-template-columns:1fr 1fr;gap:0 36px;list-style:none;margin:15px 0 0;counter-reset:toc}.toc li{counter-increment:toc;font-size:12px;line-height:1.8;margin:0;padding:13px 0 13px 28px;border-bottom:1px solid #e3e5d9;position:relative}.toc li::before{content:counter(toc,decimal-leading-zero);position:absolute;left:0;top:14px;color:#a08f6d;font:12px/1.8 Georgia}.toc a{text-decoration:none;display:block;color:#4d5848}.toc a:hover{color:var(--purple);text-decoration:underline}
.subpage .cost-reasons{background:#edf1e7}.cost-reasons .card{padding:0;background:transparent;border-bottom:1px solid #c9d1bd;padding-bottom:20px}.cost-reasons .reason-photo{margin-bottom:20px}.cost-reasons .reason-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;height:auto;clip-path:none}.cost-reasons .reason-photo figcaption{font-size:10px;padding-top:8px;color:#7b806f}.cost-reasons .card>.icon{display:none}.cost-reasons .card h3{font-size:18px;line-height:1.8}.cost-reasons .card p{font-size:13px;line-height:2}.cost-reasons .block-label{font-size:12px;color:#70815e}.cost-reasons h2{font-size:27px}
.subpage .service-cta{padding:35px 30px;background:#fff}.ctaband{position:relative;background:#f0ece2;border-top:1px solid #c6b48c;border-bottom:1px solid #c6b48c;padding:35px 45px;text-align:center}.ctaband::before,.ctaband::after{content:"+";position:absolute;color:#a2906b;font-size:17px;top:-18px}.ctaband::before{left:-5px}.ctaband::after{right:-5px}.ctaband h3{font-size:23px}.ctaband p{font-size:14px}.ctaband .btn{font-size:13px}.ctaband .cta-row{justify-content:center}.ctaband .note{font-size:12px}
.subpage .service-stats{background:#e8eee1}.service-stats .num{font-size:64px;color:#667d55;line-height:1.5}.service-stats .grid--3>div{border-left:1px solid #cbd4be;padding:0 24px}.service-stats .grid--3>div:first-child{border-left:0;padding-left:0}.service-stats .num span{font-size:15px!important;margin-left:9px}.service-stats h2{font-size:28px}.service-stats .note{font-size:12px}
.service-faq{background:#f5f4ed}.service-faq .qa dt{font-size:16px;padding-left:45px}.service-faq .qa dd{font-size:14px;padding-left:45px;line-height:2}.service-faq .qa dt::before{content:"問";font:600 15px/1.5 sans-serif;top:25px;color:#778c65}.service-faq .qa dd::before{content:"答";font:600 13px/1.5 sans-serif;top:4px;color:#9b8560}
.related-services{background:#f4f1e8}.related-services .card{padding:0 0 24px;background:none;border-bottom:1px solid #cacdbc;text-decoration:none}.related-photo{margin:0}.related-photo img{width:100%;aspect-ratio:3/2;object-fit:cover;transition:opacity .2s}.related-photo figcaption{font-size:9px;color:#777e6d;padding-top:8px}.related-services .card h3{font-size:19px;padding-right:28px;position:relative}.related-services .card h3::after{content:"↗";position:absolute;right:0;color:#94815e}.related-services .card:hover img{opacity:.85}.references{background:#fff}.subpage .references{padding:38px 30px}.references h2{font-size:14px;margin-bottom:14px;color:#7a806e}.refs{list-style:none}.refs li{font-size:11px;line-height:1.9;margin:8px 0;color:#7a806e}.subpage .closing h2{font-size:27px}.subpage .closing .section-en{font-size:16px!important}.subpage .closing .section-detail{z-index:0}
.subpage .hub-hero{background:#f4f1e8;padding-top:28px;padding-bottom:68px}.hub-intro{display:grid;grid-template-columns:1fr 1.02fr;align-items:center;gap:65px}.hub-intro h1{font-size:41px;line-height:1.65;letter-spacing:.055em;margin:20px 0 24px}.hub-intro .eyebrow{color:#788360;font-size:12px;margin:0}.hub-intro .lead{font-size:14px;line-height:2.1;margin-bottom:25px}.hub-intro figure{position:relative;margin:0}.hub-intro figure::before{content:"";position:absolute;inset:14px -13px -13px 14px;border:1px solid #b0b59f}.hub-intro figure img{width:100%;height:390px;object-fit:cover;position:relative}.hub-intro figcaption{font-size:11px;padding:10px 0;color:#778167;position:relative}.text-link{display:inline-flex;align-items:center;gap:50px;text-decoration:none;border-bottom:1px solid #b6b99e;padding:10px 0;font-size:13px;color:#5b6650}.guide-section{background:#fff}.guide-grid{display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:48px 42px;margin-top:40px}.guide-card{display:block;text-decoration:none;color:var(--text);border-bottom:1px solid #cdd3c2}.guide-card figure{position:relative}.guide-card figure img{width:100%;height:290px;object-fit:cover}.guide-card figcaption{position:absolute;bottom:8px;right:8px;font-size:9px;color:#fff;background:#344133a8;padding:3px 8px}.guide-card>div{position:relative;padding:23px 45px 28px 0}.guide-eyebrow{font-size:11px;letter-spacing:.1em;color:#928363;margin:0 0 10px}.guide-card h3{font-size:24px;margin:0 0 8px}.guide-card p:not(.guide-eyebrow){font-size:13px;color:#747c69}.guide-arrow{position:absolute;right:0;top:50px;display:grid;place-items:center;width:38px;height:38px;border:1px solid #b7bea8;border-radius:50%;color:#7f876a}.guide-card:hover .guide-arrow{color:#fff;background:var(--purple);border-color:var(--purple)}.guide-card:hover img{opacity:.88;transition:opacity .2s}.service-hub .categories{padding-top:75px}.service-hub .cat-grid{grid-template-columns:repeat(4,minmax(0,1fr));gap:25px}.service-hub .category-photo img{height:170px}.service-hub .cat{font-size:13px;scroll-margin-top:25px}.service-hub .cat:target{outline:3px solid #a49976;outline-offset:6px}.hub-explanation .btn{margin-top:26px}.hub-explanation .article-photo{margin:0}.hub-explanation .article-photo img{aspect-ratio:5/4}.hub-explanation h2{font-size:32px}.hub-explanation p{font-size:14px;line-height:2.05}
@media(max-width:1100px){.article-section::before,.article-section::after{display:none}.service-hero-grid{gap:36px}.service-hero h1{font-size:29px}.service-hero h1>span{font-size:23px}.service-hero .btn{padding:12px 16px}.hub-intro{gap:40px}.hub-intro h1{font-size:34px}.service-photo img{height:340px}}
@media(max-width:768px){.subpage .section{padding:55px 22px}.subpage .service-hero{padding-top:22px;padding-bottom:35px}.subpage .crumb{font-size:10px;margin-bottom:25px}.service-hero::before{height:550px;width:50%;opacity:.5}.service-hero-grid{gap:30px}.service-hero h1{font-size:27px;letter-spacing:.015em}.service-hero h1>span{font-size:21px;margin-top:10px;line-height:1.8}.service-hero .band{font-size:10px}.service-hero .lead{font-size:13px;line-height:2}.service-hero .cta-row{gap:9px}.service-hero .btn{font-size:11px;padding:13px 15px;flex:1;justify-content:center;white-space:nowrap;gap:7px}.service-hero .note{font-size:10px}.service-photo{margin:5px 0 15px}.service-photo img{height:250px}.service-photo::before{inset:-8px 9px 25px -8px}.service-photo::after{right:-8px;width:60px;height:45px}.service-photo figcaption{font-size:9px}.service-benefits{grid-template-columns:repeat(2,minmax(0,1fr));margin-top:20px;gap:0}.service-benefits .badge{padding:17px 8px 17px 30px;border-bottom:1px solid #deded1}.service-benefits .badge:nth-child(2){border-right:0}.service-benefits .badge:nth-child(3){border-bottom:0}.service-benefits .v{font-size:12px}.service-benefits .k{font-size:9px}.benefit-index{left:9px;top:19px;font-size:10px}.service-hero .inner:has(>.summary){margin-top:25px!important}.summary{padding:24px 20px}.summary ol{font-size:12px;line-height:1.95}.summary .block-label{font-size:12px}.subpage .article-intro{padding-top:35px!important}.article{font-size:14px;line-height:2.05}.article h2{font-size:23px;line-height:1.75;margin-bottom:24px;letter-spacing:0}.article h3{font-size:18px;margin-top:30px;padding-left:13px}.article h4{font-size:16px}.article p{margin-top:15px}.article table{font-size:12px;min-width:500px}.article table th,.article table td{padding:13px 15px;min-width:110px}.table-scroll{overflow-x:auto;overscroll-behavior-x:contain;margin:22px 0}.table-scroll table{margin-top:0}.table-scroll:focus-visible{outline-offset:0}.table-hint{font-size:10px!important;color:#7a806e;margin-top:0!important}.article-photo{margin:25px 0}.article-photo img{aspect-ratio:4/3}.article-photo figcaption{font-size:10px}.contents-box{padding:19px 20px;margin-top:28px}.article .toc{grid-template-columns:1fr;gap:0}.toc li{font-size:12px;padding:12px 0 12px 25px}.contents-box summary{font-size:14px}.cost-reasons .grid--3{gap:35px}.cost-reasons h2{font-size:23px}.cost-reasons .card h3{font-size:19px}.cost-reasons .reason-photo img{aspect-ratio:16/10}.subpage .service-cta{padding:25px 22px}.ctaband{padding:28px 20px}.ctaband h3{font-size:20px;line-height:1.8}.ctaband p{font-size:13px}.ctaband .btn{font-size:11px;padding:14px 16px;white-space:normal}.ctaband .cta-row{display:grid;grid-template-columns:1fr;gap:12px}.service-stats h2{font-size:23px}.service-stats .grid--3{grid-template-columns:repeat(3,minmax(0,1fr))!important;gap:0}.service-stats .grid--3>div{padding:0 12px}.service-stats .num{font-size:36px}.service-stats .num span{display:block;font-size:12px!important;margin-left:0}.service-stats .note{font-size:9px;line-height:1.8}.service-faq .qa dt{font-size:14px;padding-left:31px}.service-faq .qa dd{font-size:13px;padding-left:31px}.related-services .grid--3{gap:30px}.related-services h2{font-size:23px}.related-photo img{aspect-ratio:16/10}.subpage .closing h2{font-size:23px}.subpage .closing .section-en{font-size:14px!important}.hub-intro{grid-template-columns:1fr;gap:30px}.hub-intro h1{font-size:32px}.hub-intro .lead{font-size:13px}.hub-intro figure img{height:260px}.hub-intro figure::before{inset:10px -8px -8px 10px}.guide-grid{grid-template-columns:1fr;gap:30px;margin-top:28px}.guide-card figure img{height:240px}.guide-card h3{font-size:23px}.guide-card>div{padding:20px 42px 23px 0}.guide-card p:not(.guide-eyebrow){font-size:12px}.service-hub .cat-grid{grid-template-columns:repeat(2,minmax(0,1fr));gap:20px 13px}.service-hub .category-photo img{height:120px}.service-hub .cat{font-size:11px}.category-action{font-size:9px}.hub-explanation h2{font-size:27px}.hub-explanation .grid{gap:30px}.hub-explanation p{font-size:13px}.references .refs li{font-size:10px}.subpage footer.section{padding-left:22px;padding-right:22px}}
.table-hint{display:none}.article .case-pair{margin:24px 0 30px;gap:10px}.article .case-pair img{aspect-ratio:4/3;object-fit:contain}.article .case-pair figcaption{font-size:11px;padding:5px 12px;letter-spacing:0}.case-source-link{font-size:12px!important;margin-top:10px!important}
@media(max-width:768px){.table-hint{display:block}.article .case-pair{gap:6px;margin:18px 0 24px}.article .case-pair figcaption{font-size:10px;padding:4px 8px}}
.service-region{font:inherit}
@media(max-width:768px){.service-region{display:block;font-size:16px;font-weight:500;letter-spacing:.06em;margin-bottom:7px}.service-hero h1{font-size:26px}.service-hero h1>span{font-size:20px}.service-photo::after{bottom:-22px;right:-10px;height:28px;width:46px;opacity:.5}.service-photo figcaption{padding-bottom:10px}}

/* 費用が増える条件と、検討できる対応を対にして読む。 */
.subpage .cost-explanation{background:#f5f3ec;border-block:1px solid #dddcd0;position:relative}
.cost-explanation-heading{max-width:870px;margin-bottom:42px;position:relative;padding-top:24px}
.cost-explanation-heading::before{content:"";position:absolute;top:0;left:0;width:68px;height:2px;background:#a89b78}
.cost-explanation-heading .block-label{color:#5c7050;font-weight:700;margin:0 0 16px}
.cost-explanation-heading h2{margin:0 0 24px}.cost-explanation-heading h2 em{font-style:normal;color:#705379}
.cost-explanation-heading>p:last-child{margin:0;max-width:820px}
.cost-question-list{border-top:1px solid #c5c8b8}
.cost-question-row{display:grid;grid-template-columns:1fr 1fr;border-bottom:1px solid #c5c8b8}
.cost-cause,.cost-response{position:relative;padding:32px 34px;min-width:0}
.cost-cause{padding-left:64px;background:#fffdf8}.cost-response{background:#eaf0e2;border-left:1px solid #d2d8c7}
.cost-response::before{content:"→";position:absolute;left:-18px;top:69px;width:35px;height:35px;display:grid;place-items:center;border:1px solid #c5cdb9;border-radius:50%;color:#6e7d5e;background:#f8faf3;font-size:20px;line-height:1}
.cost-row-number{position:absolute;left:20px;top:34px;font:24px/1.6 Georgia,serif;color:#9c8e6c}
body .cost-explanation .cost-column-label{font-size:15px!important;font-weight:700;letter-spacing:.03em;color:#656d5d;margin:0 0 10px}
body .cost-explanation .cost-response .cost-column-label{color:#596d4e}
.cost-question-row h3{margin:0 0 16px}.cost-question-row p:last-child{margin:0}
.cost-field-case{display:grid;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr);gap:38px;margin-top:50px;padding:32px;background:#fff;border:1px solid #d8d5c8;box-shadow:7px 7px 0 #e7e4d7;position:relative;align-items:start}
.cost-field-case::before{content:"+";position:absolute;right:15px;top:4px;color:#a39371;font-size:23px}
.cost-field-case figure{margin:0}.cost-field-case img{display:block;width:100%;height:auto;aspect-ratio:4/3;object-fit:cover}
.cost-field-case figcaption{padding-top:12px;color:#626a5e}
body .cost-case-label{font-size:15px!important;color:#705379;font-weight:700;margin:0 0 12px;display:inline-block;border-bottom:1px solid #baa5c0;padding-bottom:5px}
body .cost-case-place{font-size:16px!important;color:#606a58;margin:0 0 10px}.cost-field-case h3{margin:0 0 18px}.cost-field-case p{margin:0 0 20px}
.cost-case-reading{border-top:1px solid #d9ddcf;padding-top:20px}.cost-case-reading strong{display:block;font-size:17px;color:#586b4f;margin-bottom:8px}
.cost-case-link{display:inline-flex;gap:25px;align-items:center;padding:10px 0;text-decoration:none;border-bottom:1px solid #b7a3be;color:#705379;font-size:18px}.cost-case-link:hover{text-decoration:underline;text-underline-offset:5px}.cost-case-link span{font-size:23px}
.cost-comparison-note{margin-top:42px;display:grid;grid-template-columns:minmax(0,1fr) auto;gap:32px;align-items:center;border-top:1px solid #c5c8b8;padding-top:30px}.cost-comparison-note p{margin:0}.cost-comparison-note strong{display:block;color:#4b5b43;margin-bottom:10px}.cost-comparison-note .btn{max-width:310px}
@media(max-width:900px){.cost-comparison-note{grid-template-columns:1fr}.cost-field-case{gap:25px;padding:26px}.cost-cause{padding-left:55px}.cost-response{padding-inline:28px}}
@media(max-width:768px){.subpage .cost-explanation{padding:52px 22px}.cost-explanation-heading{margin-bottom:30px}.cost-explanation-heading h2 br{display:none}.cost-question-row{grid-template-columns:1fr}.cost-cause{padding:27px 22px 27px 56px}.cost-response{padding:29px 22px 27px;border-left:0;border-top:1px dashed #ccd3c1}.cost-row-number{left:18px;top:27px}.cost-response::before{content:"↓";left:calc(50% - 17px);top:-18px}.cost-field-case{grid-template-columns:1fr;gap:24px;margin-top:36px;padding:24px 20px;box-shadow:5px 5px 0 #e7e4d7}.cost-field-case img{aspect-ratio:4/3}.cost-comparison-note{margin-top:34px;gap:24px}.cost-comparison-note .btn{width:100%;max-width:none}.cost-case-link{gap:15px}}
