@charset "utf-8";
/* CSS Document */
.confirm_btn input[type="button"] {
  margin: 0 auto 1em;
  padding: 1em;
  display: block;
  text-align: center;
  border-radius: 30px;
  -webkit-border-radius: 30px;
  /* for Safari and Chrome 対応*/
  -moz-border-radius: 30px;
  /* for Firefox 対応*/
  -webkit-transition: all 0.3s;
  transition: all 0.3s;
  width: 100%;
  background-color: #e1d2c0;
  color: #000;
  max-width: 16.8em;
  line-height: 1;
}
.confirm_btn input[type="button"]:hover {
  background-color: #f2baa5;
  color: #000;
}

.bt_schedule,.bt_cafe {
  text-align: left;
}
.bt_schedule span,.bt_cafe span {
  margin: 0 0 1em;
  line-height: 1;
  padding: 1em;
  display: block;
  text-align: center;
  border-radius: 100vh;
  -webkit-border-radius: 30px;
  -moz-border-radius: 30px;
  -webkit-transition: all 0.3s;
 transition: all 0.3s;
 background-color: #e1d2c0;
 width: 30%;
 border: 0;
 font-size: 14px;
 cursor: pointer;
}
.bt_schedule span:hover,.bt_cafe span:hover {
  background: rgb(242, 186, 165);
}

.calendar-wrap {
  margin: 0 auto;
  max-width: 100%;
  display: grid;
  grid-template-columns: repeat(2, 1fr);
  gap: 40px;
}

@media (max-width: 767.98px) {
 .calendar-wrap {
  display: flex;
  flex-direction: column;
  }
}

.calendar {
  width: 100%;
  border-collapse: collapse;
}

.calendar th,
.calendar td {
  border: 1px solid #000;
  text-align: center;
  padding: 10px;
  font-size: 14px;
  font-weight: bold;
  background: #FFF;
}

.calendar th {
  padding: 6px 10px;
}

.calendar td {}

@media (max-width: 767.98px) {

  .calendar th,
  .calendar td {
    padding: 6px;
    font-size: 12px;
    background: #FFF;
  }

  .calendar th {
    padding: 3px 6px;
  }
}

.calendar .sun {
  color: #e17f7e;
  background: #f8e4e2;
}

.calendar .sat {
  color: #7ab6f3;
  background: #e7f6fd;
}

.calendar .mute {
  color: #aaa;
}

.calendar .today {
  background: #ccc;
}

.calendar .off {
  background: #fadcdb;
}
.x_false {
  background-color: #bbb;
}
.form_check_wrap li input:disabled {
  background: none;
}
.form_check_item span {
  font-size: 10px;
}

#nowLoading {
  background: #FFF;
  opacity: 0.7;
  position: fixed;
  inset: 0;
  margin: auto;
  width: 100%;
  height: 100%;
  z-index: 99;
}
#nowLoading p {
 width: 100%;
 height: 100%;
 display: grid;
 place-items: center;
}

@media (max-width: 767.98px) {
.form_date_box_item {
 width: 32% !important;
}
  
}

.fp_office {
  margin-top: 1em;
}
.fp_office li {
  margin-bottom: 0.5em;
}
.fp_office li input {
  margin-right: .2em;
  vertical-align: middle;
}