@charset "UTF-8";

input:focus {
  background-color: yellow;
}

.tel {
  max-width: 850px;
  margin: 0 auto;
  margin-top: 200px;
  margin-bottom: 100px;
  border: 1px solid #293475;
}

.tel p {
  text-align: center;
  font-size: 30px;
  padding: 20px 0;
  line-height: 70px;
}

.tel p a,.telTxt {
  font-size: 60px;
  color: #293475;
  font-weight: bold;
}

.contactformbg {
  margin-bottom: 80px;
}

.contactform {
  max-width: 1130px;
  margin: 0 auto;
  background: #f2f2f2;
}

.contactform {
  max-width: 1130px;
  margin: 0 auto;
  background: #f2f2f2;
}

.complete{
  margin: 0;
  line-height: 1.5;
}

.formTtl-complete{
  font-size: 2.4rem !important;
  font-weight: bold;
  margin-bottom: 30px;
  text-align: left !important;
}

.contactform h3 {
  text-align: center;
  font-size: 30px;
}

.contactform .contactform__p {
  text-align: center;
  margin-bottom: 32px;
}

.contactform dl {
  max-width: 1130px;
  margin: 0 auto;
  background: #fff;
  padding: 70px;
}

.contactform dl .intro {
  color: #ff0000;
  font-size: 14px;
}

.contactform dl dt {
  width: 300px;
  padding: 5px 50px 35px 0;
  box-sizing: border-box;
  margin-bottom: 35px;
  display: inline-block;
  position: relative;
}

@media screen and (max-width: 1100px) {
  .contactform dl dt {
    margin-bottom: 0;
  }
}


.contactform dl dt::before {
  content: "※";
  color: #ff0000;
}

.contactform dl .va__dt {
  vertical-align: top;
}

.contactform dl dd {
  width: 530px;
  height: 80px;
  font-size: 1.6rem;
  padding-bottom: 35px;
  margin-bottom: 35px;
  display: inline-block;
}


.contactform dl.stepConfirm {
    display: flex!important;
    flex-wrap: wrap!important;
}

.contactform dl.stepConfirm dt,.contactform dl.stepConfirm dd{
  border-bottom: 1px solid;
}

.contactform dl.stepConfirm dd{
  height: auto;
}


.contactform dl dd input {
  box-sizing: border-box;
  width: 100%;
  height: 100%;
  border: wheat;
  background: #f2f2f2;
}

.contactform dl dd textarea {
  width: 100%;
  height: 300px;
  box-sizing: border-box;
  border: wheat;
  background: #f2f2f2;
}

.contactform__flow {
  text-align: center;
  margin-bottom: 50px;
}

.contactform__flow-all {
  display: inline-block;
  max-width: 185px;
  width: 100%;
  height: 60px;
  border: solid 1px #9499b8;
  text-align: center;
  color: #293475;
  position: relative;
  line-height: 60px;
  background: #fff;
}

.thisStep{
  border: solid 3px #293475!important;
}



.contactform__flow-all:not(:last-child) {
  margin-right: 50px;
}

.contactform__flow-1::after {
  content: "▶︎";
  position: absolute;
  top: 30%;
  right: -20%;
  line-height: 20px;
}

.contactform__flow-2::after {
  content: "▶︎";
  position: absolute;
  top: 30%;
  right: -20%;
  line-height: 20px;
}

.contactform__flow-all span{
  padding-left: 20px;
}



.agreeBox {
  text-align: center;
  line-height: 50px;
  margin-bottom: 30px;
}

.agreeBox strong{
  color: #293475;
  font-weight: bold;
  display: block;
  margin-bottom: 20px;
  text-align: center;
}


.agreeBox .agree-intro {
    font-size: 1.6rem;
    padding-bottom: 20px;
}

.agreeBox .agree-intro .icon-blank {
  color: #293475;
}

.btnBox {
  text-align: center;
  display: block;
  margin: 2% auto;
}


.btnBox button{
  max-width: 265px;
  max-height: 70px;
  width: 100%;
  height: 70px;
  position: relative;
  border: solid 1px #293475;
  background: #fff;
  font-size: 20px;
  color: #293475;
  cursor:pointer;
  transition: all 0.2s;
}

.btnBox button::hover{
    color: #fff;
    background: #293475;
    transition: all 0.2s;
}



.return,
.send{
    display: inline;
    margin-bottom:5px;
}


.iconMore, .iconBack {
    display: block;
    position: relative;
    padding-left: 12px;
    -webkit-transition: all 0.3s ease;
    transition: all 0.3s ease;
}

.iconMore{
  text-align: left;
}

.iconBack{
  text-align: right;
  padding-right: 12px;
}


.iconMore::before, .iconMore::after,
.iconBack::before, .iconBack::after {
    content: "";
    position: absolute;
}


.iconMore::before {
    border-bottom: 1px solid #293475;
    top: 14px;
    width: 70px;
    right: 10px;
}

.iconMore::after {
    right: 8px;
    top: 11px;
    border-top: solid 1px #293475;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
    width: 10px;
}

.iconBack::before {
  border-bottom: 1px solid #293475;
  top: 14px;
  width: 70px;
  left: 10px;
}

.iconBack::after {
  left: 8px;
  top: 11px;
  border-top: solid 1px #293475;
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  width: 10px;
}

.iconMore::hover::before,
.iconBack::hover::before{
    border-bottom: 1px solid #fff;
}

.iconMore::hover::after,
.iconBack::hover::after{
    border-top: solid 1px #fff;
}



.confirm {
    pointer-events: none;
    opacity: 0.5;
}

.confirm.clear {
    pointer-events: auto !important;
    cursor: pointer !important;
    transition: all 0.2s;
    opacity: 1 !important;
}

.formTtl {
    font-size: 2.4rem !important;
    font-weight: bold;
    margin-bottom: 30px;
    text-align: left !important;
}

.buttonStyle {
    max-width: 265px;
    max-height: 70px;
    width: 100%;
    height: 70px;
    position: relative;
    border: solid 1px #293475;
    background: #fff;
    font-size: 20px;
    color: #293475;
    cursor: pointer;
    transition: all 0.2s;
    margin: 70px auto 0;
    display: block;
}


@media screen and (min-width: 769px) {
  .fluid-box {
    width: 100vw;
    position: relative;
    left: 50%;
    transform: translateX(-50%);
    background: #f2f2f2;
    padding-top: 40px;
    padding-bottom: 70px;
  }
}

@media screen and (max-width: 1100px) {

.contactform dl.stepConfirm dt{
  border-bottom: none;
}

.contactform dl dd {
    width: 100%;
    display: inline-block;
    margin-left: 0;
}

}


@media screen and (max-width: 896px) {
  .contactform .contactform__p{
      padding: 0 2%;
      font-size: 1.6rem;
  }
}


@media screen and (max-width: 768px) {

.contactform .formTtl-complete{
  padding-top: 60px;
}

.tel {
    margin-top: 0;
    margin-bottom: 10%;
}


  .contactform dl {
    margin: 0 auto;
    background: #fff;
    padding: 0 2%;
  }

  .contactform dl p{
    margin-bottom: 10%;
    padding-top: 10%;
  }


  .contactform dl dt {
    box-sizing: border-box;
    margin-bottom: 5%;
    display: inline-block;
    position: relative;
  }
  .contactform dl dd {
    width: 98%;
    margin: 0;
    height: 80px;
    font-size: 1.6rem;
    margin-bottom: 5%;
    display: inline-block;
  }
  .tel p {
    text-align: center;
    font-size: 14px;
    padding: 20px 0;
    line-height: 30px;
  }
  .tel p a {
    font-size: 40px;
    color: #293475;
  }
  .agreeBox {
    margin: 50px auto;
  }

  .contactform__flow-1::after {
    top: 30%;
    right: -40%;
  }
  .contactform__flow-2::after {
    top: 30%;
    right: -40%;
  }
  .contactform .contactform__p {
    line-height: 30px;
  }
  .contactform dl dt {
    width: 300px;
    box-sizing: border-box;
    margin-bottom: 5%;
    padding: 0;
  }
  .contactform dl .intro {
    margin-bottom: 10%;
    padding-top: 10%;
  }

  .contactformbg {
      margin-bottom: 10%;
  }

.contactform dl dd textarea {
    height: 40vw;
}

.contactform {
  padding: 2% 0 0;
}

.confirm_conts .contactform {
    padding: 2% 0 1%;
}

.contactform h3{
  padding: 0 2%;
  font-size: 2rem;
}

.btnBox {
    margin: 4% auto 2%;
}


.contactform__flow {
    text-align: center;
    display: flex;
    width: 96%;
    margin: 0 auto 50px;
}

  .contactform__flow-all {
    display: block;
    /*margin: 0 auto 50px !important;*/
  }


.contactform__flow-all:not(:last-child) {
    margin-right: 5px;
}

.contactform__flow-all {
    max-width: initial;
    width: calc(100% / 3);
    height: auto;
    line-height: 1.5;
}

/*
  .contactform__flow-1::after {
      content: "▼";
      top: 30%;
      right: -55%;
  }

.contactform__flow-1::after,
.contactform__flow-2::after {
    content: "▼";
    top: 75px;
    right: auto;
    bottom: 0;
    left: 50%;
}
*/
.stepConfirm{
  padding: 5% 2% 2% !important;
}

.contactform__flow-all span {
    display: block;
}

.contactform__flow-all span{
  padding-left: 0px;
}

.formTtl {
    padding-top: 50px !important;
    padding-bottom: 0 !important;
    margin-bottom: 0 !important;
}

.confirm_conts .contactform__p {
    padding-top: 70px!important;
}

.complete_conts .contactform dl {
    padding: 0 2% 4%;
}

.complete_conts .contactform dl p {
    padding: 10% 2% !important;
    margin-bottom: 0!important;
}

}
