@charset "utf-8";
body {
	font-size: 1rem;
}

nav {
	box-shadow: 0 2px 4px rgba(0,0,0,.04);
}

.drawer-hamburger-icon, .drawer-hamburger-icon:after, .drawer-hamburger-icon:before {
	background-color: #fff;
}

.navbar-brand a {
	color: #fff !important;
	display: inline-block;
}

.navbar-brand a:hover {
	color: #fff !important;
	text-decoration: none !important;
}

.navbar-brand a span {
	vertical-align: middle;
}

.drawer-nav {
    z-index: 10;
}

main .container,
main .container-fluid {
	padding-top: 1.5rem;
	padding-bottom: 1.5rem;
}

.container-fluid .container-fluid {
	padding: 0;
}

.container-fluid .row {
	margin-right: 0;
}

.ui-widget-content .ui-priority-secondary {
	opacity: 1;
}

.table td, .table th {
	vertical-align: middle;
}

.table-sm th, .table-sm td {
    padding: 0.2rem;
}

table.table-bordered {
	border: none;
}

thead.thead-dark tr:hover th {
	background-color: #343a40 !important;
}

.odd {
    background-color: rgba(0, 0, 0, 0.05) !important;
}

.bg-none {
	background-color: #f8fafc !important;
}

.color-0 {
	color: #ff0000 !important;
}

.color-6 {
	color: #0000ff !important;
}

.bg-red {
	background-color: #ffeeee !important;
}

.bg-green {
	background-color: #eeffee !important;
}

.bg-blue {
	background-color: #eeeeff !important;
}

tr.bg-red:nth-of-type(odd) {
    background-color: #ffdddd !important;
}

table#data-table th.textwrap {
	padding: 0 5em;
}

table#data-table td.email {
	word-break: break-all;
}

.modal table {
	margin-bottom: 0;
}

.modal table th {
	width: 10%;
	text-align: center;
}

#account-modal table th {
	width: 40%;
}

.modal table td input,
.modal table td select {
	width: 100% !important;
}

.modal table td input[type="number"] {
	width: 10% !important;
}

.sticky {
	position: -webkit-sticky;
    position: sticky;
    top: 0;
    z-index: 100;
}

.w-5 {
	width: 5% !important;	
}

.w-6 {
	width: 6% !important;	
}

.w-7 {
	width: 7% !important;	
}

.w-8 {
	width: 8% !important;	
}

.w-9 {
	width: 9% !important;	
}

.w-10 {
	width: 10% !important;	
}

.w-11 {
	width: 11% !important;	
}

.w-12 {
	width: 12% !important;	
}

.w-13 {
	width: 13% !important;	
}

.w-14 {
	width: 14% !important;	
}

.w-15 {
	width: 15% !important;	
}

.w-20 {
	width: 20% !important;	
}

.w-30 {
	width: 30% !important;	
}

.w-35 {
	width: 35% !important;	
}

.w-40 {
	width: 40% !important;	
}

.w-45 {
	width: 45% !important;	
}

.w-55 {
	width: 55% !important;	
}

.w-60 {
	width: 60% !important;	
}

.w-65 {
	width: 65% !important;	
}

.w-70 {
	width: 70% !important;	
}

.w-80 {
	width: 80% !important;	
}

.w-85 {
	width: 85% !important;	
}

.w-90 {
	width: 90% !important;	
}

.w-95 {
	width: 95% !important;	
}

.form-row {
	border-top: 1px solid #dee2e6;
}

.form-row .form-row {
	border: none;
}

.form-group {
	padding-top: 1rem;
}

.form-group label:not(.form-check-label) {
	font-weight: bold;
}

.transparent {
	opacity: 0;
}

.card div.row {
	margin-left: 0;
}

.card div.form-group label {
	width: 100%;
}

.error {
	color: red;
}

th.title {
	border-right: none;
}

th.time {
	text-align: right;
	border-left: none;
}

.submit_btn {
	position: fixed;
	top: 40px;
	z-index: 10;
}

.submit_btn button {
	float: right;
}

.tar {
	text-align: right;
}

.select2-container--default .select2-selection--single {
    height: calc(2.2em + 2px);
    padding: .25rem 0;
	margin-right: 0.25rem;
	cursor: default;
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
    height: calc(2.2em + 2px);
}

.select2-selection__rendered {
	font-size: 0.8em;
}

.select2-results__options {
	font-size: 0.8em;
}

.select2-results__option {
	padding: 0.15rem;
}

.select2-results__option--selectable {
    cursor: default;
}

.hidden {
	display: none !important;
}

.tooltip-inner {
    max-width: 100%;
	font-size: 1rem;
}

.search_form .select2-container--default .select2-selection--single {
	margin-right: 0;
	border: 1px solid #ced4da;
	border-left: none;
	border-right: none;
	border-radius: 0;
}

.search_form .select2-container--default + select + .select2-container--default .select2-selection--single {
	border-left: 1px solid #ced4da;
}

@media screen and (max-width:575px) {
	.w-sm-100 {
		width: 100% !important;	
	}
	.submit_btn {
		top: 20px;
		width: 85%;
	}
	
	div.form-group .thumb img {
		width: 20%;
	}
	
	div.form-group .thumb input[type="checkbox"] {
		display: inline-block;
		width: auto;
		vertical-align: middle;
	}
}

@media screen and (min-width:576px) {
	.submit_btn {
		width: 465px;
	}
}

@media screen and (min-width:992px) {
	.submit_btn {
		width: 765px;
	}
}

@media screen and (min-width:1200px) {
	.submit_btn {
		width: 1105px;
	}
}

@media screen and (max-width:1024px) {
}

@media screen and (max-width:768px) {
	.modal div.form-group label {
		width: 100%;
		align-items: left;
  		justify-content: left;
	}
	
	div.form-group select + input[type="text"],
	div.form-group input[type="file"] + .thumb,
	div.form-group .thumb + input[type="file"] {
		margin-left: 0;
	}

    input[type="text"], textarea {
        font-size: 16px;
    }
}

.edit input[type="checkbox"]:not(.form-check-input) {
	width: calc(1.6em + 0.75rem + 2px) !important;
}

input::placeholder {
  color: #ccc !important;
}

/* IE */
input:-ms-input-placeholder {
  color: #ccc !important;
}

/* Edge */
input::-ms-input-placeholder {
  color: #ccc !important;
}

.toast-success {
    background-color: #51a351 !important;
}

/*=======================================================　2020年3月追加　=======================================================*/

/*ヘッダー*/
.bg-black {
  background-color: #333 !important;
}
.btn-link2 {
    font-weight: 400;
    color: #fff;
    text-decoration: none;
}

.navbar-brand img { max-width:200px; width:100%;}
.navbar-light .navbar-nav .nav-link { color:#fff!important;}

/*ボタン*/
.btn-black { background:#333; color:#fff;}

.btn-lg, .btn-group-lg > .btn {
    padding: 0.5rem 1rem;
    font-size: 1.125rem;
    line-height: 1.5;
    border-radius: 3px!important;
}

.btn-square-little-rich {
  position: relative;
  display: inline-block;
  padding: 20px 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #003300;/*色*/
  border: solid 1px #ccc;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.btn-square-little-rich2 {
  position: relative;
  display: inline-block;
  padding: 20px 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #000033;/*色*/
  border: solid 1px #ccc;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.btn-square-little-rich3 {
  position: relative;
  display: inline-block;
  padding: 20px 0.5em;
  text-decoration: none;
  color: #FFF;
  background: #330000;/*色*/
  border: solid 1px #ccc;/*線色*/
  border-radius: 4px;
  box-shadow: inset 0 1px 0 rgba(255,255,255,0.2);
  text-shadow: 0 1px 0 rgba(0,0,0,0.2);
}
.btn-square-little-rich:hover,.btn-square-little-rich2:hover,.btn-square-little-rich3:hover { color:#fff!important; background: #03A9F4;/*色*/}



/*ログイン画面*/
.card {
    position: relative;
    display: flex;
    flex-direction: column;
    min-width: 0;
    word-wrap: break-word;
    background-color: #333;
    background-clip: border-box;
    border-radius: 3px;
	border: solid 1px #fff;    	/* 内側の線になる一本線の枠線をひく*/
	outline: solid 1px #7f7f7f;    /* 外側の線になる一本線の枠線をひく*/
	outline-offset: 1px;        /* 外側の線と内側の線の空き具合を調整*/
	margin: 2px;            	/* 外側の線を広げた分、要素の大きさを調整する*/
}
.card-body {
    flex: 1 1 auto;
	margin: 10%;
    padding: 2.5rem 1.25rem;
	background:#918785;
	color:#fff;
}
.card-header { text-align:center; padding:30px 0; }
.card-header img { width:40%; max-width:250px;}

table#data-table {
	font-size: 100%;
	width: 100%!important;
	clear: both;
    margin-top: 6px !important;
    margin-bottom: 6px !important;
    max-width: 100% !important;
	box-sizing: border-box!important;
    border-spacing: 0;
}

table#data-table tr:hover th,
table#data-table tr:hover td {
	background-color: #d9efff;
}

@media screen and (max-width:768px) {
.navbar-brand img { max-width:150px; width:100%;}

.btn-square-little-rich,
.btn-square-little-rich2 { width:80%!important; margin:auto 10%!important; max-width:80%!important; flex:100%!important;}

.card-header { text-align:center; padding:15px 0; }

}