.en-bell-schedules-data-header {
    font-weight: bold;
    font-size: 17px;
}
.bell-schedule {
    width: 100%;
    max-width: 750px;
    margin: 0 auto 3em auto;
    border-collapse: collapse;
}
.col1, .col2, .col3, .col4 {
    padding: .6em .5em;
    text-align: left;
    border-bottom: 1px solid #DFDFDF;
    color: #333333;
}
.bell-schedule caption {
    padding: .4em .5em .27em .5em;
    font-weight: bold;
    font-size: 1.3em;
}
.bell-schedule thead tr td {
    padding-top: 0;
}
.bell-schedule td .starttime {
    width: 6em;
    display: block;
    float: left;
}
.bell-schedule .col1 {
    width: 40%;
}
.bell-schedule .col2 {
    width: 18%;
}
.bell-schedule .col3 {
    width: 24%;
}
.bell-schedule .col4 {
    width: 18%;
}
.col2, .col3, .col4 {
    white-space: nowrap;
}
#bell-schedule-intro-text {
    width: 70%;
    margin: 0 auto;
    padding: 0 0 1.4em 0;
}
.last-bell-schedule {
    margin-bottom: 1.4em;
}
#bell-schedule-print-link {
    padding: 0 0 1em 0;
    margin: 0 0 1em 0;
    text-align: right;
    width: 70%;
    margin: 0 auto;
}
.bell-schedule .form-row {
    border-bottom: 1px solid #DFDFDF;
}
.bell-description {
    color: #333333;
    text-align: left;
    font-weight: bold;
    overflow: hidden;
    width: 100%;
    text-overflow: ellipsis;
}
.bell-title {
    padding: 0.4em 0 0.27em;
    font-weight: bold;
    font-size: 17px !important;
    width: 100%;
    text-align: center;
}
@media (max-width: 576px) {
    .col1, .col2, .col3, .col4 {
        display: flex;
    }
    .bell-schedule {
        width: 100%;
        padding: 10px;
    }
    .en-bell-schedules-data {
        overflow: scroll;
    }
    .en-bell-schedules-data-header {
        font-size: clamp(14px, 1.3vw, 16px);
    }
}

@media (max-width: 480px) {
    .en-bell-schedules-data {
        font-size: clamp(11px, 1.3vw, 14px);
    }
    .bell-title {
        padding: 0;
        display: flex;
    }
    .en-bell-schedules-data-header div {
        height: 30px;
    }
    .en-bell-schedules-data-header .col2,
    .en-bell-schedules-data-header .col3,
    .en-bell-schedules-data-header .col4 {
        white-space: break-spaces;
    }
}
@media (max-width: 300px) {
    .en-bell-schedules-data,
    .en-bell-schedules-data-header {
        transform: scale(0.87);
        transform-origin: 0 0;
        width: 100%;
    }
    .en-bell-schedules-data-header .col1 {
        width: 20%;
    }
    .en-bell-schedules-data .col1 {
        width: 20%;
    }
    .bell-schedule .col4 {
        width: 11%;
    }
}

.bell-schedule .bell-schedule-description {
    padding: 0 0.5em 0.6em 0.5em;
}