@charset "UTF-8";
:root {
  --color-primary: #00bebc;
  --color-primary-d: #00877e;
  --color-accent: #ffc300;
  --bg-color-primary: #e6f8f6;
  --bg-color-accent: #fff7de;
  --bg-color-gray: #f3f3f3;
  --bg-color-gray-light: #f8f8f8;
  --btn-color-primary: #00bebc;
  --btn-color-accent: #ffc300;
  --font-en: Roboto, sans-serif;
  --font-jp: Noto Sans JP, sans-serif;
  --font-color: #464646;
  --font-color-gray: #787878;
  --font-color-gray-light: #c8c8c8;
  --font-color-gray-dark: #464646;
  --font-color-black: #000;
  --font-color-blue: #2468e2;
  --font-color-red: #ff404c;
  --border-color-gray: #787878;
  --border-color-gray-light: #c8c8c8;
  --border-color-gray-lighter: #dcdcdc;
  --content-margin: 20px;
  --content-max-w: 1200px;
  --alert-color-red: #ff404c;
  --form-btn-border: #b4b4b4;
  --form-btn-disabled: #dcdcdc;
  --form-color-placeholder: #a0a0a0;
  --form-border-select: #c8c8c8;
  --form-border-input: #787878;
  --modal-border-color: #dcdcdc;
  --modal-head-color: #00bebc;
}
input,
select,
button,
textarea {
  -webkit-appearance: none;
  -moz-appearance: none;
       appearance: none;
  background: transparent;
  border: none;
  border-radius: 0;
  box-shadow: none;
  color: #000;
  font: inherit;
  margin: 0;
  outline: none;
  padding: 0;
  -webkit-text-size-adjust: 100%;
}

input::-moz-placeholder, textarea::-moz-placeholder {
  color: var(--form-color-placeholder);
}

input::placeholder,
textarea::placeholder {
  color: var(--form-color-placeholder);
}

textarea {
  resize: vertical;
}

input[type=submit],
input[type=button],
button {
  font-family: "Roboto", "Noto Sans JP", sans-serif;
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0.2);
  -webkit-touch-callout: none;
}
input[type=submit],
input[type=button],
button {
  cursor: pointer;
  transition: opacity 0.3s ease;
}

.page_content {
  color: var(--font-color);
}
.page_content .content_side::after {
  background-color: var(--bg-color-gray-light);
  content: "";
  display: block;
  height: 100%;
  margin-left: calc(-50vw + 50%);
  position: absolute;
  right: 0;
  top: 0;
  width: calc((100vw - var(--content-max-w) + var(--content-margin) * 2) * 0.5 + 100%);
  z-index: 1;
}

.page_content .content_side .side_title {
  align-items: center;
  color: var(--font-color-black);
  display: flex;
  font-size: 2.2rem;
  margin-bottom: 4px;
}
.page_content .content_side .side_title span {
  margin: 0 20px;
}
.page_content .content_side .side_title::before {
  background-color: #000;
  content: "";
  height: 1px;
  margin-left: -8px;
  transform: rotate(60deg);
  width: 20px;
}
.page_content .content_side .side_title::after {
  background-color: #000;
  content: "";
  height: 1px;
  margin-left: -8px;
  transform: rotate(-60deg);
  width: 20px;
}
.page_content .content_side .assist_wrap .txt_01 {
  font-size: clamp(11px, 2.93vw, 1.4rem);
}
.page_content .content_side .assist_wrap .txt_01 .icon {
  aspect-ratio: 1/1;
  overflow: hidden;
  position: absolute;
}
.page_content .content_side .assist_wrap .txt_01 .icon img {
  height: auto;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 100%;
}
.page_content .content_side .assist_wrap .txt_02 {
  font-feature-settings: "palt" 1;
  font-size: clamp(10px, 2.67vw, 1.1rem);
  text-align: justify;
}
.page_content .content_side .step_wrap {
  counter-reset: step_number;
}
.page_content .content_side .step_wrap li {
  align-items: center;
  counter-increment: step_number;
  display: flex;
  position: relative;
}
.page_content .content_side .step_wrap li p {
  align-items: center;
  display: flex;
  flex: 1;
  position: relative;
}
.page_content .content_side .step_wrap li p span,
.page_content .content_side .step_wrap li p a {
  color: var(--font-color-black);
  font-size: clamp(15px, 4vw, 16px);
  font-weight: 600;
  line-height: 1;
}
.page_content .content_side .step_wrap li::before {
  color: var(--font-color-gray);
  content: "STEP." counter(step_number) "";
  display: block;
  font-family: var(--font-en);
  font-weight: 500;
}
.page_content .content_side .step_wrap li + li {
  margin-top: 30px;
}

.page_content .content_main {
  counter-reset: step_m_number;
}
.page_content .content_main .radio_wrap,
.page_content .content_main .check_wrap {
  align-items: center;
  display: flex;
  justify-content: flex-start;
  position: relative;
  width: 100%;
}
.page_content .content_main .radio_wrap label,
.page_content .content_main .check_wrap label {
  align-items: center;
  cursor: pointer;
  display: flex;
  font-size: 1.4rem;
  justify-content: flex-start;
  line-height: 22px;
  /*width: 100%;*/
}
.page_content .content_main .radio_wrap label span,
.page_content .content_main .check_wrap label span {
  flex: 1;
}
.page_content .content_main .radio_wrap label picture,
.page_content .content_main .check_wrap label picture {
  display: flex;
}
.page_content .content_main .radio_wrap label::before,
.page_content .content_main .check_wrap label::before {
  aspect-ratio: 1/1;
  background-image: url(../img/form_radio_gray.svg);
  background-position: center center;
  background-repeat: no-repeat;
  background-size: contain;
  content: "";
  display: block;
  font-size: 0;
  line-height: 1;
  margin-right: 6px;
  width: 22px;
}
.page_content .content_main .radio_wrap input[type=radio],
.page_content .content_main .radio_wrap input[type=checkbox],
.page_content .content_main .check_wrap input[type=radio],
.page_content .content_main .check_wrap input[type=checkbox] {
  height: 1px;
  opacity: 0;
  position: absolute;
  width: 1px;
}
.page_content .content_main .radio_wrap input[type=radio]:checked + label::before,
.page_content .content_main .check_wrap input[type=radio]:checked + label::before {
  background-image: url(../img/form_radio_gray_selected.svg);
}
.page_content .content_main .radio_wrap.check_01 label::before,
.page_content .content_main .check_wrap.check_01 label::before {
  background-image: url(../img/form_check_gray.svg);
}
.page_content .content_main .radio_wrap.check_01 input[type=checkbox]:checked + label::before,
.page_content .content_main .check_wrap.check_01 input[type=checkbox]:checked + label::before {
  background-image: url(../img/form_check_selected.svg);
}
.page_content .content_main .required {
  position: relative;
}
.page_content .content_main .required .error_msg {
  background: var(--alert-color-red);
  border-radius: 4px;
  color: #fff;
  display: none;
  font-size: 1.2rem;
  left: -1px;
  padding: 3px 10px;
  position: absolute;
  top: calc(100% - 5px);
  z-index: 20;
}
.page_content .content_main .required .error_msg::before {
  border-color: transparent transparent var(--alert-color-red) transparent;
  border-style: solid;
  border-width: 0 6px 6px;
  bottom: 100%;
  content: "";
  height: 0;
  left: 10px;
  position: absolute;
  width: 0;
}
.page_content .content_main .required.error .error_msg {
  display: block;
}
.page_content .content_main .input_wrap {
  background: #fff;
  border: 1px solid var(--form-border-input);
  border-radius: 6px;
  height: 48px;
  position: relative;
}
.page_content .content_main .input_wrap input,
.page_content .content_main .input_wrap select {
  background-color: transparent;
  font-size: 1.4rem;
  height: 100%;
  padding: 5px 10px 5px 12px;
  position: relative;
  width: 100%;
  z-index: 2;
}
.page_content .content_main .input_wrap input::-moz-placeholder, .page_content .content_main .input_wrap select::-moz-placeholder {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap input::placeholder,
.page_content .content_main .input_wrap select::placeholder {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap:has(label) {
  height: 60px;
  position: relative;
}
.page_content .content_main .input_wrap:has(label) label {
  align-items: center;
  color: var(--font-color-black);
  display: flex;
  font-size: 1.2rem;
  left: 12px;
  position: absolute;
  top: 5px;
  z-index: 1;
}
.page_content .content_main .input_wrap:has(label) label span:not(.form_icon) {
  line-height: 1;
}
.page_content .content_main .input_wrap:has(label) label .form_icon {
  margin-left: 5px;
}
.page_content .content_main .input_wrap:has(label) select,
.page_content .content_main .input_wrap:has(label) input {
  padding-top: 25px;
}
.page_content .content_main .input_wrap.calendar {
  border-color: var(--form-border-select);
  box-shadow: 0 0 0 0.5px var(--form-border-select);
}
.page_content .content_main .input_wrap.calendar::after {
  aspect-ratio: 1/1;
  background: url(../img/form_calendar_gray.svg) center center/100% auto no-repeat;
  content: "";
  position: absolute;
  right: 8px;
  top: calc(50% - 8.25px);
  width: 17px;
  z-index: 1;
}
.page_content .content_main .input_wrap.calendar input {
  cursor: pointer;
}
.page_content .content_main .input_wrap.select {
  border-color: var(--form-border-select);
  box-shadow: 0 0 0 0.5px var(--form-border-select);
}
.page_content .content_main .input_wrap.select::after {
  aspect-ratio: 2/1;
  background: url(../img/from_icon_select_gray.svg) center center/100% auto no-repeat;
  content: "";
  position: absolute;
  right: 15px;
  top: calc(50% - 2px);
  width: 8px;
  z-index: 1;
}
.page_content .content_main .input_wrap.select select {
  cursor: pointer;
  position: relative;
  z-index: 2;
}
.page_content .content_main .input_wrap.select select:invalid {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap.select select option {
  /* 2026.01.29 edit */
  color: var(--srch-color-txt-black);
}
.page_content .content_main .input_wrap.textarea {
  height: -webkit-fit-content;
  height: -moz-fit-content;
  height: fit-content;
}
.page_content .content_main .input_wrap.textarea textarea {
  field-sizing: content;
  font-size: 1.4rem;
  height: 100%;
  line-height: 1.57;
  min-height: 100%;
  padding: 12px 15px;
  resize: vertical;
  width: calc(100% - 3px);
}
.page_content .content_main .input_wrap.textarea textarea::-moz-placeholder {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap.textarea textarea::placeholder {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap.notfound .notfound_msg {
  display: block;
}
.page_content .content_main .input_wrap.error:not(.checkbox) {
  background: #ffd6d6;
}
.page_content .content_main .input_wrap.error .error_msg {
  display: block;
}
.page_content .content_main .input_wrap:not(.is_inputed):not(.required) {
  background-color: #f5f5f5;
}
.page_content .content_main .input_wrap:not(.is_inputed):not(.required) input,
.page_content .content_main .input_wrap:not(.is_inputed):not(.required) select {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap:not(.is_inputed):not(.required) .input_clear_btn {
  display: none;
}
.page_content .content_main .input_wrap:not(.is_inputed) input,
.page_content .content_main .input_wrap:not(.is_inputed) select {
  color: var(--form-color-placeholder);
}
.page_content .content_main .input_wrap:not(.is_inputed) .input_clear_btn {
  display: none;
}
.page_content .content_main .input_wrap.is_input {
  z-index: 10;
}
.page_content .content_main .input_wrap.is_input input,
.page_content .content_main .input_wrap.is_input select {
  color: var(--font-color-black);
}
.page_content .content_main .input_wrap.is_inputed input,
.page_content .content_main .input_wrap.is_inputed select {
  color: var(--font-color-black);
}
.page_content .content_main .txt_red {
  color: var(--alert-color-red);
}
.page_content .content_main .alert_box {
  border: 2px solid var(--alert-color-red);
  margin-bottom: 30px;
  padding: 9px 18px;
}
.page_content .content_main .alert_box .box_tit {
  align-items: center;
  color: var(--alert-color-red);
  display: flex;
  font-size: 1.8rem;
  font-weight: 600;
  line-height: 1;
  margin-bottom: 11px;
}
.page_content .content_main .alert_box .box_tit::before {
  aspect-ratio: 1/1;
  background: url(../img/icon_caution_red.svg) center center/100% auto no-repeat;
  content: "";
  margin-right: 5.8px;
  width: 22px;
}
.page_content .content_main .alert_box .box_list {
  margin-left: 5px;
}
.page_content .content_main .alert_box .box_list li {
  font-size: 1.4rem;
  line-height: 1.57;
}
.page_content .content_main .step_wrap {
  margin-bottom: 30px;
}
.page_content .content_main .step_wrap[data-step="1"] .item_inputs {
  align-items: flex-start;
  display: flex;
  flex-wrap: wrap;
  gap: 18px 14px;
  margin-top: 13px;
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="1"] .item_inputs .check_wrap {
  display: inline-flex;
  width: auto;
}
.page_content .content_main .step_wrap[data-step="1"] .item_inputs .input_wrap {
  display: none;
}
.page_content .content_main .step_wrap[data-step="1"] .item_inputs:has([data-detail=inp_1]:checked) .input_wrap.inp_1 {
  display: block;
}
.page_content .content_main .step_wrap[data-step="2"] .item_wrap {
  position: relative;
}
.page_content .content_main .step_wrap[data-step="2"] .item_inputs {
  display: flex;
  gap: 0 10px;
}
.page_content .content_main .step_wrap[data-step="2"] .item_inputs .input_wrap {
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns {
  margin-top: 20px;
  position: relative;
  text-align: center;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn {
  align-items: center;
  background-color: var(--color-primary);
  color: #fff;
  display: flex;
  font-weight: 600;
  justify-content: center;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn::before {
  aspect-ratio: 1/1;
  background: url(../img/form_btn_plus_white.svg) center center/100% auto no-repeat;
  content: "";
  width: 13.5px;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn span {
  flex: 1;
  padding-left: 10px;
  text-align: left;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn span::before {
  content: "目的地を";
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn.hide {
  display: none;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn {
  align-items: center;
  background-color: #b4b4b4;
  color: #fff;
  display: flex;
  font-weight: 600;
  justify-content: center;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn::before {
  aspect-ratio: 1/1;
  background: url(../img/form_btn_minus_white.svg) center center/100% auto no-repeat;
  content: "";
  width: 13.5px;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn span {
  flex: 1;
  padding-left: 10px;
  text-align: left;
}
.page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn.hide {
  display: none;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.name .item_inputs {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.name .input_wrap {
  width: calc(50% - 5px);
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.radio_list {
  border-left: 1px solid var(--border-color-gray-lighter);
  padding: 0 0 5px 15px;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.radio_list .radio_wrap:not(:first-of-type) {
  margin-top: clamp(6px, 3.2vw, 12px);
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.check_list {
  display: flex;
  flex-wrap: wrap;
  gap: 13px 15px;
  margin-bottom: 20px;
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.check_list .check_wrap {
  width: auto;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .req_detail {
  display: none;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .req_detail .attention_txt {
  font-size: clamp(8px, 2.67vw, 1rem);
  margin-top: 8px;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .req_detail.req_1 {
  margin-top: 15px;
}
.page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req:has([data-detail=req_1]:checked) .req_detail.req_1, .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req:has([data-detail=req_2]:checked) .req_detail.req_2 {
  display: block;
}
.page_content .content_main .step_wrap[data-step="4"] .item_inputs {
  max-width: 344px;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.dep_airport .item_inputs {
  max-width: 344px;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days .item_inputs {
  display: flex;
  justify-content: space-between;
  max-width: 344px;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days .input_wrap {
  width: calc(50% - 5px);
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .item_inputs.radio_list {
  border-left: 1px solid var(--border-color-gray-lighter);
  padding: 3px 0 5px 15px;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .item_inputs.radio_list:has([data-detail=req]:checked) .req_detail.req {
  display: block;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .radio_wrap + .radio_wrap {
  margin-top: 13px;
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .input_wrap.textarea textarea {
  height: clamp(45px, 24vw, 90px);
}
.page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .req_detail {
  display: none;
  margin-top: clamp(7.5px, 4vw, 15px);
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.bugget .item_inputs {
  align-items: center;
  display: flex;
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.bugget .item_inputs p {
  font-size: clamp(7px, 3.73vw, 1.4rem);
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.bugget .input_wrap {
  margin: 0 clamp(5px, 3.2vw, 10px);
  width: clamp(83.5px, 40vw, 167px);
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people {
  margin-bottom: clamp(17.5px, 8.8vw, 35px);
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .item_inputs {
  align-items: center;
  display: flex;
  margin-bottom: 20px;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .attention_txt {
  font-size: clamp(6px, 2.93vw, 1.2rem);
  left: 0;
  letter-spacing: 0em;
  margin-top: clamp(2.5px, 1.07vw, 5px);
  position: absolute;
  text-align: center;
  top: 100%;
  width: 100%;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age > .item_inputs {
  border-left: 1px solid var(--border-color-gray-lighter);
  padding: 5px 0 5px 15px;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age .age_wrap .item_inputs {
  align-items: center;
  display: flex;
  gap: 15px;
  flex-wrap: wrap;/*mochiki add*/
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age .age_wrap + .age_wrap {
  margin-top: 15px;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age .age_select {
  align-items: center;
  display: flex;
}
.page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age .age_select .input_wrap {
  margin-left: 8px;
  width: 75px;
}
.page_content .content_main .step_title {
  align-items: center;
  background-color: var(--bg-color-primary);
  color: var(--font-color-black);
  display: flex;
  font-size: 1.7rem;
  font-weight: 600;
  height: 60px;
  margin-bottom: 14px;
  padding: 0 20px;
}
.page_content .content_main .step_title::before {
  align-items: center;
  aspect-ratio: 1/1;
  background-color: var(--color-primary-d);
  border-radius: 100vmax;
  color: #fff;
  content: counter(step_m_number);
  counter-increment: step_m_number;
  display: flex;
  font-family: var(--font-en);
  font-size: 1.2rem;
  font-weight: 500;
  justify-content: center;
  line-height: 20px;
  margin-right: 7px;
  width: 20px;
}
.page_content .content_main .step_title .form_icon {
  margin-left: 6px;
}
.page_content .content_main .assist_wrap {
  margin-bottom: 16px;
  min-height: 46px;
  padding-left: 60px;
  position: relative;
}
.page_content .content_main .assist_wrap .icon {
  aspect-ratio: 1/1;
  left: 0;
  overflow: hidden;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
}
.page_content .content_main .assist_wrap .icon img {
  height: auto;
  left: 50%;
  position: absolute;
  top: 0;
  transform: translateX(-50%);
  width: 100%;
}
.page_content .content_main .assist_wrap .txt {
  border: 2px solid var(--color-accent);
  border-radius: 4.8px;
  display: inline-block;
  font-feature-settings: "palt" 1;
  font-size: 1.3rem;
  font-weight: 600;
  letter-spacing: 0.06em;
  line-height: 1.31;
  padding: 10px 18px 10px 15px;
  position: relative;
  text-align: justify;
}
.page_content .content_main .assist_wrap .txt::before {
  border-color: transparent var(--color-accent) transparent transparent;
  border-style: solid;
  border-width: 9px 9px 9px 0;
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  translate: -100% -50%;
}
.page_content .content_main .assist_wrap .txt::after {
  border-color: transparent #ffffff transparent transparent;
  border-style: solid;
  border-width: 6px 6px 6px 0;
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  translate: -100% -50%;
}
.page_content .content_main .item_wrap + .item_wrap {
  margin-top: 22px;
}
.page_content .content_main .item_label {
  align-items: center;
  color: var(--font-color-black);
  display: flex;
  font-feature-settings: "palt" 1;
  font-weight: 600;
  letter-spacing: 0.06em;
  text-align: justify;
}
.page_content .content_main .item_label span:not(.form_icon) {
  line-height: 17px;
}
.page_content .content_main .item_label .form_icon {
  margin-left: 6px;
}
.page_content .content_main .item_label .attention_txt {
  font-weight: 400;
  margin-left: 10px;
  margin-top: 0;
}
.page_content .content_main .form_icon {
  align-items: center;
  border-radius: 100vmax;
  color: #fff;
  display: inline-flex;
  font-size: 1rem;
  height: 17px;
  justify-content: center;
  line-height: 17px;
  width: 30px;
}
.page_content .content_main .form_icon.icon_req {
  background-color: var(--alert-color-red);
}
.page_content .content_main .form_icon.icon_any {
  background-color: var(--color-primary);
}
.page_content .content_main .form_btn.submit {
  align-items: center;
  background-color: var(--btn-color-accent);
  border-radius: 100vmax;
  display: flex;
  font-size: 2rem;
  font-weight: 600;
  height: 72px;
  justify-content: center;
  margin: 13px auto 0;
  max-width: 460px;
  width: 100%;
}
.page_content .content_main .form_btn.submit {
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.page_content .content_main .form_btn.submit:disabled {
  background: var(--form-btn-disabled);
  color: #fff;
  pointer-events: none;
}
.page_content .content_main .attention_txt {
  font-feature-settings: "palt" 1;
  font-size: 1.2rem;
  letter-spacing: 0.06em;
  margin-top: 10px;
  text-align: justify;
}
.page_content .content_main .btm_wrap .assist_wrap .icon {
  top: 0;
  transform: translateY(0);
}
.page_content .content_main .btm_wrap .assist_wrap .txt {
  display: block;
}
.page_content .content_main .btm_wrap .assist_wrap .txt::before {
  top: 9px;
  translate: -100% 0;
}
.page_content .content_main .btm_wrap .assist_wrap .txt::after {
  top: 12px;
  translate: -100% 0;
}
.page_content .content_main .coupon_wrap .coupon_btn {
  align-items: center;
  background: var(--bg-color-accent);
  border: 2px solid var(--color-accent);
  border-radius: 6px;
  color: var(--font-color-black);
  display: flex;
  font-size: clamp(10px, 2.67vw, 1.2rem);
  font-weight: 600;
  height: clamp(18px, 8vw, 36px);
  justify-content: center;
  line-height: 1;
  margin-left: auto;
  width: clamp(88.5px, 39.47vw, 177px);
}
.page_content .content_main .coupon_wrap .coupon_btn::after {
  aspect-ratio: 1/1;
  background: var(--color-primary) url(../img/form_btn_plus_white.svg) center center/42.11% auto no-repeat;
  border-radius: 19px;
  content: "";
  margin-left: 4px;
  width: 19px;
}
.page_content .content_main .coupon_wrap .coupon_input {
  display: none;
  margin-top: clamp(5px, 1.33vw, 8px);
}
.page_content .content_main .coupon_wrap .coupon_input p {
  font-size: clamp(6.5px, 2.93vw, 1.3rem);
  line-height: 1.54;
}
.page_content .content_main .coupon_wrap .coupon_input .input_wrap {
  margin-left: auto;
  margin-top: 3px;
  max-width: 250px;
  width: 74.63%;
}
.page_content .content_main .coupon_wrap .coupon_input.is_open {
  display: block;
}
.page_content .content_main .coupon_wrap:has(.coupon_input.is_open) .coupon_btn::after {
  background-image: url(../img/form_btn_minus_white.svg);
}
.page_content .content_main .agree_wrap {
  text-align: center;
}
.page_content .content_main .agree_wrap .txt {
  color: var(--font-color-gray-d);
  font-size: clamp(6.5px, 2.93vw, 1.3rem);
  line-height: 1.31;
  margin-bottom: clamp(4px, 2.67vw, 12px);
}
.page_content .content_main .agree_wrap .txt a {
  color: var(--font-color-blue);
  text-decoration: underline;
}
.page_content .content_main .agree_wrap .input_wrap {
  align-items: center;
  border: 0;
  display: inline-flex;
  height: auto;
  justify-content: center;
}
.page_content .content_main .agree_wrap .input_wrap .check_wrap {
  margin-right: 3px;
  width: auto;
}
.page_content .content_main .agree_wrap .input_wrap label {
  color: var(--font-color);
  font-size: clamp(7.5px, 3.2vw, 1.5rem);
  font-weight: 600;
  position: static;
}
.page_content .content_main .agree_wrap .input_wrap label::before {
  background-image: url(../img/form_check_bold_gray.svg);
}
.page_content .content_main .agree_wrap .input_wrap.error .error_msg {
  left: -5px;
  top: 100%;
}

.freo_modal {
  color: var(--font-color);
  height: var(--tw-win-vh, 100dvh);
  left: 0;
  opacity: 0;
  pointer-events: none;
  position: fixed;
  top: 0;
  transition: all 0.3s ease;
  visibility: hidden;
  width: 100vw;
  will-change: opacity, visibility, z-index;
  z-index: 400;
}
.freo_modal_box {
  background: #fff;
  z-index: 2;
}
.freo_modal_box_head {
  align-items: center;
  background-color: var(--color-primary);
  border-radius: 12px 12px 0 0;
  color: #fff;
  display: flex;
  height: 50px;
  justify-content: center;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 2;
}
.freo_modal_box_head .head_title {
  font-size: 1.7rem;
  font-weight: 600;
  line-height: 1.75;
}
.freo_modal_box_body {
  overflow: hidden auto;
  position: relative;
  z-index: 1;
}
.freo_modal_box_foot {
  align-items: center;
  border-top: 1px solid var(--modal-border-color);
  bottom: 0;
  display: flex;
  justify-content: center;
  left: 0;
  position: absolute;
  width: 100%;
  z-index: 2;
}
.freo_modal_box_foot .btn_wrap {
  align-items: center;
  display: flex;
  justify-content: center;
  position: relative;
  width: 100%;
}
.freo_modal_box_foot .btn_wrap button {
  align-items: center;
  cursor: pointer;
  display: flex;
  justify-content: center;
  transition: opacity 0.3s ease;
}
.freo_modal_box_foot .btn_wrap .btn_clear {
  background: #fff;
  border: 1px solid #b4b4b4;
  border-radius: 25px;
  font-size: 1.2rem;
  height: 25px;
  margin-right: 102px;
  position: absolute;
  right: 50%;
  top: calc(50% - 12px);
  width: 71px;
}
.freo_modal_box_foot .btn_wrap .btn_submit {
  background: var(--color-primary);
  border-radius: 42px;
  color: #fff;
  font-size: 1.4rem;
  font-weight: 600;
  height: 42px;
  line-height: 1.5;
  width: 186px;
}
.freo_modal_box_foot .btn_wrap .btn_submit:disabled {
  background: var(--form-btn-disabled);
  pointer-events: none;
}
.freo_modal_close {
  aspect-ratio: 1/1;
  background: url(../img/modal_close.svg) center center/100% auto no-repeat;
  font-size: 0;
  overflow: hidden;
  position: absolute;
  right: -10px;
  top: -10px;
  width: 30px;
  z-index: 3;
}
.freo_modal_overlay {
  background: rgba(0, 0, 0, 0.7);
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
  z-index: 1;
}
.freo_modal.is_open {
  opacity: 1;
  pointer-events: auto;
  visibility: visible;
  z-index: 400;
}
.freo_modal.modal_days .freo_modal_box .select_panel {
  position: relative;
}
.freo_modal.modal_days .freo_modal_box .nav_wrap .nav_arr {
  aspect-ratio: 1/1;
  background: #fff url(../img/arr_02_black.svg) center center/31.58% auto no-repeat;
  border: 1px solid #000;
  border-radius: 38px;
  display: block;
  font-size: 0;
  overflow: hidden;
  position: absolute;
  top: calc(50% - 19px);
  transform: translateY(-50%);
  width: 38px;
  z-index: 20;
}
.freo_modal.modal_days .freo_modal_box .nav_wrap .nav_arr.prev {
  left: 6px;
  transform: rotate(90deg);
}
.freo_modal.modal_days .freo_modal_box .nav_wrap .nav_arr.next {
  right: 6px;
  transform: rotate(-90deg);
}
.freo_modal.modal_days .freo_modal_box .nav_wrap .nav_arr.disabled {
  opacity: 0.45;
  pointer-events: none;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap {
  position: relative;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .head_title {
  font-size: 1.8rem;
  font-weight: 600;
  margin-bottom: 7px;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .head_title .month {
  margin-left: 5px;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week {
  display: flex;
  margin: 0 -1px;
  width: calc(100% + 2px);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div {
  align-items: center;
  color: var(--form-btn-disabled);
  display: flex;
  font-family: var(--font-en);
  font-size: 1.6rem;
  height: 34px;
  justify-content: center;
  margin: 0 1px;
  position: relative;
  width: calc(14.2857142857% - 2px);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.selectable {
  color: var(--font-color);
  cursor: pointer;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div:first-of-type.selectable, .freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.holiday.selectable {
  color: var(--font-color-red);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div:last-of-type.selectable {
  color: var(--font-color-blue);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.is_selected {
  background: var(--bg-color-primary);
  border: 1px solid var(--color-primary);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head {
  border-bottom: 1px solid var(--modal-border-color);
  margin-bottom: 2px;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head > div {
  color: var(--font-color);
  font-size: 1.2rem;
  height: 25px;
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head > div:first-of-type {
  color: var(--font-color-red);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head > div:last-of-type {
  color: var(--font-color-blue);
}
.freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_body {
  margin-top: 2px;
}
.freo_modal.modal_reason .freo_modal_box_head {
  background-color: var(--color-accent);
}
.freo_modal.modal_reason .freo_modal_box_head .head_title {
  color: var(--font-color-black);
}
.freo_modal.modal_reason .freo_modal_box_body {
  overflow-y: auto;
}
.freo_modal.modal_reason .freo_modal_box_body .txt_wrap p {
  font-feature-settings: "palt" 1;
  font-size: 1.3rem;
  letter-spacing: 0.06em;
  line-height: 1.77;
  text-align: justify;
}
.freo_modal.modal_reason .freo_modal_box_body .txt_wrap p b {
  font-weight: 600;
}
.freo_modal.modal_reason .freo_modal_box_body .txt_wrap p + p {
  margin-top: 16px;
}
.freo_modal.modal_reason .freo_modal_box_body .txt_wrap p.tit {
  color: var(--font-color-black);
  font-size: 1.6rem;
  font-weight: 600;
  line-height: 1.69;
  margin-bottom: 16px;
}
.freo_modal.modal_reason .freo_modal_box_body .img_wrap .img {
  aspect-ratio: 220/270;
  border-radius: 20px;
  display: block;
  overflow: hidden;
  position: relative;
  width: 100%;
}
.freo_modal.modal_reason .freo_modal_box_body .img_wrap .img img {
  left: 50%;
  position: absolute;
  top: 50%;
  transform: translate(-50%, -50%);
  -o-object-fit: cover;
     object-fit: cover;
}

.page_head {
  color: var(--font-color);
  position: relative;
}
.page_head .hero_title {
  display: block;
  position: relative;
  text-align: center;
  z-index: 1;
}
.page_head .hero_point {
  background-color: #fff;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  max-width: 450px;
  width: 33.09%;
}
.page_head .hero_point .point_item {
  display: flex;
  flex-direction: column;
  justify-content: space-between;
}
.page_head .hero_point .point_item li {
  align-items: center;
  color: var(--font-color-black);
  display: flex;
  position: relative;
}
.page_head .hero_point .point_item li:first-of-type {
  margin-top: clamp(2.5px, 1.33vw, 5px);
}
.page_head .hero_point .point_item li span {
  font-size: clamp(1.2rem, 1.1vw, 1.5rem);
  line-height: 1;
  padding-left: 30px;
}
.page_head .hero_point .point_item li::before {
  aspect-ratio: 26/25;
  background-repeat: no-repeat;
  content: "";
  left: 0;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  width: 25px;
}
.page_head .hero_point .point_item li:nth-of-type(1)::before {
  background-image: url(../img/point_ico_01.svg);
  background-position: center center;
  background-size: auto 64%;
}
.page_head .hero_point .point_item li:nth-of-type(2)::before {
  background-image: url(../img/point_ico_02.svg);
  background-position: center 25%;
  background-size: auto 72%;
}
.page_head .hero_point .point_item li:nth-of-type(3)::before {
  background-image: url(../img/point_ico_03.svg);
  background-position: center top;
  background-size: auto 100%;
}
.page_head .hero_point .point_btn {
  align-items: center;
  aspect-ratio: 110/83;
  background-color: var(--btn-color-accent);
  border-radius: 16.5px;
  color: var(--font-color-black);
  display: flex;
  padding-left: 12px;
  position: relative;
  width: 26.57%;
}
.page_head .hero_point .point_btn span {
  font-size: clamp(1rem, 0.88vw, 1.2rem);
  font-weight: 600;
  line-height: 1.67;
}
.page_head .hero_point .point_btn::after {
  aspect-ratio: 1/1;
  background: #fff url(../img/arr_01_black.svg) center center/47.06% auto no-repeat;
  border-radius: 100vmax;
  bottom: 13.25%;
  content: "";
  position: absolute;
  right: 10%;
  width: clamp(1rem, 1.25vw, 1.7rem);
}
.page_head .hero_point .point_btn {
  cursor: pointer;
  transition: opacity 0.3s ease;
}
.page_head .hero_point .point_contact {
  background-color: var(--bg-color-gray);
}
.page_head .hero_point .point_contact .contact_txt {
  color: var(--font-color-black);
  font-size: clamp(0.8rem, 0.81vw, 1.1rem);
  line-height: 1.36;
}
.page_head .hero_point .point_contact .contact_tel {
  align-items: center;
  display: flex;
}
.page_head .hero_point .point_contact .contact_tel .tel_num {
  color: var(--font-color-gray);
  font-family: var(--font-en);
  font-size: clamp(1.1rem, 1.62vw, 2.2rem);
  font-weight: 600;
}
.page_head .hero_start_btn::after {
  aspect-ratio: 13/6;
  background: url(../img/arr_02_black.svg) center center/100% auto no-repeat;
  content: "";
  opacity: 1;
  transition: opacity 0.3s ease;
  width: 13px;
}
.page_head .hero_start_btn .txt_01 {
  display: flex;
  gap: 0 clamp(0.5rem, 0.74vw, 1rem);
  opacity: 1;
  transition: opacity 0.3s ease;
}
.page_head .hero_start_btn .txt_01 span {
  align-items: center;
  background-color: var(--bg-color-gray);
  border-radius: 3.75px;
  color: var(--font-color-gray);
  display: flex;
  font-size: clamp(1rem, 1.1vw, 1.5rem);
  font-weight: 600;
  height: 30px;
  justify-content: center;
  width: clamp(7.1rem, 10.44vw, 14.2rem);
}
.page_head .hero_start_btn .txt_02 {
  color: var(--font-color-black);
  display: block;
  font-weight: 700;
  letter-spacing: 0.06em;
  opacity: 1;
  transition: opacity 0.3s ease;
}
.page_head .hero_att_txt {
  display: flex;
}
.page_head .hero_att_txt dt {
  align-items: center;
  border: 1px solid var(--color-primary-d);
  color: var(--color-primary-d);
  display: flex;
  font-size: 1.1rem;
  font-weight: 600;
  height: 19px;
  justify-content: center;
  line-height: 19px;
  width: 45px;
}
.page_head .hero_att_txt dd {
  font-size: 1.2rem;
  padding-left: 8px;
}
.page_head .hero_att_txt dd a {
  color: var(--font-color-blue);
  text-decoration: underline;
}
@media screen and (max-width: 1200px) and (min-width: 961px){
  .page_head .hero_point {
    left: 38.33%;
  }
  .page_head .hero_start_btn {
    left: 38.33%;
  }
  .page_head .hero_att_txt {
    left: 38.33%;
  }
}
@media screen and (max-width: 1200px){
  .page_content .content_side::after {
    margin-left: 0;
    width: calc(100% + var(--content-margin));
  }
}
@media screen and (max-width: 960px) and (min-width: 601px){
  .page_content .content_main .btm_wrap .assist_wrap {
    margin: 0 auto;
    width: 81.08%;
  }
}
@media screen and (max-width: 960px){
  .vpc960 {
    display: none;
  }
  .page_content .content_side::after {
    display: none;
  }
  .page_content .content_main {
    padding: 0 var(--content-margin) clamp(40px, 13.33vw, 80px);
  }
  .page_content .content_side .side_title {
    display: none;
  }
  .page_content .content_side .side_title {
    display: none;
  }
  .page_content .content_side .side_sticky {
    display: grid;
    gap: clamp(7.5px, 4vw, 15px) 3.58%;
    grid-template-columns: 32.24% 62.69%;
    margin: 0 auto;
    max-width: calc(450px + var(--content-margin) * 2);
    padding: clamp(12.75px, 6.67vw, 25px) var(--content-margin) clamp(15px, 8vw, 30px);
    width: 100%;
  }
  .page_content .content_side .assist_wrap {
    display: contents;
  }
  .page_content .content_side .assist_wrap .txt_01 {
    border: 2px solid #ffc300;
    border-radius: 6px;
    display: flex;
    flex-direction: column;
    grid-column: 1/2;
    grid-row: 1/2;
    justify-content: center;
    margin-bottom: clamp(30px, 16vw, 60px);
    padding: 0 clamp(5px, 2.67vw, 10px);
    position: relative;
  }
  .page_content .content_side .assist_wrap .txt_01 .txt {
    display: block;
    font-feature-settings: "palt" 1;
    letter-spacing: 0.04em;
    text-align: justify;
  }
  .page_content .content_side .assist_wrap .txt_01 .txt + span:not(.icon) {
    margin-top: clamp(7.5px, 4vw, 15px);
  }
  .page_content .content_side .assist_wrap .txt_01 .icon {
    left: 50%;
    margin-top: clamp(9.5px, 5.07vw, 19px);
    top: 100%;
    transform: translateX(-50%);
    width: clamp(22.5px, 12vw, 45px);
  }
  .page_content .content_side .assist_wrap .txt_01::before {
    border-color: #ffc300 transparent transparent;
    border-style: solid;
    border-width: 8px 8px 0 8px;
    bottom: 0;
    content: "";
    left: 50%;
    position: absolute;
    translate: -50% 100%;
  }
  .page_content .content_side .assist_wrap .txt_01::after {
    border-color: #ffffff transparent transparent;
    border-style: solid;
    border-width: 5.2px 5.2px 0 5.2px;
    bottom: 0;
    content: "";
    left: 50%;
    position: absolute;
    translate: -50% 100%;
  }
  .page_content .content_side .assist_wrap .txt_02 {
    grid-column: 1/3;
    grid-row: 2/3;
    text-align: center;
  }
  .page_content .content_side .step_wrap {
    background-color: var(--bg-color-gray-light);
    border-radius: 10px;
    grid-column: 2/3;
    grid-row: 1/2;
    padding: clamp(10px, 5.6vw, 21px);
  }
  .page_content .content_side .step_wrap li p {
    padding-left: clamp(4px, 1.87vw, 7px);
  }
  .page_content .content_side .step_wrap li::before {
    align-items: center;
    aspect-ratio: 1/1;
    background-color: var(--color-primary-d);
    border-radius: 100vmax;
    color: #fff;
    content: "" counter(step_number) "";
    display: flex;
    font-size: clamp(6.25px, 3.33vw, 1.25rem);
    justify-content: center;
    line-height: 1;
    width: clamp(9px, 4.8vw, 18px);
  }
  .page_content .content_side .step_wrap li + li {
    margin-top: clamp(7px, 3.73vw, 14px);
  }
  .page_content .content_main .input_wrap {
    height: clamp(25px, 13.33vw, 50px);
  }
  .page_content .content_main .input_wrap.select::after {
    right: 13px;
  }
  .page_content .content_main .alert_box {
    margin-bottom: clamp(15px, 6.67vw, 30px);
    padding: clamp(4.5px, 2.27vw, 9px) clamp(5.5px, 2.93vw, 11px);
  }
  .page_content .content_main .alert_box .box_tit {
    font-size: clamp(8.75px, 4.53vw, 17.5px);
    margin-bottom: clamp(5px, 2.67vw, 10px);
  }
  .page_content .content_main .alert_box .box_tit::before {
    margin-right: clamp(3px, 1.6vw, 6px);
    width: clamp(11px, 5.87vw, 22px);
  }
  .page_content .content_main .alert_box .box_list {
    margin-left: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .alert_box .box_list li {
    font-size: clamp(7px, 3.2vw, 14px);
    line-height: 1.67;
  }
  .page_content .content_main .step_wrap {
    margin-bottom: clamp(17.5px, 9.33vw, 35px);
  }
  .page_content .content_main .step_wrap:last-of-type {
    margin-bottom: 0;
  }
  .page_content .content_main .step_wrap[data-step="1"] .item_inputs {
    gap: clamp(8px, 3.07vw, 16px);
    margin-top: clamp(8px, 3.07vw, 16px);
  }
  .page_content .content_main .step_wrap[data-step="1"] .item_inputs .input_wrap {
    width: 100%;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_wrap:not(.dest) {
    border-top: 0;
    margin-top: 0;
    padding-top: 0;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_wrap:not(.dest) .item_btns {
    display: none;
  }
  .page_content .content_main .step_wrap[data-step="3"] .item_wrap .input_wrap {
    min-height: clamp(150px, 80vw, 300px);
  }
  .page_content .content_main .step_wrap[data-step="3"] .item_wrap .input_wrap textarea {
    min-height: clamp(150px, 80vw, 300px);
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req {
    border-top: 0;
    padding-top: 0;
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.radio_list {
    padding-bottom: clamp(2.5px, 1.33vw, 5px);
    padding-top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .item_inputs.check_list {
    margin-bottom: clamp(10px, 5.33vw, 20px);
    margin-top: clamp(5px, 2.67vw, 10px);
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .req_detail .attention_txt {
    margin-top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.contact_req .req_detail.req_1 {
    margin-top: clamp(7.5px, 4vw, 15px);
  }
  .page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex {
    border-top: 0;
    padding-top: 0;
  }
  .page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .item_inputs.radio_list {
    padding-bottom: clamp(2.5px, 1.33vw, 5px);
    padding-top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .step_wrap[data-step="5"] .item_wrap.days_flex .radio_wrap + .radio_wrap {
    margin-top: clamp(6px, 3.2vw, 12px);
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age {
    border-top: 0;
    margin-top: clamp(15px, 8.8vw, 33px);
    padding-top: 0;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age > .item_inputs {
    padding-bottom: clamp(2.5px, 1.33vw, 5px);
    padding-top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_msg {
    border-top: 0;
    padding-top: 0;
  }
  .page_content .content_main .step_title {
    font-size: clamp(8.5px, 4.53vw, 1.7rem);
    height: clamp(30px, 16vw, 60px);
    margin: 0 calc(var(--content-margin) * -1) clamp(10px, 4vw, 20px);
    padding: 0 var(--content-margin);
    width: calc(100% + var(--content-margin) * 2);
  }
  .page_content .content_main .step_title::before {
    font-size: clamp(6px, 3.33vw, 1.2rem);
    line-height: clamp(6px, 3.33vw, 1.2rem);
    margin-right: clamp(4px, 0.93vw, 7px);
    width: clamp(10px, 5.33vw, 20px);
  }
  .page_content .content_main .step_title .form_icon {
    margin-left: clamp(4.5px, 2.4vw, 9px);
  }
  .page_content .content_main .assist_wrap {
    margin-bottom: clamp(8px, 4vw, 16px);
    min-height: clamp(23px, 10.67vw, 46px);
    padding-left: clamp(27.5px, 14.67vw, 55px);
  }
  .page_content .content_main .assist_wrap .icon {
    width: clamp(23px, 10.67vw, 46px);
  }
  .page_content .content_main .assist_wrap .txt {
    border-radius: 6px;
    font-size: clamp(11px, 2.93vw, 1.3rem);
    padding: clamp(4.5px, 2.4vw, 9px) clamp(5px, 2.67vw, 10px) clamp(3.5px, 1.87vw, 7px);
  }
  .page_content .content_main .assist_wrap .txt::before {
    border-width: 10px 10px 10px 0;
  }
  .page_content .content_main .assist_wrap .txt::after {
    border-width: 7px 7px 7px 0;
  }
  .page_content .content_main .assist_wrap .txt:has(.form_icon) {
    display: inline-flex;
    justify-content: space-between;
  }
  .page_content .content_main .assist_wrap .txt:has(.form_icon) > span:not(.form_icon) {
    flex: 1;
    padding-right: 10px;
  }
  .page_content .content_main .item_wrap + .item_wrap {
    border-top: 1px solid var(--border-color-gray-lighter);
    margin-top: clamp(8px, 4.27vw, 16px);
    padding-top: clamp(8px, 3.73vw, 14px);
  }
  .page_content .content_main .form_btn.submit {
    font-size: clamp(10px, 4.53vw, 2rem);
    height: clamp(35px, 18.67vw, 72px);
    margin-top: clamp(8px, 5.33vw, 20px);
  }
  .page_content .content_main .attention_txt {
    font-size: clamp(10px, 2.93vw, 1.2rem);
  }
  .page_content .content_main .btm_wrap {
    margin-top: clamp(10px, 5.07vw, 20px);
  }
  .page_content .content_main .btm_wrap .assist_wrap .icon {
    top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .btm_wrap .assist_wrap .txt::before {
    top: calc(clamp(11.5px, 5.33vw, 23px) * 0.5 - 3px + clamp(2.5px, 1.33vw, 5px));
  }
  .page_content .content_main .btm_wrap .assist_wrap .txt::after {
    top: calc(clamp(11.5px, 5.33vw, 23px) * 0.5 + clamp(2.5px, 1.33vw, 5px));
  }
  .page_content .content_main .coupon_wrap {
    margin-bottom: clamp(17.5px, 9.33vw, 35px);
  }
  .page_content .content_main .coupon_wrap .coupon_input .input_wrap {
    margin-top: clamp(2.5px, 1.33vw, 5px);
  }
  .page_content .content_main .agree_wrap {
    margin-top: clamp(7.5px, 4vw, 15px);
  }
  .page_content .content_main .agree_wrap .input_wrap {
    justify-content: center;
  }
  .freo_modal_box_foot {
    align-items: center;
    border-top: 1px solid var(--modal-border-color);
    display: flex;
    height: 70px;
    justify-content: center;
    padding: 0 var(--content-margin);
  }
  .freo_modal.modal_days .freo_modal_box_body {
    padding: 20px 30px 85px;
  }
  .freo_modal.modal_days .freo_modal_box .nav_wrap .nav_arr {
    top: calc(50% - 15px);
    width: 30px;
  }
  .page_head .hero_title img {
    width: 100%;
  }
  .page_head .hero_point {
    margin: clamp(7.5px, 4vw, 15px) auto 0;
    width: 89.33vw;
  }
  .page_head .hero_point .point_item li span {
    font-size: clamp(7.5px, 3.73vw, 18px);
    padding-left: clamp(15px, 8vw, 30px);
  }
  .page_head .hero_point .point_item li::before {
    width: clamp(12.5px, 6.67vw, 25px);
  }
  .page_head .hero_point .point_btn {
    border-radius: clamp(7.5px, 4vw, 15px);
    padding-left: clamp(6px, 3.2vw, 12px);
    width: clamp(50px, 26.67vw, 120px);
  }
  .page_head .hero_point .point_btn span {
    font-size: clamp(5.25px, 2.8vw, 14px);
  }
  .page_head .hero_point .point_btn::after {
    width: clamp(8px, 4.27vw, 16px);
  }
  .page_head .hero_point .point_contact {
    border-radius: 7.5px;
    display: grid;
    grid-template-columns: 30% 1fr;
    margin-top: clamp(8px, 5.33vw, 20px);
    padding: 0 3.36%;
    padding: clamp(5px, 2.67vw, 8px) clamp(6.5px, 3.47vw, 13px);
    width: 100%;
  }
  .page_head .hero_point .point_contact .contact_txt {
    align-items: center;
    display: flex;
    font-size: clamp(5.75px, 3.07vw, 15px);
    grid-column: 1/2;
    grid-row: 1/3;
  }
  .page_head .hero_point .point_contact .contact_tel {
    grid-column: 2/3;
    grid-row: 1/2;
    justify-content: space-between;
  }
  .page_head .hero_point .point_contact .contact_tel .tel_num {
    font-size: clamp(11px, 5.87vw, 30px);
  }
  .page_head .hero_point .point_contact .contact_tel .tel_link {
    align-items: center;
    background-color: #fff;
    border: 1px solid var(--border-color-gray);
    border-radius: 100vmax;
    color: var(--font-color-gray);
    display: flex;
    font-size: clamp(4.75px, 2.53vw, 13px);
    gap: clamp(1.5px, 0.8vw, 4px);
    height: clamp(11px, 5.87vw, 30px);
    justify-content: center;
    line-height: 1;
    width: clamp(34px, 18.13vw, 95px);
  }
  .page_head .hero_point .point_contact .contact_tel .tel_link::before {
    aspect-ratio: 1/1;
    background-image: url(../img/icon_tel_gray.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    content: "";
    content: "";
    width: clamp(4.75px, 2.53vw, 11px);
  }
  .page_head .hero_point .point_contact .contact_time {
    font-size: clamp(4.75px, 2.53vw, 13px);
    grid-column: 2/3;
    grid-row: 2/3;
  }
  .page_head .hero_start_btn {
    background-color: var(--color-primary);
    border-radius: 30px 30px 0 0;
    display: block;
    height: 98px;
    margin-top: clamp(11.125px, 6.67vw, 25px);
    padding-top: clamp(5px, 2.67vw, 10px);
  }
  .page_head .hero_start_btn::after {
    aspect-ratio: 90/23;
    background: url(../img/step_arr_next_white.svg) center center/100% auto no-repeat;
    display: block;
    margin: 0 auto;
    width: clamp(2.25px, 12vw, 45px);
  }
  .page_head .hero_start_btn .txt_01 {
    gap: 0 clamp(3.5px, 1.87vw, 7px);
    justify-content: center;
    margin-bottom: clamp(5.5px, 2.93vw, 11px);
  }
  .page_head .hero_start_btn .txt_01 span {
    border-radius: 5px;
    font-size: clamp(5px, 2.67vw, 10px);
    height: clamp(10px, 5.33vw, 20px);
    width: clamp(47.5px, 25.33vw, 95px);
  }
  .page_head .hero_start_btn .txt_02 {
    color: #fff;
    font-size: clamp(8.75px, 4.67vw, 21px);
    line-height: 1;
    margin-bottom: clamp(7px, 3.73vw, 14px);
    text-align: center;
  }
  .page_head .hero_att_txt {
    margin: clamp(2.75px, 1.53vw, 5.5px) auto 0;
    max-width: 450px;
    width: clamp(86.67%, 89.33vw, 100%);
  }
  .page_head .hero_att_txt dt {
    font-size: clamp(9px, 2.4vw, 11px);
    height: clamp(16px, 4.27vw, 19px);
    line-height: clamp(16px, 4.27vw, 19px);
    width: clamp(37.5px, 10vw, 45px);
  }
  .page_head .hero_att_txt dd {
    font-size: clamp(10px, 2.67vw, 12px);
    padding-left: clamp(7px, 1.87vw, 8px);
  }
}
@media screen and (max-width: 600px){
  :root {
    --content-margin: 5.33vw;
  }
  .vpc600 {
    display: none;
  }
  .page_content .content_main .radio_wrap label,
  .page_content .content_main .check_wrap label {
    font-size: 3.73vw;
    line-height: 5.87vw;
  }
  .page_content .content_main .radio_wrap label::before,
  .page_content .content_main .check_wrap label::before {
    margin-right: 2.4vw;
    width: 5.87vw;
  }
  .page_content .content_main .required .error_msg {
    font-size: 3.2vw;
    top: 100%;
  }
  .page_content .content_main .input_wrap input,
  .page_content .content_main .input_wrap select {
    font-size: 1.4rem;
    padding: 0.67vw 3.47vw;
  }
  .page_content .content_main .input_wrap input[type=text] {
    font-size: 16px;
    margin-left: -7.14%;
    padding: 0.67vw 3.66vw;
    transform: scale(0.88);
    width: 114.29%;
  }
  .page_content .content_main .input_wrap:has(label) select,
  .page_content .content_main .input_wrap:has(label) input {
    padding-top: 5.33vw;
  }
  .page_content .content_main .input_wrap:has(label) input[type=text] {
    padding-top: 5.33vw;
  }
  .page_content .content_main .input_wrap.calendar::after {
    right: 3.2vw;
    top: calc(50% - 2.4vw);
    width: 4.8vw;
  }
  .page_content .content_main .input_wrap.select select {
    padding-right: 8vw;
  }
  .page_content .content_main .input_wrap.textarea textarea {
    font-size: 16px;
    height: 114.29%;
    line-height: 1.57;
    margin-left: -7.14%;
    padding: 3.47vw 5.18vw;
    transform: scale(0.88) translateY(-7.14%);
    width: 114.29%;
  }
  .page_content .content_main .alert_box {
    border-width: 0.67vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_inputs {
    flex-wrap: wrap;
    gap: 2.67vw 0;
    justify-content: space-between;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_inputs .input_wrap {
    width: calc(50% - 1.33vw);
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_inputs .input_wrap.city {
    width: 100%;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns {
    bottom: 0;
    display: flex;
    gap: 0 1.33vw;
    justify-content: flex-end;
    position: absolute;
    right: 0;
    text-align: right;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn {
    border-radius: 4px;
    font-size: 2.93vw;
    height: 8vw;
    padding-left: 2.67vw;
    width: 26.4vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn::before {
    width: 2.4vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn span {
    padding-left: 1.33vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn {
    border-radius: 4px;
    font-size: 2.93vw;
    height: 8vw;
    padding-left: 2.67vw;
    width: 14.67vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn::before {
    width: 2.4vw;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn span {
    padding-left: 1.33vw;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .item_inputs {
    gap: 0 2.67vw;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .input_wrap {
    width: 100%;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .attention_txt {
    line-height: 1;
  }
  .page_content .content_main .assist_wrap .txt {
    display: block;
  }
  .page_content .content_main .item_label {
    font-size: clamp(7px, 3.73vw, 1.4rem);
    margin-bottom: 1.87vw;
  }
  .page_content .content_main .item_label .attention_txt {
    margin: -1.33vw 0 0 auto;
    width: 62.99%;
  }
  .page_content .content_main .item_label:has(.attention_txt) {
    align-items: stretch;
  }
  .page_content .content_main .btm_wrap .assist_wrap .txt {
    line-height: 1.55;
    padding-left: clamp(2px, 3.2vw, 12px);
  }
  .page_content .content_main .coupon_wrap .coupon_input .input_wrap {
    margin-right: auto;
  }
  .page_content .content_main .agree_wrap .txt {
    text-align: left;
  }
  .freo_modal {
    padding-top: 9.75vh;
  }
  .freo_modal_box {
    border-radius: 4vw 4vw 0 0;
    position: relative;
    width: 100%;
  }
  .freo_modal_box_head {
    border-radius: 4vw 4vw 0 0;
    height: 13.33vw;
  }
  .freo_modal_box_head .head_title {
    font-size: 4vw;
  }
  .freo_modal_box_body {
    height: calc(var(--tw-win-vh, 100dvh) - 9.75vh);
    width: 100%;
  }
  .freo_modal_box_foot {
    background: #fff;
    bottom: 0;
    height: 18.67vw;
    left: 0;
    padding: 0 var(--content-margin) env(safe-area-inset-bottom);
    position: fixed;
    width: 100%;
    z-index: 2;
  }
  .freo_modal_box_foot .btn_wrap .btn_clear {
    font-size: 3.2vw;
    height: 6.53vw;
    margin-right: 27.33vw;
    top: calc(50% - 3.2vw);
    width: 18.67vw;
  }
  .freo_modal_box_foot .btn_wrap .btn_clear + .btn_submit {
    width: 49.33vw;
  }
  .freo_modal_box_foot .btn_wrap .btn_submit {
    border-radius: 11.2vw;
    font-size: 3.73vw;
    height: 11.2vw;
    width: 50.67vw;
  }
  .freo_modal_close {
    background: url(../img/modal_close_white.svg) center center/100% auto no-repeat;
    right: 5.07vw;
    top: -9.6vw;
    width: 6.4vw;
  }
  .freo_modal.modal_days .freo_modal_box_body {
    padding: 17.33vw 4vw 18.67vw;
  }
  .freo_modal.modal_days .freo_modal_box .nav_wrap {
    display: none;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap {
    padding-bottom: 2.67vw;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .head_title {
    font-size: 4.8vw;
    margin-bottom: 1.6vw;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .head_title .month {
    margin-left: 1.33vw;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div {
    font-size: 4.27vw;
    height: 10vw;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head {
    margin-bottom: 1.33vw;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week.table_head > div {
    font-size: 3.2vw;
    height: 6.67vw;
  }
  .freo_modal.modal_reason .freo_modal_box_head {
    height: 17.33vw;
  }
  .freo_modal.modal_reason .freo_modal_box_head .head_title {
    font-size: 4.53vw;
  }
  .freo_modal.modal_reason .freo_modal_box_body {
    padding: 23.33vw 8.67vw 13.33vw;
  }
  .freo_modal.modal_reason .freo_modal_box_body .txt_wrap p {
    font-size: 3.47vw;
  }
  .freo_modal.modal_reason .freo_modal_box_body .txt_wrap p + p {
    margin-top: 4vw;
  }
  .freo_modal.modal_reason .freo_modal_box_body .txt_wrap p.tit {
    font-size: 4vw;
    margin-bottom: 4.8vw;
  }
  .freo_modal.modal_reason .freo_modal_box_body .img_wrap {
    display: none;
  }
}
@media (-ms-high-contrast: none), (-ms-high-contrast: active), (-moz-touch-enabled: 0), (hover: hover){
  input[type=submit]:hover,
  input[type=button]:hover,
  button:hover {
    opacity: 0.65;
  }
  .page_content .content_main .form_btn.submit:hover {
    opacity: 0.65;
  }
  .freo_modal_box_foot .btn_wrap button:hover {
    opacity: 0.65;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.selectable:hover {
    background: var(--bg-color-primary);
    border: 1px solid var(--color-primary);
  }
  .page_head .hero_point .point_btn:hover {
    opacity: 0.65;
  }
  .page_head .hero_start_btn:hover {
    opacity: 1;
  }
  .page_head .hero_start_btn:hover .txt_01,
  .page_head .hero_start_btn:hover .txt_02, .page_head .hero_start_btn:hover::after {
    opacity: 0.6;
  }
}
@media (hover: none){
  input[type=submit],
  input[type=button],
  button {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  input[type=submit]:active,
  input[type=button]:active,
  button:active {
    opacity: 0.65;
  }
  .page_content .content_main .form_btn.submit {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  .page_content .content_main .form_btn.submit:active {
    opacity: 0.65;
  }
  .freo_modal_box_foot .btn_wrap button {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  .freo_modal_box_foot .btn_wrap button:active {
    opacity: 0.65;
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.selectable {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap .week > div.selectable:active {
    background: var(--bg-color-primary);
    border: 1px solid var(--color-primary);
  }
  .page_head .hero_point .point_btn {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  .page_head .hero_point .point_btn:active {
    opacity: 0.65;
  }
  .page_head .hero_start_btn {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
  }
  .page_head .hero_start_btn:active {
    opacity: 1;
  }
  .page_head .hero_start_btn:active .txt_01,
  .page_head .hero_start_btn:active .txt_02, .page_head .hero_start_btn:active::after {
    opacity: 0.6;
  }
}
@media screen and (min-width: 1201px), print{
  .page_head .hero_point {
    left: 50%;
    margin-left: -140px;
  }
  .page_head .hero_start_btn {
    left: 50%;
    margin-left: -140px;
  }
  .page_head .hero_att_txt {
    left: 50%;
    margin-left: -140px;
  }
}
@media screen and (min-width: 601px), print{
  .vsp600 {
    display: none;
  }
  .page_content .content_main .required .error_msg {
    white-space: nowrap;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .add_btn {
    border-radius: 6px;
    font-size: 1.4rem;
    height: 44px;
    margin: 0 auto;
    padding-left: 15px;
    width: 148px;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn {
    border-radius: 6px;
    font-size: 1.4rem;
    height: 32px;
    left: 50%;
    margin-left: 91px;
    padding-left: 15px;
    position: absolute;
    top: 50%;
    transform: translate(0%, -50%);
    width: 138px;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_btns .del_btn span::before {
    content: "目的地を";
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people .input_wrap {
    margin-right: 10px;
    width: 167px;
  }
  .page_content .content_main .item_label {
    font-size: 1.4rem;
    margin-bottom: 8px;
  }
  .page_content .content_main .coupon_wrap .coupon_input {
    margin-left: auto;
    width: 83.78%;
  }
  .freo_modal_box {
    border-radius: 15px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    left: 50%;
    max-height: calc(var(--tw-win-vh, 100dvh) * 0.8);
    max-width: 820px;
    position: absolute;
    top: 50%;
    transform: translate(-50%, -50%);
    width: calc(100% - var(--content-margin) * 2);
  }
  .freo_modal_box_foot {
    background-color: #fff;
    border-radius: 0 0 15px 15px;
  }
  .freo_modal:has(.freo_modal_box_head) .freo_modal_box_body {
    margin-top: 50px;
  }
  .freo_modal.modal_days .freo_modal_box_body {
    position: static;
  }
  .freo_modal.modal_days .freo_modal_box .select_list {
    display: flex;
    flex-wrap: wrap;
    margin: 0 -15px;
    width: calc(100% + 30px);
  }
  .freo_modal.modal_days .freo_modal_box .calendar_wrap {
    padding: 0 15px;
    width: 50%;
  }
  .freo_modal.modal_reason .freo_modal_box_body {
    display: flex;
    padding: 36px 50px 30px;
  }
  .freo_modal.modal_reason .freo_modal_box_body .txt_wrap {
    flex: 1;
    margin-top: -0.5rem;
    padding-right: 4.72%;
  }
  .freo_modal.modal_reason .freo_modal_box_body .img_wrap {
    width: 30.56%;
  }
}
@media screen and (min-width: 961px), print{
  .vsp960 {
    display: none;
  }
  .page_content {
    display: flex;
    gap: 0 3%;
    justify-content: space-between;
    margin: 0 auto;
    max-width: calc(var(--content-max-w) + var(--content-margin) * 2);
    padding: 0 var(--content-margin);
    width: 100%;
  }
  .page_content .content_side {
    background-color: var(--bg-color-gray-light);
    padding-top: 36px;
    position: relative;
    width: 35.33%;
  }
  .page_content .content_side > * {
    position: relative;
    z-index: 2;
  }
  .page_content .content_main {
    padding-bottom: 80px;
    padding-top: 90px;
    width: 61.67%;
  }
  .page_content .content_side .side_sticky {
    left: 0;
    padding: 30px 10px 34px 0;
    position: -webkit-sticky;
    position: sticky;
    top: 0;
  }
  .page_content .content_side .assist_wrap {
    margin-bottom: 25px;
    padding-left: 52px;
    position: relative;
  }
  .page_content .content_side .assist_wrap .txt_01 .txt.sp {
    display: none;
  }
  .page_content .content_side .assist_wrap .txt_01 .txt br {
    display: none;
  }
  .page_content .content_side .assist_wrap .txt_01 .icon {
    left: 0;
    top: 50%;
    transform: translateY(-50%);
    width: 46px;
  }
  .page_content .content_side .assist_wrap .txt_02 {
    margin-top: 5px;
  }
  .page_content .content_side .step_wrap li p {
    height: 44px;
    padding-left: 74px;
  }
  .page_content .content_side .step_wrap li p::before {
    align-items: center;
    aspect-ratio: 1/1;
    background-color: var(--bg-color-gray-light);
    border: 1px solid var(--border-color-gray);
    border-radius: 100vmax;
    color: var(--font-color-gray);
    content: counter(step_number);
    display: flex;
    font-family: var(--font-en);
    font-weight: 500;
    justify-content: center;
    left: 4px;
    position: absolute;
    top: 4px;
    width: 36px;
    z-index: 1;
  }
  .page_content .content_side .step_wrap li p::after {
    aspect-ratio: 1/1;
    background: url(../img/step_current.svg) center center/100% auto no-repeat;
    content: "";
    display: block;
    left: 0;
    opacity: 0;
    position: absolute;
    top: 0;
    transition: opacity 0.3s ease;
    visibility: hidden;
    width: 44px;
    will-change: opacity, visibility;
    z-index: 2;
  }
  .page_content .content_side .step_wrap li::before {
    letter-spacing: 0.1em;
    width: 76px;
  }
  .page_content .content_side .step_wrap li + li::after {
    background-color: var(--border-color-gray-light);
    bottom: calc(100% + 4px);
    content: "";
    height: 22px;
    left: 98px;
    position: absolute;
    width: 1px;
  }
  .page_content .content_side .step_wrap li.current p::after {
    opacity: 1;
    visibility: visible;
  }
  .page_content .content_main .step_wrap[data-step="1"] .item_inputs .input_wrap {
    flex: 1;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_wrap + .item_wrap {
    margin-top: 15px;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_wrap.dest .item_btns {
    display: none;
  }
  .page_content .content_main .step_wrap[data-step="2"] .item_wrap:not(.dest) .attention_txt {
    margin-top: 15px;
  }
  .page_content .content_main .step_wrap[data-step="3"] .assist_wrap {
    margin: 20px auto 16px;
    width: 94.59%;
  }
  .page_content .content_main .step_wrap[data-step="3"] .item_wrap .input_wrap {
    min-height: 300px;
  }
  .page_content .content_main .step_wrap[data-step="3"] .item_wrap .input_wrap textarea {
    min-height: 300px;
  }
  .page_content .content_main .step_wrap[data-step="3"] .item_wrap .attention_txt {
    margin-top: 8px;
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap.name {
    margin-top: 20px;
  }
  .page_content .content_main .step_wrap[data-step="4"] .item_wrap + .item_wrap {
    margin-top: 25px;
  }
  .page_content .content_main .step_wrap[data-step="5"] .item_wrap.dep_airport {
    margin-top: 20px;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.bugget {
    margin-top: 20px;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people {
    margin-top: 25px;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age {
    margin-top: 42px;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_age .assist_wrap {
    margin-bottom: 14px;
  }
  .page_content .content_main .step_wrap[data-step="6"] .item_wrap.people_msg {
    margin-top: 18px;
  }
  .page_content .content_main .step_title::before {
    letter-spacing: 0.08em;
  }
  .page_content .content_main .assist_wrap .icon {
    width: 46px;
  }
  .page_content .content_main .item_wrap {
    margin: 0 auto;
    width: 94.59%;
  }
  .page_content .content_main .btm_wrap {
    display: flex;
    flex-direction: column;
    margin: 58px 0 0 2.7%;
    width: 97.3%;
  }
  .page_content .content_main .btm_wrap .assist_wrap {
    margin-bottom: 10px;
    order: 1;
  }
  .page_content .content_main .btm_wrap .assist_wrap .txt {
    font-size: 1.65rem;
    line-height: 1.55;
    padding-bottom: 12px;
    padding-top: 13px;
  }
  .page_content .content_main .coupon_wrap {
    order: 2;
  }
  .page_content .content_main .agree_wrap {
    margin-top: 28px;
    order: 3;
  }
  .page_content .content_main .agree_wrap .input_wrap label::before {
    width: 20px;
  }
  .freo_modal_box_foot {
    height: 70px;
    padding: 0 var(--content-margin);
  }
  .freo_modal.modal_days .freo_modal_box_body {
    margin-bottom: 70px;
    max-height: 69.2vh;
    min-height: 330px;
    padding: 25px 50px 15px;
  }
  .freo_modal.modal_days .freo_modal_box_body .search_wrap {
    padding-bottom: 0;
  }
  .page_head .hero_title {
    background-color: var(--color-primary);
  }
  .page_head .hero_point {
    aspect-ratio: 450/180;
    border-radius: 12px;
    padding: clamp(1rem, 1.18vw, 1.6rem) clamp(1rem, 1.32vw, 1.8rem);
    position: absolute;
    top: 47.56%;
    z-index: 2;
  }
  .page_head .hero_point .point_item {
    aspect-ratio: 310/83;
    flex: 1;
    padding-left: 3.14%;
  }
  .page_head .hero_point .point_contact {
    align-items: center;
    border-radius: 7.2px;
    display: flex;
    height: 29.05%;
    justify-content: space-between;
    margin-top: clamp(1rem, 1.47vw, 2rem);
    max-height: 43px;
    padding: 0 clamp(0.8rem, 1.1vw, 1.5rem);
  }
  .page_head .hero_point .point_contact .contact_tel {
    gap: 0 4px;
    margin: 0 0 0 7px;
  }
  .page_head .hero_point .point_contact .contact_tel::before {
    aspect-ratio: 1/1;
    background-image: url(../img/icon_tel_gray.svg);
    background-position: center center;
    background-repeat: no-repeat;
    background-size: 100% auto;
    content: "";
    content: "";
    width: clamp(1rem, 0.88vw, 1.2rem);
  }
  .page_head .hero_point .point_contact .contact_tel .tel_link {
    display: none;
  }
  .page_head .hero_point .point_contact .contact_time {
    font-size: clamp(0.6rem, 0.66vw, 0.9rem);
    line-height: 1.37;
    width: 32.14%;
  }
  .page_head .hero_start_btn {
    align-items: center;
    aspect-ratio: 740/80;
    background-color: #fff;
    border: 3.7px solid #000;
    border-radius: 9.4px;
    display: flex;
    justify-content: space-between;
    max-width: 740px;
    padding: 0 clamp(1.2rem, 1.76vw, 2.4rem);
    position: absolute;
    top: 93.33%;
    width: calc(61.67% - var(--content-margin));
    z-index: 3;
  }
  .page_head .hero_start_btn .txt_02 {
    font-size: clamp(1rem, 1.54vw, 2.1rem);
    margin-left: clamp(0.7rem, 1.03vw, 1.4rem);
    margin-right: clamp(1rem, 1.47vw, 2rem);
  }
  .page_head .hero_att_txt {
    justify-content: flex-end;
    max-width: 740px;
    position: absolute;
    text-align: right;
    top: calc(100% + 55px);
    width: calc(61.67% - var(--content-margin));
  }
}
/*Chromeの「自動入力」時の自動変更禁止*/
input:-webkit-autofill,
input:-webkit-autofill:hover,
input:-webkit-autofill:focus,
input:-webkit-autofill:active {
  -webkit-text-fill-color: #333333 !important;
  transition: background-color 5000s ease-in-out 0s !important;
  background-clip: padding-box !important;
  border-radius: 6px !important;
}