body * {
    font-family: -apple-system, "Noto Sans JP", "Hiragino Sans", "ヒラギノ角ゴ ProN W3", "Hiragino Kaku Gothic ProN", メイリオ, Meiryo, verdana, "Inter var", -apple-system, BlinkMacSystemFont, "Helvetica Neue", Helvetica !important;
}
/*一覧*/
.clinic-list-container {padding: 1.25rem 0;}
.clinic-group {margin-bottom: 1.5rem;border-bottom: 2px dotted #fff;padding-bottom: 1.25rem}
.clinic-group:last-child {border-bottom: none;}
.group-title {font-size: 1rem;font-weight: bold;color: #333;margin-bottom: 1rem;padding: 0.25rem 0.5rem;background-color: #f5f5f5;border-left: 4px solid #fa5b88;width: 2.2rem}
.clinic-list {display: grid;grid-template-columns: repeat(auto-fill, minmax(250px, 1fr));gap: 0.625rem;padding: 0;}
.clinic-list-item {padding: 0.5rem 0.75rem;background-color: #fafafa;border-radius: 4px;transition: background-color 0.2s;}
.clinic-list-item:hover {background-color: #e8f5e9;}
.clinic-list-item a {color: #333;text-decoration: none;display: block;font-size: 1rem;font-weight: 500;line-height: 1.3;}
.clinic-list-item a:hover {color: #4CAF50;}
    #clinic #header {margin: 0 auto;}
    #clinicListContainer {margin: 0 auto;width:100%;max-width:960px;}
    #clinic #container {width: 100%;padding:1rem 0;background: #ffd4d2;}
    #clinic #container * {color:#333333;}
    #clinic #pankuzu {width:100%;max-width:960px;margin: 0 auto;}
    #clinicInfo {width: 100%;margin: 4rem auto 5rem;}
    table.tbl {border:none;margin-bottom: 1rem;border-radius: 8px;}
    table.tbl th {border-bottom: 1px solid #ffffff;background: #ff678b;color:#ffffff !important;font-weight: bold;text-align: center;padding: 1rem 0.5rem;width: 6.4rem;font-size: 1rem;letter-spacing: 0.06rem;vertical-align: middle;}
    table.tbl tr:first-of-type th {border-radius: 8px 0 0 0;}
    table#tbl3 th {border-radius: 8px 0 0 8px;border:none;}
    table.tbl tr:last-of-type th {border: none;border-radius:0 0 0 8px;}
    table.tbl tr:first-of-type td {border-radius:0 8px 0 0;}
    table#tbl2.tbl tr:first-of-type td:first-of-type, table#tbl3.tbl tr:first-of-type td:first-of-type {border-radius:0 0px 0 0;}
    table#tbl2.tbl tr:first-of-type td:last-of-type {border-radius:0 8px 0 0;}
    table#tbl3.tbl tr:last-of-type td {border:none;}
    table.tbl tr:last-of-type td:last-of-type {border: none;border-radius: 0 0 8px 0;}
    table.tbl td {border-bottom: 1px solid #ff678b;background: #ffffff;color:#333333;font-size:0.9375rem;padding:1rem;font-weight: 500;vertical-align: middle;line-height: 1.4;}
    table.tbl td.td1 {width: 6.4rem;background: #fff1f1;}
    .data {text-align: right;padding: 1rem 0;width: 100%;max-width: 960px;margin: 0 auto;}
    .attention small {display: block;text-align: right;width:100%;max-width:960px;margin: 0 auto;}
    .info1 {display: flex;flex-wrap: wrap;justify-content: space-between;align-items: flex-start;width:100%;max-width:960px;margin: 0 auto;}
    #tbl1 {width:49%;}
    #tbl2 {width:49%;}
    #tbl3 {width:100%;}
    #clinic #wrapper {width:100%;padding: 0;}
    #clinic h1 {color: #333333; font-size: 2.375rem;text-align: center;font-weight: bold;line-height: 1.4;margin: 3rem auto 1rem;position: relative;} 
    #clinic h1:before {content:"";position: absolute;top:-1rem;left:50%;background: url(/clinic/img/Job_openings.svg) no-repeat center top;height: 1.3rem;transform: translate(-50%,-50%);width: 10rem;background-size: 100%;}
    .cta {background: #00c4f4;padding:3rem 0;margin: 3rem auto;}
    .cta a {display: block;text-decoration: none;position: relative;margin: 0 auto;width: 43.375rem;max-width: 100%;background: url(/clinic/img/catch.png) no-repeat left 1rem;}
    .cta a span {font-size: 1.4rem;color: #ec0d41 !important;font-weight: bold;position: absolute;left: 15rem;top: 5rem;line-height: 1.2;}
    #job_offer {width: 100%;max-width: 960px;margin: 3rem auto;}
    .info2 {background-image: linear-gradient(150deg, #f85e83 50%, #f78466);border-radius: 20px;width: 100%;max-width: 960px;margin: 5rem auto;padding:4px;box-sizing: border-box;}
    .info2 #about, .info2 #features {background: #ffffff;padding: 2rem 5rem; }
    .info2 #about {border-radius: 1rem 1rem 0 0;}
    .info2 #about h2 {border-radius: 1rem 1rem 0 0;}
    .info2 #about h2, .info2 #features h2 {font-weight: bold;font-size: 2.375rem;text-align: center;position: relative;line-height: 1.4;padding: 1rem 0 0;margin: 2rem auto;}
    .info2 #about h2:before {content:"";position: absolute;top:0rem;left:50%;background: url(/clinic/img/About.png) no-repeat center top;height: 1.3rem;transform: translate(-50%,-50%);width: 4rem;background-size: 100%;}
    .info2 #about p {line-height: 1.8; font-size:1.125rem;padding-bottom: 3rem;border-bottom: 1px dashed #999999;font-weight: 500;}
    .info2 #features h2 {margin: 0 auto 2rem;}
    .info2 #features h2:before {content:"";position: absolute;top:0rem;left:50%;background: url(/clinic/img/Features.png) no-repeat center top;height: 1.3rem;transform: translate(-50%,-50%);width: 6rem;background-size: 100%;}
    .info2 #features dt {font-weight: bold;font-size:1.25rem;margin-bottom: 1.3rem;padding-left: 1.5rem;position: relative;}
    .info2 #features dt:before {content:"";background: #ff678b;width:1rem;height: 1rem;position: absolute;position;absolute;left: 0;top: 50%;transform: translate(0, -50%);border-radius: 50%;}
    .info2 #features dd p {font-size:1rem;margin-bottom: 2.4rem;line-height: 1.6;}
    .info2 #point {position: relative;padding: 0 5rem 5rem;}
    .info2 #point h2 {font-size: 2.375rem;line-height: 1.3;color: #ffffff !important;font-weight: bold;padding: 1rem 3rem 1.5rem;letter-spacing: 0.1rem;}
    .info2 #point h2:before {content: "";background: url(/clinic/img/point.svg) no-repeat center center; width: 14rem;height: 7.4rem;position: absolute;top: -4.8rem;left: 3.6rem;}
    .info2 #point h2:after {content: "";background: url(/clinic/img/ca.png) no-repeat center center;width: 11rem;height: 12rem;position: absolute;top: -3.3rem;right: 8rem;}
    .info2 #point dl {background: #ffffff;border-radius: 8px;padding: 2rem 3rem;}
    .info2 #point dt {color:#ff678b !important;font-weight: bold;font-size:2rem;position: relative;padding-left: 2.3rem;line-height: 1.3;margin-bottom: 1rem;}
    .info2 #point dt:before {content: "";background: url(/clinic/img/star.svg) no-repeat center center;width: 2rem;height: 2rem;position: absolute;top: 0.4rem;left: 0;}
    .info2 #point dd p {font-size: 1.25rem;line-height: 1.6;color: #000000 !important;}
    .clinic-number {max-height: 10rem; /* 表示範囲を10remに設定 */overflow: hidden;position: relative;transition: max-height 0.3s ease;}
    .btnbox {position: relative;}
    .btnbox:before {content: "";width: 100%;height: 4rem;top: -5rem;left: 0;position: absolute;background-image: linear-gradient(to top, rgba(255, 255, 255, 1) 0%, rgba(255, 255, 255, 0.8) 25%, rgba(255, 255, 255, 0.5) 50%,rgba(255, 255, 255, 0.2) 75%, rgba(255, 255, 255, 0) 100%);}
    .clinic-number.active + .btnbox:before {content:none;}
    .numberButton {cursor: pointer;margin: 1rem auto; /* 必要に応じて調整 */}
    @media screen and (max-width: 767px) {
        #underHeader .head_entry_long {display: none;}
        #clinicInfo {margin: 5vw auto;padding: 0;}
        #clinic h1 {margin: 7vw auto;font-size: 8vw;line-height: 1.3;padding-top: 2vw;}
        #clinic h1:before {content:"";position: absolute;top:-1vw;left:50%;background: url(/clinic/img/Job_openings.png) no-repeat center top;height: 5vw;transform: translate(-50%,-50%);width: 30vw;background-size: 100%;}
        .info1 {padding: 0 5vw;}
        .data, .attention small {padding: 3vw 5vw;}
        #tbl1, #tbl2, #tbl3 {width:100%;}
        table.tbl th {padding: 3.6vw 1.6vw;width: 24vw;font-size: 4vw;letter-spacing: 0.2vw;}
        table.tbl td {font-size: 3.8vw;padding: 3.6vw;}
        table.tbl td.td1 {width: 24vw;}
        .cta {padding: 5vw 3vw;margin: 10vw auto;}
        .cta a {width: 100%;max-width: 100%;background: url(/clinic/img/catch.png) no-repeat left 0rem;background-size: 84%;}
        .cta a span {font-size: 4vw;left: 32vw;top: 10vw;}
        .info2 {width: 90%;margin: 10vw auto;background-image: linear-gradient(110deg, #f85e83 50%, #f78466);}
        .info2 #about, .info2 #features {padding: 3vw 5vw 5vw;}
        .info2 #about h2, .info2 #features h2 {font-size: 7vw;padding: 3vw 0 0;margin: 8vw auto 5vw;}
        .info2 #about h2:before {background: url(/clinic/img/About.png) no-repeat center;height: 4vw;width: 12vw;background-size: 100%;}
        .info2 #features h2:before {height: 5vw;width: 20vw;background-size: 100%;}
        .info2 #features dt {font-size: 4vw;margin-bottom: 3vw;padding-left: 5vw;}
        .info2 #point {padding:10vw 5vw 5vw;}
        .info2 #point h2 {font-size: 5vw;padding: 5vw 0 3vw;letter-spacing: 0rem;}
        .info2 #point h2:before {content: "";background: url(/clinic/img/point.svg) no-repeat center center;width: 24vw;height: 15vw;position: absolute;top: 4vw;left: 2vw;background-size: 100%;}
        .info2 #point h2:after {content: "";background: url(/clinic/img/ca.png) no-repeat center center;width: 20vw;height: 22vw;position: absolute;top: 9vw;right: 6.6vw;background-size: 100%;}
        .info2 #point dl {padding: 5vw;}
        .info2 #point dt {font-size: 5.6vw;padding-left: 6vw;line-height: 1.3;margin-bottom: 3vw;}
        .info2 #point dt:before {content: "";background: url(/clinic/img/star.svg) no-repeat center center;width: 5vw;height: 5vw;background-size: 100%;position: absolute;top: 1vw;left: 0;}
        .info2 #point dd p {font-size: 4vw;margin-bottom: 3vw;}
        /*一覧*/
        .clinic-list-container {padding: 5vw;}
        .group-title {margin-bottom: 3vw;font-size: 3.8vw;padding: 1vw 2vw;width: 13vw;}
    }