/* ページ全体の文字体系と、FV直下〜ビジョンのサイズ調整 */
:root{--font-body:"Zen Kaku Gothic New","Hiragino Kaku Gothic ProN","Yu Gothic",sans-serif;--font-heading:"Zen Maru Gothic","Hiragino Maru Gothic ProN","Yu Gothic",sans-serif}
body,.rx-redesign{font-family:var(--font-body);font-size:17px;line-height:1.9;font-weight:500}
h1,h2,h3,.h2 span,.h2-rule span,.kk h2 span,.koe-ttl,.gikai-ttl,.sns-ttl,.mincho,.ft-name,.btn,.rx-redesign h2{font-family:var(--font-heading)}
.h2 span,.h2-rule span{font-size:clamp(26px,2.8vw,34px);line-height:1.5}
.koe-ttl{font-size:clamp(28px,3vw,36px);line-height:1.5}
.gikai-ttl{font-size:clamp(25px,2.8vw,32px);line-height:1.5}
.st-hd h3,.step h3,.act h3{font-family:var(--font-heading);font-size:21px;font-weight:700;line-height:1.55}
.st p,.step p,.qa-txt,.ans li,.greet p,.omoi p,.act p{font-size:17px;line-height:1.9}
.st-hd{min-height:76px}.st{padding-inline:5%}.st p{margin-top:14px}
.qa-q,.ans b,.gikai-badge,.gikai-sub,.kk-lead,table.pf,.sc p{font-size:16px;line-height:1.8}
.ach figcaption,.kk-note,.ft-lead{font-size:15px;line-height:1.7}
.pf th,.pf td{line-height:1.85}.sc h3,.sc.go h3{font-family:var(--font-heading);font-size:21px;line-height:1.5}.sc a{min-height:44px}
button,a.btn,.sc-btn{touch-action:manipulation}.burger{min-width:44px;min-height:44px}a:focus-visible,button:focus-visible{outline:3px solid #206d40;outline-offset:4px}
/* 本文は縮めすぎず、見出し・写真・アイコンを一段小さく */
.rx-wrap{width:min(1040px,90%)}
.rx-redesign .fv-cta{grid-template-columns:repeat(2,minmax(0,300px));margin:24px auto 28px;gap:20px}
.rx-redesign .btn{font-size:20px;padding:17px 24px;border-radius:17px;min-height:60px}
.rx-facts{max-width:930px}.rx-facts img{width:54px;height:54px}.rx-facts p{font-size:18px;line-height:1.55}.rx-facts>div{gap:13px;padding-inline:16px}
.rx-redesign .rx-about{padding:38px 0 40px}.rx-about-grid{grid-template-columns:40% 1fr;gap:7%;max-width:1000px}.rx-photo{padding:0}.rx-photo>img{height:385px;object-position:50% 32%}
.rx-about h2{font-size:27px;white-space:normal;margin-bottom:18px}.rx-about h2 em{font-size:42px}.rx-about-copy>p{font-size:20px;line-height:1.9}.rx-about-copy .rx-promise{font-size:24px;margin-top:20px;line-height:1.8;letter-spacing:0}.rx-promise strong{text-decoration-thickness:3px;text-underline-offset:7px}.rx-rays{transform:scale(.8) rotate(12deg);right:0}.rx-about-leaf{width:85px}
.rx-redesign .rx-town{padding:24px 0 36px}.rx-town-grid{min-height:325px;grid-template-columns:44% 56%}.rx-town h2{font-size:37px;margin-bottom:18px;gap:9px}.rx-town h2 img{width:47px}.rx-town-lead{font-size:24px;line-height:1.65;letter-spacing:0}.rx-town-copy>p:last-child{font-size:18px;line-height:1.9;margin-top:17px}.rx-town-art{width:106%;transform:none}.rx-keywords{margin-top:12px}.rx-keyword img{width:112px;height:108px}.rx-keyword p{font-size:17px;line-height:1.6}
.rx-redesign .rx-vision{padding:36px 0 42px}.rx-vision-heading h2{font-size:34px;gap:14px;margin-bottom:14px}.rx-vision-heading h2 em{font-size:43px}.rx-vision-heading h2 img{width:47px;height:58px}.rx-vision-heading>p{font-size:18px;line-height:1.9}.rx-policies{gap:22px;margin-top:24px}.rx-policy{padding:22px;border-radius:20px}.rx-policy>header{gap:13px;min-height:74px}.rx-number{font-size:52px}.rx-policy>header>div{padding-left:13px}.rx-policy h3{font-family:var(--font-heading);font-size:22px;line-height:1.5;letter-spacing:-.025em}.rx-policy header p{font-size:18px;line-height:1.6;letter-spacing:0}.rx-policy-green header p{font-size:16px}.rx-policy .rx-policy-art{height:190px}.rx-checks{padding:0}.rx-checks li{font-size:17px;line-height:1.8;margin:5px 0;padding-left:29px}.rx-checks li:before{width:20px;height:20px;line-height:20px;font-size:15px;top:6px}.rx-minis>div{min-height:83px;padding:10px 8px}.rx-minis img{width:39px;height:39px}.rx-minis span{font-size:15px;line-height:1.65}
@media(min-width:761px) and (max-width:1100px){.rx-facts p{font-size:16px}.rx-facts img{width:46px;height:46px}.rx-facts>div{gap:9px;padding-inline:10px}.rx-photo>img{height:335px}.rx-about h2{font-size:24px}.rx-about h2 em{font-size:36px}.rx-about-copy>p{font-size:18px}.rx-about-copy .rx-promise{font-size:21px}.rx-town h2{font-size:31px}.rx-town h2 img{width:37px}.rx-town-lead{font-size:21px}.rx-town-copy>p:last-child{font-size:17px}.rx-keyword p{font-size:16px}.rx-policy{padding:18px}.rx-policy h3{font-size:20px}.rx-number{font-size:43px}.rx-policy>header{gap:10px}.rx-policy>header>div{padding-left:10px}.rx-policy header p{font-size:16px}.rx-policy .rx-policy-art{height:170px}.rx-minis{grid-template-columns:1fr}.rx-minis>div{min-height:62px}.rx-minis span{font-size:16px}.rx-minis span br{display:none}}
@media(max-width:1000px){.st-hd{min-height:0}.st{padding-inline:4%}}
@media(max-width:760px){
 body,.rx-redesign{font-size:16px}.st p,.step p,.qa-txt,.ans li,.greet p,.omoi p,.act p{font-size:16px;line-height:1.9}.st-hd h3,.step h3,.act h3{font-size:20px}.h2 span,.h2-rule span{font-size:27px}.qa{padding:18px 16px}.story,.steps{grid-template-columns:1fr}.st{padding:0 6%}.st::after{display:none}.steps{gap:34px}.step::after{right:50%;margin-right:-14px;top:auto;bottom:-32px;transform:rotate(90deg)}
 .rx-wrap{width:90%}.rx-redesign .fv-cta{grid-template-columns:repeat(2,minmax(0,1fr));gap:10px;margin:18px auto 24px}.rx-redesign .btn{font-size:16px;padding:14px 8px;min-height:52px;border-radius:13px}.rx-facts{grid-template-columns:1fr;gap:0;max-width:330px}.rx-facts>div{flex-direction:row;justify-content:flex-start;gap:16px;padding:12px 16px}.rx-facts>div+div{border-left:0;border-top:1px solid #f4dec5}.rx-facts img{width:43px;height:43px;flex-shrink:0}.rx-facts p{text-align:left;font-size:16px;line-height:1.6}.rx-facts p br{display:none}.rx-facts p span+br:after{content:' '}
 .rx-redesign .rx-about{padding:24px 0 34px}.rx-about-grid{grid-template-columns:1fr;gap:23px}.rx-photo{width:70%;max-width:260px}.rx-photo>img{height:auto;aspect-ratio:1/1.08}.rx-about h2{font-size:22px;margin-bottom:16px}.rx-about h2 em{font-size:33px}.rx-about-copy>p{font-size:17px;line-height:1.9;max-width:355px}.rx-about-copy .rx-promise{font-size:20px;margin-top:18px;letter-spacing:-.025em}.rx-rays{transform:scale(.65) rotate(12deg)}
 .rx-redesign .rx-town{padding:28px 0 36px}.rx-town-grid{grid-template-columns:1fr;min-height:0}.rx-town h2{font-size:31px;margin-bottom:17px}.rx-town h2 img{width:37px}.rx-town-lead{font-size:21px}.rx-town-copy>p:last-child{font-size:17px;margin-top:14px}.rx-town-art{width:108%;margin-left:-4%;margin-top:8px}.rx-keywords{row-gap:20px}.rx-keyword img{width:96px;height:94px}.rx-keyword p{font-size:16px;line-height:1.65}
 .rx-redesign .rx-vision{padding:30px 0 34px}.rx-vision-heading h2{font-size:24px;gap:5px;white-space:normal}.rx-vision-heading h2 em{font-size:31px}.rx-vision-heading h2 img{width:25px;height:39px;flex-shrink:0}.rx-vision-heading>p{font-size:16px;line-height:1.9}.rx-policies{gap:20px;margin-top:21px}.rx-policy{padding:20px 17px}.rx-policy>header{gap:10px;min-height:64px}.rx-number{font-size:43px}.rx-policy>header>div{padding-left:10px}.rx-policy h3{font-size:20px}.rx-policy header p,.rx-policy-green header p{font-size:16px}.rx-policy .rx-policy-art{height:auto;aspect-ratio:1.9}.rx-checks li{font-size:16px;line-height:1.8}.rx-minis{grid-template-columns:1fr}.rx-minis>div{min-height:60px;padding:10px 14px;gap:12px}.rx-minis img{width:36px;height:36px}.rx-minis span{font-size:16px}.rx-minis span br{display:none}
}
@media(max-width:360px){.rx-redesign .btn{font-size:15px}.rx-about h2{font-size:20px}.rx-about h2 em{font-size:30px}.rx-about-copy>p{font-size:16px}.rx-about-copy .rx-promise{font-size:18px}.rx-town-lead{font-size:19px}.rx-vision-heading h2{font-size:21px}.rx-vision-heading h2 em{font-size:27px}.rx-vision-heading h2 img{width:20px}.rx-policy{padding:18px 12px}.rx-policy h3{font-size:19px}.rx-number{font-size:38px}.rx-checks li{font-size:16px}.rx-checks li:before{top:6px}}
