
/*
 * サイドバー
 */
 .for-sp{
   display: none;
 }
table{
  word-break: break-all;
  white-space: pre-wrap;
  max-width: 100%;
}
.sidebar {
    position: fixed;
    top: 54.219px;
    bottom: 0;
    left: 0;
    z-index: 100; /* ナビゲーションバーの背面 */
    padding: 48px 0 0; /* ナビゲーションバーの高さ */
    height: calc(100% - 54.219px);
    background: #265fa9;
    box-shadow: inset -1px 0 0 rgba(0, 0, 0, .1);
}
.side-width{
  max-width: 12%;
}
.main-width{
  flex:0 0 88%;
  max-width: 88%;
}
.nav-item{
  max-width: 100%;
}
.dropdown-toggle{
  white-space: normal;
}

.img_rotate_btn{
  cursor: pointer;
  background: #4491eb;
}
.img_del_btn{
  cursor: pointer;
  background: #d4d4d4;
}

.fixed-top {
  background: #e3e7ea;
}
.sidebar-sticky {
    position: relative;
    top: 0;
    height: calc(100vh - 48px);
    padding-top: .5rem;
}

@supports ((position: -webkit-sticky) or (position: sticky)) {
    .sidebar-sticky {
        position: -webkit-sticky;
        position: sticky;
    }
}
.sidebar .nav-link{
    font-size: 16px;
    color: #fff;
    padding: 20px;
}
.sidebar .nav-link svg{
    margin-right: 10px;
}
.sidebar .nav-link .feather {
    margin-right: 4px;
    color: #999;
}
.sidebar .nav-link.active,
.sidebar .dropdown-menu {
    background: #357cbd;
}
.sidebar .nav-link:hover .feather,
.sidebar .nav-link.active .feather {
    color: inherit;
}
.sidebar-heading {
    font-size: .75rem;
    text-transform: uppercase;
}
.sidebar .dropdown:hover .dropdown-menu {
    display: block;
}
.sidebar .dropdown-menu{
    border: 0;
    border-radius: 0;
    padding: 0;
}
.sidebar .dropdown-menu .dropdown-item a{
    font-size: 16px;
    padding: 15px;
    width: 100%;
    color: #FFF;
    display: block;
}

/*
 * 作業伝票明細
 */
#basic-information .table1{
    box-sizing: border-box;
    width: 30%;
    border-left: 1px solid #dee2e6;
}
#basic-information .table2{
    width: 35%;
}
#basic-information .table3{
    box-sizing: border-box;
    width: 35%;
    border-right: 1px solid #dee2e6;
}
.row-del-btn,.row-duplicate-btn{
    font-size: 20px;
    margin-left: auto;
    cursor: pointer;
}
.row-del-btn:hover{
    color: rgb(246, 15, 15);
}
.row-duplicate-btn:hover{
  color: rgb(33, 246, 15);
}
.need{
    font-size: 12px;
    color: tomato;
}
.product_name{
    width: calc(100% - 60px)!important;
}
.product-serch-btn{
    width: 60px;
}
.searchclear {
    right: 5px;
    top: 0;
    bottom: 0;
    height: 14px;
    margin: auto;
    font-size: 14px;
    cursor: pointer;
    color: #ababab;
    line-height: 1;
}

/* ラベル*/
.form-check-label {
padding-left: 25px;         /* ラベルの位置 */
font-size: 20px;
line-height: 20px;
margin-top: 10px;
display: inline-block;
cursor: pointer;
position: relative;
}

/* ボックス */
.form-check-label:before {
    content: '';
    width: 20px;            /* ボックスの横幅 */
    height: 20px;           /* ボックスの縦幅 */
    display: inline-block;
    position: absolute;
    left: 0;
    background-color: #fff;
    border: solid 1px #aaa;
    border-radius: 5px;
}
/* 元のチェックボックス非表示 */
.form-check-input[type='checkbox'] {
    display: none;
}
/* チェックした時 */
.form-check-input[type='checkbox']:checked + .form-check-label:before {
    content: '\2713';       /* チェックの文字content CSS */
    font-size: 20px;            /* チェックのサイズ */
    color: #fff;            /* チェックの色 */
    background-color: #06f;         /* チェックした時の色 */
}
.ime-disabled{
    ime-mode: disabled;
}
input[type="text"].inp_error,
input[type="number"].inp_error,
input[type="tel"].inp_error,
input[type="time"].inp_error,
select.inp_error,
textarea.inp_error {
    border: 1px solid #F88A8A;
    background: #F4D4D4;
}
span.error_m {
	font-size: 15px;
	font-weight: normal;
	color: #FF4040;
	display: block;
	margin: 0;
}
table.dataTable tr.tr1,
table.dataTable tr.tr1 td,
table.dataTable tr.tr1 th{
    background: #F4D4D4 !important;
}
.w-300{
  width:350px;
}

/*
 * サイドバー
 */

.menu-icon{
    width: 100px;
    height: auto;
}
caption,
.table-head {
    background: #2965ae;
    color: #FFF;
    font-weight: bold;
    text-align: center;
    font-size: 16px;
    caption-side: top;
    margin: 0;
}

tbody tr th{
    font-size: 13px;
    width: 98px;
    background: #F1f1f1;
}

#basic-information table{
    margin-bottom: 0;
}

.dropdown-menu.right {
 right:0;
 left:auto;
 &::before {left:auto !important; right:9px;}
 &::after {left:auto !important; right:10px;}
}
.images-table th,
.images-table td{
  width: 100%;
  display: inline-block;
  min-height: 30px;
}
.images-table th.toggle{
  cursor: pointer;
}
.images-table th.toggle:hover{
  background: rgb(212, 212, 212);
}
.images-table th.toggle + td{
  display: none;
}
.images-table td img{
  width: 100%;
}
.progress-table td{
  padding: 3px 0;
}
.progress-table tr td:last-child{
  width: 345px;
}

canvas{
  margin: auto;
  display: block;
  max-width: 100% !important;
}


.ng_btn,
.dissemination_btn{
  border:1px solid #CCC;
  margin: 0 auto;
  display: block;
  cursor: pointer;

}
#ng_flag:checked + .ng_btn {
  background-color: tomato;
  color: #FFF;
}
#dissemination_flag:checked + .dissemination_btn {
  background-color: rgb(33, 159, 100);
  color: #FFF;
}

/* 月次分析 */
.table-area{
  overflow: scroll;
}
.table-area table{
  width: 100%;
  font-size: 12px !important;
}
.yogu-table,
.service-table{
  height: 60vh;
}
.total-table{
  height: 72vh;
}
.scroll-bar,
.total-table table{
  width: 3535px;
}
.table-area table tr th:first-child {
  /* 横スクロール時に固定する */
  position: -webkit-sticky;
  position: sticky;
  left: 0;
  top: 0;
}
table.border-right tr:first-child th,
table.border-right tr th:nth-child(3n+1),
table.border-right tr td:nth-child(3n+1){
  border-width: 1px 3px 1px 1px;
}
.yogu-table table,
.service-table table{
  width: 100%;
  table-layout: fixed;
}
.col1{
  width: 9.9%;
}
.yogu-table table col:not(.col1),
.service-table table col:not(.col1),
.total-table table col:not(.col1),
.sum-table td:not(.col1){
  width: calc(90.1% / 17);
}
.table-area table td:not(.manager_comment){
  text-align: right;
  font-size: 18px;
}
.yogu-table table td.manager_comment,
.service-table table td.manager_comment{
  font-size: 16px;
}
.yogu-table .fixed01,
.service-table .fixed01{
  position: sticky;
  top: 0;
  z-index: 2;
}
.yogu-table .fixed01:before,
.service-table .fixed01:before{
    content: "";
    position: absolute;
    top: -1px;
    left: -1px;
    width: 100%;
    height: 100%;
}


.total-table .fixed01,
.total-table .fixed02{
  position: sticky;
  top: 0;
  left: 0;
}
.total-table .fixed03,
.total-table .fixed04{
  position: sticky;
  top: 44px !important;
  left: 0;
}
.total-table .fixed01:before,
.total-table .fixed02:before,
.total-table .fixed03:before,
.total-table .fixed04:before{
  content: "";
  position: absolute;
  top: -1px;
  left: -1px;
  width: 100%;
  height: 100%;
}
.total-table .fixed01{
  z-index: 3;
}
.total-table .fixed02{
  z-index: 2;
}
.total-table .fixed03{
  z-index: 2;
}
.total-table .fixed04{
  z-index: 9;
}

/* スマホ縦以下 */
@media screen and (max-width: 1300px){
    #basic-information .table1,
    #basic-information .table2,
    #basic-information .table3{
        width: 100%;
    }
    #basic-information .table2,
    #basic-information .table3{
        width: 50%;
    }

    .navbar-header {
        position: relative;
    }
    .navbar-toggler {
        display: inline-block;
        width: 30px;
        height: 25px;
        position: relative;
        top: 0;
        right: 0;
        z-index: 100;
        margin: auto;
    }
    .navbar-toggler span {
        display: block;
        height: 2px;
        background: #000;
        position: absolute;
        width: 100%;
        left: 0;
    }

    .navbar-toggler span:nth-child(1) {
        top: 0px;
    }

    .navbar-toggler span:nth-child(2) {
        top: 8px;
    }

    .navbar-toggler span:nth-child(3) {
        top: 16px;
    }


    .search span{
        display: block;
    }
    #product-table{
        table-layout:fixed;
    }
    #product-table thead tr th:nth-child(2),
    #product-table thead tr th:nth-child(3){
        width: 300px;
    }
    .over-box{
        overflow-x: scroll;
    }
    .navbar-toggler-icon{
        background: #000;
    }
}
@media (min-width: 768px){
  .container {
      max-width: 980px;
  }
}
@media screen and (max-width: 1024px){
  .header-table tr{
    display: flex;
    flex-wrap: wrap;
  }
  .header-table th{
    width: 20%;
    text-align: center;
    vertical-align: middle;
  }
  .header-table td{
    width: 30%;
  }
  .w-300{
    width:220px;
  }
  .examination-table tr{
    display: flex;
    flex-wrap: wrap;
  }
  .examination-table tr.box1 th{
    width: 20%;
    text-align: center;
    vertical-align: middle;
  }
  .examination-table tr.box1 td{
    width: 30%;
  }
  .examination-table tr.box1 td:nth-of-type(1),
  .examination-table tr.box1 td:nth-of-type(2){
    width: 40%;
  }
  .examination-table tr.box2 th,
  .examination-table tr.box3 th{
    width: 12%;
    text-align: center;
    vertical-align: middle;
  }
  .examination-table tr.box2 td,
  .examination-table tr.box3 td{
    width: 32%;
    text-align: center;
    vertical-align: middle;
  }
  .examination-table tr.box4{
    flex-wrap: nowrap;
  }
  .examination-table tr.box4 th{
    width: 14%;
    text-align: center;
    vertical-align: middle;
  }
  .examination-table tr.textbox td{
    width: 100%;
  }
  .table-bordered th, .table-bordered td {
    flex-grow: 1;
    min-height: 30px;
  }


}
@media screen and (max-width: 480px){
  input{
    font-size: 16px!important;
  }
}
@media screen and (max-width: 768px){
  .w-300{
    width:160px;
  }
  .department-table{
    width: 100%;
  }
  .department-table tr{
    width: 100%;
    display: flex;
  }
  .department-table tr th{
    width: 130px;
  }
  .department-table tr .textbox{
    width: calc(100% - 130px);
  }
  /* .department-table tr:nth-child(2) td{
    display: flex;
  } */
  .img_rotate_btn,
  .img_del_btn{
    margin-bottom: 20px;
  }
  input[name="department_date"]{
    width: 155px;
  }
  .examination-table tr:nth-child(7) th{
    display: inline-block;
    width: 110px;
  }
}
@media screen and (max-width: 767px){
  .for-sp{
    display: block !important;
  }
  .for-pc{
    display: none !important;
  }
  .ui-dialog{
    width: 95% !important;
  }
  col{
    width: 100%;
    display: inline-block;
  }
  #basic-information table:not(.images-table) th,
  #basic-information table:not(.images-table) td{
    width: 100% !important;
    display: inline-block;
    min-height: 30px;
  }
  table.examination-table th,
  table.examination-table td{
    width: 100% !important;
  }
  .examination-table tr.box4{
    flex-wrap: wrap;
  }
  .images-table .d-flex{
    flex-wrap: wrap;
  }
  .images-table .d-flex *{
    width: 100%;
  }
  .department-table tr{
    flex-wrap: wrap;
  }
  .department-table th,
  .department-table td{
    width: 100%;
  }
  .manager-table td{
    text-align: center;
  }
  .manager-table .ng_btn, .manager-table .dissemination_btn {
    display: inline-block;
    vertical-align: middle;
    margin-bottom: 0 !important;
  }
  input[name="department_date"]{
    width: 100%;
  }
}
@media screen and (max-width: 800px){
  .progress-table tr td:last-child{
    width: auto;
  }
  .progress-table th,
  .progress-table td{
    display: inline-block;
    width: 100%;
  }

    #basic-information .table1,
    #basic-information .table2,
    #basic-information .table3{
        width: 100%;
    }
}
@media (min-width: 1200px){
  .container {
      max-width: 1400px;
  }
}

@media (max-width: 780px){
  .side-width{
    width: 0;
    padding: 0;
  }
  .main-width{
    max-width: 100%;
    flex: 0 0 100%;
  }
  .container {
    max-width: 100%;
  }
}
