@charset "utf-8";
/* page
-------------------------------------------------------------- */
#guaidance a {
  color: #1ca2cf;
  text-decoration: underline;
}
#guaidance a:hover {
  text-decoration: none;
}
/* flow
-------------------------------------------------------------- */
#flow .txtLead {
  padding-bottom: 140px;
  text-align: center;
}
#flow h2 {
  margin-bottom: 30px;
  border-bottom: 4px solid #03af7a;
  width: 100%;
  font-size: 4.8rem;
  font-weight: 700;
  line-height: 1.4;
}
#flow .flowBox.arrow {
  position: relative;
  margin-bottom: 70px;
  padding-bottom: 140px;
}
#flow .flowBox.arrow::after {
  position: absolute;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  width: 58px;
  height: 76px;
  background: url(../img/guidance/arrow.png) no-repeat center / contain;
  content: "";
}
#flow .flowBox figure {
  padding-top: 20px;
  width: 25%;
}
.cvArea2 {
  margin: auto;
  width: 30%;
}
.cvArea2 figure {
  margin: auto;
  width: 100%!important;
}
#flow .flowBox .txtArea {
  width: 70%;
}
#flow .flowBox .txtArea p {
  font-weight: 500;
}
#flow .flowBox .txtArea p span {
  font-weight: 500;
}
#flow .flowBox .photo {
  padding: 70px 0;
}
#flow .txtNote {
  padding: 70px 0 140px;
  font-size: 1.8rem;
}
#flow h3 {
  padding-bottom: 70px;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
#flow .term .txtNote {
  margin: -40px 0 140px;
}
@media (max-width:1200px) {
  #flow .txtLead {
    padding-bottom: 100px;
  }
  #flow h2 {
    font-size: 3.5rem;
  }
  #flow .flowBox.arrow {
    margin-bottom: 50px;
    padding-bottom: 100px;
  }
  #flow .flowBox .photo {
    padding: 60px 0;
  }
  #flow .txtNote {
    padding: 50px 0 100px;
    font-size: 1.4rem;
  }
  #flow h3 {
    padding-bottom: 40px;
    font-size: 2.4rem;
  }
  #flow .term .txtNote {
    margin: -30px 0 70px;
  }
}
@media (max-width:767px) {
  #flow .txtLead {
    padding-bottom: 40px;
  }
  #flow h2 {
    margin-bottom: 10px;
    border-bottom: 2px solid #03af7a;
    font-size: 3rem;
  }
  #flow .flowBox.arrow {
    margin-bottom: 0;
    padding-bottom: 80px;
  }
  #flow .flowBox.arrow::after {
    width: 30px;
  }
  #flow .flowBox figure {
    padding: 10px 0 20px;
    margin: auto;
    width: 45%;
  }
  .cvArea2 {
    width: 40%;
  }
  .cvArea2 figure {
    padding: 0!important;
  }
  #flow .flowBox.flow02 figure {
    order: -1;
  }
  #flow .flowBox .txtArea {
    width: 100%;
  }
  #flow .flowBox .txtArea p::before {
    margin-right: 5px;
    width: 30px;
    vertical-align: -1.8rem;
  }
  #flow .flowBox .txtArea .btn {
    padding-top: 30px;
  }
  #flow .flowBox .photo {
    padding: 40px 0;
  }
  #flow .txtNote {
    padding: 30px 0 50px;
    font-size: 1.6rem;
  }
  #flow h3 {
    padding-bottom: 30px;
    font-size: 2.4rem;
  }
  #flow .term .txtNote {
    margin: -20px 0 50px;
  }
}
/* contactArea
-------------------------------------------------------------- */
#contactArea .contactBox {
  padding-bottom: 70px;
  margin-bottom: 70px;
  border-bottom: 2px solid #03af7a;
}
#contactArea h2 {
  margin-top: 120px;
  margin-bottom: 140px;
  padding: 15px;
  background: #03af7a;
  color: #fff;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
#contactArea h3 {
  padding-bottom: 70px;
  font-size: 3rem;
  font-weight: 700;
  text-align: center;
}
#contactArea .contactBox figure {
  padding-top: 20px;
  width: 18%;
}
#contactArea .contactBox .txtArea {
  width: 78%;
}
#contactArea .contactBox .txtArea p {
  font-weight: 500;
}
#contactArea .contactBox .txtArea p span {
  font-weight: 500;
}
#contactArea .contactBox .txtArea a {
  color: #03af7a;
}
#contactArea .contactBox .btn {
  padding-top: 100px;
}
#contactArea .contactBox .map {
  margin: 70px auto;
  width: 70%;
}
#contactArea #access {
  margin-bottom: 0;
  padding-bottom: 0;
  border-bottom: none;
}
@media (max-width:1200px) {
  #contactArea h2 {
    margin-bottom: 100px;
    font-size: 2.4rem;
    line-height: 1.4;
  }
  #contactArea h3 {
    padding-bottom: 40px;
    font-size: 2.4rem;
  }
  #contactArea .contactBox .btn {
    padding-top: 40px;
  }
}
@media (max-width:767px) {
  #contactArea .contactBox {
    padding-bottom: 40px;
    margin-bottom: 40px;
  }
  #contactArea h2 {
    margin-bottom: 30px;
    font-size: 2.4rem;
  }
  #contactArea h3 {
    padding-bottom: 30px;
    font-size: 2.4rem;
  }
  #contactArea .contactBox figure {
    padding: 0 0 20px;
    margin: auto;
    width: 30%;
    order: -1;
  }
  #contactArea .contactBox .txtArea {
    width: 100%;
  }
  #contactArea .contactBox .btn {
    padding-top: 50px;
  }
  #contactArea .contactBox .map {
    padding: 0;
    margin: 40px auto;
    width: 100%;
  }
}