@charset 'UTF-8';

.kn-tbl>thead>tr>th {
font-size:85%;
}

/* テーブルセルのパディング調整 */

.kn-tbl>thead>tr>th, .kn-tbl>tbody>tr>th, .kn-tbl>tbody>tr>td {
  line-height: 1.5;
  padding: 5px 6px;
}

/* 学部（学科）セルを左に固定する設定 */

.kn-tbl>tbody>tr>th, .kn-tbl>thead>tr>th._cellfix {
  position: -webkit-sticky;
  position: sticky;
  left:0;
  z-index: 1;
}



@media print,screen and (min-width:768px) {

  .kn-tbl-wrapper .kn-scroll-block>.control {
    font-size: 0;
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    width: 40px;
    cursor: pointer;
  }

  .kn-tbl-wrapper .kn-scroll-block>.control:after {
    position: absolute;
    top: 0;
    bottom: 0;
    display: block;
    width: 12px;
    height: 12px;
    margin: auto;
    content: '';
    border-width: 0 3px 3px 0;
    border-style: solid;
    border-color: #547bdb;
  }

  .kn-tbl-wrapper .kn-scroll-block>.control.-prev {
    left: 0;
    display: none;
    background-image: linear-gradient(to left,transparent,rgba(51,51,51,.25));
  }

  .kn-tbl-wrapper .kn-scroll-block>.control.-prev:after {
    left: 15px;
    -webkit-transform: rotate(135deg);
            transform: rotate(135deg);
  }

  .kn-tbl-wrapper .kn-scroll-block>.control.-next {
    right: 0;
    background-image: linear-gradient(to right,transparent,rgba(51,51,51,.25));
  }

  .kn-tbl-wrapper .kn-scroll-block>.control.-next:after {
    right: 15px;
    -webkit-transform: rotate(-45deg);
            transform: rotate(-45deg);
  }


  .kn-tbl-wrapper .kn-tbl {
    width: 150%; /* (PC)テーブル表示エリアの幅に対して何倍のテーブル幅を取るか */
  }


}


@media screen and (max-width:767px) {

  .kn-tbl-wrapper .kn-tbl {
    width: 300%; /* (SP)画面の幅に対して何倍のテーブル幅を取るか */
  }


}