@charset "UTF-8";
/* Default */
/* [ Sample ] */
/*-----------------------------------------------------
 * Unify Style Overwrite
/*-----------------------------------------------------*/
.u-side-nav--has-sub-menu__indicator {
  background-color: rgba(0, 0, 0, 0.2) !important;
}

.form-control:-ms-input-placeholder {
  opacity: 0.5;
}

.form-control::placeholder {
  opacity: 0.5;
}

.col-astha {
  max-width: 100%;
  -ms-flex-positive: 1;
      flex-grow: 1;
}

span.page-link {
  cursor: none !important;
}

textarea {
  white-space: pre;
}

.u-has-error-v1-3 [class*="input-group-"],
.u-has-error-v1-3 [class*="input-group-"]:last-child {
  color: #f00;
}

span.requiredCheckboxErrorMessage {
  display: none;
  color: #f00;
}

@media (min-width: 992px) {
  .table-responsive {
    overflow: hidden;
    overflow-y: hidden;
    overflow-x: auto;
  }
}

/*-----------------------------------------------------
 * Bootstrap Style Overwrite
/*-----------------------------------------------------*/
.modal-dialog {
  max-width: 800px;
}

td.sortable {
  text-align: center;
}

.help-block {
  display: block;
  margin-top: 0.2em;
  color: #495057;
}

/* PC View */
@media (min-width: 992px) {
  .container {
    padding: 1.42857rem 7.14286rem;
  }
  .form-group .col-sm-3 {
    text-align: right;
  }
}

/*-----------------------------------------------------
 * CakePHP Setting
/*-----------------------------------------------------*/
.cake-error,
.cake-debug-output {
  margin-top: 70px;
}

.form-error {
  background-color: #fff0f0;
}

.error-message {
  color: #cc0000;
  font-weight: bold;
}

.help-block {
  display: block;
  color: #5fa025;
}

/*-----------------------------------------------------
 * Common Setting
/*-----------------------------------------------------*/
.display-none {
  /* あとで検索やすいようにこの名称 */
  display: none !important;
}

a.disabled {
  pointer-events: none;
  text-decoration: line-through;
}

a.disabled:after {
  content: '　[未実装]';
}

tr.deleted td {
  background-color: #CECFCE;
}

span.required {
  margin-left: 0.2rem;
  color: #CC0000;
}

span.unit {
  font-size: 0.9em;
  margin-left: 0.2em;
}

.page-header {
  margin-bottom: 1em;
  padding-bottom: 0.25em;
  border-bottom: 1px solid #CECFCE;
}

.bold {
  font-weight: bold;
}

input[type="text"]:disabled {
  background-color: #EEEEEE;
}

input[type=radio]:disabled {
  color: #ccc;
}

/*-----------------------------------------------------
 * application
/*-----------------------------------------------------*/
span.toggleSwitch.active {
  background-color: #527bcc !important;
}

.beforeMonth {
  display: none;
}

table#calendar {
  display: table;
  table-layout: fixed;
  width: 100%;
}

table#calendar thead th {
  width: calc(100% / 7);
  text-align: center;
}

table#calendar tbody td {
  width: calc(100% / 7);
}

table#calendar tbody td.loading {
  padding: 10vh 0;
  text-align: center;
}

table#calendar tbody td.date {
  height: 124px;
}

table#calendar tbody td.date.bookingDate {
  cursor: pointer;
}

table#calendar tbody td.date.bookingDate:hover {
  background-color: #8da8dd !important;
  color: #ffffff;
  font-weight: bold;
}

table#calendar tbody td.date.bookingDate.active {
  background-color: #527bcc !important;
  color: #ffffff;
  font-weight: bold;
}

table#calendar tbody td.date.week0 {
  background-color: #fff3f3;
}

table#calendar tbody td.date.week6 {
  background-color: #f3f3ff;
}

table#calendar tbody td.date p {
  margin-bottom: 4px;
  text-align: center;
  line-height: 1.4;
}

table#calendar tbody td.date p.day {
  margin-bottom: 12px;
}

section.confirms div {
  padding: 0.4em 1em;
}

section.confirms div.col-sm-4 {
  text-align: right;
  font-size: 1.2em;
}

section.confirms div.col-sm-8 {
  font-size: 1.4em;
}

@media screen and (max-width: 640px) {
  #process li.disActive {
    display: none;
  }
  table#calendar tbody td.date {
    height: 42px;
    padding: 4px 2px;
    font-size: 2.4vw;
  }
  table#calendar tbody td.date p {
    margin-bottom: 2px;
  }
}
