@charset "UTF-8";
/* Scss Document */
.mwform-checkbox-field-text {
  opacity: 0;
}

.wpcf7-form-control-wrap {
  width: 100%;
}

.checkBox .wpcf7-form-control-wrap {
  width: auto;
}

.check br {
  display: none;
}

.contactTable.confirm .checkBox {
  display: none !important;
}

@media (min-width: 960px) {
  #head .inner .logo {
    width: 200px;
    height: 100px;
  }
  #head .inner .logo .icon {
    background-image: url("../images/common/logo_pc_color.png");
  }
}

#contents {
  padding-top: 120px;
}

@media (min-width: 768px) {
  #contents {
    padding-top: 80px;
  }
}

.flow {
  margin-bottom: 4rem;
}

.flow ul {
  list-style: none;
  padding: 0;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
  grid-gap: 1rem;
}

.flow ul .text {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-gap: 1rem;
}

.flow ul .text span {
  font-weight: normal;
  font-size: .8rem;
  line-height: 1;
  color: #8f1d22;
  width: 50px;
  height: 50px;
  border-radius: 50%;
  border: 1px solid #8f1d22;
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
  -webkit-justify-content: center;
      -ms-flex-pack: center;
          justify-content: center;
}

.flow ul .text.current span {
  background-color: #8f1d22;
  color: #FFF;
}

.flow ul .text:not(:last-child)::after {
  content: "";
  display: block;
  background-color: #8f1d22;
  height: 1px;
  width: 60px;
}

#lead {
  margin-bottom: 6rem;
}

#lead .text.min {
  font-size: .8rem;
}

#lead.send {
  text-align: center;
}

@media (min-width: 768px) {
  #lead {
    text-align: center;
  }
  #lead .text.min {
    margin-top: 2rem;
  }
  #lead .text.min span {
    display: block;
  }
}

.contactTable {
  margin: 0 auto 8rem;
  max-width: 800px;
}

.contactTable .row {
  font-weight: normal;
}

.contactTable .row .a {
  text-decoration: none;
  color: #FFF;
  background-color: #8f1d22;
  max-width: 200px;
  padding: .5rem 0;
  margin: auto;
  font-weight: bold;
}

.contactTable .row input * {
  font-weight: normal;
}

.contactTable .row input.min {
  max-width: 200px;
}

.contactTable .row textarea {
  resize: vertical;
}

.contactTable .row:not(:first-child) {
  margin-top: 2rem;
}

.contactTable .row .label {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  grid-gap: 1rem;
  margin-bottom: 1rem;
}

.contactTable .row .label.req:after {
  content: "必須";
  color: #e00025;
}

.contactTable .row.checkBox {
  margin-top: 4rem;
}

.contactTable .row.checkBox .check {
  display: -webkit-box;
  display: -webkit-flex;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
  -webkit-align-items: center;
      -ms-flex-align: center;
          align-items: center;
  gap: 1rem;
  font-weight: normal;
  cursor: pointer;
  position: relative;
}

.contactTable .row.checkBox .check input {
  display: none;
}

.contactTable .row.checkBox .check .error {
  position: absolute;
  bottom: -30px;
}

.contactTable .row.checkBox .check .mwform-checkbox-field {
  display: none;
}

.contactTable .row.checkBox .check .checkIcon {
  width: 28px;
  height: 28px;
  border: 2px solid #333;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-flex-shrink: 0;
      -ms-flex-negative: 0;
          flex-shrink: 0;
  position: relative;
  background-color: #fff;
}

.contactTable .row.checkBox .check .checkText {
  color: #333;
}

.contactTable .row.checkBox .check input:checked ~ .checkIcon {
  background-color: #8f1d22;
  border-color: #8f1d22;
}

.contactTable .row.checkBox .check input:checked ~ .checkIcon::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 2px;
  width: 6px;
  height: 15px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.contactTable .row.checkBox .check:has(input:checked) .checkIcon {
  background-color: #8f1d22;
  border-color: #8f1d22;
}

.contactTable .row.checkBox .check:has(input:checked) .checkIcon::after {
  content: "";
  position: absolute;
  left: 8px;
  top: 2px;
  width: 6px;
  height: 15px;
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  -webkit-transform: rotate(45deg);
          transform: rotate(45deg);
}

.contactTable .row.buttonBox {
  text-align: center;
  margin-top: 4rem;
}

.contactTable .row.buttonBox p {
  width: 60%;
  max-width: 200px;
}

.contactTable .row.buttonBox button {
  background-color: #8f1d22;
  max-width: 200px;
  color: #FFF;
  width: 60%;
  padding: .5rem 0;
}

.contactTable .row.buttonBox button.back {
  background-color: #666666;
}

.contactTable .row.buttonBox button:not(:first-child) {
  margin-top: 2rem;
}

@media (min-width: 768px) {
  .contactTable .row.buttonBox button:not(:first-child) {
    margin-top: 0;
  }
}

@media (min-width: 768px) {
  .contactTable .row.checkBox .check {
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
  }
  .contactTable .row.buttonBox {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: center;
    -webkit-justify-content: center;
        -ms-flex-pack: center;
            justify-content: center;
    grid-gap: 2rem;
  }
  .contactTable .row.buttonBox .wpcf7-form-control:not(:first-child) {
    margin-top: 0rem;
  }
  .contactTable.confirm .row {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
    -webkit-align-items: flex-start;
        -ms-flex-align: start;
            align-items: flex-start;
  }
  .contactTable.confirm .row .label {
    min-width: 200px;
  }
}
/*# sourceMappingURL=contact.css.map */