body {
    font-family: "Helvetica Neue",Helvetica,Arial,sans-serif;
    padding-top: 0px;
}
.icon_bar {
    display: block;
    border: 1px solid #eee;
    width: 28px;
}
.icon_bar:first-of-type {
    margin-bottom: 6px;
}
.icon_bar:last-of-type {
    margin-top: 6px;
}
.nav>li>a {
    color: #9d9d9d;
}
.dropdown-menu[data-bs-popper] {
    left: initial;
}

.table {
    --bs-table-striped-bg: #f9f9f9;
}
.table-striped>tbody>tr:nth-of-type(odd) {
    background-color: initial;
}
.table-striped>tbody>tr.accent {
    background-color: initial;
    --bs-table-accent-bg: none;
}

.page-header {
    padding-bottom: 9px;
    margin: 20px 0 20px;
    border-bottom: 1px solid #eee;
}

.btn {
    border-radius: 3px;
}

.btn-xs,
.btn-group-xs>.btn {
    padding: 1px 5px;
    font-size: 12px;
    line-height: 1.5;
    border-radius: 3px;
}

.btn-default {
    background-color: #f4f4f4;
    color: #444;
    border-color: #ddd;
}
.btn-default:hover {
    background-color: #e7e7e7;
}
.btn-primary {
    background-color: #337ab7;
    border-color: #2e6da4;
    color: #fff;
}
.btn-primary:hover {
    color: #fff;
    background-color: #286090;
    border-color: #204d74;
}

.input-group-addon {
    padding: 12px 14px;
    font-size: 14px;
    font-weight: 400;
    line-height: 1;
    color: #555;
    text-align: center;
    background-color: #eee;
    border: 1px solid #ccc;
}

/*
---------------------------------------------------

レッスンスケジュールリスト

---------------------------------------------------
*/
table.lesson_schedule th {
    width: 8%;
}
table.lesson_schedule td {
    width: 8%;
    word-break: break-word;
}
table.lesson_schedule tr.data_row.row_top {
    display: none;
}
table.lesson_schedule tr.data_row.collapse {
    display: block;
}
table.lesson_schedule td {
    text-align: left;
}
table.lesson_schedule form.p0,
table.lesson_schedule span.p0,
table.lesson_schedule a.p0,
table.lesson_schedule .box.p0 {
    padding: 0px;
}

table.lesson_schedule td a:hover {
    text-decoration-line: underline;
}

.bg-gray {
    background: #ccc;
}

.badge.lesson_way {
    border:1px solid #bbb;
}
.badge.zoom_room {
    background: #E0F7FA;
    border: 1px solid;
}
.badge.zoom_jica {
    background: #FCE4EC;
    border: 1px solid;
}

.schedule_date,
.schedule_time {
    font-family: 'FontAwesome';
}
.schedule_diff {
    color: #aaa;
}

.today {
    color: #FF5722;
}
.tomorrow {
    color: #7986CB;
}
.online_bg {
    background-color: #0DCAF0 !important;
}
.offline_bg {
    background-color: #4A7665 !important;
    color: #FFF !important;
}
.dispatch_bg {
    background-color: #EAA4AD !important;
}
/*
---------------------------------------------------
END レッスンスケジュールリスト
---------------------------------------------------
*/


@media screen and (max-width:768px) {
    /*
    ---------------------------------------------------

    レッスンスケジュールリスト

    ---------------------------------------------------
    */
    table.lesson_schedule tr.data_row.row_top {
        display: block;
    }
    table.lesson_schedule tr {
        width: 100%;
    }
    table.lesson_schedule th {
        width: initial;
        padding: 4px 12px;
        border-bottom: 0px;
    }
    table.lesson_schedule td {
        width: initial;
        display: block;
        text-align: right;
        width: 100%;
        float: left;
        border-bottom: 0px;
        background-color: #f9f9f9;
        border-bottom: 1px dashed #aaa;
    }
    table.lesson_schedule tr td:last-child {
        border-bottom: none;
    }
    table.lesson_schedule tr.data_row.row_top {
        background-color: #fff;
        border: 1px solid #eee;
        box-shadow: 1px 1px 4px 1px #eee;
        color: #000;
        border-radius: 6px;
        margin-top: 7px;
        margin-bottom: 3px;
        clear: both;
    }
    table.lesson_schedule tr.data_row {
        background-color: #f9f9f9;
        display: block;
        margin-bottom: 20px;
    }
    /* 各アクションのデザイン */
    table.lesson_schedule tr.data_row.scheduled {
        background-color: #E0F2F1;
        border: 1px solid #B2DFDB;
    }
    table.lesson_schedule tr.data_row.student_absent {
        background-color: #FFEBEE;
        border: 1px solid #FFCDD2;
    }
    table.lesson_schedule tr.data_row.tutor_ready {
        background-color: #FFF8E1;
        border: 1px solid #FFE082;
    }
    table.lesson_schedule tr.data_row.collapse {
        display: none;
    }
    table.lesson_schedule tr.data_row.collapse.show {
        display: block;
    }
    table.lesson_schedule td:before {
        content: attr(data-label);
        float: left;
        font-weight: bold;
        margin-right: 10px;
    }
    table.lesson_schedule .box {
        width: 230px;
        float: right;
        overflow-wrap: break-word;
    }
    /*
    ---------------------------------------------------
    END レッスンスケジュールリスト
    ---------------------------------------------------
    */
}

@media screen and (max-width:768px) {
    table.res-table-2col {
        border: 1px solid #eee;
    }
    table.res-table-2col.table-striped>tbody>tr:nth-of-type(odd) {
        --bs-table-accent-bg: none;
    }
    .table-striped>tbody>tr.accent th {
        background-color: #f9f9f9;
    }
    .table-striped>tbody>tr.accent td {
        background-color: #fff;
    }
    table.res-table-2col th {
        background-color: #f9f9f9;
    }
    table.res-table-2col td {
        background-color: #fff;
    }
}

@media screen and (max-width: 480px) {
    ul.dropdown-menu {
        background-color: #222;
    }
}