:root{--ink:#243744;--accent:#27557a;--pale:#eef3f7;--muted:#5d6b75;--line:#d3dce3}*{box-sizing:border-box}html{scroll-behavior:smooth}body{margin:0;color:var(--ink);background:#fff;font-family:"BIZ UDPGothic","Yu Gothic",Meiryo,sans-serif;font-size:16px;line-height:1.9}.roof{--ink:#293e36;--accent:#4b6958;--pale:#eef2ec;--muted:#5e6c62;--line:#d3dcd3}a{color:inherit;text-decoration:none}a:hover{text-decoration:underline}button,input,textarea,select{font:inherit}a:focus-visible,button:focus-visible,input:focus-visible,textarea:focus-visible,select:focus-visible{outline:3px solid #8caac2;outline-offset:4px}h1,h2,h3,p,figure{margin:0}h1,h2,h3{line-height:1.6}img{display:block;width:100%;height:auto}.wrap{width:calc(100% - 84px);max-width:1180px;margin:auto}.demo-banner{display:flex;align-items:center;gap:20px;padding:7px 28px;background:var(--pale);font-size:11px;color:var(--muted)}.demo-banner strong{font-size:11px;color:var(--ink)}.demo-banner a{margin-left:auto;text-decoration:underline}.sample-header{min-height:105px;display:flex;align-items:center;justify-content:space-between;gap:30px}.sample-brand{font-size:25px;font-weight:700;letter-spacing:.06em}.sample-brand small{display:block;font-size:11px;font-weight:400;letter-spacing:.05em;margin-top:3px}.sample-header nav{display:flex;gap:25px;align-items:center;font-size:12px}.button{display:inline-flex;align-items:center;justify-content:space-between;gap:25px;padding:16px 25px;min-height:56px;border:1px solid var(--accent);background:var(--accent);color:white;font-size:14px;font-weight:700;cursor:pointer}.button:hover{filter:brightness(1.1);text-decoration:none}.sample-header .button{padding:10px 19px;min-height:47px;font-size:12px}.supply-hero{background:var(--ink);color:#fff;padding:65px 0}.roof-hero{background:var(--pale);padding:65px 0}.hero-grid{display:grid;grid-template-columns:1fr 1fr;gap:70px;align-items:center}h1{font-size:clamp(37px,4.1vw,54px);line-height:1.65;letter-spacing:.045em}.lead-label{font-size:12px;font-weight:700;margin-bottom:22px;letter-spacing:.05em}.hero-lead{font-size:15px;line-height:2.15;margin:25px 0}.supply-hero .button{background:#fff;color:var(--ink);border-color:white}.hero-grid img{aspect-ratio:1.14;object-fit:cover}.hero-grid figure{position:relative}.hero-grid figcaption{font-size:10px;line-height:1.9;margin-top:10px;color:var(--muted)}.supply-hero figcaption{color:#d3dce3}.micro{font-size:11px;line-height:1.9;color:var(--muted);margin-top:17px}.supply-hero .micro{color:#d3dce3}.section{padding-block:85px}.section-title{margin-bottom:40px}.section-title>p:first-child{font-size:12px;font-weight:700;color:var(--accent);margin-bottom:15px}.section-title>p:last-child:not(:first-child){font-size:12px;color:var(--muted);margin-top:16px}h2{font-size:34px;letter-spacing:.045em}.product-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:32px}.product-grid article{border-top:3px solid var(--accent);padding:25px 0}.category{display:inline-block;font-size:12px;padding:4px 13px;background:var(--pale);margin-bottom:17px}.product-grid h3{font-size:22px;margin-bottom:17px}.product-grid p{font-size:14px;color:var(--muted);margin-bottom:20px}.product-grid a,.symptom-list a{font-size:13px;font-weight:700;border-bottom:1px solid var(--accent);display:inline-block;padding-block:7px}.prepare{background:var(--pale);padding:55px 0}.prepare-grid{display:grid;grid-template-columns:1fr 1fr;gap:65px;align-items:center}.prepare h2{font-size:29px}.prepare dl{margin:0}.prepare dl div{padding:14px 0;border-bottom:1px solid var(--line)}.prepare dt{font-weight:700;font-size:14px}.prepare dd{margin:5px 0 0;font-size:14px;color:var(--muted)}.prepare-grid>div>p:not(.lead-label){font-size:14px;line-height:2.1}.steps{list-style:none;display:grid;grid-template-columns:repeat(3,1fr);gap:35px;padding:0;margin:0}.steps li{border-top:1px solid var(--line);padding-top:20px}.steps span{font-family:Georgia,serif;font-size:30px;color:var(--accent)}.steps h3{font-size:20px;margin:10px 0 13px}.steps p{font-size:14px;color:var(--muted)}.symptom-list article{display:grid;grid-template-columns:1fr 1fr auto;align-items:center;gap:30px;border-top:1px solid var(--line);padding:28px 0}.symptom-list article:last-child{border-bottom:1px solid var(--line)}.symptom-list h3{font-size:20px;margin-bottom:8px}.symptom-list p{font-size:13px;color:var(--muted)}.consult-section{padding:65px 0;background:var(--pale)}.consult-grid{display:grid;grid-template-columns:1fr 1fr;gap:80px;align-items:start}.consult-grid h2{margin-bottom:22px}.consult-grid>div>p:not(.lead-label){font-size:14px;color:var(--muted)}.demo-note{margin-top:22px;border-top:1px solid var(--line);padding-top:17px;font-size:12px!important}.consult-grid form{background:white;padding:30px}.consult-grid label{display:block;font-size:13px;font-weight:700;margin-bottom:9px}.consult-grid input,.consult-grid textarea,.consult-grid select{width:100%;padding:12px;border:1px solid var(--line);background:#fbfcfc;color:var(--ink);font-size:14px;margin-bottom:23px;border-radius:0;max-width:100%}.consult-grid textarea{resize:vertical}.consult-grid ::placeholder{font-size:12px}.consult-grid .button{width:100%;justify-content:center}.demo-result{margin-top:25px;border-top:1px solid var(--line);padding-top:20px}.demo-result h3{font-size:17px;margin-bottom:13px}.demo-result [data-demo-output]{white-space:pre-wrap;font-size:13px}.sample-company{display:grid;grid-template-columns:1fr 1.5fr;gap:70px}.sample-company h2{font-size:25px}.sample-company dl{margin:0}.sample-company dl>div{display:grid;grid-template-columns:100px 1fr;gap:25px;border-top:1px solid var(--line);padding:16px 0;font-size:13px}.sample-company dt{font-weight:700}.sample-company dd{margin:0;color:var(--muted)}.sample-footer{padding:35px 0;border-top:1px solid var(--line)}.sample-footer>strong{font-size:17px}.sample-footer p{font-size:11px;color:var(--muted);margin-top:15px;line-height:2}.sample-footer p a{text-decoration:underline}.return-link{display:inline-block;margin-top:25px;border-bottom:1px solid var(--ink);font-size:13px}.skip{position:fixed;top:-100px;left:10px;z-index:20;background:var(--ink);color:white;padding:10px 20px}.skip:focus{top:10px}.gallery-intro{padding-block:65px 40px}.gallery-intro h1{font-size:40px}.gallery-intro p{font-size:14px;margin-top:20px}.gallery-grid{display:grid;grid-template-columns:1fr 1fr;gap:40px;margin-bottom:65px}.gallery-grid img{aspect-ratio:1.7;object-fit:cover}.gallery-grid h2{font-size:24px;margin-block:18px 12px}.gallery-grid p{font-size:14px;color:var(--muted);margin-bottom:20px}
@media(max-width:900px){.wrap{width:calc(100% - 56px)}.hero-grid{gap:35px}h1{font-size:37px}.hero-lead{font-size:14px}.hero-grid img{aspect-ratio:.9}.sample-header nav{gap:15px}.sample-brand{font-size:22px}.prepare-grid,.consult-grid{gap:35px}.symptom-list article{grid-template-columns:1fr 1fr;gap:22px}.symptom-list a{justify-self:start}.symptom-list article>p{grid-row:span 2}.sample-company{gap:35px}}
@media(max-width:620px){.wrap{width:calc(100% - 40px)}.demo-banner{padding:8px 16px;gap:12px;font-size:10px}.demo-banner span{display:none}.demo-banner strong{font-size:10px}.sample-header{min-height:90px;gap:15px}.sample-brand{font-size:18px}.sample-brand small{font-size:9px}.sample-header nav>a:not(.button){display:none}.sample-header nav .button{font-size:11px;padding:10px 12px;min-height:44px}.supply-hero,.roof-hero{padding:37px 0}.hero-grid{grid-template-columns:1fr;gap:30px}h1{font-size:34px;line-height:1.6}.lead-label{font-size:11px;margin-bottom:17px}.hero-lead{font-size:14px;margin-block:21px}.hero-lead br{display:none}.hero-grid img{aspect-ratio:1.5}.hero-grid figcaption{font-size:9px}.micro{font-size:10px}.button{font-size:13px;min-height:53px;padding-inline:20px}.section{padding-block:50px}.section-title{margin-bottom:28px}h2{font-size:27px}.product-grid{grid-template-columns:1fr;gap:8px}.product-grid article{padding:22px 0}.product-grid h3{font-size:22px;margin-bottom:11px}.category{margin-bottom:11px}.product-grid p{margin-bottom:12px}.prepare{padding-block:35px}.prepare-grid{grid-template-columns:1fr;gap:22px}.prepare h2{font-size:26px}.prepare dt,.prepare dd{font-size:13px}.steps{grid-template-columns:1fr;gap:24px}.steps li{padding-top:17px}.steps span{font-size:25px}.steps h3{display:inline;margin-left:16px;font-size:18px}.steps p{margin-top:13px;font-size:14px}.symptom-list article{grid-template-columns:1fr;gap:13px;padding-block:24px}.symptom-list article>p{grid-row:auto}.symptom-list h3{font-size:19px}.symptom-list p{font-size:14px}.consult-section{padding-block:40px}.consult-grid{grid-template-columns:1fr;gap:27px}.consult-grid form{padding:23px 20px}.consult-grid input,.consult-grid textarea{font-size:16px}.consult-grid select{font-size:14px}.consult-grid .button{font-size:12px}.sample-company{grid-template-columns:1fr;gap:25px}.sample-company h2{font-size:23px}.sample-company dl>div{grid-template-columns:75px 1fr;gap:15px;font-size:12px}.sample-footer{padding-block:28px}.sample-footer p{font-size:10px}.return-link{font-size:12px}.gallery-intro{padding-block:40px 28px}.gallery-intro h1{font-size:31px}.gallery-grid{grid-template-columns:1fr;gap:35px}.gallery-grid h2{font-size:23px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
