*{box-sizing:border-box}html{scroll-behavior:smooth;scroll-padding-top:100px}body{margin:0;color:#29494d;background:#fcfefd;font-family:'Noto Sans JP','Yu Gothic',Meiryo,sans-serif;font-size:16px;line-height:1.9}a{color:#216c70;text-underline-offset:4px}a:hover{color:#185d3d}img{max-width:100%;height:auto}button,input,select,textarea{font:inherit}button,a,input,select,textarea,summary{-webkit-tap-highlight-color:transparent}a:focus-visible,button:focus-visible,summary:focus-visible{outline:3px solid #258e94;outline-offset:5px}h1,h2,h3,p{margin-top:0}h1{font-size:clamp(30px,4vw,48px);line-height:1.5;letter-spacing:.015em;margin-bottom:24px}h2{font-size:clamp(25px,3vw,34px);line-height:1.6;margin-bottom:20px}h3{font-size:21px;line-height:1.65;margin-bottom:14px}p{margin-bottom:20px}main{max-width:1180px;margin:auto;padding:0 24px}section{scroll-margin-top:100px}.v-skip{position:absolute;left:16px;top:-100px;z-index:100;background:white;padding:12px}.v-skip:focus{top:8px}.v-header{position:sticky;top:0;z-index:30;display:flex;align-items:center;justify-content:space-between;gap:24px;padding:16px max(24px,calc((100vw - 1132px)/2));background:#ffffffed;border-top:5px solid #3eb370;border-bottom:1px solid #c3ddd5;backdrop-filter:blur(12px)}.v-header img{display:block;width:245px;max-width:38vw}.v-header nav{display:flex;align-items:center;gap:22px;font-size:15px;font-weight:700}.v-header nav a{text-decoration:none;white-space:nowrap}.v-header .v-button{padding:9px 19px}.v-breadcrumb{font-size:14px;margin:24px 0;overflow-wrap:anywhere}.v-hero{display:grid;grid-template-columns:1.15fr 1fr;gap:40px;align-items:center;padding:30px 0 64px}.v-label{display:block;font-weight:700;letter-spacing:.07em;color:#26765c;font-size:14px;margin-bottom:16px}.v-hero p{font-size:17px}.v-hero figure{margin:0}.v-hero img{display:block;border-radius:28px 28px 70px 28px;box-shadow:12px 12px 0 #c1e4d3}.v-hero figcaption{font-size:14px;margin-top:24px;text-align:center}.v-actions{display:flex;gap:12px;flex-wrap:wrap;margin:28px 0 18px}.v-button{display:inline-flex;justify-content:center;align-items:center;text-decoration:none;background:#3eb370;border:1px solid #3eb370;color:#143e28;border-radius:999px;padding:14px 24px;font-weight:700;min-height:46px}.v-button:hover{background:#bde3cb}.v-button.secondary{background:#fff;color:#216d72;border-color:#49aeb0}.v-small,.v-hero .v-small{font-size:14px;color:#506b68;line-height:1.85}.v-section{padding:54px 0;border-top:1px solid #c8e0d7}.v-section>p{max-width:850px}.v-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px;margin-top:28px}.city-grid{grid-template-columns:repeat(2,minmax(0,1fr))}.v-card{display:block;min-width:0;background:#e2f2e8;border:1px solid #bfdeca;border-radius:20px;padding:28px;text-decoration:none;color:#29494d}.v-card:nth-child(2n){background:#dff1f1;border-color:#bbdcdd}.v-card:nth-child(3){background:#f0f4d4;border-color:#d6e29c}.v-card p:last-child{margin-bottom:0}.city-grid a:hover{box-shadow:0 6px 20px #275e5620;border-color:#278f70}.v-card h3 span{float:right}.v-soft{padding:38px;border:0;background:#eef6f0;border-radius:28px;margin:24px 0}.v-table{overflow:auto;margin:24px 0;border:1px solid #b6d7cb;border-radius:14px}.v-table table{width:100%;border-collapse:collapse;text-align:left;min-width:540px}.v-table caption{text-align:left;padding:15px;background:#ecf6ee;font-weight:700}.v-table th,.v-table td{padding:18px;border-top:1px solid #c8e1d4;vertical-align:top}.v-table th{background:#e0f1e7}.v-table thead th{background:#c6e6d3}.v-steps{counter-reset:step;list-style:none;padding:0;display:grid;grid-template-columns:repeat(2,minmax(0,1fr));gap:24px}.v-steps li{counter-increment:step;position:relative;padding:24px 24px 16px 70px;background:#f0f7f3;border-radius:16px}.v-steps li:before{content:counter(step,decimal-leading-zero);position:absolute;left:20px;top:24px;color:#237557;font-weight:800}.v-steps strong{font-size:19px}.v-steps p{margin:8px 0}.v-sources{border-left:4px solid #49bcbd;padding:24px;background:#f1f8f6;margin-top:28px;font-size:15px}.v-sources h3{font-size:18px}.v-sources p{margin-bottom:0}.v-sources ul{padding-left:22px}.v-sources li{margin:10px 0}.v-checks{padding-left:24px}.v-checks li{margin:16px 0}.v-faq{background:#edf6f1;border:1px solid #c5ded0;border-radius:12px;margin:14px 0;padding:18px 22px}.v-faq summary{cursor:pointer;font-weight:700}.v-faq p{margin:15px 0 0}.v-contact{display:grid;grid-template-columns:.85fr 1.15fr;gap:38px;align-items:start}.v-phone{display:block;font-size:29px;font-weight:800;margin:20px 0}.v-editor{background:#edf5ef;border-left:4px solid #3eb370;padding:24px;margin:30px 0 60px;font-size:14px}.v-editor p{margin:10px 0 0}.v-footer{background:#d6edeb;padding:38px max(24px,calc((100vw - 1132px)/2)) 110px;border-top:4px solid #49bcbd;overflow-wrap:anywhere}.v-footer p{margin-bottom:12px}.v-sticky{position:fixed;bottom:0;left:0;right:0;display:flex;justify-content:center;padding:10px 16px max(10px,env(safe-area-inset-bottom));gap:12px;background:#fffffff0;z-index:40;border-top:1px solid #bddbcf}.v-sticky a{background:#3eb370;border-radius:10px;padding:10px 30px;color:#173e2a;font-weight:700;text-align:center;text-decoration:none}.v-sticky a:first-child{background:#c4e8e6;color:#244b50}.v-progress{margin-bottom:16px;font-size:14px;color:#3a6456}.v-progress progress{display:block;width:100%;height:8px;accent-color:#3eb370;margin:8px 0}.v-direct{font-size:14px;color:#366758;border:1px solid #c0d8ca;border-radius:9px;padding:12px;margin-bottom:20px}.v-form-home{margin:24px 0}.v-home-links{padding:48px 0}.v-home-links .city-grid{gap:16px}.v-home-links .v-card h3{font-size:21px}.v-home-links .v-card p{font-size:15px}.v-trust{display:inline-block;background:#eff4ca;border:1px solid #c6d965;border-radius:10px;padding:7px 14px;font-weight:700;margin-top:12px}
.assessment-form{background:#fff;border:1px solid #b4d4c4;border-radius:22px;padding:30px;min-width:0}.assessment-form h3{font-size:24px}.assessment-form fieldset{border:0;margin:0 0 24px;padding:0;min-width:0}.assessment-form legend{font-size:18px;font-weight:700;border-bottom:2px solid #bfdccb;width:100%;padding-bottom:8px;margin-bottom:12px}.assessment-form label{display:block;font-weight:700;margin:14px 0 6px}.assessment-form input:not([type=checkbox]),.assessment-form select,.assessment-form textarea{display:block;width:100%;max-width:100%;min-height:48px;padding:12px;border:1px solid #9dbdaf;border-radius:9px;background:#fcfefd;color:#29494d;font-size:16px}.assessment-form input[type=hidden]{display:none}.assessment-form input:focus,.assessment-form select:focus,.assessment-form textarea:focus{outline:3px solid #49bcbd60;outline-offset:1px}.assessment-form small{font-size:14px;display:block}.required{display:inline-block;font-size:12px;background:#e3efcc;border:1px solid #c7dca0;color:#3c5b2e;padding:0 5px;margin-left:5px;border-radius:4px}.optional{font-size:14px;font-weight:400}.form-intro,.form-footnote{font-size:14px}.form-two{display:grid;grid-template-columns:1fr 1fr;gap:14px}.form-more{padding:14px;background:#edf7f2;border-radius:10px;margin-bottom:22px}.form-more summary{cursor:pointer;font-weight:700}.form-privacy{font-size:14px;background:#f1f6f3;padding:16px;border-radius:10px}.form-privacy p:last-child{margin:0}.form-privacy a{overflow-wrap:anywhere}.assessment-form .consent{display:flex;gap:10px;font-size:14px;font-weight:400}.consent input{width:20px;height:20px;flex-shrink:0;margin-top:6px;accent-color:#278550}.assessment-submit{width:100%;border:0;border-radius:12px;background:#3eb370;color:#163d28;font-weight:700;padding:16px;min-height:54px;cursor:pointer}.email-help{background:#e2f3f0;border-radius:12px;margin-top:24px;padding:18px;overflow-wrap:anywhere}.email-help[hidden]{display:none}.email-help h4{font-size:19px}.email-help button{margin-top:14px;padding:12px;border:1px solid #6a9e8f;border-radius:8px;background:white;cursor:pointer}.email-help textarea{resize:vertical}.email-help p{font-size:14px}.assessment-form textarea{resize:vertical}
@media(max-width:900px){.v-header{gap:14px;padding:12px 18px}.v-header nav{gap:14px}.v-header nav>a:not(.v-button){display:none}.v-hero,.v-contact{grid-template-columns:1fr;gap:28px}.v-hero figure{max-width:620px}.v-grid{grid-template-columns:1fr}.city-grid,.v-steps{grid-template-columns:1fr 1fr}.v-hero{padding-top:15px}.v-contact>div>h2 br{display:none}}
@media(max-width:600px){main{padding:0 18px}.v-header img{width:185px;max-width:48vw}.v-header .v-button{padding:8px 14px;font-size:14px}.v-breadcrumb{font-size:13px}.v-hero h1 br{display:none}.v-hero{padding-bottom:40px}.v-hero img{box-shadow:6px 8px 0 #c1e4d3}.v-section{padding:36px 0}.v-card{padding:23px}.city-grid,.v-steps,.form-two{grid-template-columns:1fr}.v-soft{padding:25px 20px}.v-contact{gap:24px}.assessment-form{padding:24px 18px}.v-actions .v-button{width:100%;font-size:16px}.v-sticky{gap:8px}.v-sticky a{padding:10px 12px;font-size:15px;flex:1}.v-sticky a:last-child{flex:1.6}.v-phone{font-size:27px}.v-table th,.v-table td{padding:14px}.v-sources{padding:18px}.v-editor{padding:20px}}
@media(prefers-reduced-motion:reduce){html{scroll-behavior:auto}}
