/* overview - 当院について */

/* sec-greeting ------------------------------------- */
.sec-greeting .signature {
    gap: 17px;
    align-items: flex-end;
    justify-content: flex-end;
    margin-right: 20px;
}

.sec-greeting .item-style-01 .back {
    padding: var(--mp70) 0;
}

@media (max-width: 991px) {
    .sec-greeting .item-style-01 .back {
        padding: var(--mp70) 0 0;
    }

    .sec-greeting .item-style-01 .br20-bgwht {
        height: 100%;
    }

    .sec-greeting .item-style-01 .inner {
        flex-direction: column;
        align-items: center;
    }

    .sec-greeting .item-style-01 .img-area {
        padding-bottom: var(--mp70);
    }
}

@media (max-width: 480px) {
    .sec-greeting .item-style-01 .back {
        padding-top: var(--mp40);
    }
}

.has-2s {
    column-gap: 5.925vw;
}

/* sec-about ------------------------------------- */
.sec-about .bg-col {
    background-color: #ededeb;
}

.sec-about .inner {
    position: relative;
}

.sec-about .title {
    position: relative;
    white-space: nowrap;

    /* transform: translateX(-50%); */
}

.sec-about .title::after {
    position: absolute;
    bottom: 0;
    left: 50%;
    display: block;
    width: 32px;
    height: 5px;
    content: "";
    background-color: var(--org);
    transform: translateX(-50%);
}

.sec-about .is-blc {
    flex-flow: row-reverse;
    column-gap: 5%;
    align-items: center;
}

.sec-about .txt-area {
    width: min(50%, 675px);
}

.sec-about .img-area {
    position: relative;
    width: min(45%, 600px);
}

.sec-about .img-area .img-inner {
    position: absolute;
    top: 50%;
    width: 100%;
    aspect-ratio: 608 / 430;
    transform: translateY(-50%);
}

@media (max-width: 1280px) {
    .sec-about .txt-area {
        flex: 1;
        width: auto;
    }

    .sec-about .img-area {
        width: 35%;
    }
}

@media (max-width: 991px) {
    .sec-about {
        padding-bottom: var(--mp150);
    }

    .sec-about .bg-col {
        position: relative;
        padding-bottom: var(--mp150);
    }

    .sec-about .inner {
        position: initial;
    }

    .sec-about .is-blc {
        display: block;
    }

    .sec-about .txt-area {
        position: relative;
        z-index: 1;
        width: 100%;
        text-align: center;
    }

    .sec-about .title {
        transform: initial;
    }

    .sec-about .txt-area p {
        display: inline-block;
        width: min(100%, 675px);
        text-align: left;
    }

    .sec-about .img-area {
        position: absolute;
        bottom: -3.625em;
        left: -7vw;
        width: min(100%, 384px);
        opacity: 0.3;
    }

    .sec-about .img-area .img-inner {
        position: relative;
        top: 0;
        transform: translateY(0);
    }
}

@media (max-width: 767px) {
    .sec-about .is-blc {
        flex-flow: column;
    }

    .sec-about .txt-area {
        width: 100%;
    }

    .sec-about .title {
        white-space: initial;
        transform: initial;
    }
}

/* sec-access ------------------------------------- */

/* sec-facilities ------------------------------------- */
.sec-facilities .img-list {
    gap: var(--mp40) 30px;
}

.sec-facilities .img-list li {
    width: calc((100% - 30px * 3) / 4);
}

@media (max-width: 1024px) {
    .sec-facilities .img-list li {
        width: calc((100% - 30px * 2) / 3);
    }
}

@media (max-width: 767px) {
    .sec-facilities .img-list {
        gap: var(--mp20) 4vw;
    }

    .sec-facilities .img-list li {
        width: calc((100% - 4vw) / 2);
    }
}

/* sec-access ------------------------------------- */
.sec-access address {
    margin-right: 1em;
}

.sec-access .to-gmap a {
    padding: 6.5px 25px;
    border-radius: 10px;
}

.sec-access .is-blc {
    gap: var(--mp40) 3.7%;
}

.sec-access .dayoff {
    flex: 1;
    width: 100%;
}

.sec-access .sec-hours {
    width: min(42.962%, 580px);
    min-width: 440px;
}

.sec-access .sec-hours .contact {
    height: 100%;
}

.sec-access .tb-hours th {
    padding: 11px 10px;
}

.sec-access .tb-hours td {
    padding: 10px;
}

@media (max-width: 1024px) {
    .sec-access .sec-hours {
        width: 100%;
        min-width: initial;
    }
}

/* sec-overview ------------------------------------- */
.sec-overview {
    flex: 1;
}

.dl-list.line-style01 .list-item dt {
    width: 80px;
}

.dl-list.line-style01 .list-item dd {
    width: calc(100% - 80px);
}

/* sec-docdl ------------------------------------- */
.sec-docdl {
    flex: 1;
}

@media (max-width: 991px) {
    .has-2s {
        display: block;
    }
}
