@charset "utf-8";


.col-xl, .col-xl-auto, .col-xl-12, .col-xl-11, .col-xl-10, .col-xl-9, .col-xl-8, .col-xl-7, .col-xl-6, .col-xl-5, .col-xl-4, .col-xl-3, .col-xl-2, .col-xl-1, .col-lg, .col-lg-auto, .col-lg-12, .col-lg-11, .col-lg-10, .col-lg-9, .col-lg-8, .col-lg-7, .col-lg-6, .col-lg-5, .col-lg-4, .col-lg-3, .col-lg-2, .col-lg-1, .col-md, .col-md-auto, .col-md-12, .col-md-11, .col-md-10, .col-md-9, .col-md-8, .col-md-7, .col-md-6, .col-md-5, .col-md-4, .col-md-3, .col-md-2, .col-md-1, .col-sm, .col-sm-auto, .col-sm-12, .col-sm-11, .col-sm-10, .col-sm-9, .col-sm-8, .col-sm-7, .col-sm-6, .col-sm-5, .col-sm-4, .col-sm-3, .col-sm-2, .col-sm-1, .col, .col-auto, .col-12, .col-11, .col-10, .col-9, .col-8, .col-7, .col-6, .col-5, .col-4, .col-3, .col-2, .col-1 {
    padding: 3px;
}

.box{
    float: left;
}

.boxContainer{
    overflow: hidden;
}


.maxWidth {
    max-width:1900px;
}
.maxWidthMid {
    max-width:1600px;
}
.maxWidthMin {
    max-width:1200px;
}
.maxWidthMin1000 {
    max-width:1000px;
}

.small-text-field {
    width: 50px; /* サイズを指定 */
}

.table td.wrap{
    white-space: pre-wrap;
}
.table td.wrap-left{
    white-space: pre-wrap;
    text-align: left;
}
.form-control.score{
    width:50px;
    font-size: 0.7rem;
    text-align: center;
}
.form-control.sscore{
    width:70px;
    font-size: 0.7rem;
    text-align: center;
    margin:0 auto;      /* 中央に表示するために必要 */
}
.form-control.min{
    width:70px;
    font-size: 0.7rem;
    text-align: center;
    margin:0 auto;      /* 中央に表示するために必要 */
}
.form-control.mid{
    width:200px;
    font-size: 0.7rem;
    text-align: center;
}
.table-modal-scroll>thead, .table-modal-scroll>tbody {
    display: block;
}
.table-modal-scroll>tbody {
    overflow-y: scroll;
    height: 500px;
}

.table-modal-scroll-600>thead, .table-modal-scroll>tbody {
    display: block;
}
.table-modal-scroll-600>tbody {
    overflow-y: scroll;
    height: 600px;
}



.table td.form-center{
    justify-content: center;
    align-items: center;
}


.table th,
.table td {
    vertical-align: middle;
}
/* 右寄せ */
.table-right td{
    text-align: right;
}
.table-right th{
    text-align: right;
}

.table-left td{
    text-align: left;
}
.table-min {
    max-width: 400px;
}
td.center{
    text-align: center;
}
.table-auto{
    width:auto;
}

.t-right{
    text-align    : right;
}

input[type=number]::-webkit-inner-spin-button,
input[type=number]::-webkit-outer-spin-button {
    -webkit-appearance: none;
    margin: 0;
}

.card-mid {
    max-width: 1600px;
}
.exam_chart {
    max-width: 1200px;
}


.table-class-card {
    max-width: 1200px;
}

.table-classes th{
    border: solid 0.5px;              /* 枠線指定 */
    font-size:10.5pt;
}
.table-classes td {
    border: solid 0.5px;              /* 枠線指定 */
    font-size:10pt;
}

.table-sp-schedule th{
    border: solid 1.5px;              /* 枠線指定 */
    font-size:10.5pt;
    padding: .30rem .10rem;
}
.table-sp-schedule td {
    border: solid 1.5px;              /* 枠線指定 */
    font-size:10pt;
}

.table-base-classes{
    overflow: auto;
    table-layout: fixed;
    white-space:normal;
    margin: 0;
    /*table {
        margin: 0;
    }*/
}


.table-base-classes th{
    border: solid 0.5px;              /* 枠線指定 */
    font-size:9pt;
    font-weight: lighter;
    width:100px;
}
.table-base-classes td {
    border: solid 0.5px;              /* 枠線指定 */
    font-size:9pt;
    word-wrap: normal;
}

.table-mp{
    overflow: auto;
    table-layout: fixed;
    white-space:normal;
    margin: 0;
}


.table-mp th{
    border: solid 0.5px;              /* 枠線指定 */
    font-size:9pt;
    font-weight: lighter;
    width:50px;
}
.table-mp td {
    border: solid 0.5px;              /* 枠線指定 */
    font-size:9pt;
    word-wrap: normal;
    max-width: 100px;
}



.table-for-print th{
    border: solid 2px;              /* 枠線指定 */
    font-size:10.5pt;
}
.table-for-print td {
    border: solid 2px;              /* 枠線指定 */
    font-size:10pt;
}

.table-for-print {
    border-collapse:  collapse;     /* セルの線を重ねる */
}
.table-sp{
    font-size:  7pt;
}
.table-sp td{
    font-size:  7pt;
}

h4 {
    padding: 0.25em 0.5em;/*上下 左右の余白*/
    color: #494949;/*文字色*/
    background: transparent;/*背景透明に*/
    border-left: solid 5px #7db4e6;/*左線*/
}


ol {
    counter-reset:number; /*数字をリセット*/
    list-style-type: none!important; /*数字を一旦消す*/
    padding:0;
}
ol li {
    position: relative;
    padding: 0.5em;
    line-height: 1.5em;
    background: #f1f8ff;
    border-left : solid 35px #5c9ee7;
    margin-bottom: 5px;
}
ol li:before{
    /* 以下数字をつける */
    position: absolute;
    counter-increment: number;
    content: counter(number);
    /*数字のデザイン変える*/
    display:inline-block;
    color: white;
    font-family: 'Avenir','Arial Black','Arial',sans-serif;
    font-weight:bold;
    font-size: 15px;
    top: 50%;
    -webkit-transform: translateY(-50%);
    transform: translateY(-50%);
    left: -35px;
    width: 35px;
    height: 1em;
    line-height: 1;
    text-align: center;
}


@media screen and (max-width:767px) {
    /*　画面サイズが767px以下の場合読み込む　*/
    .table th {
        text-align: center;
        vertical-align: middle;
        /*font-size:9pt;*/
        padding: .20rem .10rem;
    }

    .table td {
        text-align: center;
        vertical-align: middle;
        /*font-size:8pt;*/
        padding: .20rem .10rem;
        /* 改行対応*/

    }


    .card-body {
        padding: .10rem;
    }

    .container {
        padding-right: .3rem;
        padding-left: .3rem;
    }
    .container-fluid {
        padding-right: .3rem;
        padding-left: .3rem;
    }

    .row{
        margin-right: 0px;
        margin-left: 0px;
    }
    .table-base-classes{
        overflow: auto;
        table-layout: auto;
        white-space: normal;
        /*
        table {
            margin: 0;
        }
         */
    }
}

@media screen and (min-width:768px){
    th {
        text-align: center;
        vertical-align: middle;
        /*font-size:10pt;*/
    }

    td {
        text-align: center;
        vertical-align: middle;
        /*font-size:9pt;*/
        /* 改行対応*/
    }

}
