html body{
  background:white;
  height: 100%;
}

.form-group{
  margin: 0 !important;
}

input,select{
  margin: 0 !important;
}

input[type=checkbox] {
  margin-right: 0.5em !important;
}

.header{
  height: 75px;
  font-size: 25px;
  color: #666666;
  background-color:white;
  text-align: left;
  /*position: sticky;*/
  top: 0;
  right: 0;
  width: 100%;
  z-index: 9999;
  border-bottom: 1px dotted #AAA;
}

.header-content{
  display:inline-block;
  font-size: 15px;
  font-weight: bold;
}

.logout-btn{
  margin: 0;
  font-size: 14px;
}

.contents{
  overflow: hidden;
}

.side-menu{
  height: 100%;
  border-right: 1px dotted #AAA;
}

.side-menu-title{
  font-weight: bold;
  color: #6a6a6a;
}

.footer{
  height: 45px;
  font-size: 18px;
  color: #6a6a6a;
  background-color:white;
  text-align: center;
  /*position: fixed;*/
  left: 0;
  bottom: 0;
  width: 100%;
  z-index: 9999;
  border-top: 1px dotted #AAA;
}

.footer_char{
  padding-top: 10px;
}

.title-bar{
  margin-top: 15px;
  border-bottom:1px dotted #AAA;
}

.logo img {
  height: 65px;
  padding-top:10px;
  margin-left: 10px;
}

.screen-title{
  font-weight: bold;
  color: #6a6a6a;
}

.search-conditions-row{
  margin-bottom: 75px;
}

.content-label {
  padding-top: 10px;
  font-weight: bold;
}

.user-search-content{
  padding-right: 0;
}

.user-search-btn{
  padding-left: 0;
}

.child-screen-btn{
  padding-left: 0;
}

.required-row{
  margin-top: 15px;
  margin-bottom: 15px;
}

.required-badge{
  font-size: 15px;
}

.required-label{
  padding-top: 10px;
  font-weight: bold;
  color: red;
}

.note-label{
  padding-top: 10px;
  font-weight: bold;
  color: red;
}

.back-link{
  padding-top: 10px;
}

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

.table td, .table th {
  color: #4D4D4D !important;
}

.list-table > table tr td {
  padding: 0.2rem 0.625rem;
}

table tr td button{
  margin-bottom: 0 !important;
}

.table{
  table-layout: auto !important;
  white-space: nowrap;
}

ul.pagination{
  display: inline-block;
}

.paginator{
  margin: 0 auto !important;
}

.alert{
  margin-top: 20px;
  margin-bottom: 20px;
}

#search-criteria-header{
  text-align: center;
  background: #02596A;
  color: white !important;
  font-size: 25px;
}

#child-search-criteria-header{
  text-align: center;
  background: #001f6f;
  color: white !important;
  font-size: 25px;
}

/* スマホ、768px以下の設定 */
@media only screen and (max-width: 767px) {
  .header {
    height: 170px;
  }
  .h-name {
    text-align: center !important;
  }
}

/* タブレット端末の設定 */
@media only screen and (max-width: 1024px) {
  .h-logo {
    text-align: center !important;
  }
  .h-logout {
    text-align: center !important;
  }
}

::placeholder{
  text-align: left;
  opacity: 0.5 !important;
}
