/*
Theme Name: WideTrust Estate
Description: 空き家・土地の査定相談。ConoHa WING / WordPress向け専用テーマ。
Version: 1.0.10
Author: WideTrust
Requires at least: 6.5
Requires PHP: 7.4
License: GPL-2.0-or-later
Text Domain: widetrust-estate
*/

:root{--forest:#4b5e4c;--sage:#526c55;--accent:#ad4b26;--accent-hover:#8f3c1c;--light:#f1f3e9;--cream:#fffdf8;--ink:#423d34;--muted:#696356;--line:#e6dfd0;--gold:#e9b582;--green:var(--forest)}*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:92px}body{margin:0;color:var(--ink);background:var(--cream);font-family:'Noto Sans JP','Yu Gothic',Meiryo,sans-serif;line-height:1.9}a{color:inherit;text-decoration:none}button,input,select,textarea{font:inherit}button,a,input,select,textarea{outline-offset:5px}button{cursor:pointer}header{min-height:86px;display:flex;align-items:center;justify-content:space-between;padding:14px 5vw;background:rgba(255,253,249,.97);position:sticky;top:0;z-index:10;border-bottom:1px solid var(--line)}.logo{line-height:1;flex:none}.logo img{width:220px;height:auto;mix-blend-mode:multiply}nav{display:flex;align-items:center;gap:24px;font-size:12px}nav a:hover{color:var(--accent)}.btn{border:0;background:var(--accent);color:#fff;padding:17px 25px;display:inline-flex;justify-content:center;align-items:center;gap:22px;border-radius:5px;font-weight:700;font-size:14px;transition:background .2s,transform .2s;box-shadow:0 4px 12px #ad4b2614}.btn:hover{background:var(--accent-hover);color:white;transform:translateY(-2px)}.btn.light{background:#fff;color:var(--forest)}.btn.light:hover{background:#f1f3e9}.btn.outline{background:transparent;border:1px solid var(--forest);color:var(--forest);box-shadow:none}.btn.outline:hover{background:var(--light)}.btn:disabled{opacity:.55;cursor:wait;transform:none}.eyebrow{color:var(--sage);font-size:11px;letter-spacing:.13em;font-weight:bold;text-transform:uppercase}.hero{padding:62px 5vw 0;max-width:1500px;margin:auto;position:relative}.hero-grid{display:grid;grid-template-columns:1fr 1.04fr;align-items:center;gap:40px}.hero h1{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-weight:600;font-size:clamp(39px,4.2vw,62px);line-height:1.65;letter-spacing:.035em;margin:20px 0}.hero h1 em{font-style:normal;background:linear-gradient(transparent 81%,#ffe2bb 81%)}.hero p{font-size:15px;color:var(--muted);margin:22px 0 27px;max-width:510px;line-height:2}.hero .hint{font-size:12px;display:block;margin:12px 0;color:var(--muted)}.quick-start{display:flex;gap:8px;margin:23px 0 10px;flex-wrap:wrap}.quick-start button{background:white;border:1px solid #c7d1b9;color:var(--forest);font-size:11px;padding:8px 12px;border-radius:4px}.quick-start button:hover{background:var(--light)}.quick-start span{margin-left:10px}.art{position:relative;overflow:hidden;aspect-ratio:1.08;background:#fff7ea}.photo-art{border-radius:90px 7px 7px 7px;box-shadow:0 18px 48px #705a3710}.photo-art>img{width:100%;height:100%;object-fit:cover;object-position:50% 50%}.photo-art:after{content:'';position:absolute;inset:50% 0 0;background:linear-gradient(transparent,#7a5f2830);pointer-events:none}.art-badge{position:absolute;bottom:35px;left:24px;background:#fffdf8f2;padding:14px 21px;font-size:12px;border-left:3px solid var(--accent);z-index:1}.art-badge strong{display:block;font-size:16px;color:var(--forest)}.photo-credit{position:absolute;right:13px;bottom:9px;color:white;font-size:9px;z-index:1}.hero-bottom{display:grid;grid-template-columns:repeat(3,1fr);border-top:1px solid var(--line);border-bottom:1px solid var(--line);margin-top:48px;padding:22px 0}.hero-bottom div{text-align:center;font-size:14px}.hero-bottom div+div{border-left:1px solid var(--line)}.hero-bottom span{color:var(--sage);margin-right:12px}section{max-width:1280px;margin:auto;padding:78px 5vw}.heading{margin-bottom:34px}.heading h2,h2{font-family:'Yu Mincho','Hiragino Mincho ProN',serif;font-size:clamp(27px,3vw,38px);font-weight:600;line-height:1.6;margin:12px 0 20px}.heading p{color:var(--muted);font-size:14px}.center{text-align:center}.worries{display:grid;grid-template-columns:repeat(3,1fr);gap:20px}.worry{border:1px solid var(--line);padding:28px 25px;background:#fff;border-radius:7px;border-top:3px solid #bbca9e}.worry .num{font:30px Georgia;color:#788365}.worry h3{font-size:18px;font-weight:600;line-height:1.7;margin:12px 0}.worry p{font-size:13px;color:var(--muted);margin:0}.reassure{text-align:center;font-size:17px;margin-top:30px}.reassure b{font-weight:600;border-bottom:2px solid var(--gold)}.dark{background:var(--forest);color:white}.dark section{display:grid;grid-template-columns:.85fr 1.15fr;gap:60px;align-items:center}.dark .eyebrow{color:#687a5b}.dark p{color:#62674f;font-size:14px}.choices{display:grid;gap:17px}.choice{padding:23px 25px;border:1px solid #d8dfc9;border-radius:4px;position:relative;background:#ffffff04}.choice small{color:#667750;font-size:11px;letter-spacing:.1em}.choice h3{font-family:'Yu Mincho',serif;font-size:23px;font-weight:500;margin:6px 0}.choice p{margin:0;font-size:13px}.choice b{position:absolute;right:24px;top:24px;color:#8c9b73;font-size:25px;font-family:Georgia}.method-facts{list-style:none;margin:16px 0 0;padding:0;font-size:12px;line-height:1.8;border-top:1px solid #d9e1ca;padding-top:10px}.method-facts li{display:flex;gap:14px;margin:5px 0;color:#535d47}.method-facts strong{font-size:11px;color:#667750;min-width:78px;font-weight:500}.method-note{font-size:10px!important;color:#667750!important}.types{display:flex;flex-wrap:wrap;gap:8px;margin:24px 0}.types span{border:1px solid var(--line);background:#fff;padding:6px 15px;font-size:12px;border-radius:30px}.feature-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px;align-items:start}.principles{margin:0}.principles article{border-bottom:1px solid var(--line);padding:22px 0;display:flex;gap:24px}.principles article:first-child{padding-top:0}.principles span{color:var(--sage);font:22px Georgia}.principles h3{margin:0 0 8px;font-size:18px;font-weight:600}.principles p{margin:0;color:var(--muted);font-size:13px}.mission-band{background:#fff4e4}.mission{display:grid;grid-template-columns:.85fr 1.15fr;gap:65px;align-items:center}.mission p{color:var(--muted);font-size:14px;line-height:2}.mission-art{position:relative;overflow:hidden;border-radius:50% 50% 5px 5px;background:#e7ecdf}.mission-art svg{width:100%;height:auto;display:block}.mission-art>span{position:absolute;bottom:20px;left:0;right:0;text-align:center;font-size:12px;background:#fffdf8e6;padding:12px}.mission-sign{padding-top:17px;border-top:1px solid #e7dac4;margin-top:22px}.mission-sign strong{font-size:15px;color:var(--forest)}.steps{display:grid;grid-template-columns:repeat(3,1fr);gap:28px}.step{border-top:2px solid #d2bd96;padding:20px 0}.step small{font-size:11px;letter-spacing:.13em;color:var(--sage)}.step h3{font-size:18px;font-weight:600}.step p{font-size:13px;color:var(--muted)}.form-wrap{background:#fff0da;padding:75px 5vw;scroll-margin-top:12px}.form-container{max-width:1080px;margin:auto;display:grid;grid-template-columns:.85fr 1.15fr;gap:60px}.form-intro p{font-size:14px;color:var(--muted)}.contact-points{padding-left:20px;font-size:13px;color:var(--forest)}.phone{display:block;font:30px Georgia;letter-spacing:.04em;margin:26px 0 4px}.phone-caption{font-size:11px;color:var(--muted)}.mail-link{font-size:13px;display:inline-block;margin-top:15px;text-decoration:underline}.form-box{background:#fff;padding:35px;border-radius:7px;border:1px solid #e6d9c3;box-shadow:0 12px 40px #705a370a}.progress{display:flex;align-items:center;gap:10px;color:#736c5e;font-size:11px;margin-bottom:27px}.progress span{flex:1;padding-bottom:10px;border-bottom:2px solid #e6dfd0}.progress .active{color:var(--forest);border-color:var(--accent);font-weight:600}fieldset{border:0;padding:0;margin:0}legend{font-size:19px;margin-bottom:20px;font-weight:600}.label{display:block;font-size:13px;margin-bottom:8px;font-weight:600}.required{font-size:10px;margin-left:8px;color:#9a431b}.optional{font-size:10px;margin-left:8px;color:var(--muted)}.field{margin-bottom:21px}.option-row{display:grid;grid-template-columns:repeat(3,1fr);gap:8px}.option-row label{font-size:12px;position:relative}.option-row input{position:absolute;opacity:0}.option-row span{display:block;padding:12px 6px;border:1px solid var(--line);border-radius:4px;text-align:center;cursor:pointer}.option-row input:checked+span{background:#edf2e3;border-color:var(--sage);color:var(--forest);font-weight:600}.option-row input:focus-visible+span{outline:2px solid var(--sage)}input[type=text],input[type=email],input[type=tel],select,textarea{width:100%;border:1px solid #d6cbb7;padding:12px;background:#fffdf7;border-radius:4px;font-size:14px;color:var(--ink)}input:focus,select:focus,textarea:focus{outline:2px solid #9caa82;outline-offset:1px}textarea{resize:vertical;min-height:90px}.field small{font-size:11px;color:var(--muted);display:block;margin-top:6px}.form-box .btn{width:100%}.form-note{font-size:11px;color:var(--muted);margin-top:16px;line-height:1.8}.back{background:none;border:0;text-decoration:underline;color:var(--muted);font-size:12px;margin-top:14px;min-height:35px}.hidden{display:none!important}#review{white-space:pre-wrap;background:#faf6eb;padding:18px;font-size:13px;margin-bottom:20px;overflow-wrap:anywhere;max-height:400px;overflow-y:auto}.status{font-size:13px;color:var(--forest);min-height:20px}.consent{display:flex;gap:10px;align-items:flex-start;font-size:12px;line-height:1.8;margin:24px 0}.consent input{margin-top:5px;accent-color:var(--sage);width:16px;height:16px;flex:none}.consent a{text-decoration:underline}.honeypot{position:absolute;left:-9999px;width:1px;height:1px;overflow:hidden}.faq{max-width:1000px}details{border-bottom:1px solid var(--line);padding:19px 0}summary{cursor:pointer;font-size:15px;list-style:none;display:flex;justify-content:space-between;gap:18px}summary:after{content:'＋';color:var(--sage)}details[open] summary:after{content:'−'}details p{font-size:13px;color:var(--muted);margin:18px 25px 2px}.company{background:#f7f5ec}.company-section{padding-top:70px;padding-bottom:60px}.company-grid{display:grid;grid-template-columns:.9fr 1.1fr;gap:65px}.company-logo{width:240px;height:auto;mix-blend-mode:multiply;margin-bottom:18px}.company-lead{font-size:14px;color:var(--muted);line-height:2;margin:0 0 18px}.company-photo{margin-top:28px}.company-photo img{width:100%;height:225px;object-fit:cover;border-radius:5px}.company-photo small{font-size:9px;display:block;color:var(--muted);margin-top:7px}.profile{margin:0;min-width:0}.profile>div{display:grid;grid-template-columns:105px 1fr;border-bottom:1px solid #e1dccd;padding:15px 0;font-size:12px}.profile dt{font-weight:600}.profile dd{margin:0;overflow-wrap:anywhere}.profile a{font-size:12px}.access-grid{display:grid;grid-template-columns:1fr 1.05fr;gap:35px}.map-panel{background:#f1eee3;min-height:420px;border-radius:5px;overflow:hidden}.map-panel iframe{width:100%;height:380px;border:0;display:block}.map-panel>a{display:block;text-align:center;padding:12px;font-size:12px;text-decoration:underline}.routes{display:grid;gap:15px}.route-card{display:flex;gap:17px;border:1px solid var(--line);background:white;padding:23px;border-radius:5px}.station-icon{flex:none;width:36px;height:36px;display:grid;place-items:center;background:var(--forest);border-radius:50%;font-size:12px;color:white;font-weight:bold;margin-top:5px}.route-card small{font-size:10px;color:var(--muted)}.route-card h3{margin:3px 0;font-size:19px;font-weight:600}.route-card p{font-size:12px;color:var(--muted);margin:10px 0}.route-card p.route-time{font-size:13px;color:var(--forest);font-weight:600;margin:3px 0 10px}.route-card .btn{font-size:11px;padding:11px 15px;gap:8px}.access-note{font-size:10px;color:var(--muted);margin:0}.policy{font-size:12px;color:var(--muted);padding-top:0;padding-bottom:40px}.policy h3{font-size:14px}.policy a{text-decoration:underline}.footer{padding:26px 5vw 85px;display:flex;justify-content:space-between;gap:30px;font-size:10px;color:var(--muted);border-top:1px solid var(--line)}.footer a{text-decoration:underline}.mobile-cta{display:none}
@media(min-width:1440px){.hero{padding-top:75px}}
@media(max-width:1100px) and (min-width:801px){nav{gap:14px;font-size:11px}.logo img{width:185px}nav .btn{padding:13px 16px;font-size:12px}.hero-grid{gap:25px}.route-card{padding:18px 12px;gap:10px}.route-card .btn{font-size:10px}.art-badge{left:15px;padding:12px}.art-badge strong{font-size:14px}}
@media(max-width:800px){header{min-height:70px;padding:12px 6vw}.logo img{width:170px}nav>a:not(.btn){display:none}nav .btn{padding:10px 12px;font-size:11px}.hero{padding:32px 6vw 0}.hero-grid{grid-template-columns:1fr;gap:23px}.hero h1{font-size:40px;line-height:1.55;margin:17px 0}.hero p{font-size:14px;line-height:1.95}.hero .hint{font-size:11px}.quick-start{gap:6px;margin:19px 0 0}.quick-start button{padding:8px;font-size:10px}.quick-start span{margin-left:5px}.photo-art{max-height:370px;border-radius:60px 6px 6px 6px;aspect-ratio:1.4}.photo-art .art-badge{bottom:33px;left:15px;padding:10px 14px}.art-badge strong{font-size:14px}.art-badge span{font-size:11px}.photo-credit{font-size:8px}.hero-bottom{margin-top:27px;padding:14px 0}.hero-bottom div{font-size:10px;line-height:1.7;padding:0 8px}.hero-bottom span{display:block;margin:0}section{padding:55px 6vw}.heading h2,h2{font-size:28px}.worries{grid-template-columns:1fr;gap:12px}.worry{padding:20px;display:grid;grid-template-columns:31px 1fr;gap:0 14px}.worry .num{grid-row:1/3;font-size:25px}.worry h3{margin:0 0 6px;font-size:16px}.worry p{grid-column:2;font-size:12px}.reassure{font-size:14px}.dark section,.feature-grid,.mission,.form-container,.company-grid,.access-grid{grid-template-columns:1fr;gap:26px}.dark section{padding-top:50px;padding-bottom:50px}.choice{padding:22px}.choice h3{font-size:21px}.method-facts li{gap:10px;font-size:11px}.method-facts strong{font-size:10px;min-width:65px}.mission-art{max-width:340px;margin:auto;order:2}.mission{padding-top:50px;padding-bottom:50px}.mission p{font-size:13px}.steps{grid-template-columns:1fr;gap:12px}.step h3{margin:8px 0}.step p{margin:6px 0}.form-wrap{padding:50px 6vw}.form-box{padding:24px 19px}.progress{gap:8px;font-size:10px}legend{font-size:18px}.company-section{padding:50px 6vw}.company-photo img{height:210px}.profile>div{grid-template-columns:88px 1fr;font-size:11px;padding:13px 0}.map-panel{min-height:345px}.map-panel iframe{height:305px}.route-card{padding:19px 14px;gap:12px}.route-card .btn{font-size:11px;padding:12px;display:flex}.footer{display:block;padding-bottom:110px}.footer>span{display:block;margin-bottom:14px}.mobile-cta{display:flex;position:fixed;bottom:0;left:0;right:0;z-index:20;background:#fffdf8;border-top:1px solid var(--line);padding:10px 16px;gap:10px}.mobile-cta .btn{flex:1;padding:12px;font-size:12px}.mobile-cta .call{padding:9px 13px;border:1px solid var(--line);font-size:12px;display:flex;align-items:center;border-radius:4px}.policy{padding-top:0}summary{font-size:14px}details p{margin-left:0}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}.btn{transition:none}}

/* Bright editorial direction: generous light surfaces, restrained warm call-to-action. */
body{background:#fffdf8}.hero{padding-top:45px}.hero-grid{grid-template-columns:.9fr 1.2fr;gap:30px}.hero h1{font-size:clamp(38px,3.7vw,56px);letter-spacing:.035em}.photo-art{border-radius:24px;box-shadow:none;aspect-ratio:1.28;background:#fff9ef}.photo-art>img{object-fit:cover}.photo-art:after{display:none}.photo-art .art-badge{background:#fffdf5f2;bottom:32px;border-left:3px solid #dfae76;box-shadow:0 4px 15px #7463390c}.photo-credit{color:#625c4e;background:#fffdf3de;padding:1px 5px;border-radius:3px}.dark{background:#f0f3e7;color:#423d34}.dark p{color:#59634e}.choice{background:#fffef9;border:1px solid #dce2ce;box-shadow:0 7px 24px #6a6a3f04}.dark .btn.light{background:#ad4b26;color:white}.dark .btn.light:hover{background:#8f3c1c}.choice small,.dark .eyebrow{color:#5b7050}.choice h3{color:#42583f}.method-facts li{color:#59634e}.method-facts strong{color:#5b7050}.mission-art{border-radius:14px;background:#f6f1e5}.mission-art img{width:100%;height:auto;display:block}.mission-art>span{font-size:12px;background:#fffdf4ee}.company-photo img{border-radius:10px}.eyebrow{letter-spacing:.12em}.hero-bottom{background:#fffdf8}.form-box{border-top:4px solid #e0b482}.worry{border-top-color:#d5c49e}.btn.outline{border-color:#889575}.btn.outline:hover{background:#f1f3e9}.footer{background:#faf6ed}
@media(max-width:800px){.hero-grid{grid-template-columns:1fr;gap:16px}.hero{padding-top:29px}.hero h1{font-size:39px;line-height:1.6}.photo-art{aspect-ratio:1.4;max-height:360px;border-radius:14px}.mission-art{max-width:none;order:2}.photo-art .art-badge{bottom:27px;left:10px;padding:8px 11px}.art-badge strong{font-size:13px}.photo-credit{font-size:8px;bottom:6px}.hero-bottom{margin-top:24px}.dark section{gap:27px}}
.option-row,.quick-start{display:grid;grid-template-columns:repeat(2,minmax(0,1fr))}.quick-start button{width:100%}.photo-art>img{object-fit:cover;object-position:center}.photo-credit{background:rgba(255,253,248,.94);color:#423d34;padding:5px 9px;border-radius:4px}
.admin-bar header{top:32px}@media(max-width:782px){.admin-bar header{top:46px}}

/* Fit narrow phone screens without clipping content or disabling zoom. */
img,svg,iframe{max-width:100%}img{vertical-align:middle}
.hero-grid>*,.feature-grid>*,.mission>*,.form-container>*,.company-grid>*,.access-grid>*,.dark section>*,.route-card>*,.principles article>*{min-width:0}
fieldset{min-inline-size:0;max-width:100%}legend{max-width:100%;white-space:normal}
input,select,textarea{min-width:0;max-width:100%}.btn{max-width:100%;white-space:normal;text-align:center}
.profile dd,.mail-link,.footer,legend,.status,.route-card{overflow-wrap:anywhere}
@media(max-width:800px){
 html{scroll-padding-top:90px}header{gap:10px;padding:10px 4vw;min-height:64px}.logo{min-width:0;flex:1}.logo img{width:clamp(120px,42vw,170px);max-width:100%}nav{flex:none;gap:0}nav .btn{min-height:44px;padding:10px;font-size:11px;gap:5px}
 .hero-grid,.feature-grid,.mission,.form-container,.company-grid,.access-grid,.dark section{grid-template-columns:minmax(0,1fr)}
 .hero h1{font-size:clamp(27px,8.1vw,39px);letter-spacing:.01em}.heading h2,h2{font-size:clamp(24px,6.8vw,28px)}
 .hero p br,.heading p br{display:none}.hero .btn{width:100%;gap:10px}.hero-bottom{grid-template-columns:repeat(3,minmax(0,1fr))}.hero-bottom div{padding:0 4px}
 .photo-art{width:100%;height:auto}.photo-art .art-badge{left:10px;right:10px;width:auto;max-width:calc(100% - 20px);padding:8px}.art-badge strong{font-size:clamp(11px,3.4vw,14px)}
 .form-wrap{padding-left:4vw;padding-right:4vw}.form-box{padding:22px 16px}.form-box input[type=text],.form-box input[type=email],.form-box input[type=tel],.form-box select,.form-box textarea{font-size:16px}.option-row span{min-height:48px;display:flex;align-items:center;justify-content:center;font-size:12px}
 .quick-start button,.back{min-height:44px}.progress{gap:6px;line-height:1.7}.progress span{min-width:0}.consent{overflow-wrap:anywhere}
 .profile>div{grid-template-columns:76px minmax(0,1fr);gap:10px}.company-logo{max-width:100%}.route-card{gap:10px;padding:17px 12px}.route-card>div{min-width:0;flex:1}.route-card .btn{width:100%;min-height:44px}.route-card h3{font-size:18px}
 .mobile-cta{padding:10px 12px calc(10px + env(safe-area-inset-bottom,0px));gap:8px}.mobile-cta .btn{min-width:0;gap:7px;min-height:46px}.mobile-cta .call{flex:none;min-height:46px}.footer{padding-bottom:calc(110px + env(safe-area-inset-bottom,0px))}
}
@media(max-width:359px){.form-box{padding:20px 12px}.option-row{gap:6px}.option-row span{font-size:11px}.profile>div{grid-template-columns:1fr;gap:3px}.route-card{display:block}.station-icon{margin-bottom:8px}.phone{font-size:27px}.hero-bottom div{font-size:9px}.quick-start button{font-size:11px}}

/* Preserve form controls so another property can be submitted after success. */
#step3.submitted > :not(.receipt){display:none}
.receipt h3{font-size:20px;line-height:1.7;margin-top:0}
.receipt p{overflow-wrap:anywhere}

/* Plain photo captions and number-free concern cards. */
.photo-art .art-badge{background:none;border:0;box-shadow:none;padding:0;color:#fff;text-shadow:0 1px 3px #302c24,0 0 7px #302c24}
.photo-art .art-badge strong{color:inherit}
.mission-art>span{background:none;color:#fff;text-shadow:0 1px 3px #302c24,0 0 7px #302c24}
@media(max-width:800px){.worry{display:block}.worry h3{margin-bottom:6px}.worry p{grid-column:auto}.photo-art .art-badge{padding:0;left:16px;bottom:20px}}

/* Sale-method copy and clearly labelled sample review cards. */
.dark p.solutions-lead{font-size:22px;line-height:1.9;margin:0 0 28px;color:var(--ink)}
.dark .btn.light{font-size:17px;line-height:1.7;padding:18px 24px}
.reviews-section{max-width:1280px}.reviews-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:22px}
.reviews-section h2 span{display:block;font-family:'Yu Gothic',Meiryo,sans-serif;font-size:15px;font-weight:500;margin-top:6px}
.reviews-disclosure{max-width:680px;margin:0 auto;line-height:1.9}
.review-card{background:#fff;border:1px solid var(--line);border-radius:10px;padding:26px;min-width:0}
.review-sample-label{display:inline-block;color:var(--forest);background:var(--light);padding:3px 10px;border-radius:4px;font-size:11px}
.review-card h3{font-size:17px;line-height:1.8;margin:14px 0 12px;color:var(--ink)}
.review-card p{font-size:14px;line-height:2;margin:0;color:var(--muted);overflow-wrap:anywhere}
@media(max-width:1000px){.reviews-grid{grid-template-columns:repeat(2,minmax(0,1fr))}}
@media(max-width:600px){.reviews-grid{grid-template-columns:1fr;gap:14px}.review-card{padding:22px}.dark p.solutions-lead{font-size:20px}.dark .btn.light{font-size:16px}}

/* Larger, heavier Japanese text with stronger contrast. */
:root{--ink:#2f2b26;--muted:#4f4a41}
body{font-family:Meiryo,"Hiragino Kaku Gothic ProN","Noto Sans JP",system-ui,sans-serif;font-size:17px;font-weight:500;letter-spacing:.015em}
.hero h1,.heading h2,h2,.choice h3{font-family:inherit;font-weight:700}
h3,.label,.btn,summary{font-weight:700}
.hero p,.heading p,.worry p,.dark p,.choice p,.method-facts li,.mission p,.step p,.form-intro p,.contact-points,.review-card p,.company-lead,.profile>div,.profile a,.route-card p,details p,.consent,#review{font-size:16px;line-height:1.95}
.hero h1{font-size:clamp(38px,3.8vw,56px);line-height:1.6}
.worry h3,.step h3,.review-card h3{font-size:20px}
.choice h3{font-size:24px;line-height:1.7}
.dark p.solutions-lead{font-size:23px;line-height:1.9}
.dark p.method-note{font-size:13px!important;color:var(--muted)!important}
.method-facts strong{font-size:14px;font-weight:700;min-width:88px;flex:none}
nav{font-size:14px}.btn{font-size:16px}.quick-start button{font-size:14px;font-weight:700}
.label{font-size:16px}.progress{font-size:14px}.option-row span{font-size:15px}
.form-box input[type=text],.form-box input[type=email],.form-box input[type=tel],.form-box select,.form-box textarea{font-size:17px}
legend{font-size:21px;font-weight:700}.field small,.form-note,.phone-caption{font-size:13px}
.required,.optional{font-size:12px}.back,.mail-link{font-size:15px}
.status{font-size:16px}.policy{font-size:14px}.policy h3{font-size:17px}
summary{font-size:18px}.profile dt{font-weight:700}.profile>div{grid-template-columns:115px minmax(0,1fr)}
.route-card small,.access-note{font-size:12px}.route-card p.route-time{font-size:15px}.route-card .btn{font-size:14px}.map-panel>a{font-size:14px}
.footer{font-size:12px}.art-badge{font-size:16px}.art-badge strong{font-size:20px}
.photo-art .art-badge,.mission-art>span{text-shadow:0 1px 1px #302c24;font-weight:700}
@media(min-width:801px) and (max-width:1200px){header{padding-left:3vw;padding-right:3vw}.logo img{width:180px}nav{font-size:13px;gap:15px}nav .btn{font-size:14px;padding:12px}.form-container{gap:36px;grid-template-columns:minmax(0,.85fr) minmax(0,1.15fr)}}
@media(max-width:800px){
 body{font-size:16px}.hero h1{font-size:clamp(32px,8.5vw,40px)}.heading h2,h2{font-size:clamp(26px,7vw,32px)}
 nav .btn{font-size:13px}.quick-start button{font-size:13px}.btn{font-size:16px}
 .worry h3,.step h3,.review-card h3{font-size:19px}.choice h3{font-size:22px}
 .dark p.solutions-lead{font-size:21px}.dark .btn.light{font-size:16px}
 .method-facts li{display:block}.method-facts strong{display:block;margin-bottom:2px}
 .progress{font-size:13px}.option-row span{font-size:14px}.profile>div{grid-template-columns:88px minmax(0,1fr);font-size:15px}.profile a{font-size:15px}
 .mobile-cta .btn,.mobile-cta .call{font-size:14px}.form-container{gap:30px}
 .art-badge span{font-size:13px}.art-badge strong{font-size:16px}.mission-art>span{font-size:14px}
}
@media(max-width:359px){nav .btn{font-size:12px}.profile>div{grid-template-columns:1fr}.option-row span{font-size:13px}}

@media(min-width:801px) and (max-width:1000px){.logo img{width:160px}nav{font-size:12px;gap:12px}nav .btn{font-size:13px;padding:10px}}
