.navbar-dark .navbar-nav .nav-link .fa-bars { font-size: 1.8em; }
.layout-navbar-fixed .wrapper .sidebar-dark-primary .brand-link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}
.main-sidebar .brand-text { font-size: .95em; }

/****** SP top ****/
.sp_top,
.sp_detail { padding-top: 2em; }
.sp_top .card .card-header,
.sp_top .card .card-body,
.sp_detail .card .card-header,
.sp_detail .card .card-body { padding: .75rem .5rem; }
.sp_scroll_area {
  overflow: auto;
  white-space: nowrap;
  height: calc(100vh - 230px);
}
.sp_top table.sp_table_top { 
  background: #fff;
  border-collapse: separate;
  border-spacing: 0;
  width: 100%;
  margin-bottom: 1em;
}
table.sp_table_top thead th,
table.sp_table_top tbody td {
  background: #fff;
  border-color: #cacac1;
  border-style: solid;
  border-left-style: solid;
  border-width: 0 1px 1px 0;
  border-left-width: 0px;
  color: #333;
}
table.sp_table_top thead th:first-child,
table.sp_table_top tbody td:first-child {
  border-left: 1px solid #cacac1;
}
table.sp_table_top thead th { border-top: 1px solid #cacac1; }
table.sp_table_top tbody tr:nth-child(2n) td {
  background: #eef;
}

.sp_top table.sp_table thead th,
.sp_det_top table.sp_table tbody th {
  background: #343a40;
  color: #fff;
}

.sp_table thead {
  position: sticky;
  top: 0;
  z-index: 2;
}

/****** 詳細画面 ****/
table.sp_table_dt tbody th,
table.sp_table_dt tbody td {
  color: #333;
  border: 1px solid #cacac1;;
}
.sp_detailArea .sp_det_top {
  max-width: 800px;
  width: 100%;
}
.sp_detailArea .sp_det_bottom {
  max-width: 980px;
  width: 100%;
}
.sp_det_bottom h4 {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  font-size: 1.05em;
}
.sp_det_bottom h4:before {
  content: "\f111";
  font-family: "Font Awesome 5 Free";
  font-weight: 900;
  font-size: .9em;
  padding-right: .3em;
  color: #17a2b8;
}
.sp_det_top .sp_table_dt tr td { text-align: left; }
.sp_detail .sp_table_bottom tr th { color: #333; }
.sp_detail .sp_table_bottom tr th.bankin_th { background: #dbdbdb; }
.sp_detail .sp_table_bottom tr th.toso_th { background: #fde0ff; }
.sp_detail .sp_table_bottom tr th.kumituke_th { background: #c8dfba; }
.sp_detail .sp_table_bottom tr th.migaki_th { background: #fcff95; }
.sp_detail .sp_table_bottom tr th.ct_th { background: #ffbb89; }

.flex_basic {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
}

.sp_table_bottom .sp_detinner .det_intop {
  width: calc(100% - 260px);
}
.sp_table_bottom .sp_detinner .det_inbottom { width: 260px; }
.det_intop .input-group {
  margin-right: 5px;
  width: calc(100% - 45px);
}
.det_intop .input-group .input { width: calc(100% - 40px); }
.det_intop .input-group .form-control {
  border-top-right-radius: 0;
  border-bottom-right-radius: 0;
}
.head_filebtn { width: 45px;}
.head_filebtn .custom-file {
  width: 40px;
  margin-right: 5px;
  height: calc(2rem + 2px);
}
.head_filebtn .custom-file .custom-file-input {
  cursor: pointer;
  height: calc(2rem + 2px);
}
.head_filebtn .custom-file-label {
  border: 0;
  height: calc(2rem + 2px);
  margin: 0;
}
.head_filebtn .custom-file-label::after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  z-index: 3;
  display: block;
  height: calc(2rem + 2px);
  padding: 0;
  line-height: 1;
  color: rgba(0, 0, 0, .2);
  content: "\f030";
  font-family: "Font Awesome 5 Free";
  background-color: #c1c1c1;
  border-radius: .25rem;
  border: 1px solid #b9b9b9;
  font-weight: 900;
  width: 40px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  font-size: 1.4rem;
}
.memo_btn_td { width: 42px;}
.memo_btn_td button.openMemo {
  border-radius: .25rem;
  border: 1px solid #ccc;
  width: 42px;
  height: 34px;
  background-color: #d9d9d9;
  padding: 0 8px 0 10px;
}
.memo_btn_td button.openMemo img {
  width: 24px;
  height: auto;
}
.name_pic { width: auto; margin-left: 5px;  }

.sp_table_bottom tr td .last_checkbtn {
  width: 60px;
  margin-left: 5px;
}
.sp_table_bottom tr td .custom-control {
  padding-left: 1.5rem;
}

.sp_table_bottom tr td .custom-checkbox .custom-control-label {
  font-weight: normal;
}
.sp_table_bottom tr td .custom-checkbox .custom-control-label::before,
.sp_table_bottom tr td .custom-checkbox .custom-control-label::after {
  left: -1.5rem;
  top: .18rem;
}

.sp_detailArea .bottom_btnArea {
  -webkit-box-pack: justify;
  -ms-flex-pack: justify;
  justify-content: space-between;
}
.sp_detailArea .bottom_btnArea .btn-group a {
  font-size: 0.9em;
  display: block;
  padding: 0.4em 1em;
  line-height: 1.4;
  border-radius: 0.3em;
  min-width: 130px;
  text-align: center;
  transition: color .15s ease-in-out, background-color .15s ease-in-out, border-color .15s ease-in-out, box-shadow .15s ease-in-out;
  border-width: 1px;
  border-style: solid;
  width: auto;
}


/*480px以下*/
@media screen and (max-width: 480px) {
  .sp_table_bottom .sp_detinner {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
    -ms-flex-direction: column;
    flex-direction: column;
  }
  .sp_table_bottom .sp_detinner .det_intop,
  .sp_table_bottom .sp_detinner .det_inbottom { width: 100%; }
  .sp_table_bottom .sp_detinner .det_inbottom { margin-top: .6em; }
}