#loading {
  width: 100vw;
  height: 100vh;
  transition: all 1s;
  background-color: #ccc;
  position: fixed;
  top: 0;
  left: 0;
  z-index: 9999;
}
.spinner {
  width: 100px;
  height: 100px;
  margin: 200px auto;
  background-color: #0bd;
  border-radius: 100%;
  animation: sk-scaleout 1.0s infinite ease-in-out;
}
/* ローディングアニメーション */
@keyframes sk-scaleout {
  0% {
    transform: scale(0);
  } 100% {
    transform: scale(1.0);
    opacity: 0;
  }
}
.load {
  opacity: 0.5;
  visibility: visible;
}
.loaded {
  opacity: 0;
  visibility: hidden;
}


thead th {
	position: -webkit-sticky;
	position: sticky;
	top: 0;
	z-index: 1; 
	/* border: 2px solid #e9ecef; */
}

thead th::before {
	/* content: ""; */
	position: absolute;
	top: -2px;
	left: -1px;
	width: 100%;
	height: 100%;
	/* border: 2px solid #e9ecef;	 */
}

.input-wrap {
    position: relative;
}

.toggle-pass {
    position: absolute;
    top: 50%;
    right: 10px;
    transform: translateY(-50%);
}
