@charset "Shift_JIS";
/*===========================================

===========================================*/
.contact__head {
  display: flex;
  justify-content: space-between;
  align-items: center;
  flex-wrap: wrap;
  row-gap: 0;
  column-gap: 1em;
}
@media not screen and (min-width: 768px) {
  .contact__head {
    row-gap: var(--min20-sp);
    column-gap: var(--min20-sp);
  }
}

.formFlow {
  counter-reset: count;
  display: flex;
}
.formFlow li {
  display: flex;
  align-items: center;
  font-size: var(--min12);
  font-weight: bold;
  white-space: nowrap;
  counter-increment: count;
}
@media not screen and (min-width: 768px) {
  .formFlow li {
    font-size: var(--min12-sp);
  }
}
.formFlow li::before {
  content: "0" counter(count);
  display: flex;
  flex-shrink: 0;
  justify-content: center;
  align-items: center;
  margin-right: 0.25em;
  text-align: right;
  width: var(--min40);
  height: var(--min40);
  border-radius: 100vw;
  color: #D3BABE;
  font-weight: bold;
  font-size: var(--min20);
  letter-spacing: -0.05em;
  background: var(--lightGray);
}
@media not screen and (min-width: 768px) {
  .formFlow li::before {
    width: var(--min40-sp);
    height: var(--min40-sp);
    font-size: var(--min20-sp);
  }
}
.formFlow li::after {
  content: "";
  display: block;
  width: var(--min40);
  height: 1px;
  margin: 0 var(--min4);
  background: var(--darkGray);
}
@media not screen and (min-width: 768px) {
  .formFlow li::after {
    width: var(--min40-sp);
    margin: 0 var(--min4-sp);
  }
}
.formFlow li.current::before {
  color: #FFF;
  background: var(--red);
}
.formFlow li:last-child::after {
  content: normal;
}

.formBlock {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--min40);
  padding: var(--min32);
}
@media not screen and (min-width: 768px) {
  .formBlock {
    gap: var(--min40-sp);
    padding: var(--min16-sp);
  }
}

.form {
  display: grid;
  grid-template-columns: 1fr;
  gap: var(--min40);
}
@media not screen and (min-width: 768px) {
  .form {
    grid-template-columns: 1fr;
    gap: var(--min40-sp);
  }
}
.form > li {
  display: grid;
  grid-template-rows: auto 1fr;
}
@media not screen and (min-width: 768px) {
  .form > li {
    grid-column: auto;
  }
}
.form__kind, .form__name, .form__tel, .form__mail1, .form__mail2, .form__message {
  display: grid;
  grid-template-columns: max(11.72vw, min(225px, 20.83vw)) max(21.35vw, min(410px, 37.96vw)) 1fr;
  gap: var(--min10);
}
@media not screen and (min-width: 768px) {
  .form__kind, .form__name, .form__tel, .form__mail1, .form__mail2, .form__message {
    grid-template-columns: 1fr;
    gap: var(--min8-sp);
  }
}
@media screen and (min-width: 768px) {
  .form__message .form__data,
  .form__message .form__error {
    grid-column: 2/-1;
  }
}
@media screen and (min-width: 768px) {
  .form__error {
    grid-column: 2/3;
  }
}
.form__ttl {
  display: flex;
  align-items: center;
  row-gap: var(--min8);
  column-gap: var(--min8);
  font-weight: bold;
  height: var(--min40);
}
@media not screen and (min-width: 768px) {
  .form__ttl {
    row-gap: var(--min10-sp);
    column-gap: var(--min10-sp);
    height: auto;
  }
}
.form__ttl span {
  font-weight: normal;
}
.form__ttl p span {
  display: block;
  font-size: var(--min12);
}
@media not screen and (min-width: 768px) {
  .form__ttl p span {
    font-size: var(--min12-sp);
  }
}
.form__ttl .tts_label--important {
  font-size: var(--min10);
}
@media not screen and (min-width: 768px) {
  .form__ttl .tts_label--important {
    font-size: var(--min10-sp);
  }
}
.form__data {
  display: grid;
}
.form__span {
  grid-column: 1/span 2;
}
.form__dataColumn {
  display: flex;
  row-gap: 0;
  column-gap: 1em;
  align-items: center;
}
.form__dataColumn > div {
  flex-grow: 1;
  display: grid;
  grid-template-columns: auto 1fr;
  align-items: center;
  row-gap: 0;
  column-gap: 0.5em;
}
@media not screen and (min-width: 768px) {
  .form__name .form__data {
    row-gap: var(--min24-sp);
  }
}
@media screen and (min-width: 768px) {
  .form__note {
    grid-column: 2/-1;
  }
}
.form__address .form__data {
  gap: var(--min40);
}
.form__address .form__dataColumn {
  display: grid;
  grid-template-columns: 6em 1fr;
  gap: 0 0.5em;
}
.form__inputTtl {
  margin-right: 0.75em;
  font-weight: bold;
  line-height: 1.3;
  white-space: nowrap;
}
.form__inputTtl span {
  font-size: var(--min12);
  font-weight: normal;
}
@media not screen and (min-width: 768px) {
  .form__inputTtl span {
    font-size: var(--min12-sp);
  }
}
.form__textArea textarea {
  display: block;
}

.closedDay {
  padding: var(--min16);
}
@media not screen and (min-width: 768px) {
  .closedDay {
    padding: var(--min16-sp);
  }
}
.closedDay__ttl {
  font-size: var(--min16);
  color: var(--red);
  font-weight: bold;
}
@media not screen and (min-width: 768px) {
  .closedDay__ttl {
    font-size: var(--min16-sp);
  }
}
.closedDay__list {
  font-size: var(--min12);
}
@media not screen and (min-width: 768px) {
  .closedDay__list {
    font-size: var(--min12-sp);
  }
}

.privacy__txt {
  margin-top: var(--min10);
}
@media not screen and (min-width: 768px) {
  .privacy__txt {
    margin-top: var(--min10-sp);
  }
}