:root { --ink:#292722; --sub:#625e55; --red:#c81d25; --red2:#a70f16; --cream:#fffaf0; --warm:#f3e3c7; --brown:#7b542d; --yellow:#ffe45c; --mint:#43bdb7; --line:#ded6c9; --paper:#fff; --font-body:"Yu Gothic",sans-serif; --font-heading:"Yu Mincho",serif; }
*{box-sizing:border-box} html{scroll-behavior:smooth} body{margin:0;background:#eeeae3;color:var(--ink);font-family:var(--font-body);-webkit-font-smoothing:antialiased} a{color:inherit} img{display:block;max-width:100%;height:auto}
.site-shell{min-height:100vh;padding-bottom:88px}.media-header{position:sticky;top:0;z-index:20;display:flex;width:min(100%,760px);height:60px;margin:auto;padding:0 22px;align-items:center;justify-content:space-between;background:rgba(255,255,255,.96);border-bottom:1px solid #eee;backdrop-filter:blur(10px)}.media-logo{font-family:var(--font-heading);font-size:19px;font-weight:800;text-decoration:none;letter-spacing:.08em}.media-logo span{margin-left:7px;color:var(--red);font-family:var(--font-heading);font-size:11px}.pr-label{padding:4px 9px;color:#777;border:1px solid #bbb;border-radius:3px;font-size:11px;font-weight:700}
.article{width:min(100%,760px);margin:auto;background:var(--paper);box-shadow:0 18px 50px rgba(73,59,40,.12)}.article-header{padding:42px 34px 28px}.category,.eyebrow{margin:0;color:var(--red);font-size:13px;font-weight:800;letter-spacing:.12em}.article-header h1{margin:15px 0 18px;font-family:var(--font-heading);font-size:clamp(28px,6vw,43px);line-height:1.48;letter-spacing:.02em}.article-header h1 em{color:var(--red);font-style:normal;background:linear-gradient(transparent 70%,rgba(255,228,92,.75) 70%)}.article-meta{display:flex;padding-bottom:22px;gap:16px;color:#8a857d;border-bottom:1px solid var(--line);font-size:12px}.intro{margin:24px 0 0;color:#3e3a34;font-size:17px;line-height:2}.key-visual{margin:0;background:#fffaf0}.key-visual img{width:100%;height:auto;object-fit:contain}.key-visual figcaption,.caption{margin:0;padding:12px 24px;color:#6f675e;background:#faf8f4;font-size:12px;line-height:1.65}
.toc{position:relative;margin:38px 34px 16px;padding:28px 28px 26px;overflow:hidden;background:#fbf7ef;border:2px solid #e2cfaf;border-radius:18px;box-shadow:7px 7px 0 rgba(123,84,45,.16)}.toc::before{content:"";position:absolute;top:0;right:0;left:0;height:8px;background:linear-gradient(90deg,var(--red) 0 34%,var(--yellow) 34% 68%,var(--brown) 68%)}.toc::after{content:"INDEX";position:absolute;top:17px;right:20px;color:rgba(123,84,45,.15);font-size:29px;font-weight:900;letter-spacing:.08em;transform:rotate(4deg)}.toc>p{position:relative;z-index:1;margin:0 0 17px;padding-bottom:14px;border-bottom:3px dashed var(--brown);font-size:17px;font-weight:900}.toc ol{counter-reset:toc;display:grid;margin:0;padding:0;gap:10px;list-style:none}.toc li{counter-increment:toc}.toc a{display:flex;align-items:center;gap:11px;padding:9px 12px;color:#47423c;background:rgba(255,255,255,.72);border-radius:10px;font-size:14px;font-weight:700;line-height:1.5;text-decoration:none;transition:transform .18s ease,background .18s ease}.toc a::before{content:counter(toc);display:grid;width:26px;height:26px;flex:0 0 26px;place-items:center;color:#fff;background:var(--red);border-radius:50%;font-size:12px;font-weight:900}.toc a:hover{background:#fff2b8;transform:translateX(4px)}
.article-section{padding:58px 34px;border-top:1px solid #eee8df}.article-section h2{margin:9px 0 26px;padding-bottom:14px;border-bottom:4px solid var(--red);font-family:var(--font-heading);font-size:clamp(25px,5.2vw,36px);line-height:1.5}.article-section>p:not(.eyebrow):not(.caption):not(.fine-print){margin:0 0 24px;font-size:17px;line-height:2}.check-list{display:grid;margin:26px 0;padding:0;gap:10px;list-style:none}.check-list li{position:relative;padding:16px 16px 16px 51px;background:#fff9ed;border-left:5px solid var(--red);font-size:16px;font-weight:700;line-height:1.6}.check-list li::before{content:"✓";position:absolute;left:18px;color:var(--red);font-size:19px}.editor-note{position:relative;margin:34px 0 0;padding:25px 26px 24px 80px;overflow:hidden;background:#fff6c7;border:2px solid #eed86c;border-radius:18px;box-shadow:0 6px 0 rgba(200,29,37,.1);line-height:1.8}.editor-note::before{content:"!";position:absolute;top:24px;left:22px;display:grid;width:40px;height:40px;place-items:center;color:#fff;background:var(--red);border-radius:50%;font-size:23px;font-weight:900;box-shadow:0 0 0 6px rgba(200,29,37,.09)}.editor-note::after{content:"✦";position:absolute;right:16px;top:8px;color:#e9c92b;font-size:26px;transform:rotate(12deg)}.editor-note b{display:inline-block;margin-bottom:6px;color:var(--red);font-size:15px}.editor-note p{margin:0;font-size:15px}.editorial-flow-image{margin:32px -5px;padding:7px;background:#fff9e8;border:3px solid var(--brown);border-radius:24px;box-shadow:8px 9px 0 #ead6b7}.editorial-flow-image img{width:100%;height:auto;border-radius:16px}.point-box{margin:28px 0;padding:22px 24px;background:#edf9f8;border:2px solid var(--mint)}.point-box b{color:#167f7a}.point-box ul{margin:12px 0 0;padding-left:22px;line-height:1.9}
.benefit-grid{display:grid;grid-template-columns:1fr 1fr;gap:18px}.benefit-grid section{position:relative;padding:29px 20px 21px 24px;background:#fffaf1;border:2px solid #e2c9a3;border-left:8px solid var(--red);border-radius:16px 22px 17px 20px;box-shadow:5px 6px 0 #f0dfc4}.benefit-grid section:nth-child(even){border-left-color:var(--brown);transform:rotate(.35deg)}.benefit-grid section:nth-child(odd){transform:rotate(-.25deg)}.benefit-grid span{position:absolute;top:-13px;left:13px;display:grid;width:38px;height:38px;place-items:center;color:#fff;background:var(--brown);border:3px solid #fff;border-radius:50%;box-shadow:0 2px 0 #c6a77f;font-size:12px;font-weight:900}.benefit-grid section::after{content:"✓";position:absolute;right:15px;top:10px;color:rgba(200,29,37,.18);font-size:36px;font-weight:900;transform:rotate(8deg)}.benefit-grid h3{position:relative;z-index:1;margin:8px 0 10px;color:var(--red);font-size:18px;line-height:1.55}.benefit-grid p{position:relative;z-index:1;margin:0;color:#5c554c;font-size:13px;line-height:1.75}.fit-box{position:relative;margin:38px 5px 30px;padding:32px 30px 27px;color:#fff;background:var(--brown);border:3px solid #68431f;border-radius:24px 18px 26px 17px;box-shadow:8px 9px 0 #ead4af;transform:rotate(-.35deg)}.fit-box::before{content:"CHECK!";position:absolute;top:-19px;left:24px;padding:7px 16px;color:var(--red);background:var(--yellow);border:2px solid #68431f;border-radius:999px;font-size:12px;font-weight:900;letter-spacing:.08em;transform:rotate(-3deg)}.fit-box::after{content:"✦";position:absolute;right:20px;top:11px;color:var(--yellow);font-size:30px;transform:rotate(10deg)}.fit-box h3{margin:0 0 10px;font-size:20px}.fit-box p{margin:0;font-size:14px;line-height:1.9}
.article-cta{position:relative;display:flex;min-height:88px;padding:15px 62px 15px 24px;align-items:center;justify-content:center;flex-direction:column;color:#fff;background:linear-gradient(#f95a29,#e32d15);border:3px solid #b92112;border-radius:8px;box-shadow:0 7px 0 #9e170b;text-align:center;text-decoration:none}.article-cta small{font-size:12px;font-weight:700}.article-cta strong{font-size:clamp(21px,4.5vw,28px);line-height:1.4}.article-cta>span{position:absolute;right:24px;font-size:39px}.article-cta.compact{min-height:77px}.article-cta:hover{filter:brightness(1.04)}.article-cta:focus-visible{outline:4px solid var(--yellow);outline-offset:3px}
.comparison{background:#fffdf8}.price-chart{display:grid;margin:30px 0 0;gap:15px}.price-chart div{display:grid;grid-template-columns:45px 1fr 90px;align-items:center;gap:9px}.price-chart b{font-size:14px}.price-chart i{display:block;width:var(--bar);height:24px;background:#c8c8c8}.price-chart span{font-size:14px;font-weight:800}.price-chart .best i{background:var(--red)}.price-chart .best span{color:var(--red)}
.service-intro{background:#fff8e8}.service-intro h2 span{color:var(--red)}.stat-row{display:grid;grid-template-columns:repeat(3,1fr);margin:30px 0;gap:8px}.stat-row div{display:flex;min-height:110px;padding:15px 5px;align-items:center;justify-content:center;flex-direction:column;background:#fff;border:2px solid var(--red);text-align:center}.stat-row b{font-size:18px}.stat-row b span{color:var(--red);font-size:34px}.stat-row small{margin-top:4px;font-size:11px}.subheading{margin:43px 0 20px;text-align:center;font-size:23px}.feature-list{display:grid;gap:16px}.feature-list section{padding:24px;background:#fff;border-radius:10px;box-shadow:0 5px 0 #ead6b5}.feature-list span{color:var(--brown);font-size:12px;font-weight:900;letter-spacing:.1em}.feature-list h3{margin:7px 0 10px;color:var(--red);font-size:21px}.feature-list p{margin:0;font-size:15px;line-height:1.85}.property-box{margin-top:28px;padding:24px;background:var(--brown);color:#fff}.property-box h3{margin:0 0 17px;text-align:center}.property-box ul{display:grid;grid-template-columns:1fr 1fr;margin:0;padding:0;gap:8px;list-style:none}.property-box li{padding:10px;background:#fff;color:var(--brown);font-weight:800;text-align:center}.property-box p{margin:12px 0 0;font-size:10px;text-align:center}
.case-list{display:grid;gap:22px}.case-list>section{position:relative;overflow:hidden;border:2px solid #d9bc91;border-radius:20px;box-shadow:0 7px 0 #f0dfc4}.case-list>section::after{content:"";position:absolute;right:-24px;bottom:-25px;width:90px;height:90px;background:var(--yellow);border-radius:50%;opacity:.26}.case-list header{display:flex;padding:17px 19px;align-items:center;gap:16px;color:#fff;background:linear-gradient(120deg,var(--brown),#95693b)}.case-list header span{display:grid;width:62px;height:62px;flex:0 0 62px;place-items:center;background:var(--red);border:3px solid rgba(255,255,255,.7);border-radius:50%;font-size:11px;font-weight:900;text-align:center}.case-list h3{margin:0;font-size:19px}.case-list header p{margin:4px 0 0;font-size:12px}.case-price{display:grid;grid-template-columns:auto 1fr auto;padding:21px 19px;align-items:center;gap:11px;background:#fff9e4}.case-price small{color:#777}.case-price strong{font-size:28px}.case-price b{padding:9px 12px;color:#fff;background:var(--red);border-radius:999px;font-size:12px;box-shadow:0 3px 0 var(--red2)}.case-list ul{position:relative;z-index:1;display:flex;margin:0;padding:14px 19px;gap:18px;background:#fff;list-style:none;font-size:12px;font-weight:700}.case-list li::before{content:"✓";margin-right:5px;color:var(--red);font-weight:900}
.process{background:#fbf8f2}.process ol{display:grid;margin:0;padding:0;gap:0;list-style:none}.process li{position:relative;display:flex;padding:19px 0;gap:18px;border-bottom:1px dashed #cbbba4}.process li>span{display:grid;width:46px;height:46px;flex:0 0 46px;place-items:center;color:#fff;background:var(--red);border-radius:50%;font-weight:900}.process h3{margin:0 0 6px;color:var(--red);font-size:18px}.process p{margin:0;font-size:14px;line-height:1.75}.faq details{border-bottom:1px solid #ddd}.faq summary{position:relative;display:flex;padding:20px 46px 20px 0;align-items:flex-start;gap:12px;font-weight:800;line-height:1.6;cursor:pointer;list-style:none}.faq summary::-webkit-details-marker{display:none}.faq summary::after{content:"＋";position:absolute;top:18px;right:8px;color:var(--red);font-size:24px;font-weight:800}.faq details[open] summary::after{content:"−"}.faq summary span,.faq details p span{display:grid;width:29px;height:29px;flex:0 0 29px;place-items:center;color:#fff;background:var(--red);border-radius:50%;font-size:13px}.faq details p{display:flex;margin:0;padding:0 42px 22px 0;gap:12px;color:#514c46;font-size:14px;line-height:1.85}.faq details p span{background:var(--mint)}
.conclusion{background:#fff9df}.offer{position:relative;margin:37px 5px 31px;padding:35px 28px 25px;overflow:visible;background:#fff;border:3px solid var(--red);border-radius:20px 27px 18px 25px;box-shadow:8px 8px 0 rgba(200,29,37,.14);transform:rotate(.25deg)}.offer::before{content:"無料査定";position:absolute;top:-20px;left:50%;padding:8px 22px;color:#fff;background:var(--red);border:3px solid #fff;border-radius:999px;box-shadow:0 3px 0 var(--red2);font-size:13px;font-weight:900;letter-spacing:.08em;transform:translateX(-50%) rotate(-2deg)}.offer::after{content:"✦";position:absolute;top:10px;right:18px;color:var(--yellow);font-size:32px;text-shadow:1px 1px 0 var(--red);transform:rotate(12deg)}.offer>b{display:block;margin-bottom:15px;color:var(--red);font-size:20px;text-align:center}.offer ul{display:grid;margin:0;padding:0;gap:9px;list-style:none;line-height:1.7}.offer li{position:relative;padding:9px 12px 9px 43px;background:#fff9df;border-radius:10px;font-weight:700}.offer li::before{content:"✓";position:absolute;left:14px;top:7px;color:var(--red);font-size:20px;font-weight:900}.fine-print{margin:20px 0 0;color:#777;font-size:10px;line-height:1.65}.article-footer{display:flex;padding:25px 34px 42px;align-items:center;justify-content:space-between;gap:12px;color:#888;border-top:1px solid #e6e0d6;font-size:11px}.article-footer p{margin:0}.sticky-cta{position:fixed;right:0;bottom:0;left:0;z-index:30;padding:9px 14px 12px;background:rgba(255,255,255,.96);border-top:1px solid #ddd}.sticky-cta a{display:flex;width:min(100%,700px);min-height:58px;margin:auto;align-items:center;justify-content:center;gap:14px;color:#fff;background:linear-gradient(90deg,#f75b27,#e22d15);border-radius:6px;text-decoration:none;box-shadow:0 4px 12px rgba(153,31,13,.25)}.sticky-cta small{font-size:11px}.sticky-cta strong{font-size:21px}
@media(max-width:600px){.media-header{height:54px}.article-header{padding:32px 22px 24px}.article-header h1{font-size:29px}.intro{font-size:16px;line-height:1.9}.toc{margin:31px 20px 12px;padding:25px 18px 20px}.toc::after{font-size:22px}.article-section{padding:46px 22px}.article-section h2{font-size:26px}.benefit-grid{grid-template-columns:1fr;gap:22px}.benefit-grid section:nth-child(n){transform:none}.fit-box{margin-right:0;margin-left:0;padding:34px 22px 24px}.editorial-flow-image{margin:26px -12px;padding:5px;border-radius:18px}.editorial-flow-image img{border-radius:12px}.editor-note{padding:70px 20px 20px}.editor-note::before{top:18px;left:20px}.stat-row b{font-size:13px}.stat-row b span{font-size:29px}.case-list header span{width:54px;height:54px;flex-basis:54px}.case-price{grid-template-columns:auto 1fr}.case-price b{grid-column:1/-1;text-align:center}.case-list ul{flex-direction:column;gap:5px}.property-box ul{grid-template-columns:1fr 1fr}.offer{margin-right:0;margin-left:0;padding:37px 18px 22px}.article-footer{padding:22px;flex-direction:column}.sticky-cta strong{font-size:19px}.sticky-cta small{font-size:10px}}
