.sec-contact-step .service-container,
.sec-contact-step .choices-container label.service-1,
.sec-contact-step .choices-container label.service-5,
.sec-contact-step .input-wrap {
  border-radius: min(6px,  calc(6 / 960 * 100vw));
}

hr.type-dot {
  display: block;
  height: 2px;
  border: none;
  background: repeating-linear-gradient(to right, var(--color-navy) 0px, var(--color-navy) 2px, transparent 2px, transparent 10px);
}

.text-link {
  color: var(--color-link);
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: currentColor;
  transition: text-decoration-color 0.3s;
}

.sec-contact-step .step-heading {
  display: flex;
  gap: min(16px,  calc(16 / 960 * 100vw));
  margin-bottom: min(32px,  calc(32 / 960 * 100vw));
}

.sec-contact-step .step-heading .no {
  display: flex;
  align-items: center;
  background: var(--color-navy);
  color: var(--color-white);
  padding: min(2px,  calc(2 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw)) min(4px,  calc(4 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw));
}

.sec-contact-step .step-heading .title-wrap {
  flex: 1;
}

.sec-contact-step .step-heading .title-wrap .is-required,
.sec-contact-step .step-heading .title-wrap .is-optional {
  margin-left: min(12px,  calc(12 / 960 * 100vw));
}

.sec-contact-step .step-heading .title {
  color: var(--color-navy);
}

.sec-contact-step .step-heading .is-required,
.sec-contact-step .step-heading .is-optional {
  color: var(--color-white);
  padding: min(1px,  calc(1 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .step-heading .is-required {
  background: var(--color-red);
}

.sec-contact-step .step-heading .is-optional {
  background: var(--color-table-gray);
}

.sec-contact-step .service-container {
  background: var(--color-white);
}

.sec-contact-step .service-container:has(label.service.is-error) {
  border: 1px solid var(--color-navy);
  background: #ffe2e2;
}

.sec-contact-step label.service {
  position: relative;
  display: flex;
  align-items: center;
  gap: min(40px,  calc(40 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(90px,  calc(90 / 960 * 100vw));
}

.sec-contact-step label.service input {
  display: none;
}

.sec-contact-step label.service::before,
.sec-contact-step label.service::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  aspect-ratio: 1;
  border-radius: 50%;
  box-sizing: border-box;
  width: min(24px,  calc(24 / 960 * 100vw));
  left: min(32px,  calc(32 / 960 * 100vw));
  border: 2px solid var(--color-navy);
}

.sec-contact-step label.service .texts {
  flex: 1;
}

.sec-contact-step label.service .sub-title,
.sec-contact-step label.service .title,
.sec-contact-step label.service .price {
  color: var(--color-navy);
}

.sec-contact-step label.service .price {
  background: var(--color-bg-gray);
  margin: min(12px,  calc(12 / 960 * 100vw)) 0 min(8px,  calc(8 / 960 * 100vw)) 0;
  padding: min(4px,  calc(4 / 960 * 100vw)) min(12px,  calc(12 / 960 * 100vw));
}

.sec-contact-step label.service .price.bg-orange {
  background: var(--color-orange);
}

.sec-contact-step label.service .image {
  width: min(132px,  calc(132 / 960 * 100vw));
}

.sec-contact-step label.service:has(input:checked)::after {
  border-width: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step label.service:has(input:checked) + .choices-container {
  display: block;
}

.sec-contact-step .choices-container {
  display: none;
  padding: 0 min(32px,  calc(32 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
}

.sec-contact-step .choices-container hr.type-dot {
  margin-bottom: min(32px,  calc(32 / 960 * 100vw));
}

.sec-contact-step .choices-container .choices {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .choices-container label.service-1,
.sec-contact-step .choices-container label.service-5 {
  position: relative;
  display: flex;
  align-items: center;
  border: 1px solid var(--color-navy);
  padding: min(20px,  calc(20 / 960 * 100vw)) min(16px,  calc(16 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(46px,  calc(46 / 960 * 100vw));
}

.sec-contact-step .choices-container label.service-1.is-error,
.sec-contact-step .choices-container label.service-5.is-error {
  background: #ffe2e2;
}

.sec-contact-step .choices-container label.service-1 input,
.sec-contact-step .choices-container label.service-5 input {
  display: none;
}

.sec-contact-step .choices-container label.service-1 .caution,
.sec-contact-step .choices-container label.service-5 .caution {
  margin-top: min(4px,  calc(4 / 960 * 100vw));
}

.sec-contact-step .choices-container label.service-1::before {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  aspect-ratio: 1;
  box-sizing: border-box;
  width: min(20px,  calc(20 / 960 * 100vw));
  left: min(16px,  calc(16 / 960 * 100vw));
  border: 2px solid var(--color-navy);
}

.sec-contact-step .choices-container label.service-1:has(input:checked)::before {
  background: var(--color-navy);
}

.sec-contact-step .choices-container label.service-1:has(input:checked)::after {
  content: "";
  background: url(../img/common/icon/ic_checked.svg) no-repeat;
  background-size: contain;
  aspect-ratio: 9/8;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  left: min(20px,  calc(20 / 960 * 100vw));
  width: min(12px,  calc(12 / 960 * 100vw));
}

.sec-contact-step .choices-container label.service-5::before,
.sec-contact-step .choices-container label.service-5::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  aspect-ratio: 1;
  box-sizing: border-box;
  width: min(20px,  calc(20 / 960 * 100vw));
  left: min(16px,  calc(16 / 960 * 100vw));
  border: 2px solid var(--color-navy);
  border-radius: 50%;
}

.sec-contact-step .choices-container label.service-5:has(input:checked)::after {
  border-width: min(7px,  calc(7 / 960 * 100vw));
}

.sec-contact-step .choices-container .title,
.sec-contact-step .choices-container .text {
  color: var(--color-navy);
}

.sec-contact-step .choices-container .title {
  margin-bottom: min(24px,  calc(24 / 960 * 100vw));
}

.sec-contact-step .caution-step2 {
  color: var(--color-red);
  margin-bottom: min(32px,  calc(32 / 960 * 100vw));
}

.sec-contact-step .caution-textarea {
  margin-bottom: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .input-heading {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  gap: min(8px,  calc(8 / 960 * 100vw));
  margin-bottom: min(16px,  calc(16 / 960 * 100vw));
}

.sec-contact-step .input-heading .title {
  color: var(--color-navy);
}

.sec-contact-step .input-heading .is-required {
  background: var(--color-red);
  color: var(--color-white);
  padding: 0 min(8px,  calc(8 / 960 * 100vw)) min(1px,  calc(1 / 960 * 100vw)) min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .input-wrap {
  overflow: hidden;
  background: var(--color-white);
  border: 1px solid var(--color-navy);
}

.sec-contact-step .input-wrap.is-error {
  background: #ffe2e2;
}

.sec-contact-step .input-wrap input,
.sec-contact-step .input-wrap select,
.sec-contact-step .input-wrap textarea {
  display: block;
  width: 100%;
  height: 100%;
  border: none;
  padding: 0;
  margin: 0;
  box-sizing: border-box;
  appearance: none;
  -webkit-appearance: none;
  -moz-appearance: none;
  background: transparent;
  padding: min(20px,  calc(20 / 960 * 100vw)) min(16px,  calc(16 / 960 * 100vw)) min(20px,  calc(20 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
  font-size: 16px;
}

.sec-contact-step .input-wrap.type-select input,
.sec-contact-step .input-wrap.type-select select,
.sec-contact-step .input-wrap.type-select-date input,
.sec-contact-step .input-wrap.type-select-date select {
  padding-right: min(46px,  calc(46 / 960 * 100vw));
}

.sec-contact-step .input-wrap textarea {
  resize: none;
  height: min(160px,  calc(160 / 960 * 100vw));
}

.sec-contact-step .input-wrap input:focus,
.sec-contact-step .input-wrap select:focus,
.sec-contact-step .input-wrap textarea:focus {
  outline: none;
  border-color: #ccc;
}

.sec-contact-step .input-wrap.type-select {
  position: relative;
}

.sec-contact-step .input-wrap.type-select::after {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%) rotate(90deg);
  mask-image: url(../img/common/icon/ic_link_arrow.svg);
  mask-repeat: no-repeat;
  mask-size: contain;
  background: var(--color-navy);
  aspect-ratio: 1;
  right: min(16px,  calc(16 / 960 * 100vw));
  width: min(24px,  calc(24 / 960 * 100vw));
}

.sec-contact-step .input-wrap.type-select-date {
  position: relative;
}

.sec-contact-step .input-wrap.type-select-date::after {
  content: "";
  pointer-events: none;
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: url(../img/common/icon/ic_select_reserve.svg) no-repeat;
  background-size: contain;
  aspect-ratio: 1;
  right: min(16px,  calc(16 / 960 * 100vw));
  width: min(24px,  calc(24 / 960 * 100vw));
}

.sec-contact-step .error-message {
  margin-top: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .choices .error-message,
.sec-contact-step .input-2col .error-message {
  margin-top: 0 !important;
}

.sec-contact-step .service-container + .error-message {
  margin-top: 0 !important;
}

.sec-contact-step .input-2col {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .input-half {
  width: min(452px,  calc(452 / 960 * 100vw));
}

.sec-contact-step .input-half.for-birth {
  display: flex;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .input-half.for-birth .input-wrap:has(#birthy) {
  width: 50%;
}

.sec-contact-step .input-half.for-birth .input-wrap:has(#birthm),
.sec-contact-step .input-half.for-birth .input-wrap:has(#birthd) {
  width: 25%;
}

.sec-contact-step .input-half.for-tel {
  display: flex;
  align-items: center;
  gap: min(8px,  calc(8 / 960 * 100vw));
}

.sec-contact-step .input-half.for-tel span {
  font-size: 18px;
}

.sec-contact-studio {
  margin-top: max(-6px,  calc(-6 / 960 * 100vw));
}

.sec-contact-studio .box {
  border: 1px solid var(--color-navy);
  border-top: none;
  border-radius: 0 0 min(6px,  calc(6 / 960 * 100vw)) min(6px,  calc(6 / 960 * 100vw));
  padding: min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(40px,  calc(40 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
  margin-bottom: min(32px,  calc(32 / 960 * 100vw));
}

.sec-contact-studio .initial,
.sec-contact-studio .detail-item {
  display: grid;
  grid-template-columns: 1fr 1fr;
  gap: min(24px,  calc(24 / 960 * 100vw));
}

.sec-contact-studio .item .title {
  display: flex;
  align-items: center;
  color: var(--color-navy);
  border-bottom: 1px solid var(--color-navy);
  gap: min(6px,  calc(6 / 960 * 100vw));
  padding-bottom: min(6px,  calc(6 / 960 * 100vw));
}

.sec-contact-studio .item .title::before {
  content: "";
  flex-shrink: 0;
  mask-repeat: no-repeat;
  mask-size: contain;
  background-color: var(--color-navy);
  aspect-ratio: 1;
  width: min(20px,  calc(20 / 960 * 100vw));
}

.sec-contact-studio .item.address .title::before {
  mask-image: url(../img/common/icon/ic_link_address.svg);
}

.sec-contact-studio .item.transportation .title::before {
  mask-image: url(../img/common/icon/ic_link_transportation.svg);
}

.sec-contact-studio .item.time .title::before {
  mask-image: url(../img/common/icon/ic_link_time.svg);
}

.sec-contact-studio .item.close .title::before {
  mask-image: url(../img/common/icon/ic_link_close.svg);
}

.sec-contact-studio .detail {
  overflow: hidden;
  max-height: 0;
  opacity: 0;
  transition: max-height 0.5s ease, opacity 0.3s ease;
}

.sec-contact-studio .detail .map {
  margin: min(40px,  calc(40 / 960 * 100vw)) 0;
}

.sec-contact-studio .detail .map iframe {
  width: 100% !important;
  height: auto !important;
  aspect-ratio: 828/428;
}

.sec-contact-studio.is-open .detail {
  max-height: 2000px;
  opacity: 1;
}

.sec-contact-studio.is-open .button-more .open {
  display: none;
}

.sec-contact-studio.is-open .button-more .close {
  display: inline;
}

.sec-contact-studio .button-more {
  display: block;
  width: max-content;
  position: relative;
  margin-left: auto;
  margin-right: auto;
  color: var(--color-navy);
  margin-top: min(32px,  calc(32 / 960 * 100vw));
  font-size: 18px;
}

.sec-contact-studio .button-more span {
  position: relative;
}

.sec-contact-studio .button-more span::before,
.sec-contact-studio .button-more span::after {
  content: "";
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  right: max(-24px,  calc(-24 / 960 * 100vw));
  background: var(--color-navy);
  height: 2px;
  width: min(14px,  calc(14 / 960 * 100vw));
}

.sec-contact-studio .button-more span::after {
  transform: translateY(-50%) rotate(90deg);
}

.sec-contact-studio .button-more .close {
  display: none;
}

.sec-contact-studio .button-more .close::after {
  display: none;
}

.sec-contact-studio .button-more {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: currentColor;
  transition: text-decoration-color 0.3s;
}

.sec-contact-studio .reserve {
  background: var(--color-white);
  padding: min(20px,  calc(20 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw)) min(24px,  calc(24 / 960 * 100vw));
  margin: min(24px,  calc(24 / 960 * 100vw)) 0;
}

.sec-contact-studio .reserve .freedial {
  display: flex;
  align-items: center;
  justify-content: center;
  margin-top: min(8px,  calc(8 / 960 * 100vw));
  gap: min(12px,  calc(12 / 960 * 100vw));
}

.sec-contact-studio .reserve .freedial .icon {
  width: min(34px,  calc(34 / 960 * 100vw));
}

.sec-contact-studio .reserve .freedial .no {
  color: var(--color-navy);
  letter-spacing: 0;
  line-height: 1.5;
  font-weight: 700;
  font-size: 32px;
}

.sec-contact-studio .reserve .freedial {
  text-decoration: underline;
  text-decoration-thickness: 1px;
  text-underline-offset: 5px;
  text-decoration-color: currentColor;
  transition: text-decoration-color 0.3s;
}

.error-message-list {
  border: 1px solid var(--color-red);
  color: var(--color-red);
  background: var(--color-white);
  padding: min(20px,  calc(20 / 960 * 100vw)) min(32px,  calc(32 / 960 * 100vw));
  margin-bottom: max(-30px,  calc(-30 / 960 * 100vw));
}

.error-message-list li {
  position: relative;
  padding-left: min(24px,  calc(24 / 960 * 100vw));
}

.error-message-list li::before {
  content: "";
  position: absolute;
  left: 0;
  aspect-ratio: 1;
  background: url(../img/common/icon/ic_error.svg) no-repeat;
  background-size: contain;
  top: min(4px,  calc(4 / 960 * 100vw));
  width: min(20px,  calc(20 / 960 * 100vw));
}

@media print, screen and (min-width: 769px) {
  .mb-pc {
    margin-bottom: min(80px,  calc(80 / 960 * 100vw));
  }
}

@media only screen and (max-width: 768.8px) {
  .sec-contact-step .service-container,
  .sec-contact-step .choices-container label.service-1,
  .sec-contact-step .choices-container label.service-5,
  .sec-contact-step .input-wrap {
    border-radius: 1.6vw;
  }

  .sec-contact-step .step-heading {
    gap: 4.2666666667vw;
    margin-bottom: 8.5333333333vw;
  }

  .sec-contact-step .step-heading .no {
    padding: 2.1333333333vw;
  }

  .sec-contact-step .step-heading .title-wrap .is-required,
  .sec-contact-step .step-heading .title-wrap .is-optional {
    margin-left: 3.2vw;
  }

  .sec-contact-step .step-heading .is-required,
  .sec-contact-step .step-heading .is-optional {
    padding: 0.2666666667vw 2.1333333333vw;
  }

  .sec-contact-step label.service {
    display: grid;
    grid-template-columns: 1fr 16vw;
    grid-template-rows: auto auto;
    gap: 0;
    padding: 4.2666666667vw 5.3333333333vw 5.3333333333vw 5.3333333333vw;
  }

  .sec-contact-step label.service::before,
  .sec-contact-step label.service::after {
    top: 9.3333333333vw;
    transform: translateY(0);
    width: 6.4vw;
    left: 5.3333333333vw;
  }

  .sec-contact-step label.service .texts {
    display: contents;
  }

  .sec-contact-step label.service .texts .head {
    grid-column: 1;
    margin-left: 9.3333333333vw;
  }

  .sec-contact-step label.service .texts .head .title {
    font-size: 1.8rem;
  }

  .sec-contact-step label.service .texts .body {
    grid-column: 1/-1;
    margin-top: 3.2vw;
  }

  .sec-contact-step label.service .price {
    margin: 3.2vw 0 2.1333333333vw 0;
    padding: 1.0666666667vw 3.2vw;
  }

  .sec-contact-step label.service .image {
    width: 16vw;
    grid-column: 2;
    grid-row: 1;
  }

  .sec-contact-step label.service:has(input:checked)::after {
    border-width: 2.1333333333vw;
  }

  .sec-contact-step .choices-container {
    margin-top: 2.6666666667vw;
    padding: 0 5.3333333333vw 6.4vw 5.3333333333vw;
  }

  .sec-contact-step .choices-container hr.type-dot {
    margin-bottom: 8.5333333333vw;
  }

  .sec-contact-step .choices-container .choices {
    grid-template-columns: 1fr;
    gap: 2.1333333333vw;
  }

  .sec-contact-step .choices-container label.service-1,
  .sec-contact-step .choices-container label.service-5 {
    padding: 5.3333333333vw 4.2666666667vw 6.4vw 12.2666666667vw;
  }

  .sec-contact-step .choices-container label.service-1 .caution,
  .sec-contact-step .choices-container label.service-5 .caution {
    margin-top: 1.0666666667vw;
  }

  .sec-contact-step .choices-container label.service-1::before {
    width: 5.3333333333vw;
    left: 4.2666666667vw;
  }

  .sec-contact-step .choices-container label.service-1:has(input:checked)::after {
    left: 5.3333333333vw;
    width: 3.2vw;
  }

  .sec-contact-step .choices-container label.service-5::before,
  .sec-contact-step .choices-container label.service-5::after {
    width: 5.3333333333vw;
    left: 4.2666666667vw;
  }

  .sec-contact-step .choices-container label.service-5:has(input:checked)::after {
    border-width: 1.8666666667vw;
  }

  .sec-contact-step .choices-container .title {
    margin-bottom: 4.2666666667vw;
  }

  .sec-contact-step .caution-step2 {
    margin-bottom: 8.5333333333vw;
  }

  .sec-contact-step .caution-textarea {
    margin-bottom: 2.1333333333vw;
  }

  .sec-contact-step .input-heading {
    gap: 2.1333333333vw;
    margin-bottom: 2.1333333333vw;
  }

  .sec-contact-step .input-heading .is-required {
    padding: 0 2.1333333333vw 0.2666666667vw 2.1333333333vw;
  }

  .sec-contact-step .input-wrap input,
  .sec-contact-step .input-wrap select,
  .sec-contact-step .input-wrap textarea {
    font-size: 1.6rem;
  }

  .sec-contact-step .input-wrap input,
  .sec-contact-step .input-wrap select,
  .sec-contact-step .input-wrap textarea {
    padding: 4.2666666667vw;
  }

  .sec-contact-step .input-wrap.type-select input,
  .sec-contact-step .input-wrap.type-select select,
  .sec-contact-step .input-wrap.type-select-date input,
  .sec-contact-step .input-wrap.type-select-date select {
    padding-right: 9.0666666667vw;
  }

  .sec-contact-step .input-wrap textarea {
    height: 35.2vw;
  }

  .sec-contact-step .input-wrap.type-select::after {
    right: 1.0666666667vw;
    width: 5.3333333333vw;
  }

  .sec-contact-step .input-wrap.type-select-date::after {
    right: 2.6666666667vw;
    width: 6.4vw;
  }

  .sec-contact-step .error-message {
    margin-top: 2.1333333333vw;
  }

  .sec-contact-step .input-2col {
    gap: 2.1333333333vw;
  }

  .sec-contact-step .input-2col:has(.type-select-date) {
    grid-template-columns: 1fr;
  }

  .sec-contact-step .input-half {
    width: auto;
  }

  .sec-contact-step .input-half.for-birth {
    gap: 2.1333333333vw;
  }

  .sec-contact-step .input-half.for-birth .input-wrap:has(#birthy) {
    width: 55%;
  }

  .sec-contact-step .input-half.for-birth .input-wrap:has(#birthm),
  .sec-contact-step .input-half.for-birth .input-wrap:has(#birthd) {
    width: 22.5%;
  }

  .sec-contact-step .input-half.for-tel {
    gap: 2.1333333333vw;
  }

  .sec-contact-step .input-half.for-tel span {
    font-size: 1.8rem;
  }

  .sec-contact-studio {
    width: auto;
    margin-top: -1.6vw;
  }

  .sec-contact-studio .box {
    border-radius: 0 0 1.6vw 1.6vw;
    padding: 6.4vw 4.2666666667vw 9.6vw 4.2666666667vw;
    margin-bottom: 14.9333333333vw;
  }

  .sec-contact-studio .initial,
  .sec-contact-studio .detail-item {
    grid-template-columns: 1fr;
    gap: 6.4vw;
  }

  .sec-contact-studio .item .title {
    gap: 1.0666666667vw;
    padding-bottom: 1.0666666667vw;
  }

  .sec-contact-studio .item .title::before {
    width: 5.3333333333vw;
  }

  .sec-contact-studio .detail .map {
    margin: 6.4vw 0;
  }

  .sec-contact-studio .detail .map iframe {
    aspect-ratio: 295/150;
  }

  .sec-contact-studio .button-more {
    font-size: 1.8rem;
  }

  .sec-contact-studio .button-more {
    margin-top: 6.4vw;
  }

  .sec-contact-studio .button-more span::before,
  .sec-contact-studio .button-more span::after {
    width: 3.7333333333vw;
    right: -6.4vw;
  }

  .sec-contact-studio .reserve {
    padding: 6.4vw 6.4vw 8vw 6.4vw;
    margin: 6.4vw 0;
  }

  .sec-contact-studio .reserve .freedial {
    margin-top: 3.2vw;
    gap: 2.1333333333vw;
  }

  .sec-contact-studio .reserve .freedial .icon {
    width: 9.6vw;
  }

  .sec-contact-studio .reserve .freedial .no {
    font-size: 3.2rem;
  }

  .sec-contact-studio .reserve .freedial .no {
    line-height: 1;
  }

  .error-message-list {
    margin-bottom: -8vw;
    padding: 4.2666666667vw 6.4vw;
  }

  .error-message-list li {
    padding-left: 7.4666666667vw;
  }

  .error-message-list li::before {
    top: 0.8vw;
    width: 6.4vw;
  }
}

@media screen and (min-width: 769px) and (max-width: 959.8px) {
  .sec-contact-step .input-wrap input,
  .sec-contact-step .input-wrap select,
  .sec-contact-step .input-wrap textarea {
    font-size: 1.6rem;
  }

  .sec-contact-step .input-half.for-tel span {
    font-size: 1.8rem;
  }

  .sec-contact-studio .button-more {
    font-size: 1.8rem;
  }

  .sec-contact-studio .reserve .freedial .no {
    font-size: 3.2rem;
  }
}

@media (hover: hover) {
  .text-link:hover {
    text-decoration-color: transparent;
  }

  .sec-contact-studio .button-more:hover {
    text-decoration-color: transparent;
  }

  .sec-contact-studio .reserve .freedial:hover {
    text-decoration-color: transparent;
  }
}

@media screen and (-ms-high-contrast: active), screen and (-ms-high-contrast: none) {
  .text-link:hover {
    text-decoration-color: transparent;
  }

  .sec-contact-studio .button-more:hover {
    text-decoration-color: transparent;
  }

  .sec-contact-studio .reserve .freedial:hover {
    text-decoration-color: transparent;
  }
}