.koshi-index-page{--green:#63ad45;--dark:#214b2c;--light:#edf7e9;--pale:#f7fbf5;--muted:#626b63;--border:#d9e8d4;display:block!important;width:100%!important;max-width:none!important;margin:0!important;padding:0 0 100px!important;background:#fff;color:#303630;font-family:"Noto Sans JP","Yu Gothic",sans-serif}
.koshi-index-page *{box-sizing:border-box}.ki-container{width:min(100% - 40px,1120px);margin-inline:auto}.ki-container--narrow{width:min(100% - 40px,900px)}.koshi-index-page img{display:block;max-width:100%;height:auto}
.ki-breadcrumb{padding:13px 0;background:#f2f6f0;font-size:13px}.ki-breadcrumb .ki-container{display:flex;flex-wrap:wrap;gap:8px}.ki-breadcrumb a{color:#477a38;text-decoration:none}
.ki-hero{padding:72px 0;background:linear-gradient(135deg,#f3faef,#fff 68%)}.ki-hero__inner{display:grid;grid-template-columns:1fr .9fr;gap:52px;align-items:center}.ki-eyebrow{color:var(--green);font-weight:900;letter-spacing:.15em}.ki-hero h1{margin:0;color:var(--dark);font-size:clamp(36px,5vw,56px);line-height:1.4}.ki-hero__lead{color:var(--muted);font-size:17px;line-height:2}.ki-hero__image{overflow:hidden;margin:0;border:8px solid #fff;border-radius:32px 8px;box-shadow:0 20px 45px rgba(37,77,39,.16)}.ki-hero__image img{width:100%;aspect-ratio:4/3;object-fit:cover}
.ki-section,.ki-redflag,.ki-approach,.ki-contact{padding:82px 0}.ki-heading{text-align:center;margin-bottom:40px}.ki-heading>p{color:var(--green);font-size:13px;font-weight:900;letter-spacing:.16em}.ki-heading h2{color:var(--dark);font-size:clamp(28px,4vw,42px)}
.ki-grid{display:grid;grid-template-columns:repeat(3,1fr);gap:26px}.ki-card{overflow:hidden;border:1px solid var(--border);border-radius:18px;box-shadow:0 12px 34px rgba(36,75,39,.10)}.ki-card__link{display:flex;flex-direction:column;height:100%;color:inherit;text-decoration:none}.ki-card__image{margin:0}.ki-card__image img{width:100%;aspect-ratio:16/10;object-fit:cover}.ki-card__body{display:flex;flex:1;flex-direction:column;padding:26px}.ki-card__english{color:var(--green);font-size:12px;font-weight:900}.ki-card h2{color:var(--dark);font-size:24px}.ki-card__description{color:var(--muted);line-height:1.85}.ki-card__keywords{display:flex;flex-wrap:wrap;gap:7px;padding:0;list-style:none}.ki-card__keywords li{padding:5px 10px;background:var(--light);border-radius:999px;color:#47783a;font-size:12px}.ki-card__more{display:flex;justify-content:space-between;margin-top:auto;padding-top:17px;border-top:1px solid var(--border);color:var(--green);font-weight:900}
.ki-redflag{background:#fff3f3}.ki-heading--alert>p,.ki-heading--alert h2{color:#7e2525}.ki-alert-box{padding:34px;background:#fff;border:3px solid #d66f6f;border-radius:16px}.ki-alert-box li{margin-bottom:10px;font-weight:700;line-height:1.75}.ki-alert-box>p{color:#762222;font-weight:900;line-height:1.9}
.ki-approach{background:#214b2c}.ki-heading--light>p,.ki-heading--light h2{color:#fff}.ki-approach__lead{max-width:850px;margin:0 auto 38px;color:#edf7e9;font-size:17px;line-height:2;text-align:center}.ki-approach__grid{display:grid;grid-template-columns:repeat(5,1fr);gap:14px}.ki-approach__grid article{padding:26px 16px;background:#fff;border-radius:14px;text-align:center}.ki-approach__grid strong{color:var(--green);font-size:21px}.ki-approach__grid p{color:var(--dark);font-size:14px;font-weight:700}
.ki-contact{background:var(--light)}.ki-contact__inner{padding:48px;background:#fff;border:2px solid var(--border);border-radius:22px;text-align:center}.ki-contact__label{color:var(--green);font-weight:900}.ki-contact h2{color:var(--dark)}.ki-contact__buttons{display:flex;justify-content:center;gap:15px;margin-top:28px}.ki-contact-button{display:inline-flex;justify-content:center;min-width:250px;padding:16px 26px;border-radius:999px;color:#fff;font-weight:900;text-decoration:none}.ki-contact-button--line{background:#06c755}.ki-contact-button--tel{background:var(--dark)}
@media(max-width:900px){.ki-hero__inner{grid-template-columns:1fr}.ki-grid{grid-template-columns:repeat(2,1fr)}.ki-approach__grid{grid-template-columns:repeat(2,1fr)}}
@media(max-width:700px){.ki-container,.ki-container--narrow{width:min(100% - 30px,1120px)}.ki-grid,.ki-approach__grid{grid-template-columns:1fr}.ki-card__body{text-align:center}.ki-card__keywords{justify-content:center}.ki-contact__buttons{flex-direction:column;align-items:center}.ki-contact-button{width:100%;max-width:360px}}

/* IMPORTANT見出しと赤枠の間隔調整 */
.ki-heading--alert {
    margin-bottom: 30px !important;
}

.ki-heading--alert h2 {
    margin-bottom: 0 !important;
    line-height: 1.6;
}

/* 赤枠を見出しから離す */
.ki-alert-box {
    margin-top: 0 !important;
    position: relative;
    z-index: 1;
}

@media (max-width: 700px) {

    .ki-heading--alert {
        margin-bottom: 28px !important;
        padding: 0 10px;
    }

    .ki-heading--alert h2 {
        font-size: 23px !important;
        line-height: 1.6 !important;
    }

    .ki-alert-box {
        margin-top: 0 !important;
    }
}

/* 腰部症状ページの見出し高さを自動にする */
.ki-heading {
    height: auto !important;
    min-height: 0 !important;
}

.ki-heading--alert {
    height: auto !important;
    min-height: 0 !important;
    margin-bottom: 35px !important;
}

.ki-heading--alert h2 {
    height: auto !important;
    margin-bottom: 0 !important;
    line-height: 1.6 !important;
}

@media (max-width: 700px) {

    .ki-heading--alert {
        height: auto !important;
        min-height: 0 !important;
        margin-bottom: 35px !important;
    }

    .ki-heading--alert h2 {
        font-size: 22px !important;
        line-height: 1.6 !important;
    }
}
