@charset "UTF-8";

input[type=text].error-msg,
input[type=email].error-msg,
input[type=tel].error-msg,
textarea.error-msg,
input[type=radio].error-msg,
input[type=checkbox].error-msg,
select.error-msg {
  border-color: #ff0000;
  border-width: 1px;
  background: #FAE1EA
}

.zip-group input {
  width: 150px;
}

@media screen and (max-width: 960px) {
  .table-form .label-name {
    align-items: center;
  }

  .table-form .label-name p {
      display: flex;
      align-items: center;
      justify-content: center;
      height: 100%;
      line-height: 1;
  }

  .table-form .label-name p span {
      display: flex;
      align-items: center;
      justify-content: center;
      width: 100%;
      height: 100%;
      line-height: 1;
  }
}

section.reserve-sec table.sch-detail colgroup {
  display: none;
}

section.reserve-sec table.sch-detail th {
  font-size: inherit;
}

section.reserve-sec table.sch-detail thead th {
  width: 33%;
}

@media screen and (max-width: 960px) {
  section.reserve-sec table.sch-detail thead th {
    width: auto;
  }

  section.reserve-sec table.sch-detail thead th:last-of-type {
    width: 35%;
  }
}

section.reserve-sec table.sch-detail tbody th,
section.reserve-sec table.sch-detail tbody td:nth-of-type(1) {
  word-break: keep-all;
}

section.reserve-sec table.sch-detail tbody td:last-of-type input {
  margin-right: 0;
}

@media screen and (max-width: 960px) {

  section.reserve-sec table.sch-detail th,
  section.reserve-sec table.sch-detail td {
    padding: 15px 10px;
  }

  section.reserve-sec table.sch-detail th,
  section.reserve-sec table.sch-detail td {
    font-size: 16px;
  }
}

@media screen and (max-width: 960px) {
  .privacy-box {
    font-size: 14px;
  }

  .agreement-info .agreement-check {
    padding-right: 50px;
  }

  .agreement-info .agreement-check.required span {
    font-size: 14px;
  }
}

.mwform-radio-field label,
.mwform-checkbox-field label {
  display: inline-flex;
  align-items: center;
}

.mw_wp_form.mw_wp_form_confirm .confirm-hide {
  display: none;
}

.mw_wp_form.mw_wp_form_confirm .table-form th.required.confirm-hide-after span::after {
  content: none;
}

.table-form .label-name div.mwform-div {
  flex-direction: column;
  align-items: flex-start;
}

div.mwform-div .check-group {
  display: flex;
  flex-wrap: wrap;
}

div.mwform-div .check-group span.mw-error {
  width: 100%;
}

span.mw-error {
  margin-top: 5px;
  color: #ff0000;
}

input[type=text]:has(+ span.mw-error),
input[type=email]:has(+ span.mw-error),
input[type=tel]:has(+ span.mw-error),
textarea:has(+ span.mw-error),
input[type=radio]:has(+ span.mw-error),
input[type=checkbox]:has(+ span.mw-error),
select:has(+ span.mw-error) {
  border-color: #ff0000;
  border-width: 1px;
  background: #FAE1EA;
}

.agreement-info .agreement-check.required span.mw-error::after {
  content: none;
}

.agreement-info .agreement-check:has(.mw-error) {
  flex-direction: column;
}