/* Japanese orthopedic storefront */
:root{--jp-ink:#243c42;--jp-green:#245c50;--jp-paper:#f3f6f3;--jp-line:#dce5df}
body,h1,h2,h3,h4,h5,h6,input,select,textarea,button{font-family:"Noto Sans JP","Hiragino Kaku Gothic ProN","Yu Gothic",Meiryo,sans-serif;letter-spacing:.025em}body{line-height:1.8}h1,h2,h3{line-height:1.5;word-break:normal;overflow-wrap:anywhere}.jp-wrap{max-width:1200px;margin:auto;padding:64px 24px;color:var(--jp-ink)}.jp-kicker{font-size:12px;font-weight:700;letter-spacing:.15em;color:var(--jp-green)}.jp-hero{background:var(--jp-paper)}.jp-hero-grid{display:grid;grid-template-columns:1.2fr 1fr;gap:48px;align-items:center}.jp-hero h1{font-size:clamp(30px,4vw,54px);margin:18px 0 24px}.jp-lead{max-width:620px;font-size:17px}.jp-media img{display:block;width:100%;height:auto;border-radius:16px}.jp-visual{background:#e2ece5;border-radius:160px 160px 20px 20px;padding:64px 30px;text-align:center}.jp-visual strong{font-size:32px;display:block}.jp-button{display:inline-flex;align-items:center;justify-content:center;min-height:48px;padding:12px 24px;border-radius:8px;background:var(--jp-green);color:white;text-decoration:none;margin-top:18px;font-weight:700}.jp-grid{display:grid;grid-template-columns:repeat(3,minmax(0,1fr));gap:20px}.jp-card{border:1px solid var(--jp-line);padding:24px;border-radius:12px;background:white;color:inherit;text-decoration:none;min-width:0}.jp-card h3{font-size:20px;margin:8px 0}.jp-card img{width:100%;height:auto;aspect-ratio:1;object-fit:contain}.jp-grid a:hover{border-color:var(--jp-green)}.jp-heading{font-size:clamp(24px,3vw,34px);margin:0 0 16px}.jp-sub{margin:0 0 30px}.jp-soft{background:var(--jp-paper)}.jp-faq details{border-bottom:1px solid var(--jp-line);padding:18px 0}.jp-faq summary{cursor:pointer;font-weight:700;min-height:44px}.jp-faq details p{max-width:850px}.jp-note{font-size:13px;color:#536860}.jp-payments{display:flex;flex-wrap:wrap;gap:10px;list-style:none;padding:0}.jp-payments svg{width:42px;height:28px}.jp-links{display:flex;flex-wrap:wrap;gap:18px}.jp-links a{color:inherit;text-underline-offset:4px}.jp-nav{padding:12px 20px;border-bottom:1px solid var(--jp-line);display:flex;flex-wrap:wrap;justify-content:center;gap:12px 28px}.jp-nav a{color:var(--jp-ink);text-decoration:none;min-height:36px;display:flex;align-items:center}.jp-spec{border-collapse:collapse;width:100%}.jp-spec th,.jp-spec td{padding:16px;border-bottom:1px solid var(--jp-line);text-align:left;vertical-align:top}.jp-spec th{width:30%;background:var(--jp-paper)}:focus-visible{outline:3px solid #b38b45;outline-offset:4px}@media(max-width:749px){.jp-wrap{padding:40px 20px}.jp-hero-grid{grid-template-columns:1fr;gap:28px}.jp-grid{grid-template-columns:1fr 1fr;gap:12px}.jp-card{padding:16px}.jp-card h3{font-size:17px}.jp-lead{font-size:16px}.jp-visual{padding:32px 20px}.jp-nav{gap:8px 20px;font-size:13px}.jp-spec th,.jp-spec td{padding:12px 8px}}@media(max-width:380px){.jp-grid{grid-template-columns:1fr}}@media(prefers-reduced-motion:reduce){*{scroll-behavior:auto!important}}

.sancore-product-visual{display:flex;min-height:300px;aspect-ratio:1;flex-direction:column;align-items:center;justify-content:center;text-align:center;background:linear-gradient(145deg,#e1ebe3,#faf9f5);border-radius:12px;padding:24px}.sancore-product-visual>span{font-size:16px;letter-spacing:.15em;color:#245c50}.sancore-product-visual strong{font-size:clamp(22px,3vw,36px);font-weight:500;letter-spacing:.05em}.sancore-product-visual small{font-size:18px}.sancore-product-visual p{font-size:14px}.sancore-catalog-grid:has(>a:only-child){grid-template-columns:minmax(0,640px);justify-content:center}.sancore-support{display:flex;align-items:center;justify-content:space-between;gap:24px;padding:28px 0}.sancore-support a{color:#245c50}.sancore-support .jp-button{color:white;flex-shrink:0}.sancore-product-intro{padding:24px 0}.header__heading-link>.h2{letter-spacing:.09em;font-weight:600;color:#245c50}.jp-links{padding-top:24px;border-top:1px solid #dce5df;margin-top:24px}@media(max-width:749px){.sancore-support{display:block}.sancore-catalog-grid:has(>a:only-child){grid-template-columns:1fr}.sancore-product-visual{min-height:220px}}
