@charset "UTF-8";
.ib {
  display: inline-block;
}
.lowmv {
  background-color: #F5FBFC;
  padding: 40px 0 30px;
}
.lowmv__title {
  display: flex;
  flex-direction: column;
  align-items: center;
  justify-content: center;
  gap: 8px;
}
.lowmv__title img {
  width: 52px;
}
.lowmv__title h1 {
  color: #42B9D0;
  font-size: 30px;
  font-weight: 700;
  text-align: center;
}
@media screen and (max-width: 1000px) {
  .lowmv {
    padding: 25px 0;
  }
  .lowmv__title h1 {
    font-size: 20px;
  }
  .lowmv__title img {
    width: 42px;
  }
}


/* ----------------------------------------
* reserve
---------------------------------------- */
#reserve .form {
  padding: 80px 0;
}
#reserve .form .inner {
  padding: 0 20px;
}
#reserve .form .caution {
  color: #42B9D0;
}
#reserve p {
  padding: 0;
}
#reserve .form .is-error {
  color: #F79009;
  font-size: 13px;
}
#reserve .form__head_wrap {
  border: solid 1px #e7e7e7;
  border-radius: 10px;
  font-size: 14px;
  padding: 15px 20px;
  margin-bottom: 30px;
}
#reserve .form_area {
  margin-top: 30px;
}
#reserve .form_wrap {
  background-color: #F5FBFC;
  border-radius: 20px;
  padding: 50px;
}
#reserve .form__head_txt {
  color: #F79009;
  font-size: 14px;
  font-weight: 700;
  padding: 0;
}
#reserve .form_area table {
  width: 100%;
}
#reserve .form_area th,
#reserve .form_area td {
  border-top: solid 1px #e7e7e7;
  border-bottom: solid 1px #e7e7e7;
  padding: 20px 10px 10px;
  text-align: left;
  vertical-align: middle;
}
#reserve .form_area th {
  font-weight: 700;
  width: 280px;
}
#reserve .form_area input[type=text],
#reserve .form_area input[type=email],
#reserve .form_area input[type=date],
#reserve .form_area select,
#reserve .form_area textarea {
  background-color: #fff;
  border: solid 1px #A6A8B0;
  border-radius: 5px;
  color: #222;
  padding: 10px 20px;
  font-size: 16px;
  font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
  line-height: 1.8;
  width: 100%;
}
#reserve .form_area input[type=date]::-webkit-calendar-picker-indicator {
  position: absolute;
  width: 100%;
  height: 100%;
  opacity: 0;
  cursor: pointer;
}
#reserve .form_area input[type=date]::-webkit-inner-spin-button{
  -webkit-appearance: none;
}
#reserve .form_area input[type=date]::-webkit-clear-button{
  -webkit-appearance: none;
}
#reserve .form_area input[type=text]::placeholder,
#reserve .form_area input[type=email]::placeholder,
#reserve .form_area textarea::placeholder {
  color: #ccc;
  font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
}
#reserve .form_area textarea {
  height: 120px;
}
#reserve .form_area .radio_wrap,
#reserve .form_area .check_wrap {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px 20px;
}
#reserve .form_area .radio_wrap label,
#reserve .form_area .check_wrap label {
  cursor: pointer;
}
#reserve .form_area .radio_wrap input,
#reserve .form_area .check_wrap input {
  position: absolute;
  width: 0;
  height: 0;
  opacity: 0;
}
#reserve .form_area .radio_wrap span,
#reserve .form_area .check_wrap span {
  position: relative;
  padding-left: 25px;
}
#reserve .form_area .radio_wrap span::before {
  content: '';
  background-color: #fff;
  border: solid 1px  #E7E7E7;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 17px;
  height: 17px;
}
#reserve .form_area .radio_wrap span::after {
  content: '';
  background-color: #42B9D0;
  border-radius: 50%;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 4px;
  margin: auto;
  width: 11px;
  height: 11px;
  opacity: 0;
}
#reserve .form_area .check_wrap span::before {
  content: '';
  background-color: #fff;
  border: solid 1px  #E7E7E7;
  border-radius: 3px;
  position: absolute;
  top: 0;
  bottom: 0;
  left: 0;
  margin: auto;
  width: 18px;
  height: 18px;
}
#reserve .form_area .check_wrap span::after {
  content: '';
  border-bottom: solid 2px #42B9D0;
  border-left: solid 2px #42B9D0;
  transform: rotate(-45deg);
  position: absolute;
  top: -4px;
  bottom: 0;
  left: 4px;
  margin: auto;
  width: 11px;
  height: 6px;
  opacity: 0;
}
#reserve .form_area .radio_wrap input:checked + span::after,
#reserve .form_area .check_wrap input:checked + span::after {
  opacity: 1;
}
#reserve .form_area .datebox_wrapper {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  gap: 10px;
}
#reserve .form_area .datebox_wrapper input[type=date] {
  position: relative;
  flex-shrink: 0;
  width: 180px;
}
#reserve .form_area .datebox_wrapper input[type=date]::after {
  content: '';
  background: url(../images/icon-calendar.svg) no-repeat center center / contain;
  position: absolute;
  top: -2px;
  bottom: 0;
  right: 20px;
  margin: auto;
  width: 20px;
  height: 20px;
  pointer-events: none;
}
#reserve .form_area .select_wrap {
  position: relative;
  width: calc((100% - 180px) - 10px);
  min-width: 320px;
}
#reserve .form_area .select_wrap::after {
  content: '';
  border-bottom: solid 2px #000;
  border-left: solid 2px #000;
  transform: rotate(-45deg);
  position: absolute;
  top: -4px;
  bottom: 0;
  right: 20px;
  margin: auto;
  width: 8px;
  height: 8px;
  pointer-events: none;
}
#reserve .form_area .select_wrap select {
  appearance: none;
}
#reserve .form_area .telbox {
  display: flex;
  align-items: center;
  gap: 10px;
}
#reserve .form_area .privacy {
	margin-top: 30px;
}
#reserve .form_area .privacy_wrap {
	box-sizing: border-box;
	max-width: 860px;
	margin: 0 auto;
	border: solid 1px #E7E7E7;
  background-color: #fff;
	padding: 30px;
	height: 217px;
	overflow-y: scroll;
}
#reserve .form_area .privacy_title {
	font-size: 14px;
	font-weight: 700;
	line-height: 1.5;
}
#reserve .form_area .privacy_title:not(:first-of-type) {
	margin-top: 20px;
}
#reserve .form_area .privacy .txt {
	font-size: 14px;
	line-height: 1.5;
}
#reserve .form_area .privacy li {
	font-size: 14px;
	line-height: 1.5;
	padding-left: 14px;
	position: relative;
}
#reserve .form_area .privacy li::before {
	content: "・";
	position: absolute;
	top: 0;
	left: 0;
}
#reserve .form_area .privacyAgree {
	text-align: center;
	margin-top: 20px;
}
#reserve .form_area .privacyAgree__check {
	opacity: 0;
	width: 0;
	height: 0;
	position: absolute;
}
#reserve .form_area .privacyAgree label {
	font-size: 14px;
	position: relative;
	padding-left: 24px;
	cursor: pointer;
}
#reserve .form_area .privacyAgree label::before {
	content: "";
	width: 14px;
	height: 14px;
	border: solid 1px #2c363c;
  background-color: #fff;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}
#reserve .form_area .privacyAgree label::after {
  content: "";
	border-bottom: solid 2px #42B9D0;
	border-left: solid 2px #42B9D0;
  width: 9px;
  height: 4px;
  position: absolute;
  top: -4px;
  bottom: 0;
  left: 3px;
  background-color: #fff;
  margin: auto;
  transform: rotate(-45deg);
  opacity: 0;
}
#reserve .form_area .privacyAgree__check:checked + label::after {
	opacity: 1;
}
#reserve .form .btn-area {
	display: flex;
	align-items: center;
	justify-content: center;
	flex-wrap: wrap;
	gap: 10px 30px;
	margin-top: 30px;
}
#reserve .form .btn-area .btn {
	cursor: pointer;
	display: flex;
	align-items: center;
	justify-content: center;
	border: none;
	border-radius: 100px;
	width: 270px;
	height: 60px;
	background-color: #F7B209;
	color: #fff;
  font-size: 16px;
	font-family: "游ゴシック",YuGothic,"ヒラギノ角ゴ ProN W3","Hiragino Kaku Gothic ProN","メイリオ",Meiryo,sans-serif;
	font-weight: 700;
}
#reserve .form .btn-area .btn.cancel {
	color: #2c363c;
	background-color: #d5d7d8;
}
#reserve .form .btn-area .btn::before {
  content: none;
}
#reserve .form .thanks__title {
  color: #42B9D0;
  font-size: 32px;
  font-weight: 700;
  text-align: center;
  margin-bottom: 40px;
}
#reserve .form .thanks__txt {
  text-align: center;
  font-size: 16px;
  line-height: 2;
}
@media screen and (max-width: 1000px) {
  #reserve .form {
    padding: 60px 0;
  }
  #reserve .form .inner {
    padding: 0 10px;
  }
  #reserve .form__head_wrap {
    font-size: 12px;
    margin-bottom: 20px;
  }
  #reserve .form_area {
    margin-top: 20px;
  }
  #reserve .form_wrap {
    background-color: transparent;
    padding: 0;
  }
  #reserve .form_area th,
  #reserve .form_area td {
    display: block;
    text-align: left;
    font-size: 14px;
    padding: 20px 10px;
  }
  #reserve .form_area th {
    background-color: #F5FBFC;
    width: 100%;
  }
  #reserve .form_area td {
    border: none;
  }
  #reserve .form_area tr:last-of-type td {
    border-bottom: solid 1px #e7e7e7;
  }
  #reserve .form_area input[type=text], 
  #reserve .form_area input[type=email],
  #reserve .form_area input[type=date],
  #reserve .form_area select,
  #reserve .form_area textarea {
    font-size: 14px;
  }
  #reserve .form_area .datebox_wrapper input[type=date] {
    width: 100%;
    flex-shrink: inherit;
  }
  #reserve .form_area .select_wrap {
    min-width: inherit;
    width: 100%;
  }
  #reserve .form_area .check_wrap {
    flex-direction: column;
    align-items: self-start;
  }
  #reserve .form_area .privacy {
    margin-top: 20px;
  }
  #reserve .form_area .privacy_wrap {
    padding: 15px;
  }
  #reserve .thanks__title {
    font-size: 22px;
  }
  #reserve .thanks__txt {
    text-align: left;
    font-size: 14px;
  }
}