/* Reflex top page styles — scoped under .reflex-top. Generated for WordPress child theme. */
.reflex-top,.reflex-top *,.reflex-top *::before,.reflex-top *::after{box-sizing:border-box}
.reflex-top{width:100%;max-width:100%}
:root{
  --teal:#0C7B7A; --teal-bright:#129D9A; --teal-dark:#095e5d;
  --accent:#F2A51A; --accent-dark:#d98f0c;
  --green:#5C9A33; --green-dark:#4d8129;
  --mint:#EAF7F5; --mint2:#dcefeb;
  --gold-soft:#FCF1DC; --green-soft:#EEF5E6;
  --ink:#222222; --sub:#666666; --line:#D9E2E0;
  --sans:"Noto Sans JP",system-ui,sans-serif;
}
.reflex-top *{margin:0;padding:0;box-sizing:border-box}
.reflex-top{scroll-behavior:smooth}
.reflex-top{font-family:var(--sans);color:var(--ink);background:#fff;line-height:1.8;-webkit-font-smoothing:antialiased}
.reflex-top h1,.reflex-top h2,.reflex-top h3,.reflex-top h4{font-family:var(--sans);font-weight:900;line-height:1.4;letter-spacing:.01em}
.reflex-top img{display:block;max-width:100%}
.reflex-top a{color:inherit;text-decoration:none}
.reflex-top .wrap{max-width:80rem;margin:0 auto;padding:0 1rem}
.reflex-top .wrap-narrow{max-width:56rem;margin:0 auto;padding:0 1rem}
@media(min-width:768px){.reflex-top .wrap,.reflex-top .wrap-narrow{padding:0 1.5rem}}
@media(min-width:1024px){.reflex-top .wrap{padding:0 2rem}}
.reflex-top svg.ic{width:1.5rem;height:1.5rem;stroke:currentColor;fill:none;stroke-width:2;stroke-linecap:round;stroke-linejoin:round}
.reflex-top .btn{display:inline-flex;flex-direction:column;align-items:center;justify-content:center;font-family:var(--sans);font-weight:700;
  cursor:pointer;border:2px solid transparent;border-radius:.7rem;transition:.2s;text-align:center;line-height:1.3}
@media(max-width:767px){.reflex-top .btn{min-width:100%}}
.reflex-top .btn-book{background:var(--green);color:#fff;border-color:var(--green);box-shadow:0 10px 22px -10px rgba(92,154,51,.7)}
.reflex-top .btn-book:hover{background:var(--green-dark);border-color:var(--green-dark);transform:translateY(-2px)}
.reflex-top .btn-teal{background:var(--teal);color:#fff;border-color:var(--teal)}
.reflex-top .btn-teal:hover{background:var(--teal-dark);border-color:var(--teal-dark);transform:translateY(-2px)}
.reflex-top .btn-teal-o{background:#fff;color:var(--teal);border-color:var(--teal)}
.reflex-top .btn-teal-o:hover{background:var(--teal);color:#fff}
.reflex-top .btn-white{background:#fff;color:var(--teal);border-color:#fff}
.reflex-top .btn-white:hover{transform:translateY(-2px);box-shadow:0 12px 24px -10px rgba(0,0,0,.3)}
.reflex-top .btn-gray-o{background:#fff;color:var(--sub);border-color:var(--line)}
.reflex-top .btn-gray-o:hover{color:var(--teal);border-color:var(--teal)}
.reflex-top /* Header (single-row, existing-site nav) */
header{position:sticky;top:0;z-index:50;background:#fff;border-bottom:1px solid var(--line);box-shadow:0 2px 12px -8px rgba(0,0,0,.2)}
header.index .navigation .f_cc{justify-content:flex-start}
@media screen and (min-width:899px){header.index .navigation .f_cc{justify-content:center}}
.reflex-top .price-unit{font-size:.6em;color:var(--sub)}
ul#navi > li:last-child > ul{left:auto;right:0}
.reflex-top .hdr-row{display:flex;align-items:center;justify-content:space-between;gap:1.25rem;height:4.75rem}
.reflex-top .logo-img{height:2.9rem;width:auto;display:block}
.reflex-top .gnav-bar{display:none}
.reflex-top .gnav{display:flex;align-items:stretch;flex-wrap:nowrap}
.reflex-top .gnav>a,.reflex-top .gnav .hasmenu{display:flex;flex-direction:column;align-items:center;justify-content:center;gap:.05rem;padding:0 .7rem;height:4.75rem;color:var(--ink);transition:color .2s;position:relative;cursor:pointer;white-space:nowrap}
.reflex-top .gnav .en{font-size:.78rem;font-weight:900;color:var(--teal);letter-spacing:.03em}
.reflex-top .gnav .jp{font-size:.75rem;color:var(--sub);font-weight:500;white-space:nowrap}
.reflex-top .gnav>a:hover .en,.reflex-top .gnav-drop:hover .hasmenu .en{color:var(--accent)}
.reflex-top .gnav>a::after,.reflex-top .gnav .hasmenu::after{content:"";position:absolute;left:.7rem;right:.7rem;bottom:0;height:3px;background:var(--accent);transform:scaleX(0);transition:transform .2s}
.reflex-top .gnav>a:hover::after,.reflex-top .gnav-drop:hover .hasmenu::after{transform:scaleX(1)}
.reflex-top .gnav-drop{position:relative;display:flex}
.reflex-top .gnav-drop .hasmenu .jp::after{content:" ▾"}
.reflex-top .submenu{position:absolute;top:100%;left:50%;transform:translateX(-50%) translateY(8px);background:#fff;border:1px solid var(--line);border-radius:.6rem;box-shadow:0 16px 32px -12px rgba(0,0,0,.25);min-width:11rem;padding:.4rem;opacity:0;visibility:hidden;transition:.2s;z-index:60}
.reflex-top .gnav-drop:hover .submenu{opacity:1;visibility:visible;transform:translateX(-50%) translateY(0)}
.reflex-top .submenu a{display:block;padding:.5rem .9rem;font-size:.84rem;color:var(--ink);border-radius:.4rem;white-space:nowrap}
.reflex-top .submenu a:hover{background:var(--mint);color:var(--teal)}
.reflex-top .burger{display:inline-flex;padding:.5rem;color:var(--teal);background:none;border:none;cursor:pointer}
@media(min-width:1100px){.reflex-top .gnav-bar{display:flex}
.reflex-top .burger{display:none}}
.reflex-top /* Hero */
.hero{background:linear-gradient(160deg,var(--mint) 0%,#fff 70%);position:relative;overflow:hidden}
.reflex-top .hero .leafdec{position:absolute;opacity:.10;pointer-events:none;color:var(--teal)}
.reflex-top .hero .leafdec.a{top:-3rem;right:-3rem;width:22rem;height:22rem}
.reflex-top .hero .leafdec.b{bottom:-4rem;left:-3rem;width:16rem;height:16rem;color:var(--green);opacity:.08}
.reflex-top .hero .wrap{padding-top:3rem;padding-bottom:3.5rem;position:relative}
@media(min-width:1024px){.reflex-top .hero .wrap{padding-top:5rem;padding-bottom:5rem}}
.reflex-top .hero-grid{display:grid;gap:3rem;align-items:center}
@media(min-width:1024px){.reflex-top .hero-grid{grid-template-columns:1.05fr .95fr}}
.reflex-top .hero-left>*+*{margin-top:1.6rem}
.reflex-top .badge{display:inline-flex;align-items:center;gap:.5rem;background:var(--teal);color:#fff;border-radius:9999px;padding:.5rem 1.1rem;font-size:1.4rem;font-weight:700}
.reflex-top .badge::before{content:"";width:.5rem;height:.5rem;border-radius:9999px;background:var(--accent)}
.reflex-top .hero h1{font-size:2.1rem;line-height:1.42}
@media(min-width:1024px){.reflex-top .hero h1{font-size:3rem}}
.reflex-top .hero h1 .t{color:var(--teal)}
.reflex-top .hero h1 .p{color:var(--accent);position:relative}
.reflex-top .hero .lead{font-size:1.4rem;color:var(--sub);line-height:1.95}
.reflex-top .subhook{display:inline-flex;align-items:center;gap:.5rem;background:#fff;border:1px solid var(--line);border-radius:9999px;padding:.55rem 1.2rem;font-weight:700;color:var(--teal);box-shadow:0 4px 14px -8px rgba(12,123,122,.4);font-size:1.4rem}
.reflex-top .subhook .pk{color:var(--accent);font-weight:900}
.reflex-top .hero-actions{display:grid;gap:.85rem}
@media(min-width:768px){.reflex-top .hero-actions{grid-template-columns:1.2fr 1fr 1fr}}
.reflex-top .hero-actions .btn{padding:1rem 1rem;width:100%;flex-direction:row;gap:.4rem}
.reflex-top .hero-actions .btn .sub{font-size:1.2rem;opacity:.9;font-weight:400}
.reflex-top .hero-actions .btn svg{width:1.1rem;height:1.1rem}
.reflex-top .hero-img{position:relative;border-radius:1.25rem;overflow:hidden;box-shadow:0 34px 60px -22px rgba(12,123,122,.5)}
.reflex-top .hero-img img{width:100%;height:500px;object-fit:cover;object-position:center top}
.reflex-top .hero-float{position:absolute;left:-.5rem;bottom:1.25rem;background:#fff;border-radius:.9rem;box-shadow:0 14px 30px -12px rgba(0,0,0,.3);padding:.85rem 1.2rem;display:flex;align-items:center;gap:.7rem}
.reflex-top .hero-float .n{font-size:1.6rem;font-weight:900;color:var(--accent);line-height:1}
.reflex-top .hero-float .l{font-size:1.2rem;color:var(--sub);font-weight:700}
.reflex-top .trust{margin-top:3rem;display:grid;gap:1rem}
@media(min-width:768px){.reflex-top .trust{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.reflex-top .trust{grid-template-columns:repeat(4,1fr)}}
.reflex-top .trust-item{display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.25rem;background:#fff;border:1px solid var(--line);border-radius:.9rem;transition:.2s}
.reflex-top .trust-item:hover{border-color:var(--teal);box-shadow:0 12px 24px -16px rgba(12,123,122,.5)}
.reflex-top .trust-item .ibox{flex:none;width:2.75rem;height:2.75rem;background:var(--mint);border-radius:.7rem;color:var(--teal);display:inline-flex;align-items:center;justify-content:center}
.reflex-top .trust-item .ti{font-weight:700;color:var(--ink);font-size:1.4rem}
.reflex-top .trust-item .ts{font-size:1.3rem;color:var(--sub)}
.reflex-top /* section common */
section{padding:5rem 0}
.reflex-top .sec-head{text-align:center;margin-bottom:3.25rem}
.reflex-top .sec-head .eyebrow{display:block;font-size:1.0rem;font-weight:700;letter-spacing:.22em;color:var(--accent);margin-bottom:.6rem}
.reflex-top .sec-head h2{font-size:2.0rem;color:var(--ink);margin-bottom:1rem}
@media(min-width:1024px){.reflex-top .sec-head h2{font-size:2.4rem}}
.reflex-top .sec-head h2 .hl{color:var(--teal)}
.reflex-top .sec-head .uline{width:4rem;height:.28rem;background:var(--accent);margin:0 auto;border-radius:9999px}
.reflex-top .sec-head .sub{font-size:1.4rem;color:var(--sub);margin-bottom:1rem;font-weight:500}
.reflex-top /* Concern */
.concern{background:linear-gradient(to bottom,#fff,var(--mint))}
.reflex-top .concern-grid{display:grid;gap:1rem;max-width:56rem;margin:0 auto}
@media(min-width:640px){.reflex-top .concern-grid{grid-template-columns:repeat(2,1fr)}}
.reflex-top .concern-item{display:flex;align-items:flex-start;gap:.85rem;background:#fff;border:1px solid var(--line);border-radius:.8rem;padding:1.1rem 1.25rem;font-size:1.5rem;font-weight:500;box-shadow:0 8px 20px -16px rgba(0,0,0,.25)}
.reflex-top .concern-item .ck{flex:none;width:1.6rem;height:1.6rem;background:var(--gold-soft);color:var(--accent);border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;margin-top:.46rem;margin-top:calc((1lh - 1.6rem)/2)}
.reflex-top .concern-item .ck svg{width:1rem;height:1rem;stroke-width:2.5}
.reflex-top .concern-bridge{text-align:center;margin-top:2.5rem}
.reflex-top .concern-bridge .arw{color:var(--teal);font-size:1.6rem;line-height:1}
.reflex-top .concern-bridge p{font-size:1.8rem;font-weight:900;color:var(--teal);margin-top:.5rem}
@media(min-width:1024px){.reflex-top .concern-bridge p{font-size:2.0rem}}
.reflex-top .concern-bridge .em{color:var(--accent)}
.reflex-top /* Signature treatment (自律神経免疫整体) */
.signature{background:linear-gradient(150deg,var(--teal-dark),var(--teal) 58%,var(--teal-bright));color:#fff;position:relative;overflow:hidden}
.reflex-top .signature .leafdec{position:absolute;opacity:.10;color:#fff;pointer-events:none}
.reflex-top .signature .leafdec.a{top:-3rem;right:-2rem;width:18rem;height:18rem}
.reflex-top .signature .leafdec.b{bottom:-3rem;left:-2rem;width:13rem;height:13rem;opacity:.08}
.reflex-top .signature .leafdec svg{width:100%;height:100%}
.reflex-top .signature .inner{position:relative;z-index:2}
.reflex-top .sig-head{text-align:center;max-width:48rem;margin:0 auto 3rem}
.reflex-top .sig-eyebrow{font-size:1.0rem;letter-spacing:.24em;font-weight:700;color:#f6d089;margin-bottom:.85rem}
.reflex-top .sig-label{display:inline-block;background:var(--accent);color:#fff;font-weight:700;font-size:1.2rem;border-radius:9999px;padding:.4rem 1.2rem;margin-bottom:1.1rem}
.reflex-top .sig-head h2{font-size:2.1rem;color:#fff;margin-bottom:.9rem;letter-spacing:.03em}
@media(min-width:1024px){.reflex-top .sig-head h2{font-size:2.9rem}}
.reflex-top .sig-head .price{display:inline-flex;align-items:baseline;gap:.15rem;margin-bottom:1.1rem;color:#fff;background:rgba(255,255,255,.15);border:1px solid rgba(255,255,255,.3);border-radius:.5rem;padding:.3rem .9rem}
.reflex-top .sig-head .price b{font-size:2rem;font-weight:900;color:#fff}
.reflex-top .sig-head p{color:rgba(255,255,255,.92);font-size:1.5rem;line-height:1.95}
.reflex-top .sig-cols{display:grid;gap:1.25rem;margin-bottom:2.5rem}
@media(min-width:768px){.reflex-top .sig-cols{grid-template-columns:repeat(3,1fr)}}
.reflex-top .sig-card{background:rgba(255,255,255,.1);border:1px solid rgba(255,255,255,.25);border-radius:1rem;padding:1.6rem 1.5rem;backdrop-filter:blur(4px)}
.reflex-top .sig-card h3{font-size:1.4rem;color:#fff;margin-bottom:.6rem;display:flex;align-items:center;gap:.5rem;font-weight:900}
.reflex-top .sig-card h3 .dot{width:.6rem;height:.6rem;border-radius:9999px;background:var(--accent);flex:none}
.reflex-top .sig-card p{color:rgba(255,255,255,.88);font-size:1.4rem;line-height:1.8}
.reflex-top .sig-statement{text-align:center;font-size:1.5rem;font-weight:900;margin-bottom:2rem;color:#fff;line-height:1.6}
@media(min-width:1024px){.reflex-top .sig-statement{font-size:1.9rem}}
.reflex-top .sig-statement .em{color:#f6d089}
.reflex-top .sig-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.reflex-top .sig-actions .btn{flex-direction:row;gap:.45rem;padding:1rem 2rem;font-size:1.4rem}
.reflex-top .sig-actions .btn svg{width:1.2rem;height:1.2rem;stroke:currentColor;fill:none;stroke-width:2}
.reflex-top .btn-line{background:#06C755;color:#fff;border-color:#06C755}
.reflex-top .btn-line:hover{background:#05a948;border-color:#05a948;transform:translateY(-2px)}
.reflex-top .sig-note{text-align:center;color:rgba(255,255,255,.7);font-size:1.2rem;margin-top:1.25rem}
.reflex-top /* Features */
.features{background:#fff}
.reflex-top .feat-grid{display:grid;gap:1.75rem}
@media(min-width:1024px){.reflex-top .feat-grid{grid-template-columns:repeat(3,1fr)}}
.reflex-top .feat-card{position:relative;background:#fff;border:1px solid var(--teal);border-radius:1.1rem;padding:2.25rem 2rem 2rem;box-shadow:0 22px 40px -22px rgba(12,123,122,.4);transform:translateY(-4px)}
.reflex-top .feat-badge{position:absolute;top:-1rem;left:2rem;width:3rem;height:3rem;background:var(--accent);color:#fff;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-weight:900;font-size:1.2rem;box-shadow:0 8px 18px -8px rgba(242,165,26,.8)}
.reflex-top .feat-top{display:flex;align-items:center;gap:1rem;margin-bottom:1.1rem;margin-top:.5rem}
.reflex-top .feat-ibox{flex:none;width:3rem;height:3rem;background:var(--gold-soft);border-radius:.6rem;color:var(--accent);display:inline-flex;align-items:center;justify-content:center}
.reflex-top .feat-ibox svg{width:1.7rem;height:1.7rem}
.reflex-top .feat-card h3{font-size:1.4rem;color:var(--ink);margin-bottom:.4rem}
.reflex-top .feat-card .fsub{font-size:1.4rem;color:var(--accent);margin-bottom:.9rem;font-weight:700}
.reflex-top .feat-card .fdesc{color:var(--sub);line-height:1.85;font-size:1.4rem}
.reflex-top .fusion{margin-top:1.5rem;padding:1.4rem;background:var(--mint);border-radius:.9rem}
.reflex-top .fusion-row{display:flex;align-items:center;justify-content:center;gap:.7rem;text-align:center}
.reflex-top .fusion-row>div{flex:1}
.reflex-top .fusion .pill{border-radius:9999px;padding:.45rem .5rem;color:#fff;font-weight:700;margin-bottom:.4rem;font-size:1.3rem}
.reflex-top .fusion .pill.teal{background:var(--teal)}
.reflex-top .fusion .pill.green{background:var(--green)}
.reflex-top .fusion .pill.gold{background:var(--accent)}
.reflex-top .fusion .cap{font-size:1.1rem;color:var(--sub)}
.reflex-top .fusion .op{flex:none!important;font-size:1.3rem;color:var(--sub);font-weight:900}
.reflex-top .tag-grid{margin-top:1.5rem;display:grid;gap:.6rem}
.reflex-top .tag{padding:.55rem .5rem;background:#fff;border:1px solid var(--teal);border-radius:.55rem;text-align:center;font-size:1.3rem;color:var(--teal);font-weight:700}
.reflex-top .stat-stack{margin-top:1.5rem;display:flex;flex-direction:column;gap:.85rem}
.reflex-top .stat{padding:1rem;border-radius:.8rem;color:#fff;text-align:center}
.reflex-top .stat.teal{background:linear-gradient(120deg,var(--teal),var(--teal-bright))}
.reflex-top .stat.gold{background:linear-gradient(120deg,var(--accent),#f6b94a)}
.reflex-top .stat b{display:block;font-size:1.8rem;font-weight:900;margin-bottom:.15rem}
.reflex-top .stat span{font-size:1.2rem;opacity:.92}
.reflex-top /* Nutrition */
.nutrition{background:linear-gradient(to bottom,var(--mint),#fff)}
.reflex-top .nut-panel{position:relative;background:linear-gradient(150deg,#f9f7f4,#fff);border-radius:1.6rem;padding:3rem 2rem;border:2px solid #e8a36c;overflow:hidden;box-shadow:0 24px 50px -28px rgba(12,123,122,.4)}
@media(min-width:768px){.reflex-top .nut-panel{padding:3.5rem 3rem}}
.reflex-top .nut-leaf{position:absolute;opacity:.16}
.reflex-top .nut-leaf.tr{top:-1rem;right:-1rem;width:13rem}
.reflex-top .nut-leaf.bl{bottom:-1.5rem;left:-1.5rem;width:10rem;transform:scaleX(-1)}
.reflex-top .nut-leaf img{width:100%;height:auto;display:block}
.reflex-top .nut-inner{position:relative;z-index:2}
.reflex-top .nut-head{text-align:center;margin-bottom:3rem}
.reflex-top .nut-pill{display:inline-block;background:#fff;border:2px solid #e8a36c;border-radius:9999px;padding:.4rem 1.4rem;margin-bottom:1rem;color:#cf7a3e;font-weight:700;font-size:1.2rem}
.reflex-top .nut-head h2{font-size:1.5rem;color:var(--ink);margin-bottom:1rem}
@media(min-width:1024px){.reflex-top .nut-head h2{font-size:2rem}}
.reflex-top .nut-head p{font-size:1.5rem;color:var(--sub);max-width:46rem;margin:0 auto}
.reflex-top .nut-cols{display:grid;gap:1.5rem;margin-bottom:2.5rem}
@media(min-width:768px){.reflex-top .nut-cols{grid-template-columns:repeat(3,1fr)}}
.reflex-top .nut-col{text-align:center;padding:1rem .75rem}
.reflex-top .nut-col .ibox{display:inline-flex;align-items:center;justify-content:center;width:4rem;height:4rem;background:#fff;border:2px solid var(--teal);border-radius:1rem;color:var(--teal);margin-bottom:1rem}
.reflex-top .nut-col .ibox svg{width:2rem;height:2rem}
.reflex-top .nut-col h3{font-size:1.4rem;color:var(--ink);margin-bottom:.5rem;font-weight:700}
.reflex-top .nut-col p{color:var(--sub);font-size:1.4rem}
.reflex-top .nut-banner{background:linear-gradient(120deg,var(--teal),var(--teal-bright));border-radius:1rem;padding:2rem;text-align:center;color:#fff;box-shadow:0 18px 36px -18px rgba(12,123,122,.6)}
.reflex-top .nut-banner b{display:block;font-size:1.5rem;font-weight:900;margin-bottom:.5rem}
.reflex-top .nut-banner p{color:rgba(255,255,255,.92);font-size:1.4rem}
.reflex-top /* Pricing */
.pricing{background:#fff}
.reflex-top .price-grid{display:grid;gap:1.75rem;grid-template-columns:1fr}
@media(min-width:1024px){.reflex-top .price-grid{grid-template-columns:repeat(3,1fr)}}
.reflex-top .price-feat{position:relative;background:#fff;border-radius:1.1rem;overflow:hidden;box-shadow:0 24px 45px -22px rgba(12,123,122,.45);border:2px solid var(--accent)}
@media(min-width:1024px){.reflex-top .price-feat-col{grid-column:span 2}}
.reflex-top .ribbon{position:absolute;top:1rem;right:1rem;z-index:2;background:var(--accent);color:#fff;border-radius:9999px;padding:.4rem 1rem;font-size:1.2rem;font-weight:700;box-shadow:0 6px 14px -6px rgba(242,165,26,.7)}
.reflex-top .price-img{position:relative;height:15rem;overflow:hidden}
.reflex-top .price-img img{width:100%;height:100%;object-fit:cover}
.reflex-top .price-img .ov{position:absolute;inset:0;background:linear-gradient(to top,rgba(9,94,93,.85),transparent)}
.reflex-top .price-img h3{position:absolute;left:1.5rem;right:1.5rem;bottom:1.25rem;color:#fff;font-size:1.4rem}
.reflex-top .price-body{padding:2rem}
.reflex-top .price-amt{display:flex;align-items:baseline;gap:.4rem;margin-bottom:1.4rem}
.reflex-top .price-amt .num{font-size:3rem;font-weight:900;color:var(--teal)}
.reflex-top .price-amt .yen{font-size:1.2rem;color:var(--sub);font-weight:700}
.reflex-top .pf-list{display:flex;flex-direction:column;gap:.7rem;margin-bottom:1.5rem}
.reflex-top .pf-item{display:flex;align-items:flex-start;gap:.7rem}
.reflex-top .pf-check{flex:none;width:1.3rem;height:1.3rem;background:var(--green);border-radius:9999px;display:inline-flex;align-items:center;justify-content:center;margin-top:.15rem}
.reflex-top .pf-check svg{width:.8rem;height:.8rem;color:#fff;stroke-width:3;fill:none;stroke:currentColor}
.reflex-top .pf-item span{color:var(--ink)}
.reflex-top .price-feat .btn{flex-direction:row;width:100%;padding:1rem 1.5rem;gap:.4rem}
.reflex-top .price-right{display:flex;flex-direction:column;gap:1.25rem}
.reflex-top .price-card{position:relative;background:#fff;border-radius:.9rem;padding:1.4rem 1.5rem;border:1px solid var(--line)}
.reflex-top .price-card .pbadge{position:absolute;top:-1.2rem;left:1.5rem;background:var(--accent);color:#fff;border-radius:9999px;padding:.2rem .8rem;font-size:1.1rem;font-weight:700;z-index:1}
.reflex-top .price-card h4{font-size:1.4rem;color:var(--ink);margin-bottom:.35rem;font-weight:700}
.reflex-top .price-card .row{display:flex;align-items:baseline;gap:.2rem;margin-bottom:.5rem}
.reflex-top .price-card .row .num{font-size:1.8rem;font-weight:900;color:var(--teal)}
.reflex-top .price-card .row .yen{color:var(--sub);font-weight:700}
.reflex-top .price-card p{font-size:1.3rem;color:var(--sub)}
.reflex-top .price-note{background:var(--mint);border:1px solid var(--line);border-radius:.9rem;padding:1.25rem 1rem;font-size:1.3rem;color:var(--sub);word-break:keep-all;overflow-wrap:anywhere;padding-left:calc(1rem + 1em);text-indent:-1em}
@media(min-width:768px){.reflex-top .price-note{word-break:normal}}
.reflex-top /* Flow */
.flow{background:linear-gradient(to bottom,var(--mint),#fff)}
.reflex-top .flow-grid{display:grid;gap:1.75rem}
@media(min-width:768px){.reflex-top .flow-grid{grid-template-columns:repeat(2,1fr)}}
@media(min-width:1024px){.reflex-top .flow-grid{grid-template-columns:repeat(4,1fr)}}
.reflex-top .flow-step{position:relative}
.reflex-top .flow-card{background:#fff;border:1px solid var(--line);border-radius:1.1rem;overflow:hidden;box-shadow:0 12px 28px -16px rgba(0,0,0,.18);height:100%}
.reflex-top .flow-card .pad{padding:1.4rem}
.reflex-top .flow-top{display:flex;align-items:center;gap:.85rem;margin-bottom:.9rem}
.reflex-top .flow-num{flex:none;width:2.75rem;height:2.75rem;background:var(--teal);color:#fff;border-radius:9999px;display:flex;align-items:center;justify-content:center;font-weight:900}
.reflex-top .flow-ibox{flex:none;width:2.75rem;height:2.75rem;background:var(--gold-soft);border-radius:.6rem;color:var(--accent);display:inline-flex;align-items:center;justify-content:center}
.reflex-top .flow-ibox svg{width:1.6rem;height:1.6rem}
.reflex-top .flow-card h3{font-size:1.4rem;color:var(--ink);margin-bottom:.6rem;font-weight:700}
.reflex-top .flow-card p{color:var(--sub);line-height:1.8;font-size:1.4rem}
.reflex-top .flow-img{height:11rem;overflow:hidden}
.reflex-top .flow-img img{width:100%;height:100%;object-fit:cover}
.reflex-top .flow-img.posture{background:#eef5f4}
.reflex-top .flow-img.posture img{object-fit:contain}
.reflex-top .flow-img.advice img{object-position:center 22%}
.reflex-top .flow-arrow{display:none}
@media(min-width:1024px){.reflex-top .flow-arrow{display:flex;position:absolute;top:3.5rem;right:-1.1rem;transform:translateY(-50%);width:2.2rem;height:2.2rem;background:var(--accent);color:#fff;border-radius:9999px;align-items:center;justify-content:center;z-index:10;box-shadow:0 6px 14px -6px rgba(242,165,26,.8)}
.reflex-top .flow-arrow svg{width:1.2rem;height:1.2rem}}
.reflex-top .flow-cta{margin-top:3rem;text-align:center}
.reflex-top .flow-cta .btn{flex-direction:row;padding:1rem 2.25rem;font-size:1.4rem;gap:.4rem}
.reflex-top /* Testimonials */
.testi{background:#fff}
.reflex-top .testi-grid{display:grid;gap:1.75rem}
@media(min-width:768px){.reflex-top .testi-grid{grid-template-columns:repeat(3,1fr)}}
.reflex-top .testi-more{text-align:center;margin-top:2rem}
.reflex-top .testi-more-btn{padding:.9rem 2.4rem;font-size:1.4rem;gap:.5rem;flex-direction:row}
.reflex-top .testi-card{background:#fff;border-radius:1.1rem;padding:2rem;box-shadow:0 12px 28px -18px rgba(0,0,0,.18);border:1px solid var(--line);position:relative}
.reflex-top .testi-card .qm{font-size:3rem;color:var(--gold-soft);position:absolute;top:1rem;right:1.4rem;line-height:1;font-weight:900}
.reflex-top .testi-card .stars{color:var(--accent);letter-spacing:2px;margin-bottom:.75rem;position:relative}
.reflex-top .testi-card .q{color:var(--ink);line-height:1.85;position:relative;font-size:1.5rem}
.reflex-top .testi-card .meta{margin-top:1.1rem;padding-top:1.1rem;border-top:1px solid var(--line)}
.reflex-top .testi-card .name{font-weight:700;color:var(--ink)}
.reflex-top .testi-card .cond{font-size:1.2rem;color:var(--sub)}
.reflex-top /* Director */
.director-sec{background:linear-gradient(to bottom,#fff,var(--mint))}
.reflex-top .director-card{display:grid;gap:2rem;align-items:center;background:#fff;border:1px solid var(--line);border-radius:1.4rem;padding:2.5rem;box-shadow:0 24px 50px -30px rgba(12,123,122,.4)}
@media(min-width:768px){.reflex-top .director-card{grid-template-columns:auto 1fr}}
.reflex-top .director-photo{justify-self:center}
.reflex-top .director-photo img{width:12rem;height:12rem;border-radius:9999px;object-fit:cover;background:var(--mint);border:4px solid var(--mint2)}
.reflex-top .director-photo .cap{text-align:center;margin-top:.75rem}
.reflex-top .director-photo .role{font-size:1.2rem;color:var(--accent);font-weight:700}
.reflex-top .director-photo .dname{font-size:1.4rem;font-weight:900;color:var(--ink)}
.reflex-top .director-body .greet{font-size:1.8rem;font-weight:900;color:var(--teal);margin-bottom:.9rem;line-height:1.6}
.reflex-top .director-body .bio{color:var(--sub);line-height:1.9;margin-bottom:1.25rem;font-size:1.5rem}
.reflex-top .quals{display:flex;flex-wrap:wrap;gap:.7rem}
.reflex-top .qual{display:inline-flex;align-items:center;gap:.55rem;padding:.55rem 1rem;background:var(--mint);border-radius:9999px;border:1px solid var(--line)}
.reflex-top .qual .ic{flex:none;color:var(--teal);display:inline-flex}
.reflex-top .qual .ic svg{width:1.1rem;height:1.1rem}
.reflex-top .qual .t{color:var(--ink);font-size:1.3rem;font-weight:700}
.reflex-top /* FAQ */
.faq{background:#fff}
.reflex-top .faq-list{max-width:48rem;margin:0 auto;display:flex;flex-direction:column;gap:1rem}
.reflex-top .faq-item{border:1px solid var(--line);border-radius:.9rem;overflow:hidden;background:#fff;transition:box-shadow .2s}
.reflex-top .faq-item[open]{box-shadow:0 14px 30px -20px rgba(12,123,122,.5);border-color:var(--teal)}
.reflex-top .faq-q{display:flex;align-items:center;gap:.9rem;padding:1.1rem 1.4rem;cursor:pointer;font-weight:700;list-style:none}
.reflex-top .faq-q::-webkit-details-marker{display:none}
.reflex-top .faq-q .qmark{flex:none;width:1.8rem;height:1.8rem;background:var(--teal);color:#fff;border-radius:.5rem;display:inline-flex;align-items:center;justify-content:center;font-weight:900;font-size:1.3rem}
.reflex-top .faq-q .txt{flex:1}
.reflex-top .faq-q .chev{flex:none;color:var(--teal);transition:transform .2s}
.reflex-top .faq-item[open] .faq-q .chev{transform:rotate(180deg)}
.reflex-top .faq-a{padding:0 1.4rem 1.3rem 4.1rem;color:var(--sub);font-size:1.4rem;line-height:1.85}
.reflex-top /* Final CTA */
.final{position:relative;background:linear-gradient(120deg,var(--teal-dark),var(--teal) 55%,var(--teal-bright));color:#fff;overflow:hidden}
.reflex-top .final .leafdec{position:absolute;opacity:.12;color:#fff;pointer-events:none}
.reflex-top .final .leafdec.a{top:-3rem;right:-2rem;width:18rem;height:18rem}
.reflex-top .final .inner{position:relative;text-align:center;max-width:46rem;margin:0 auto}
.reflex-top .final .eyebrow{font-size:1.0rem;letter-spacing:.22em;font-weight:700;color:rgba(255,255,255,.85);margin-bottom:.8rem}
.reflex-top .final h2{font-size:1.8rem;margin-bottom:1rem;color:#fff}
@media(min-width:1024px){.reflex-top .final h2{font-size:2.3rem}}
.reflex-top .final p{color:rgba(255,255,255,.92);margin-bottom:2rem;word-break:keep-all;overflow-wrap:anywhere}
.reflex-top .final .tel-row{margin-bottom:1.5rem}
.reflex-top .final .tel-row .lbl{font-size:1.2rem;opacity:.9}
.reflex-top .final .tel-row .tel{font-size:2.4rem;font-weight:900;letter-spacing:.02em;display:inline-flex;align-items:center;gap:.6rem}
.reflex-top .final .tel-row .tel svg{width:1.8rem;height:1.8rem}
.reflex-top .final .tel-row .hours{font-size:1.2rem;opacity:.9}
.reflex-top .final-actions{display:flex;flex-wrap:wrap;gap:1rem;justify-content:center}
.reflex-top .final-actions .btn{flex-direction:row;gap:.4rem;padding:1.1rem 2.5rem;font-size:1.4rem}
.reflex-top /* Access */
.access{background:var(--mint);padding:5rem 0}
.reflex-top .access-grid{display:grid;gap:2.5rem}
@media(min-width:1024px){.reflex-top .access-grid{grid-template-columns:1.1fr .9fr}}
.reflex-top .access-card{background:#fff;border-radius:1.1rem;padding:2rem;box-shadow:0 16px 32px -22px rgba(12,123,122,.4)}
.reflex-top .access-card .clinic{font-size:1.4rem;font-weight:900;color:var(--teal);margin-bottom:1.4rem}
.reflex-top .info-row{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1.3rem}
.reflex-top .info-row .ic{flex:none;width:2.5rem;height:2.5rem;background:var(--mint);border-radius:.6rem;color:var(--teal);display:inline-flex;align-items:center;justify-content:center}
.reflex-top .info-row .lbl{font-weight:700;color:var(--ink);margin-bottom:.2rem}
.reflex-top .info-row .txt{color:var(--ink)}
.reflex-top .info-row .small{font-size:1.2rem;color:var(--sub);margin-top:.2rem}
.reflex-top .info-row .tel{font-size:1.5rem;color:var(--teal);font-weight:900}
.reflex-top .clinic-photo{border-radius:.8rem;overflow:hidden;margin-top:.5rem}
.reflex-top .clinic-photo img{width:100%;height:11rem;object-fit:cover}
.reflex-top .map-wrap{border-radius:1.1rem;overflow:hidden;border:1px solid var(--line);box-shadow:0 16px 32px -22px rgba(12,123,122,.4);background:#fff}
.reflex-top .map-wrap img{width:100%;display:block}
.reflex-top /* floating follow CTA (電話 / LINE) */
body .bottom_fix,body .bottom_fix.show_{display:none!important;visibility:hidden!important;opacity:0!important}
.floatcta{position:fixed;z-index:60;display:flex;gap:.5rem;left:0;right:0;bottom:0;padding:.5rem .6rem;background:rgba(255,255,255,.96);box-shadow:0 -8px 24px -10px rgba(0,0,0,.28);backdrop-filter:blur(6px);transition:opacity .4s,transform .4s}
.reflex-top .floatcta a{flex:1;display:flex;align-items:center;justify-content:center;gap:.5rem;padding:.8rem .5rem;border-radius:.7rem;font-weight:900;color:#fff}
.reflex-top .floatcta a svg{width:2.5rem;height:2.5rem;stroke:currentColor;fill:none;stroke-width:2;flex:none}
.reflex-top .floatcta a .t{display:flex;flex-direction:column;line-height:1.15;align-items:flex-start}
.reflex-top .floatcta a small{font-size:1.2rem;font-weight:500;opacity:.95}
.reflex-top .fc-tel{background:var(--teal)}
.reflex-top .fc-line{background:#06C755}
@media(min-width:1100px){.reflex-top .floatcta{left:auto;right:1.25rem;bottom:1.5rem;flex-direction:column;background:none;box-shadow:none;backdrop-filter:none;padding:0;gap:.7rem;opacity:0;transform:translateY(14px);pointer-events:none;transition:opacity .3s,transform .3s}
.reflex-top .floatcta.show{opacity:1;transform:none;pointer-events:auto}
.reflex-top .floatcta a{flex:none;min-width:13.5rem;padding:.85rem 1.2rem;border-radius:9999px;box-shadow:0 14px 30px -10px rgba(0,0,0,.4)}
.reflex-top .floatcta a:hover{transform:translateY(-2px)}}
@media(min-width:1100px){body .toTop{left:1em;right:auto}}
.reflex-top footer.foot{background:var(--teal);color:#fff;padding:2.5rem 0 1.5rem}
.reflex-top footer.foot .wrap{text-align:center}
.reflex-top footer.foot .flogo{font-weight:900;font-size:1.2rem;margin-bottom:.5rem}
.reflex-top footer.foot p{font-size:.85rem;opacity:.9}
.reflex-top .reveal{opacity:0;transform:translateY(22px);transition:opacity .6s ease,transform .6s ease}
.reflex-top .reveal.in{opacity:1;transform:none}
@media (prefers-reduced-motion:reduce){.reflex-top .reveal{opacity:1;transform:none;transition:none}
.reflex-top{scroll-behavior:auto}}
.reflex-top /* === ほどよい中央1カラム（最大幅832px）＋背景フルブリード === */
/* 本文コンテンツのみ中央に集約。ヘッダー（既存サイト幅）はそのまま */
section .wrap{max-width:52rem}
.reflex-top .wrap-narrow{max-width:44rem}
.reflex-top .hero-imgs{display:grid;grid-template-columns:1fr 1fr;gap:.75rem;align-items:start}
.reflex-top .hero-imgs .hero-img{border-radius:1rem;box-shadow:0 20px 40px -18px rgba(12,123,122,.45);background:#fff}
.reflex-top .hero-img img{height:auto;object-fit:contain}
.reflex-top .hero-img figcaption{text-align:center;font-size:1.2rem;color:var(--sub);padding:.45rem .25rem .15rem;font-weight:700}
@media(min-width:768px){.reflex-top .hero-grid{grid-template-columns:1fr}
.reflex-top .feat-grid{grid-template-columns:1fr}
.reflex-top .flow-grid{grid-template-columns:1fr 1fr}
.reflex-top .testi-grid{grid-template-columns:1fr}
.reflex-top .price-grid{grid-template-columns:1fr}
.reflex-top .price-feat-col{grid-column:auto}
.reflex-top .access-grid{grid-template-columns:1fr}
.reflex-top .trust{grid-template-columns:1fr 1fr}}
.reflex-top /* === FB対応: 3つの理由(元デザイン風)・フロー4列・声の顔写真・野菜 === */
.feat-grid+.feat-grid{margin-top:1.75rem}
@media(min-width:768px){.reflex-top .feat-grid.two{grid-template-columns:1fr 1fr}}
.reflex-top .feat-ribbon{display:inline-flex;align-items:center;justify-content:center;width:2.5rem;height:2.5rem;background:var(--teal);color:#fff;font-weight:900;font-size:1.25rem;border-radius:.5rem;box-shadow:0 6px 14px -6px rgba(12,123,122,.6);margin-bottom:.6rem}
.reflex-top .rib{width:4.2rem;height:auto;display:block;margin-bottom:.7rem}
.reflex-top .r-head{display:flex;align-items:flex-start;gap:1rem;margin-bottom:1rem}
.reflex-top .r-head .rib{width:3rem}
.reflex-top .r-head .rib{margin-bottom:0;flex:none}
.reflex-top .r-head .r-title{margin-bottom:.2rem}
.reflex-top .r-head .fsub{margin-bottom:0}
.reflex-top .reason-stats{display:flex;flex-direction:row;gap:1rem;margin-top:1.25rem}
@media(min-width:768px){.reflex-top .reason-stats{flex-direction:column}}
.reflex-top .rstat{display:flex;align-items:center;gap:1.1rem}
.reflex-top .rstat img{width:4.5rem;height:4.5rem;flex:none;object-fit:contain}
.reflex-top .rstat p{font-size:1.4rem;color:var(--sub);line-height:1.45}
.reflex-top .rstat b{display:block;font-size:1.3rem;color:var(--teal);font-weight:800}
.reflex-top .nut-note{text-align:center;color:var(--sub);font-size:1.2rem;margin-top:1rem}
.reflex-top /* === 重なり円（融合）・理由フッター === */
.venn{margin-top:1.25rem}
.reflex-top .venn-row{position:relative;display:flex;align-items:center;justify-content:center}
.reflex-top .vcircle{width:13rem;height:13rem;border-radius:9999px;display:flex;flex-direction:column;align-items:center;justify-content:center;text-align:center;padding:1.5rem;color:#fff}
.reflex-top .vcircle.teal{background:rgba(18,157,154,.9)}
.reflex-top .vcircle.orange{background:rgba(232,150,90,.92);margin-left:-1.6rem}
.reflex-top .vcircle b{font-size:1.4rem;line-height:1.2;margin-bottom:.3rem}
.reflex-top .vcircle span{font-size:1.2rem;line-height:1.35;opacity:.96;letter-spacing:-0.1em}
.reflex-top .vplus{position:absolute;left:50%;top:50%;transform:translate(-50%,-50%);font-size:1.3rem;font-weight:900;color:#fff;z-index:3;text-shadow:0 1px 3px rgba(0,0,0,.35)}
.reflex-top .venn-bar{margin-top:1rem;background:var(--teal);color:#fff;text-align:center;border-radius:9999px;padding:.6rem 1rem;font-weight:700;font-size:1.2rem}
.reflex-top .reason-foot{margin-top:1rem;font-size:1.2rem;color:var(--sub)}
.reflex-top /* === 栄養療法（元デザイン横レイアウト） === */
.nut2{position:relative;background:#fff;border-radius:1.6rem;padding:2.75rem 1.75rem;box-shadow:0 24px 50px -28px rgba(12,123,122,.4);border:2px solid var(--teal);overflow:hidden}
@media(min-width:768px){.reflex-top .nut2{padding:3.25rem 3rem}}
.reflex-top .nut2-top{display:grid;gap:2rem;margin-bottom:1.75rem}
@media(min-width:768px){.reflex-top .nut2-top{grid-template-columns:1fr 1fr;align-items:center}}
.reflex-top .nut2-eyebrow{font-size:1.4rem;color:var(--ink);font-weight:700;margin-bottom:.6rem}
.reflex-top .nut2-eyebrow b{font-size:2rem;color:var(--teal);font-weight:900;margin-right:.2rem}
.reflex-top .nut2 h2{font-size:2rem;color:var(--ink);margin-bottom:.9rem;line-height:1.5;text-align:left;overflow-wrap:anywhere;word-break:auto-phrase}
@media(min-width:1024px){.reflex-top .nut2 h2{font-size:2.2rem}}
.reflex-top .nut2-lead{color:var(--sub);font-size:1.4rem;line-height:1.9;overflow-wrap:anywhere}
.reflex-top .nut2-right{display:flex;flex-direction:column;align-items:stretch;gap:1.5rem}
.reflex-top .nut2-veg-img{width:100%;height:auto;border-radius:1.2rem;box-shadow:0 4px 20px rgba(0,0,0,.08);display:block}
.reflex-top .nut2-icons{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:.75rem;text-align:center}
.reflex-top .ni-ic{display:inline-flex;align-items:center;justify-content:center;width:6rem;height:6rem;border:2px solid var(--teal);border-radius:9999px;margin:0 auto .6rem}
.reflex-top .ni-ic svg{width:2.9rem;height:2.9rem;stroke:var(--teal);fill:none;stroke-width:1.7;stroke-linecap:round;stroke-linejoin:round;display:block}
.reflex-top .ni-label{display:block;font-size:1rem;font-weight:700;color:var(--teal);line-height:1.4}
.reflex-top .nut2-note{text-align:center;color:var(--sub);font-size:1.4rem;line-height:1.8;border-top:1px solid var(--line);border-bottom:1px solid var(--line);padding:1.1rem .5rem;margin-bottom:1.75rem;word-break:keep-all;overflow-wrap:anywhere}
.reflex-top .nut2-banner{display:flex;align-items:center;justify-content:center;gap:.5rem}
.reflex-top .nut2-banner b{font-size:1.4rem;font-weight:900;color:var(--teal-dark);text-align:center;line-height:1.4;word-break:keep-all}
@media(min-width:768px){.reflex-top .nut2-banner b{font-size:1.6rem}}
.reflex-top .nut2-banner .branch{width:3.5rem;height:auto;flex:none}
.reflex-top .nut2-banner .branch.flip{transform:scaleX(-1)}
.reflex-top .feat-card .r-title{font-size:1.4rem;color:var(--ink);margin-bottom:.35rem;font-weight:800;line-height:1.4}
.reflex-top .reason-media{display:grid;gap:1.25rem;margin-top:.5rem}
@media(min-width:768px){.reflex-top .feat-wide .reason-media{grid-template-columns:1.15fr .85fr;align-items:center}}
.reflex-top .reason-photo{border-radius:.8rem;overflow:hidden}
.reflex-top .reason-photo img{width:100%;height:100%;object-fit:cover;display:block;min-height:170px}
.reflex-top .reason-photo.small{margin-bottom:1rem}
.reflex-top .reason-photo.small img{min-height:150px}
.reflex-top .flow-grid{grid-template-columns:1fr}
@media(min-width:900px){.reflex-top .flow .wrap{max-width:80rem}
.reflex-top .flow-grid{grid-template-columns:repeat(4,1fr)}}
.reflex-top .testi-card .meta{display:flex;align-items:center;gap:.8rem}
.reflex-top .t-face{width:5rem;height:5rem;border-radius:9999px;object-fit:cover;flex:none;border:2px solid var(--mint2)}
.reflex-top .nut-veg{border-radius:1rem;overflow:hidden;max-width:34rem;margin:0 auto 2rem;box-shadow:0 14px 30px -16px rgba(0,0,0,.25)}
.reflex-top .nut-veg img{width:100%;height:auto;display:block}
.reflex-top /* === ヒーロー: 元デザイン(背景写真＋テキスト重ね) === */
.hero{position:relative;overflow:hidden;background:#dfeeec;padding:0}
.reflex-top .hero-photo{position:absolute;inset:0;z-index:0}
.reflex-top .hero-photo img{width:100%;height:100%;object-fit:cover;object-position:center 30%}
.reflex-top .hero::after{content:"";position:absolute;inset:0;z-index:1;background:linear-gradient(95deg,rgba(244,250,249,.82) 0%,rgba(244,250,249,.5) 30%,rgba(244,250,249,0) 52%)}
.reflex-top .hero-inner{position:relative;z-index:2;max-width:76rem;margin:0 auto;padding:2.6rem 1.25rem 1.9rem}
@media(min-width:768px){.reflex-top .hero-inner{padding:3.2rem 1.5rem 2.1rem}}
@media(min-width:1024px){.reflex-top .hero{min-height:82vh;display:flex;flex-direction:column;justify-content:center}.reflex-top .hero-inner{padding:4rem 2rem;width:100%}}
.reflex-top .hero-copy{max-width:55rem}
.reflex-top .hero-h1-sp{display:none}
.reflex-top .hero-copy>*+*{margin-top:1.1rem}
.reflex-top .hero .badge{display:inline-block}
.reflex-top .hero h1{font-size:2.4rem;line-height:1.42;letter-spacing:.01em;text-align:left;word-break:keep-all;overflow-wrap:anywhere;text-shadow:1px 1px #fff}
@media(min-width:1024px){.reflex-top .hero h1{font-size:2.8rem}}
@media(min-width:768px){.reflex-top .hero .lead{word-break:keep-all}}
.reflex-top .hero h1 .t{color:var(--teal)}
.reflex-top .hero h1 .p{color:var(--accent)}
.reflex-top .pc-br{display:none}
@media(min-width:1024px){.reflex-top .pc-br{display:block}}
.reflex-top .hero .lead{font-size:1.4rem;color:#3b4a4a;line-height:1.85;text-shadow:1px 1px #fff}
.reflex-top .hero-actions{display:grid;gap:.7rem;margin-top:1.3rem}
@media(min-width:768px){.reflex-top .hero-actions{grid-template-columns:repeat(2,1fr)}}
.reflex-top .hbtn{display:flex;align-items:center;gap:.7rem;background:#fff;border:1px solid var(--line);border-radius:.8rem;padding:.8rem;box-shadow:0 12px 26px -16px rgba(12,123,122,.55);transition:.2s}
.reflex-top .hbtn:hover{transform:translateY(-2px);box-shadow:0 18px 32px -16px rgba(12,123,122,.6);border-color:var(--teal)}
.reflex-top .hbtn .hb-ic{flex:none;width:2rem;height:2rem;background:var(--teal);color:#fff;border-radius:.55rem;display:inline-flex;align-items:center;justify-content:center}
.reflex-top .hbtn-line .hb-ic{background:#06C755}
.reflex-top .hbtn .hb-ic svg{width:1.2rem;height:1.2rem;stroke:currentColor;fill:none;stroke-width:2}
.reflex-top .hbtn .hb-tx{display:flex;flex-direction:column;line-height:1.25;font-weight:700;color:var(--ink);font-size:1.4rem}
.reflex-top .hbtn .hb-tx small{font-size:1.2rem;font-weight:500;color:var(--sub);margin-top:.1rem}
.reflex-top .hero-trust{display:grid;grid-template-columns:repeat(2,1fr);gap:.7rem;margin-top:1.9rem}
@media(min-width:768px){.reflex-top .hero-trust{grid-template-columns:repeat(4,1fr)}}
.reflex-top .ht{display:flex;align-items:center;gap:.6rem;background:rgba(255,255,255,.84);border:1px solid rgba(255,255,255,.9);border-radius:.7rem;padding:.8rem;backdrop-filter:blur(3px);box-shadow:0 8px 20px -16px rgba(0,0,0,.4)}
.reflex-top .ht .ht-ic{flex:none;width:2.1rem;height:2.1rem;background:var(--mint);color:var(--teal);border-radius:.5rem;display:inline-flex;align-items:center;justify-content:center}
.reflex-top .ht .ht-ic svg{width:1.15rem;height:1.15rem;stroke:currentColor;fill:none;stroke-width:1.8}
.reflex-top .ht div{line-height:1.2}
.reflex-top .ht b{display:block;font-size:1.4rem;color:var(--ink)}
.reflex-top .ht span{font-size:1.3rem;color:var(--sub)}
/* スマホ: ファーストビュー1画面に収める */
@media(max-width:767px){
  .reflex-top .hero::after{background:linear-gradient(180deg,rgba(244,250,249,.68) 0%,rgba(244,250,249,.52) 60%,rgba(244,250,249,.38) 100%)}
  .reflex-top .hero-inner{padding:1.5rem 1.15rem 1.6rem;min-height:470px;display:flex;flex-direction:column;justify-content:flex-end}
  .reflex-top .hero .lead,.reflex-top .hero .subhook{display:none}
  .reflex-top .hero-copy>*+*{margin-top:.8rem}
  .reflex-top .hero h1{display:none}
  .reflex-top .hero-h1-sp{display:block;color:var(--ink);font-size:3.0rem;line-height:1.42;font-weight:800;letter-spacing:.01em;text-shadow:1px 1px rgba(255,255,255,.8)}
  .reflex-top .hero-h1-sp .p{color:var(--accent)}
  .reflex-top .hero-actions{grid-template-columns:1fr;gap:.5rem;margin-top:1.15rem}
  .reflex-top .hbtn{display:none}
  .reflex-top .hero-actions .hbtn:first-child{display:flex;flex-direction:row;align-items:center;justify-content:center;gap:.6rem;width:fit-content}
  .reflex-top .hero-trust{display:flex;flex-wrap:wrap;justify-content:center;gap:.35rem 1rem;margin-top:1.15rem}
  .reflex-top .ht{background:transparent;border:none;padding:0;box-shadow:none;backdrop-filter:none;gap:.3rem}
  .reflex-top .ht .ht-ic{display:none}
  .reflex-top .ht b{font-size:1.1rem;color:var(--ink);text-shadow:1px 1px rgba(255,255,255,.8)}
  .reflex-top .ht span{display:none}
  .reflex-top .ht:nth-child(n+4){display:none}
}

/* Voice Slider */
.reflex-top .voice-slider{padding:3.5rem 0;background:var(--bg);overflow:hidden}
.reflex-top .vs-head{text-align:center;margin-bottom:2rem}
.reflex-top .vs-head .eyebrow{display:block;font-family:var(--ff-en);font-size:1.1rem;letter-spacing:.15em;color:var(--teal);margin-bottom:.4rem}
.reflex-top .vs-head p{font-size:1.4rem;color:var(--sub);margin:0}
.reflex-top .vs-track-wrap{max-width:80rem;margin:0 auto;overflow-x:clip;padding-bottom:12px;-webkit-mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%);mask-image:linear-gradient(to right,transparent 0%,#000 10%,#000 90%,transparent 100%)}
.reflex-top .vs-track{display:flex;width:max-content;animation:vsMarquee 35s linear infinite}
.reflex-top .vs-item{flex:none;padding:0 .6rem}
.reflex-top .vs-item img{width:100px;height:100px;border-radius:50%;object-fit:cover;display:block;border:3px solid var(--mint2);box-shadow:0 4px 12px rgba(0,0,0,.1)}
@media(min-width:768px){.reflex-top .vs-item img{width:120px;height:120px}}
@keyframes vsMarquee{0%{transform:translateX(0)}100%{transform:translateX(-50%)}}