@charset "UTF-8";
body {
  font-family: 'Montserrat','ヒラギノ角ゴ Pro W3','Hiragino Kaku Gothic Pro','メイリオ',Meiryo,'ＭＳ Ｐゴシック',sans-serif;
  background-color: #F5F1E9;
  font-size: 150%;

  display: flex;
  min-height: 100vh;
  flex-direction: column;
}
@media (max-width: 599px) {
  html {font-size: 12px;}
}

main {
  flex: 1 0 auto;
}

/* 反転時の色 ------------------------------------- */
::selection {
  background: #F8823C;
  color: #fff;
}
/* Firefoxに対応 ------------------------------------- */
::-moz-selection {
  background: #F8823C;
  color: #fff;
}


/* ページレイアウト ------------------------------------- */
@media (max-width: 599px) {
  .pc_only {display: none !important;}
}
@media (min-width: 600px) {
  .sp_only {display: none !important;}
}

#header {
  background-color: #F8823C;
  padding: 10px;
  box-shadow: 0 0 4px 2px #CCC;
  margin-bottom: 10px;
  /* fixed --------- */
  position: fixed;
  width: 100%;
  z-index: 9999;
  /* fixed --------- */
}
#header .logo {
  float: left;
  padding-top: 10px;
}
#header .logo img {
  width: 40px;
  height: auto;
  margin-right: 15px;
}
#header .logo a {
  color: #FFF;
  text-decoration: none;
  font-size: 120%;
  font-weight: bold;
}
#header .navi {
  float: right;
  font-size: 55%;
  margin-right: 15px;
}
#header .navi a {
  color: #FFF;
  background-color: #BA612D;
  line-height: 135%;
}
#header .navi a:hover {
  background-color: #D17843;
}
#header .navi i {
  font-size: 180%;
  display: block;
  text-align: center;
  margin: 5px;
}
#header .navi .dropdown-menu a {
  color: #333;
  background-color: #FFF;
  padding-top: 10px;
  padding-bottom: 10px;
}
#header .navi .dropdown-menu a:hover {
  background-color: #EEE;
}

#pagetop,
#header .back {
  float: left;
  margin-right: 15px;
  margin-left: -120px;
  z-index: 9999;
}
#pagetop i,
#header .back i {
  margin-right: 5px;
}
#pagetop a,
#header .back a {
  color: #FFF;
  line-height: 135%;
  display: block;
  padding: 18px 15px;
  background-color: #BA612D;
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
#pagetop a:hover,
#header .back a:hover {
  background-color: #D17843;
  text-decoration: none;
}

#pagetop {
  position: fixed;
  bottom: 10px;
  right: 20px;
}
#pagetop a {
  padding: 18px 20px;
  -moz-opacity:0.75;
  opacity:0.75;
  filter:alpha(opacity=75);
}
#pagetop a:hover {
  -moz-opacity:1;
  opacity:1;
  filter:alpha(opacity=100);
}


#main {
  margin-bottom: 30px;
  /* fixed --------- */
  margin-top: 90px;
  /* fixed --------- */
}

@media (max-width: 969px) {
  #header .logo {
    width: 100%;
    text-align: center;
    padding-top: 0;
    padding-bottom: 10px;
  }
  #main {
    margin-top: 130px;
  }
  #header .back {
    position: absolute;
  }
}

#footer {
  border-top: 1px solid #DDD;
  background-color: #FFF;
  font-size: 70%;
}
#footer .right {
  float: right;
}

.content-header {
  margin-bottom: 20px;
}

.edit-action {
  margin: 5px 0;
  color: #AAA;
}
.edit-action a {
  margin-right: 5px;
  margin-left: 5px;
}
.edit-action a:first-child {
  margin-left: 0;
}
.edit-action a:last-child {
  margin-right: 0;
}

.error-message {
  color: #F00;
}
.message {
  color: #00F;
}

.button-area {
  clear: both;
  background-color: #EEEEFF;
  padding: 20px;
  text-align: center;
}

#edit_menu_panel {
  position: fixed;
  bottom: 0;
  left: 0;
  width: 100%;
  font-size: 90%;
  z-index: 10000;
}
#edit_menu_panel .button {
  margin-left: 10px;
}
#edit_menu_panel .button a {
  display: block;
  width: 120px;
  text-align: center;
  background-color: #333;
  padding: 5px;
  color: #FFF;
}
#edit_menu_panel .body {
  padding: 10px 20px;
  border-top: 2px solid #333;
  background-color: #FFF;
  height: 100px;
  overflow-x: auto;
  overflow-y: hidden;
}



/* bootstrap customize ---------------------- */
.container {
  width: 94%;
  padding-left: 10px;
  padding-right: 10px;
}
.row {
  margin-left: -10px;
  margin-right: -10px;
}

.col-lg-1, .col-lg-10, .col-lg-11, .col-lg-12, .col-lg-2, .col-lg-3, .col-lg-4, .col-lg-5, .col-lg-6, .col-lg-7, .col-lg-8, .col-lg-9, .col-md-1, .col-md-10, .col-md-11, .col-md-12, .col-md-2, .col-md-3, .col-md-4, .col-md-5, .col-md-6, .col-md-7, .col-md-8, .col-md-9, .col-sm-1, .col-sm-10, .col-sm-11, .col-sm-12, .col-sm-2, .col-sm-3, .col-sm-4, .col-sm-5, .col-sm-6, .col-sm-7, .col-sm-8, .col-sm-9, .col-xs-1, .col-xs-10, .col-xs-11, .col-xs-12, .col-xs-2, .col-xs-3, .col-xs-4, .col-xs-5, .col-xs-6, .col-xs-7, .col-xs-8, .col-xs-9 {
  padding-left: 10px;
  padding-right: 10px;
}

.btn-wide {
  width: 100%;
}

.input-check-field {
  display: inline-block;
  margin: 0.7rem;
}

.table {
  background-color: #FFF;
}
.table th {
  background-color: #f5f5f5;
}

.table-lg > thead > tr > th,
.table-lg > tbody > tr > th,
.table-lg > tfoot > tr > th,
.table-lg > thead > tr > td,
.table-lg > tbody > tr > td,
.table-lg > tfoot > tr > td {
  padding: 1.8rem;
}

.table-middle > thead > tr > th,
.table-middle > tbody > tr > th,
.table-middle > tfoot > tr > th,
.table-middle > thead > tr > td,
.table-middle > tbody > tr > td,
.table-middle > tfoot > tr > td {
  vertical-align: middle
}

#globalnavigation .dropdown-menu {
  right: 0;
  left: auto;
}

.dropdown-tooltip {
}
.dropdown-tooltip .dropdown-tooltip-top {
  position: absolute;
  top: 54px;
  right: 20px;
  left: auto;
  display: none;
  width: 20px;
  height: 18px;
  background: url('../img/tooltip-top.png') no-repeat left top;
  z-index: 2000;
}
.dropdown-tooltip.open .dropdown-tooltip-top {
  display: block;
}

ul.application-menu {
}
ul.application-menu li {
  width: 50%;
  float: left;
  text-align: center;
  font-size: 80%;
}
ul.application-menu > li > a {
  padding: 3px;
}



/* datetimepicker customize ---------------------- */
.bootstrap-datetimepicker-widget table,
.bootstrap-datetimepicker-widget table th,
.bootstrap-datetimepicker-widget table td {
  border: none;
}
.bootstrap-datetimepicker-widget table th {
  border-radius : 0;
}



/* task ------------------------------------- */
.task-label {
  width: 100%;
  padding-top: 15px;
  padding-bottom: 15px;
  display: block;
  color: #000;
}
.task-label.ontask {
  background-color: #6bd0ee;
}
.task-label.newtask {
  background-color: #eee;
}


/* timetable ------------------------------------- */
.scroll_div {
  overflow-y: auto;
}

.table-timetable {
  border: 1px solid #CCC;
  border-collapse: collapse;
}

.table-timetable th,
.table-timetable td {
  vertical-align: middle;
  padding: 3px;
  border: 1px solid #CCC;
}

.table-timetable th {
  padding: 10px 3px;
}
.table-timetable td {
  background: linear-gradient(to right,#E5E5E5 1px,transparent 1px);
  background-size: 24px auto;
}
.table-timetable tr:nth-child(odd) {
/*  background-color: #fafafa;*/
}
.table-timetable tr.odd {
  background-color: #fafafa;
}

.tasklist {
  position: relative;
  height: 60px;
}

ul.tasklist {
  list-style: none;
  margin: 0;
  padding: 0;
}

.tasklist .item {
  background-color: #EEE;
  border: 1px solid #CCC;
  float: left;
  height: 48px;
  margin: 0;
  padding: 5px;
  z-index: 10;
}
.tasklist .item {
  z-index: 30;
  margin-right: 5px;
  margin-bottom: 5px;
  color: #FFF;
  font-size: 75%;
  line-height: 150%
}
.scroll_div {
  z-index: 20;
}
.table-timetable .item {
  position: absolute;
  top: 0;
  margin: 5px 0;
}

.timetable ul.room-timeline li.timetable-base-active:nth-of-type(2n+1),
.timetable ul.room-timeline li.timetable-base-active {
  background: #F99;
  /*border: 3px solid #F00;*/
}

.timetable .time-entry {
  font-size: 13px;
}
.timetable .time-entry:hover {
  cursor: pointer;
}
.tasklist .item.item-blue, 
.timetable .time-entry.item-blue {
  background-color: #00c0ef;
  border: 1px solid #00a7d0;
}
.tasklist .item.item-blue:hover, 
.timetable .time-entry.item-blue:hover {
  background-color: #00a7d0;
}
.tasklist .item.item-green, 
.timetable .time-entry.item-green {
  background-color: #00a65a;
  border: 1px solid #008d4c;
}
.tasklist .item.item-green:hover, 
.timetable .time-entry.item-green:hover {
  background-color: #008d4c;
}
.tasklist .item.item-yellow, 
.timetable .time-entry.item-yellow {
  background-color: #f39c12;
  border: 1px solid #db8b0b;
}
.tasklist .item.item-yellow:hover, 
.timetable .time-entry.item-yellow:hover {
  background-color: #db8b0b;
}
.tasklist .item.item-red, 
.timetable .time-entry.item-red {
  background-color: #f56954;
  border: 1px solid #d33724;
}
.tasklist .item.item-red:hover, 
.timetable .time-entry.item-red:hover {
  background-color: #d33724;
}
.tasklist .item.item-pink, 
.timetable .time-entry.item-pink {
  background-color: #E0A4FB;
  border: 1px solid #D683FA;
}
.tasklist .item.item-pink:hover, 
.timetable .time-entry.item-pink:hover {
  background-color: #D683FA;
}
.tasklist .item.item-blue2, 
.timetable .time-entry.item-blue2 {
  background-color: #045AEA;
  border: 1px solid #034BC5;
}
.tasklist .item.item-blue2:hover, 
.timetable .time-entry.item-blue2:hover {
  background-color: #034BC5;
}
.tasklist .item.item-green2, 
.timetable .time-entry.item-green2 {
  background-color: #95AD0C;
  border: 1px solid #74870A;
}
.tasklist .item.item-green2:hover, 
.timetable .time-entry.item-green2:hover {
  background-color: #74870A;
}
.tasklist .item.item-yellow2, 
.timetable .time-entry.item-yellow2 {
  background-color: #D2BA11;
  border: 1px solid #AD990E;
}
.tasklist .item.item-yellow2:hover, 
.timetable .time-entry.item-yellow2:hover {
  background-color: #AD990E;
}
.tasklist .item.item-red2, 
.timetable .time-entry.item-red2 {
  background-color: #AB5023;
  border: 1px solid #833D1B;
}
.tasklist .item.item-red2:hover, 
.timetable .time-entry.item-red2:hover {
  background-color: #833D1B;
}
.tasklist .item.item-pink2, 
.timetable .time-entry.item-pink2 {
  background-color: #9621A7;
  border: 1px solid #731A80;
}
.tasklist .item.item-pink2:hover, 
.timetable .time-entry.item-pink2:hover {
  background-color: #731A80;
}
.tasklist .item.item-black, 
.timetable .time-entry.item-black {
  background-color: #333333;
  border: 1px solid #000000;
}
.tasklist .item.item-black:hover, 
.timetable .time-entry.item-black:hover {
  background-color: #000000;
}
.tasklist .item.item-gray, 
.timetable .time-entry.item-gray {
  background-color: #727272;
  border: 1px solid #505050;
}
.tasklist .item.item-gray:hover, 
.timetable .time-entry.item-gray:hover {
  background-color: #565656;
}
.tasklist .item.item-gray2, 
.timetable .time-entry.item-gray2 {
  background-color: #B7B7B7;
  border: 1px solid #A0A0A0;
}
.tasklist .item.item-gray2:hover, 
.timetable .time-entry.item-gray2:hover {
  background-color: #A0A0A0;
}
.timetable .time-entry small {
  line-height: 135%;
}

.tasklist .item.time-add {
  color: #000;
  width: 150px;
  background-color: #eee;
}
.tasklist .item.time-add i {
  font-size: 200%;
  padding-top: 5px;
}
.tasklist .item.time-add:hover {
  background-color: #e5e5e5;
}


/* calendar ------------------------------------- */
.table-calendar th {
  background-color: #F5F5F5;
  text-align: center;
}
.table-calendar > tbody > tr > td, .table-calendar > tbody > tr > th, .table-calendar > tfoot > tr > td, .table-calendar > tfoot > tr > th, .table-calendar > thead > tr > td, .table-calendar > thead > tr > th {
  padding-top: 12px;
  padding-bottom: 12px;
}
.table-calendar > tbody > tr > td > div {
  margin-top: 10px;
}

.table .sat {background-color: #EEEEFF;}
.table .sun {background-color: #FFEEEE;}
.table .none {background-color: #EEEEEE;}
.table th.sat {color: #0000FF;}
.table th.sun {color: #FF0000;}



/* worklist ------------------------------------- */
.table-worklist {
  font-size: 80%;
}
.table-worklist th, .table-worklist td {
  height: 46px;
  overflow: hidden;
}
.table-worklist td.workday {
  padding: 0;
}
.table-worklist td.workday a {
  display: block;
  width: 100%;
  height: 100%;
  padding-top: 10px;
  text-align: center;
  vertical-align: middle;
  color: #000;
}
.table-worklist td.workday a.holiday {
  background-color: #F00;
  color: #FFF;
}
.table-worklist td.workday a.other {
  padding-top: 3px;
  background-color: #090;
  color: #FFF;
}
.table-worklist td.workday a:hover {
  background-color: #00F;
  color: #FFF;
  text-decoration: none;
}



/* 印刷ページレイアウト ------------------------------------- */
.table-output {
  font-size: 8px;
  border: 2px solid #000 !important;
}
.table-output th {
  background-color: #CCC !important;
}
.table-output th, .table-output td {
  padding: 5px 5px !important;
  border-color: #999 !important;
  vertical-align: middle !important;
}
.table-output .th {
  font-weight: bold;
  background-color: #EEE !important;
}

@media print {
  body {
    -webkit-print-color-adjust: exact;
  }
  .print_none {
    display: none;
  }
}


/* 汎用クラス ------------------------------------- */
.clear {
  clear: both;
}

.hidden {
  display: none;
}

.mt0{margin-top:0 !important;}
.mt5{margin-top:5px;}
.mt10{margin-top:10px;}
.mt20{margin-top:20px;}
.mt30{margin-top:30px;}
.mt40{margin-top:40px;}
.mt50{margin-top:50px;}

.mr0{margin-right:0 !important;}
.mr5{margin-right:5px;}
.mr10{margin-right:10px;}
.mr20{margin-right:20px;}
.mr30{margin-right:30px;}
.mr40{margin-right:40px;}
.mr50{margin-right:50px;}

.mb0{margin-bottom:0 !important;}
.mb5{margin-bottom:5px;}
.mb10{margin-bottom:10px;}
.mb20{margin-bottom:20px;}
.mb30{margin-bottom:30px;}
.mb40{margin-bottom:40px;}
.mb50{margin-bottom:50px;}

.ml0{margin-left:0 !important;}
.ml5{margin-left:5px;}
.ml10{margin-left:10px;}
.ml20{margin-left:20px;}
.ml30{margin-left:30px;}
.ml40{margin-left:40px;}
.ml50{margin-left:50px;}

.border_box {
  border: 2px solid #B28850;
  padding: 10px;
  margin: 10px 0;
}
.radius_box {
  border-radius: 5px;
  -webkit-border-radius: 5px;
  -moz-border-radius: 5px;
}
