.sidebar-menu li i.fa {text-align: center;}
.sidenar-menu li.separator {border-bottom: 1px solid #222D32; box-shadow: 0px 1px 0px #46616b; margin: 5px 20px 5px 15px!important;}
.sidenar-menu li.separator-note {text-align: center; color: #46616b!important; text-shadow: 1px 1px 0px #222D32;}

.select2-container--default .select2-selection--single {height: 34px!important; border-color: #d2d6de!important;}
.select2-container--default .select2-selection--single .select2-selection__arrow {height: 34px!important;}
.select2-container .select2-selection--single .select2-selection__rendered {padding-left: 0!important;}

.no-item {line-height: 50px!important; text-align: center;}

.list:has(+ .list):after {
	content: "、";
}

.img-profile {text-align: center;}

.form-label {color: #333;}

.required:after {content: '必須'; font-size: 80%; color: var(--danger); margin-left: 5px;}

.checkbox-inline, .radio-inline {
  margin-left: 0 !important;
  margin-right: 10px;
}

.sticky-buttons {
  position: -webkit-sticky;
  position: sticky;
  bottom: 0;
  background-color: inherit;
  margin-bottom: 0;
  padding-bottom: 20px;
  z-index: 2;
}

.active li {
  color: #000 !important;
  border-color: #000 !important;
}

.error {
  font-size: 80%;
  width: 100%;
  margin-bottom: 5px;
  color: var(--danger);
}

#toast-stack {
  position: fixed;
  top: 20px;
  left: 0;
  right: 0;
  margin: auto;
  z-index: 1040;
  opacity: 70%;
  z-index: 1100;
  width: 350px;
}

table tbody.sortable {
  border-top: none !important;
}

.sortable .handle {
  display: inline-block;
  margin: 0 5px;
  cursor: move;
}

.ui-state-highlight {
  background-color: #DADADA !important;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
}

#button_sortable {
  text-align: center;
  background-color: rgba(243, 156, 18, 0.9);
  position: fixed;
  bottom: 0;
  padding: 10px;
}

.modal-content .top, .modal .top {
  z-index: 100;
}

#map,
.map,
[id^=map] {
  width: 100%;
  height: 300px;
  background-color: #CCCCCC;
  text-align: center;
  line-height: 300px;
}

#subarea-contents {
  height: 100%;
  width: 100%;
  border: none;
  padding: 0;
  margin: 0;
}

#subarea-wait {
  position: absolute;
  margin: auto;
}

table.table-minimize {
  display: block;
}

table.table-minimize tbody {
  display: block;
}

table.table-minimize tbody tr {
  display: block;
}

table.table-minimize tbody th,
table.table-minimize tbody td {
  display: list-item;
  list-style-type: none;
  border: none;
}

.box > .box {
  border-top: none;
  margin-bottom: 0;
}

.btn-outline-primary {
  color: #0275d8;
  background-image: none;
  background-color: transparent;
  border-color: #0275d8;
}

.btn-outline-primary:hover {
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-outline-primary.focus, .btn-outline-primary:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
  box-shadow: 0 0 0 2px rgba(2, 117, 216, 0.5);
}

.btn-outline-primary.disabled, .btn-outline-primary:disabled {
  color: #0275d8;
  background-color: transparent;
}

.btn-outline-primary.active, .btn-outline-primary:active, .show > .btn-outline-primary.dropdown-toggle {
  color: #fff;
  background-color: #0275d8;
  border-color: #0275d8;
}

.btn-outline-default {
  color: #ccc;
  background-image: none;
  background-color: transparent;
  border-color: #ccc;
}

.btn-outline-default:hover {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-default.focus, .btn-outline-default:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
  box-shadow: 0 0 0 2px rgba(204, 204, 204, 0.5);
}

.btn-outline-default.disabled, .btn-outline-default:disabled {
  color: #ccc;
  background-color: transparent;
}

.btn-outline-default.active, .btn-outline-default:active, .show > .btn-outline-default.dropdown-toggle {
  color: #fff;
  background-color: #ccc;
  border-color: #ccc;
}

.btn-outline-info {
  color: #5bc0de;
  background-image: none;
  background-color: transparent;
  border-color: #5bc0de;
}

.btn-outline-info:hover {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-info.focus, .btn-outline-info:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
  box-shadow: 0 0 0 2px rgba(91, 192, 222, 0.5);
}

.btn-outline-info.disabled, .btn-outline-info:disabled {
  color: #5bc0de;
  background-color: transparent;
}

.btn-outline-info.active, .btn-outline-info:active, .show > .btn-outline-info.dropdown-toggle {
  color: #fff;
  background-color: #5bc0de;
  border-color: #5bc0de;
}

.btn-outline-success {
  color: #5cb85c;
  background-image: none;
  background-color: transparent;
  border-color: #5cb85c;
}

.btn-outline-success:hover {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-success.focus, .btn-outline-success:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
  box-shadow: 0 0 0 2px rgba(92, 184, 92, 0.5);
}

.btn-outline-success.disabled, .btn-outline-success:disabled {
  color: #5cb85c;
  background-color: transparent;
}

.btn-outline-success.active, .btn-outline-success:active, .show > .btn-outline-success.dropdown-toggle {
  color: #fff;
  background-color: #5cb85c;
  border-color: #5cb85c;
}

.btn-outline-warning {
  color: #f0ad4e;
  background-image: none;
  background-color: transparent;
  border-color: #f0ad4e;
}

.btn-outline-warning:hover {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-warning.focus, .btn-outline-warning:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
  box-shadow: 0 0 0 2px rgba(240, 173, 78, 0.5);
}

.btn-outline-warning.disabled, .btn-outline-warning:disabled {
  color: #f0ad4e;
  background-color: transparent;
}

.btn-outline-warning.active, .btn-outline-warning:active, .show > .btn-outline-warning.dropdown-toggle {
  color: #fff;
  background-color: #f0ad4e;
  border-color: #f0ad4e;
}

.btn-outline-danger {
  color: #d9534f;
  background-image: none;
  background-color: transparent;
  border-color: #d9534f;
}

.btn-outline-danger:hover {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.btn-outline-danger.focus, .btn-outline-danger:focus {
  -webkit-box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
  box-shadow: 0 0 0 2px rgba(217, 83, 79, 0.5);
}

.btn-outline-danger.disabled, .btn-outline-danger:disabled {
  color: #d9534f;
  background-color: transparent;
}

.btn-outline-danger.active, .btn-outline-danger:active, .show > .btn-outline-danger.dropdown-toggle {
  color: #fff;
  background-color: #d9534f;
  border-color: #d9534f;
}

.dl-horizontal.dl-horizontal-reset dt,
.dl-horizontal.dl-horizontal-reset dd {
  margin-bottom: 10px;
  padding-top: 10px;
}

.dl-horizontal.dl-horizontal-reset dt:not(:first-child),
.dl-horizontal.dl-horizontal-reset dd:not(:first-of-type) {
  border-top: 1px dotted #DADADA;
}

.dl-horizontal.dl-horizontal-reset dt {
  text-align: left;
}

.teacher-lists {
  list-style: none;
  padding-left: 5px;
}

.teacher-list {
  cursor: pointer;
  padding: 7px 0;
}

.teacher-list:hover {
  background-color: #E9E9E9;
}

/*=====================
 *  margin
=====================*/
.mt0 {
  margin-top: 0 !important;
}

.mt10 {
  margin-top: 10px !important;
}

.mt15 {
  margin-top: 15px !important;
}

.mt20 {
  margin-top: 20px !important;
}

.mt30 {
  margin-top: 30px !important;
}

.mt40 {
  margin-top: 40px !important;
}

.mt50 {
  margin-top: 50px !important;
}

.mt60 {
  margin-top: 60px !important;
}

.mr0 {
  margin-right: 0 !important;
}

.mr10 {
  margin-right: 10px !important;
}

.mr20 {
  margin-right: 20px !important;
}

.mb0 {
  margin-bottom: 0 !important;
}

.mb10 {
  margin-bottom: 10px !important;
}

.mb20 {
  margin-bottom: 20px !important;
}

.mb30 {
  margin-bottom: 30px !important;
}

.ml0 {
  margin-left: 0 !important;
}

.ml10 {
  margin-left: 10px !important;
}

.ml20 {
  margin-left: 20px !important;
}
