:root{--ink:#173b36;--paper:#fffdf5;--mint:#bce3cd;--yellow:#efdc78;--orange:#bd4e2b;--p:0;--drift:0px}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:24px}body{margin:0;background:var(--paper);color:var(--ink);font:17px/1.8 "Yu Gothic",Meiryo,sans-serif}a{color:inherit;text-underline-offset:5px}button{font:inherit}h1,h2,h3,p{margin:0}h1,h2,h3{line-height:1.45}img{display:block;max-width:100%;height:auto}.skip{position:absolute;top:-100px;left:15px;z-index:20;background:white;padding:10px}.skip:focus{top:0}.review-bar{font-size:11px;padding:5px 5vw;background:#ecece3;color:#575d56}.header{padding:20px 5vw;display:flex;justify-content:space-between;gap:25px;align-items:center;border-bottom:1px solid #173b3624}.brand{text-decoration:none;font-weight:700;line-height:1.55;font-size:19px}.brand small{display:block;font-size:10px;font-weight:500;letter-spacing:.08em}.header-nav{display:flex;align-items:center;gap:25px;font-size:13px}.header-nav a{text-decoration:none}.motion{font-size:11px;border:1px solid currentColor;border-radius:40px;background:transparent;padding:7px 13px;min-height:36px;color:inherit;cursor:pointer}.motion:disabled{opacity:.7;cursor:default}.hero{padding:52px 6vw 40px;position:relative;overflow:hidden}.hero-grid{max-width:1400px;margin:auto;display:grid;grid-template-columns:1.12fr 1fr;gap:35px;align-items:center}.service{font-size:13px;letter-spacing:.04em;margin-bottom:22px;display:flex;align-items:center;gap:12px}.service::before{content:"";width:30px;height:1px;background:currentColor}.display{font-size:clamp(50px,6.5vw,92px);font-weight:700;letter-spacing:-.045em;line-height:1.3}.display .accent{font-style:normal;color:var(--orange)}.line{display:block;animation:word-enter .85s cubic-bezier(.2,.7,.2,1) both}.line:nth-child(2){animation-delay:.13s}.line:nth-child(3){animation-delay:.25s}.lead{font-size:16px;line-height:1.9;max-width:600px;margin:25px 0}.actions{display:flex;gap:20px;align-items:center;flex-wrap:wrap}.cta{display:inline-flex;align-items:center;justify-content:space-between;gap:30px;padding:16px 24px;min-height:56px;background:var(--ink);color:#fff;text-decoration:none;border-radius:3px;font-weight:600;font-size:15px;transition:background .2s,transform .2s}.cta:hover{background:#2b665c;transform:translateY(-2px)}.phone{font-size:16px;text-decoration:none;font-weight:600}.hours{font-size:12px;margin-top:11px;color:#626b61}.scroll-hint{font-size:11px;letter-spacing:.15em;margin:35px 0 0;color:#5a6b60}.scroll-hint span{display:inline-block;margin-left:8px;transform:translateY(calc(var(--p)*12px))}.hero-world{position:relative;height:490px;display:grid;place-items:center;isolation:isolate}.world-circle{position:absolute;width:400px;height:400px;border-radius:50%;background:var(--mint);transform:translateY(calc(var(--p)*-25px));z-index:-1}.house-graphic{position:relative;width:330px;height:330px;transform:translateY(calc(var(--p)*-15px)) rotate(calc(var(--p)*-3deg));perspective:800px}.roof{position:absolute;left:-16px;right:-16px;top:0;height:110px;background:var(--yellow);clip-path:polygon(50% 0,100% 100%,0 100%)}.house-floor{position:absolute;top:106px;bottom:0;left:12px;right:12px;background:#fffdf5;border-bottom:8px solid var(--ink)}.door{position:absolute;top:110px;height:212px;width:calc(50% - 12px);display:grid;place-items:center;font-size:24px;font-weight:600;backface-visibility:visible;z-index:2}.door.left{left:12px;background:#4c8873;color:#fff;transform-origin:left;transform:rotateY(calc(var(--p)*-72deg))}.door.right{right:12px;background:#8ac1a6;transform-origin:right;transform:rotateY(calc(var(--p)*72deg))}.house-message{position:absolute;top:142px;left:30px;right:30px;text-align:center;font-size:24px;font-weight:700;line-height:1.65}.house-message small{display:block;font-size:12px;color:#687e72;margin-bottom:10px}.floating{position:absolute;background:var(--paper);padding:13px 22px;border:1px solid #204d3840;font-size:15px;z-index:3;box-shadow:0 9px 25px #2545370a;animation:note-enter 1s .3s both}.note-one{top:42px;left:8px;transform:rotate(-9deg) translateY(calc(var(--p)*-18px))}.note-two{right:-3px;bottom:57px;background:#f2dfa9;transform:rotate(7deg) translateY(calc(var(--p)*22px))}.guide{position:absolute;left:12px;bottom:12px;width:85px;z-index:4;transform:translateX(calc(var(--p)*45px)) rotate(calc(var(--p)*8deg))}.small-caption{position:absolute;right:14px;top:10px;font-size:10px;letter-spacing:.13em;writing-mode:vertical-rl}.situations{padding:65px 6vw 80px;background:var(--mint)}.section-head{display:flex;justify-content:space-between;gap:30px;align-items:flex-end;margin-bottom:40px;max-width:1400px;margin-left:auto;margin-right:auto}.eyebrow{font-size:11px;letter-spacing:.12em;margin-bottom:14px}.section-head h2{font-size:clamp(34px,4vw,56px);letter-spacing:-.03em}.section-head p{font-size:15px;max-width:390px}.story-cards{display:grid;grid-template-columns:repeat(3,1fr);gap:25px;max-width:1400px;margin:auto}.story-card{display:block;text-decoration:none;background:#fffdf5;padding:30px 26px;min-height:260px;position:relative;transform:rotate(var(--tilt,0deg));transition:transform .6s cubic-bezier(.2,.7,.2,1),background .2s}.story-card:nth-child(1){--tilt:-2deg}.story-card:nth-child(2){--tilt:2deg;background:#efdc78}.story-card:nth-child(3){--tilt:-1deg;background:#f1e3d3}.story-cards.in-view .story-card{transform:rotate(0deg)}.story-card:hover{background:#fff;transform:translateY(-6px)}.story-card .num{font-size:12px;letter-spacing:.1em}.story-card h3{font-size:25px;margin:20px 0 13px}.story-card p{font-size:15px;line-height:1.9}.card-link{display:block;font-size:13px;margin-top:24px}.fine{max-width:1400px;margin:30px auto 0;font-size:13px}.footer{padding:35px 6vw;background:var(--paper);display:flex;gap:30px;justify-content:space-between;align-items:center;border-top:1px solid #173b3620;font-size:13px}.footer strong{font-size:16px;display:block}.footer p{margin-top:6px}.footer .cta{font-size:13px}.reveal{transition:opacity .65s,transform .65s}.motion-ready .reveal:not(.in-view){opacity:0;transform:translateY(22px)}.no-motion .line,.no-motion .floating{animation:none}.no-motion .reveal{opacity:1!important;transform:none!important;transition:none}.no-motion .door{display:none}.no-motion .house-graphic,.no-motion .guide,.no-motion .world-circle,.no-motion .floating{transform:none}.no-motion .story-card{transform:none;transition:none}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #d45a27;outline-offset:5px}
/* B: 文字と色面でつくる、相談の余白 */
.concept-b{--ink:#182b7c;--paper:#f5f2ff;--mint:#d8e6cb;--orange:#b84d21}.concept-b .header{border-color:#182b7c26}.concept-b .hero{background:#e7e1f6;padding-bottom:48px}.concept-b .hero-grid{grid-template-columns:1.08fr 1fr;gap:70px}.concept-b .display{font-size:clamp(58px,7.7vw,108px);line-height:1.25;letter-spacing:-.055em}.concept-b .display .accent{color:var(--ink);position:relative;display:inline-block}.concept-b .display .accent::after{content:"";position:absolute;left:-4px;right:-13px;bottom:7px;height:20px;background:#dce78e;z-index:-1;transform:rotate(-4deg) scaleX(calc(.65 + var(--p)*.35));transform-origin:left}.concept-b .hero-copy{position:relative;z-index:1}.concept-b .hero-world{height:480px;display:block;perspective:none}.concept-b .folio{position:absolute;inset:45px 12px 50px 0;background:#fffdf5;transform:rotate(-5deg) translateY(calc(var(--p)*-20px));border-radius:2px;box-shadow:14px 14px 0 #c5c0db;padding:28px;z-index:2;animation:folio-enter 1s both}.folio-title{display:flex;justify-content:space-between;font-size:11px;letter-spacing:.08em;border-bottom:1px solid #182b7c40;padding-bottom:15px}.folio-question{font-size:31px;font-weight:700;line-height:1.7;margin:27px 0 18px;letter-spacing:-.03em}.folio-question em{font-style:normal;box-shadow:inset 0 -10px #e3edb6}.folio-answer{font-size:14px;min-height:52px;line-height:1.9}.topic-tabs{position:absolute;top:0;left:18px;right:-10px;display:flex;gap:10px;z-index:4;transform:rotate(2deg)}.topic-tabs button{flex:1;min-height:53px;border:0;color:var(--ink);background:#dce78e;font-size:14px;cursor:pointer;border-radius:5px 5px 0 0;transition:transform .2s,background .2s}.topic-tabs button[aria-pressed=true]{background:var(--ink);color:#fff;transform:translateY(-10px)}.folio .case-link{display:inline-block;font-size:12px;margin-top:22px}.folio .guide{width:70px;left:auto;right:20px;bottom:20px;transform:rotate(9deg)}.route-line{position:absolute;bottom:9px;left:4%;right:0;border-top:1px dashed #182b7c80;height:25px}.route-label{position:absolute;bottom:-8px;right:0;font-size:10px;background:#e7e1f6;padding-left:10px}.travel-guide{position:absolute;bottom:-5px;left:5px;width:45px;transform:translateX(calc(var(--p)*160px))}.blue-stamp{position:absolute;width:95px;height:95px;right:-20px;bottom:65px;border-radius:50%;background:#dce78e;display:grid;place-items:center;text-align:center;font-size:12px;line-height:1.65;transform:rotate(calc(10deg + var(--p)*20deg));z-index:4}.concept-b .situations{background:#fffdf5;padding-top:75px}.b-grid{display:grid;grid-template-columns:.9fr 1.2fr;gap:80px;max-width:1400px;margin:auto}.b-heading h2{font-size:clamp(35px,4.5vw,64px);letter-spacing:-.03em;line-height:1.55;margin:12px 0 20px}.b-heading p{font-size:15px;max-width:360px}.b-index{display:block;font-size:12px;letter-spacing:.12em}.topic-list{list-style:none;padding:0;margin:0}.topic-list li{border-top:1px solid #182b7c60}.topic-list li:last-child{border-bottom:1px solid #182b7c60}.topic-list a{display:grid;grid-template-columns:30px 1fr 22px;gap:12px;text-decoration:none;padding:24px 0;align-items:center;transition:padding-left .2s}.topic-list a:hover{padding-left:10px}.topic-list span{font-size:11px}.topic-list strong{font-size:21px;font-weight:600}.topic-list i{font-style:normal}.concept-b .footer{background:#e7e1f6}.no-motion .folio,.no-motion .travel-guide,.no-motion .blue-stamp{animation:none;transform:none}.no-motion .topic-tabs button{transition:none}.no-motion .topic-tabs button[aria-pressed=true]{transform:none}.no-motion .display .accent::after{transform:none}
@keyframes word-enter{from{opacity:0;transform:translateY(32px)}to{opacity:1;transform:translateY(0)}}@keyframes note-enter{from{opacity:0;translate:0 18px}to{opacity:1;translate:0 0}}@keyframes folio-enter{from{opacity:0;translate:30px 25px;rotate:4deg}to{opacity:1;translate:0 0;rotate:0deg}}
@media(max-width:1050px){.header-nav{gap:15px}.hero-grid{gap:10px}.hero-world{transform:scale(.9);transform-origin:center}.hero{padding-left:5vw;padding-right:5vw}.concept-b .hero-grid{gap:30px}.story-cards{gap:15px}.b-grid{gap:40px}.story-card{padding:25px 20px}.story-card h3{font-size:22px}}
@media(max-width:760px){body{font-size:16px}.header{padding:15px 6vw;gap:12px;align-items:center}.brand{font-size:15px}.brand small{font-size:8px;letter-spacing:0}.header-nav{gap:10px;flex-wrap:wrap;justify-content:flex-end;max-width:150px;font-size:11px}.header-nav .topic-nav{display:none}.motion{font-size:10px;padding:6px 9px;min-height:32px}.review-bar{font-size:10px}.hero{padding:28px 6vw 30px}.hero-grid,.concept-b .hero-grid{grid-template-columns:1fr;gap:8px}.service{font-size:11px;line-height:1.6;margin-bottom:17px;gap:8px}.service::before{width:18px}.display{font-size:49px;line-height:1.35;letter-spacing:-.05em}.lead{font-size:14px;margin:19px 0;line-height:1.9}.actions{gap:14px}.cta{padding:14px 19px;min-height:51px;font-size:14px;gap:22px}.phone{font-size:14px}.hours{font-size:11px}.hero-world{height:305px;transform:none;margin-top:20px;max-width:430px;width:100%;justify-self:center}.world-circle{width:260px;height:260px}.house-graphic{width:230px;height:230px}.roof{height:77px;left:-10px;right:-10px}.house-floor{top:74px;left:10px;right:10px;border-bottom-width:6px}.door{top:77px;height:147px;font-size:18px;width:calc(50% - 10px)}.door.left{left:10px}.door.right{right:10px}.house-message{top:93px;left:16px;right:16px;font-size:20px}.house-message small{font-size:10px;margin-bottom:6px}.floating{font-size:12px;padding:9px 13px}.note-one{left:0;top:7px}.note-two{right:0;bottom:14px}.guide{width:58px;left:0;bottom:3px}.small-caption{font-size:8px;right:0;top:35px}.scroll-hint{margin-top:15px;font-size:10px}.situations{padding:42px 6vw 50px}.section-head{display:block;margin-bottom:25px}.section-head h2{font-size:33px}.section-head p{margin-top:17px;font-size:14px}.story-cards{grid-template-columns:1fr;gap:18px}.story-card{min-height:0;padding:24px}.story-card h3{font-size:23px;margin-top:12px}.story-card p{font-size:14px}.card-link{margin-top:15px}.fine{font-size:12px}.footer{display:block;padding:28px 6vw;font-size:12px}.footer strong{font-size:15px}.footer .cta{margin-top:20px}.concept-b .display{font-size:62px;line-height:1.25}.concept-b .lead{max-width:310px}.concept-b .hero-world{height:375px;margin-top:40px;width:100%;max-width:430px}.concept-b .folio{inset:36px 15px 44px 5px;padding:22px;box-shadow:9px 9px 0 #c5c0db;transform:rotate(-3deg) translateY(calc(var(--p)*-15px))}.topic-tabs{top:0;left:10px;right:0;gap:7px}.topic-tabs button{font-size:12px;min-height:44px}.folio-title{font-size:9px;padding-bottom:11px}.folio-question{font-size:25px;line-height:1.65;margin:20px 0 14px}.folio-answer{font-size:13px;line-height:1.8;min-height:48px;max-width:220px}.folio .case-link{font-size:11px;margin-top:16px}.folio .guide{width:48px;right:15px;bottom:13px}.blue-stamp{width:70px;height:70px;right:-3px;bottom:12px;font-size:10px}.route-line{bottom:0;right:40px}.route-label{display:none}.travel-guide{width:35px}.b-grid{grid-template-columns:1fr;gap:30px}.b-heading h2{font-size:37px}.b-heading p{font-size:14px}.concept-b .situations{padding-top:45px}.topic-list strong{font-size:18px}.topic-list a{padding:20px 0}.concept-b .display .accent::after{height:13px;bottom:5px}.eyebrow{font-size:10px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}*,*::before,*::after{animation:none!important;transition:none!important}.reveal{opacity:1!important;transform:none!important}.door{display:none}.house-graphic,.world-circle,.floating,.guide,.folio,.travel-guide,.blue-stamp{transform:none!important}}
.concept-b .display{font-size:clamp(58px,6.5vw,94px)}@media(max-width:760px){.display{font-size:46px}.concept-b .display{font-size:52px}.header-nav .topic-nav{display:inline}.header-nav{max-width:155px}}
.hero-copy{position:relative}@media(max-width:760px){.brand{font-size:14px;white-space:nowrap}.brand small{white-space:normal}.hero-copy::after{content:"";position:absolute;right:0;top:-4px;width:36px;height:42px;background:url("assets/house-guide-pop.png") center/contain no-repeat;pointer-events:none}.service{padding-right:44px}}
@keyframes word-enter{from{transform:translateY(20px)}to{transform:translateY(0)}}@keyframes folio-enter{from{translate:30px 25px;rotate:4deg}to{translate:0 0;rotate:0deg}}.motion-ready .reveal:not(.in-view){opacity:1;transform:translateY(16px)}
.no-motion *,.no-motion *::before,.no-motion *::after{animation:none!important;transition:none!important;scroll-behavior:auto!important}
