body {
  margin: 0;
  padding: 0;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
a {
  color: #555;
  text-decoration: none;
}
p {
  margin: 0;
  color: #535353;
  font-size: 14px;
}
h1,h2,h3,h4,h5,h6 {
  color: #4e80a9;
  margin: 0;
  font-weight: normal;
}
h2 {
  font-family: 'Montserrat', sans-serif;
}
ul,li {
  list-style: none;
  box-sizing: border-box;
  margin: 0;
  padding: 0;
}


.pconly {
  display: block;
}
.sponly {
  display: none;
}
.hum_menu_wrap {
  display: none;
}



.reason_cont,
.service_cont ul,
.counseling .sec_ttl1,
.counseling_merit,
.counseling_merit.set,
.total_fv,
.consultation,
.total_cont,
.escort_fv,
.escort_cont,
.magazine {
  transform: translateY(5%);
  opacity: 0;
  transition: 2s;
}
















header {
  opacity: 0;
  transition: 2s;
  height: 100vh;
  background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 50%,#fff 50%,#fff 100%);
}

header .menu_wrap {
  display: flex;
  position: fixed;
  justify-content: space-between;
  z-index: 1;
  transition: .5s;
  width: 100%;
  top: 0;
  left: 0;
}
header .menu {
  width: 50%;
  display: flex;
  justify-content: space-between;
  padding: 2.5% 3%;
  min-width: 717px;
}
header .menu a {
  color: #1c4271;
  font-size: 14px;
}


header .visual {
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%,-50%);
    width: 90%;
    margin: 0 auto;
    height: 80vh;
    background-image: url('img/kv.jpg');
    background-repeat: no-repeat;
    background-size: cover;
    background-position: center;
}

header .visual p {
  display: none;
  width: 100%;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  color: #fff;
  font-size: 40px;
  letter-spacing: 2px;
  text-align: center;
  text-shadow: rgb(4, 46, 56,.5) 0px 0px 6px;
}

header .visual p .span1 {
  font-size: 45px;
  letter-spacing: 5px;
}
header .visual p .span2 {
  display: block;
  font-size: 24px;
  letter-spacing: 5px;
  padding: 3% 0;
}

header .visual .count {
  display: none;
  position: absolute;
  bottom: 6%;
  left: 3%;
  text-align: center;
  background-color: #fff;
  border-radius: 10000px;
  width: 160px;
  height: 160px;
}
header .visual .count b {
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
  position: absolute;
  font-size: 13px;
  font-weight: normal;
  width: 100%;
  color: #4e80a9;
}
header .visual .count b span {
  font-size: 40px;
}
header .logo {
  width: 14%;
  align-self: center;
  padding: 0 3%;
}
header .line_acc {
  position: fixed;
  bottom: 0;
  right: 0;
  background-color: #4CAF50;
  color: #fff;
  padding: 2%;
  z-index: 10000;
  transition: .5s;
}
header .line_acc span {
  display: block;
  text-align: center;
  border-radius: 10000px;
  background-color: #fff;
  color: #4CAF50;
  margin-bottom: 10%;
}
header .line_acc b {
  display: block;
  margin-top: 3%;
}
header .line_acc b:before {
  display: block;
  content: '';
  width: 7px;
  height: 7px;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 88%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(45deg);
}
.hum_menu {
  display: none;
}
.hum_menu_wrap {
  display: none;
}

.main_ttl {
  background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 50%,#fff 50%,#fff 100%);
  padding: 4% 0 10%;
}
.main_ttl p {
  font-size: 28px;
  line-height: 64px;
  color: #4e80a9;
  display: block;
  text-align: center;
}

.sec_ttl1 {
  display: flex;
  width: 80%;
  justify-content: space-between;
  margin: 0 auto;
  padding: 8% 0 6%;
}
.sec_ttl1 h2 {
  font-size: 47px;
  display: block;
  width: 45%;
}
.sec_ttl1 h2 span {
  font-size: 16px;
  display: block;
}
.sec_ttl1 p {
  display: block;
  width: 45%;
  line-height: 28px;
}




/*--reason--*/
.reason {
    background: linear-gradient(0deg, #eff4f9 0%,#eff4f9 75%,#fff 75%,#fff 100%);
    padding-bottom: 100px;
}
.reason .sec_ttl1 h2 span {
    display: block;
    margin-top: 2%;
    padding-left: 0;
}
.reason_cont {
  width: 80%;
  margin: 0 auto;
}
.reason_cont ul {
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  position: relative;
}

.reason_cont ul li:first-child,
.reason_cont ul li:nth-child(3),
.reason_cont ul li:nth-child(5),
.reason_cont ul li:last-child {
  width: 45%;
  position: relative;
  margin-bottom: 10%;
}
.reason_cont ul li:nth-child(2),
.reason_cont ul li:nth-child(6) {
  width: 5%;
  margin-bottom: 10%;
  position: relative;
}
.reason_cont ul li:nth-child(4) {
  position: absolute;
  width: 5%;
  top: 45%;
  left: 50%;
  transform: translate(-50%,-50%) rotate(135deg);
}
.reason_cont ul li:before{
  position: absolute;
  background-color: #4e80a9;
  padding: 3.5% 5%;
  color: #fff;
}
.reason_cont ul li:first-child:before{
  content: '1';
}
.reason_cont ul li:nth-child(3):before{
  content: '2';
}
.reason_cont ul li:nth-child(5):before{
  content: '3';
}
.reason_cont ul li:last-child:before{
  content: '4';
}
.reason_cont ul li p {
  text-align: center;
  padding: 5% 0;
  background-color: #fff;
  color: #4e80a9;
}



.reason_concern {
  width: 80%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.reason_concern h3 {
  display: block;
  font-size: 24px;
  width: 25%;
}
.reason_concern h3 span {
  font-size: 9px;
  display: block;
  padding: 8% 0 0;
}
.reason_concern ul {
  width: 70%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.reason_concern ul li {
  width: 45%;
  position: relative;
  border-top: solid 1px #d1d1d1;
  padding: 6% 0;
}
.reason_concern ul li:nth-child(3),
.reason_concern ul li:last-child{
  border-bottom: solid 1px #d1d1d1;
}
.reason_concern ul li p {
}


/*--reason--*/












/*--service--*/
.service {
  padding-bottom: 100px;
  margin-bottom: 100px;
}
.service .sec_ttl1 {
  align-items: baseline;
}
.service .sec_ttl1 h2 span {
  display: inline-block;
  padding-left: 5%;
}

.service_cont {
  padding: 0 0 7%;
  background: linear-gradient(-90deg, #f6f6f6 0%,#f6f6f6 80%,#fff 80%,#fff 100%);
}
.service_cont ul {
  display: flex;
  justify-content: space-between;
  padding: 0 10%;
  background:linear-gradient(180deg, #fff 0%,#fff 17%,rgba(0,0,0,0) 17%,rgba(0,0,0,0) 100%);
}
.service_cont ul li {
  width: 29%;
}
.service_cont ul li h4 {
  margin: 8% 0;
  line-height: 25px;
  font-size: 15px;
}
.service_cont ul li p {
  line-height: 28px;
}

/*--service--*/






/*--counseling--*/
.counseling {
background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 65%,#fff 65%,#fff 100%);
}
.counseling .sec_ttl1 {
    width: 90%;
    margin: 0 0 0 auto;
    padding: 8% 0 6%;
}
.counseling .sec_ttl1 ul {
  align-items: center;
  display: flex;
  justify-content: space-between;
}
.counseling .sec_ttl1 ul li:first-child{
  width: 30%;
}
.counseling .sec_ttl1 ul li:last-child{
  width: 60%;
}
.counseling .sec_ttl1 ul li h2 {
  width: 100%;
}
.counseling .sec_ttl1 ul li h2 span {
  padding: 3% 0 15%;
}
.counseling .sec_ttl1 ul li p {
  width: 100%;
}




.counseling_merit {
  width: 80%;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}
.counseling_merit h3 {
  display: block;
  font-size: 24px;
  width: 20%;
  text-align: right;
}
.counseling_merit h3 span {
  font-size: 9px;
  display: block;
  padding: 8% 0 0;
}
.counseling_merit ul {
  width: 80%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
.counseling_merit ul li {
  width: 45%;
  margin-bottom: 10%;
}
.counseling_merit ul li h4 {
    padding: 9% 0 3%;
}
.counseling_merit ul li p {
  line-height: 28px;
}

.counseling_merit.set {
  background: linear-gradient(0deg, #eff4f9 0%,#eff4f9 75%,rgba(0,0,0,0) 75%,rgba(0,0,0,0) 100%);
  width: 80%;
  padding: 0 10%;
  position: relative;
}
.counseling_merit.set h3 {
  text-align: left;
}
.counseling_merit.set a {
  position: absolute;
  bottom: 16%;
  left: 10%;
  text-align: center;
  font-size: 14px;
  color: #4e80a9;
  padding: 2.5% 2%;
  background-color: #fff;
  border-radius: 10000px;
}
/*--counseling--*/






/*--total--*/

.total_c {

}
.total .sec_ttl1 h2{
  width: 100%;
}
.total .sec_ttl1 h2 span {
  display: inline-block;
  padding-left: 5%;
}

.total .total_fv {
  width: 90%;
  position: relative;
}
.total .total_fv p {
  width: 35%;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 5% 0 0 5%;
  background-color: #fff;
  line-height: 28px;
}


.total .consultation {
  display: flex;
  justify-content: space-between;
  width: 90%;
  margin-left: auto;
  align-items: center;
  padding: 8% 0;
}
.total .consultation li:first-child{
  width: 30%;
}
.total .consultation li:last-child{
  width: 65%;
}
.total .consultation li h2 {
  width: 100%;
  font-size: 24px;
}
.total .consultation li h2 span {
  padding: 3% 0 15%;
  font-size: 9px;
  display: block;
}
.total .consultation li p {
  width: 80%;
  line-height: 28px;
}


.total_cont {
  padding: 0 0 7%;
  margin: 0 auto;
  background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 82%,#fff 82%,#fff 100%);
}
.total_cont h2 {
  padding: 3% 10%;
  background-color: #fff;
}
.total_cont h2 span {
  font-size: 9px;
  display: block;
  padding: 1% 0;
}
.total_cont ul {
  display: flex;
  justify-content: space-between;
  background:linear-gradient(180deg, #fff 0%,#fff 17%,rgba(0,0,0,0) 17%,rgba(0,0,0,0) 100%);
  padding: 0 10%;
}
.total_cont ul li:first-child,
.total_cont ul li:nth-child(3),
.total_cont ul li:nth-child(5),
.total_cont ul li:last-child {
  width: 19%;
  position: relative;
}
.total_cont ul li:first-child:before,
.total_cont ul li:nth-child(3):before,
.total_cont ul li:nth-child(5):before,
.total_cont ul li:last-child:before {
  position: absolute;
  background-color: #4e80a9;
  padding: 3.5% 5%;
  color: #fff;
}
.total_cont ul li:first-child:before{
  content: '1';
}
.total_cont ul li:nth-child(3):before{
  content: '2';
}
.total_cont ul li:nth-child(5):before{
  content: '3';
}
.total_cont ul li:last-child:before{
  content: '4';
}
.total_cont ul li:nth-child(2),
.total_cont ul li:nth-child(4),
.total_cont ul li:nth-child(6) {
  width: 3%;
}
.total_cont ul li:nth-child(2) img,
.total_cont ul li:nth-child(4) img,
.total_cont ul li:nth-child(6) img {
  padding-top: 190%;
}
.total_cont ul li h4 {
  margin: 15% 0 10%;
  color: #4e80a9;
  font-size: 15px;
}
.total_cont ul li p {
  line-height: 28px;
}
/*--total--*/









/*--line--*/
.line {
  background-color: #4c7fa9;
  padding: 6% 0;
}
.line a,
.line b {
  display: block;
  width: 25%;
  margin: 0 auto;
  font-weight: normal;
  color: #fff;
  letter-spacing: 1px;
}
.line b {
  display: flex;
  justify-content: center;
  align-items: center;
  padding-bottom: 2%;
}
.line b img {
  width: 10%;
  display: block;
}
.line b span {
  display: block;
  padding-left: 5%;
}
.line a {
    font-size: 12px;
    text-align: center;
    background-color: #5bb05b;
    padding: 1% 0;
    border-radius: 1000px;
}

/*--line--*/















/*--escort--*/
.escort .sec_ttl1 h2 {
    width: 100%;
}
.sec_ttl1 h2 span {
  display: inline-block;
  padding-left: 5%;
}

.escort .escort_fv {
  width: 90%;
  position: relative;
}
.escort .escort_fv p {
  width: 35%;
  position: absolute;
  bottom: 0;
  right: 0;
  padding: 5% 0 0% 5%;
  background-color: #fff;
  line-height: 28px;
}
.escort .escort_fv p span {
  font-size: 110%;
}

.escort_cont {
  padding: 7% 0;
  margin: 0 0 8%;
  background: linear-gradient(-90deg, #eff4f9 0%,#eff4f9 80%,#fff 80%,#fff 100%);
}
.escort_cont ul {
  padding: 0 10%;
  display: flex;
  justify-content: space-between;
}
.escort_cont ul li {
  width: 29%;
}
.escort_cont ul li h4 {
  padding: 9% 0 3%;
  line-height: 25px;
  font-size: 15px;
}
.escort_cont ul li p {
  line-height: 28px;
}
/*--escort--*/








/*--faq--*/
.faq {
  display: flex;
  justify-content: space-between;
  width: 80%;
  margin: 0 auto;
  padding: 7% 0;
}
.faq .left {
  width: 20%;
}
.faq .left h2 {
  font-size: 47px;
}
.faq .left h2 span {
  font-size: 16px;
  margin-top: 7%;
  display: block;
}
.faq .left .select {
  margin-top: 100px;
}
.faq .left .select p {
  margin-bottom: 10%;
  display: block;
}
.faq .left .select p:hover{
  font-weight: bold;
}
.faq .left .select p.open {
  color: #4e80a9;
  font-weight: bold;
}
.faq .left .select p.open:before {
  content: '・';
  font-weight: bold;
  font-size: 21px;
  display: inline-block;
  vertical-align: middle;
}


.faq ul {
  width: 75%;
  display: none;
}
.faq ul.open {
  display: block;
}
.faq ul li {
  padding: 5% 0;
  border-top: solid 1px #d1d1d1;
  align-items: center;
}
.faq ul li:hover {
  background-color: #f9f9f9;
}
.faq ul li:last-child{
  border-bottom: solid 1px #d1d1d1;
}
.faq ul li p {
  display: block;
  width: 85%;
}
.faq ul li span {
  display: block;
  font-size: 30px;
  font-family: 'Montserrat', sans-serif;
  color: #4e80a9;
  margin-right: 5%;
}
.faq ul li b {
  width: 2px;
  height: 20px;
  background-color: #4e80a9;
  position: relative;
  margin: 0 4% 0 auto;
}
.faq ul li b:before{
  content: '';
  display: block;
  position: absolute;
  width: 20px;
  background-color: #4e80a9;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
.faq ul li .question,
.faq ul li .answer {
  display: flex;
  align-items: center;
}
.faq ul li .answer {
  margin-top: 3%;
  display: none;
  transition: 1s;
}
/*--faq--*/









/*--magazine--*/
.magazine {
  padding: 0 0 7%;
  margin: 8% 0 0;
  background: linear-gradient(0deg, #f6f6f6 0%,#f6f6f6 80%,#fff 80%,#fff 100%);
}
.magazine ul {
  padding: 0 10%;
  display: flex;
  justify-content: space-between;
}
.magazine ul li {
  width: 35%;
}
.magazine ul li h4 {
  padding: 9% 0 3%;
  line-height: 25px;
  font-size: 15px;
}
.magazine ul li p {
  line-height: 28px;
}
.magazine ul li:first-child {
 width: 20%;
}
.magazine ul li:first-child h2 {
  font-size: 24px;
  font-family: -apple-system, BlinkMacSystemFont, Roboto, "Segoe UI", "Helvetica Neue", HelveticaNeue, YuGothic, "Yu Gothic Medium", "Yu Gothic", Verdana, Meiryo, sans-serif;
}
.magazine ul li:first-child h2 b{
  display: block;
  font-size: 18px;
  font-weight: normal;
  margin-bottom: 5%;
}
.magazine ul li:first-child h2 span {
  display: block;
  font-size: 9px;
  line-height: 18px;
  margin-top: 5%;
}
/*--magazine--*/







/*--campany--*/
.campany {
  display: flex;
  justify-content: space-between;
  width: 80%;
  margin: 0 auto;
  padding: 7% 0;
}
.campany .left {
  width: 20%;
}
.campany .left h2 {
  font-size: 47px;
}
.campany .left h2 span {
  font-size: 16px;
  margin-top: 7%;
  display: block;
}


.campany ul {
  width: 70%;
}
.campany ul li {
  display: flex;
  justify-content: space-between;
  padding: 5% 0;
  border-top: solid 1px #d1d1d1;
}
.campany ul li:last-child{
  border-bottom: solid 1px #d1d1d1;
}
.campany ul li p {
  display: block;
  width: 100%;
  line-height: 28px;
}
.campany ul li span {
  display: inline-block;
  font-size: 14px;
  font-family: 'Montserrat', sans-serif;
  color: #4e80a9;
  width: 20%;
  line-height: 28px;
}
.campany ul li b {
  width: 2px;
  height: 20px;
  background-color: #4e80a9;
  position: relative;
  margin-right: 4%;
}
.campany ul li b:before{
  content: '';
  display: block;
  position: absolute;
  width: 20px;
  background-color: #4e80a9;
  height: 2px;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
/*--campany--*/







/*--footer--*/
footer {
  background-color: #eff4f9;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
footer .logo {
  width: 11%;
  padding: 0 3%;
}
footer .menu {
  width: 55%;
  margin-left: auto;
  display: flex;
  justify-content: space-between;
  padding: 6% 3%;
}
footer .menu a {
  color: #1c4271;
  font-size: 14px;
}
/*--footer--*/






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

.sec_ttl1,
.reason_cont,
.reason_concern,
.counseling_merit,
.total .consultation,
.faq,
.campany {
    width: 90%;
}
.service_cont ul {
    padding: 0 5%;
}
.counseling .sec_ttl1,
.total .total_fv,
.escort .escort_fv {
    width: 95%;
}
.counseling_merit.set {
    width: 90%;
    padding: 0 5%;
}
.total_cont h2 {
    padding: 3% 5%;
}
.total_cont ul,
.escort_cont ul,
.magazine ul {
    padding: 0 5%;
}
.campany ul {
    width: 60%;
}
footer .menu {
    width: 70%;
}






}

@media only screen and (min-width:481px) and (max-width:1200px) {
  header .logo {
      min-width: 200px;
  }
}

@media screen and (max-width:980px) {
header .menu {
  display: none;
}
header .menu_wrap {
    padding: 3%;
}
header .visual .count {
    display: none;
    position: absolute;
    bottom: 2%;
    left: 3%;
    text-align: center;
    background-color: #fff;
    border-radius: 10000px;
    width: 130px;
    height: 130px;
}
header .visual .count b span {
    font-size: 30px;
}

.hum_menu {
  display: block;
  position: fixed;
  width: 40px;
  height: 2px;
  background-color: #4e80a9;
  top: 4%;
  right: 7%;
  z-index: 2;
}
.hum_menu:before{
  position: absolute;
  content: '';
  width: 40px;
  height: 2px;
  top: 7px;
  background-color: #4e80a9;
}
.hum_menu:after{
  position: absolute;
  content: '';
  width: 40px;
  height: 2px;
  top: -7px;
  background-color: #4e80a9;
}

.hum_menu_wrap {
  position: fixed;
  width: 100%;
  background-color: rgba(0,0,0,.2);
  top: 0;
  left: 0;
  z-index: 3;
}
.hum_menu_wrap ul {
  display: flex;
  height: 100vh;
}
.hum_menu_wrap ul li:first-child {
  width: 70%;
}
.hum_menu_wrap ul li:last-child {
  width: 30%;
  background-color: #4e80a9;
  position: relative;
}
.hum_menu_wrap ul li:last-child img {
  width: 60%;
}
.hum_menu_wrap ul li:last-child .list {
  padding: 50% 0 0 10%;
}
.hum_menu_wrap ul li:last-child .list a {
  font-size: 15px;
  color: #fff;
  margin-bottom: 15%;
  display: block;
}
.hum_menu_wrap ul li:last-child a.line_acc_hum {
  position: absolute;
  bottom: 0;
  width: 100%;
  line-height: 30px;
  margin: 0;
  left: 0;
  padding: 15% 0 15% 10%;
  background-color: #4CAF50;
}
.hum_menu_wrap ul li:last-child a.line_acc_hum:before{
  display: block;
  content: '';
  width: 7px;
  height: 7px;
  border-bottom: solid 2px #fff;
  border-right: solid 2px #fff;
  position: absolute;
  top: 50%;
  right: 15%;
  transform: translate(-50%,-50%) rotate(-45deg);
}
.hum_menu_wrap ul li:last-child .hum_close{
  display: block;
  color: #fff;
  position: absolute;
  top: 3.5%;
  right: 4%;
  transform: translate(-50%,-50%) rotate(0deg);
  font-size: 35px;
}
header .logo {
    width: 18%;
    top: 1%;
    left: 4%;
}
header .line_acc {
    font-size: 14px;
    padding: 3% 3% 4% 3%;
    bottom: 3%;
}
header .line_acc span {
    font-size: 13px;
    padding: 2% 0;
}
header .line_acc b:before {
    top: 90%;
}

}










/*スマートフォン*/
@media screen and (max-width:768px) {
p {
  font-size: 13px;
}
h2,h3,h4 {
    font-weight: 600;
}
.pconly {
  display: none !important;
}
.sponly {
  display: block !important;
}





header .visual {
  width: 80%;
  height: 70vh;
  position: absolute;
  top: 50%;
  left: 50%;
  transform: translate(-50%,-50%);
}
header .visual p {
    font-size: 24px;
    width: 100%;
}
header .visual p .span1 {
    font-size: 26px;
}
header .visual p .span2 {
    font-size: 13px;
}


.main_ttl {
    padding: 4% 0 30%;
}
.main_ttl p {
    font-size: 18px;
    line-height: 40px;
}

.sec_ttl1 {
    display: block;
    padding: 15% 0 6%;
}
.sec_ttl1 h2 {
    font-size: 38px;
    width: 100%;
    line-height: 40px;
    margin-bottom: 5%;
}
.sec_ttl1 h2 span {
    display: inline-block;
    padding-left: 0;
    font-size: 14px;
    font-weight: 600;
}
.sec_ttl1 p {
    width: 100%;
    font-size: 13px;
}




.reason {
    background: linear-gradient(0deg, #eff4f9 0%,#eff4f9 75%,#fff 75%,#fff 100%);
    padding-bottom: 60px;
}
.reason_cont ul li:first-child, .reason_cont ul li:nth-child(3), .reason_cont ul li:nth-child(5), .reason_cont ul li:last-child {
    width: 100%;
}
.reason_cont ul li:nth-child(2),
.reason_cont ul li:nth-child(4),
.reason_cont ul li:nth-child(6) {
  width: 10%;
  margin-bottom: 10%;
  position: inherit;
  top: inherit;
  left: 45%;
  transform: rotate(90deg);
}
.reason_cont ul li p {
    font-weight: 600;
    font-size: 15px;
}


.reason_concern {
    display: block;
    margin: 10% auto 0;
}
.reason_concern h3 {
    display: block;
    font-size: 20px;
    width: 100%;
    margin-bottom: 10%;
}
.reason_concern h3 span {
    font-size: 9px;
    display: block;
    padding: 5% 0 0;
}
.reason_concern ul {
    width: 100%;
    display: block;
    flex-wrap: wrap;
}
.reason_concern ul li {
    width: 100%;
    padding: 8% 0;
}
.reason_concern ul li p {
    font-size: 12px;
}
.reason_concern ul li:nth-child(3) {
  border-bottom: none;
}





.service {
    padding-bottom: 0px;
    margin-bottom: 70px;
}
.service_cont {
    background: linear-gradient(-90deg, #f6f6f6 0%,#f6f6f6 70%,#fff 70%,#fff 100%);
    padding: 0 0 5%;
}
.service .sec_ttl1 h2 span {
    display: block;
    padding-left: 0;
}
.service_cont ul {
    display: block;
    background: linear-gradient(180deg, #fff 0%,#fff 6%,rgba(0,0,0,0) 6%,rgba(0,0,0,0) 100%);
}
.service_cont ul li {
    width: 100%;
    margin-bottom: 15%;
}









.counseling {
    background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 72%,#fff 72%,#fff 100%);
}
.counseling .sec_ttl1 {
    padding: 8% 0 6% 10%;
    background: linear-gradient(180deg, #fff 0%,#fff 15%,rgba(0,0,0,0) 15%,rgba(0,0,0,0) 100%);
}
.counseling .sec_ttl1 ul {
    flex-direction: column-reverse;
}
.counseling .sec_ttl1 ul li:first-child {
    width: 100%;
    margin-top: 10%;
}
.counseling .sec_ttl1 ul li:last-child {
    width: 100%;
}
.counseling .sec_ttl1 ul li p {
    width: 90%;
}
.counseling .sec_ttl1 ul li h2 span {
    padding: 3% 0 0%;
}
.counseling_merit {
    margin: 10% auto 0;
    width: 80%;
    flex-direction: column-reverse;
}
.counseling_merit h3 {
    display: block;
    font-size: 20px;
    width: 100%;
    text-align: left;
}
.counseling_merit h3 span {
    font-size: 9px;
    display: block;
    padding: 4% 0 10%;
}
.counseling_merit ul {
    width: 100%;
}
.counseling_merit ul li {
    width: 100%;
    margin-bottom: 10%;
}
.counseling_merit.set {
    flex-direction: column;
}
.counseling_merit.set a {
    position: initial;
    font-size: 12px;
    font-weight: bold;
    padding: 7% 2%;
    border-radius: 0;
    margin-bottom: 20%;
}









.total .sec_ttl1 h2 span {
    display: inline-block;
    padding-left: 0;
}
.total .total_fv {
    padding-bottom: 30%;
}
.total .total_fv p {
    width: 77%;
    right: -11%;
    padding: 8%;
}


.total .consultation {
    display: block;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto;
    align-items: center;
    padding: 8% 0;
}
.total .consultation li:first-child {
    width: 100%;
}
.total .consultation li:last-child {
    width: 100%;
    padding: 10% 0;
}
.total .consultation li p {
    width: 100%;
}
.total .consultation li h2 {
    font-size: 20px;
}
.total .consultation li h2 span {
    padding: 3% 0 8%;
}


.total_cont {
    background: linear-gradient(90deg, #eff4f9 0%,#eff4f9 73%,#fff 73%,#fff 100%);
}
.total_cont h2 {
    font-size: 20px;
}

.total_cont ul {
    flex-wrap: wrap;
    position: relative;
    background: linear-gradient(180deg, #fff 0%,#fff 4.5%,rgba(0,0,0,0) 4.5%,rgba(0,0,0,0) 100%);
}
.total_cont ul li:first-child,
.total_cont ul li:nth-child(3),
.total_cont ul li:nth-child(5),
.total_cont ul li:last-child {
    width: 45%;
    margin-bottom: 15%;
}
.total_cont ul li:nth-child(2),
.total_cont ul li:nth-child(6) {
    width: 8%;
}

.total_cont ul li:nth-child(4) {
    position: absolute;
    top: 49%;
    left: 50%;
    width: 7%;
    transform: translate(-50%,-50%) rotate(135deg);
}
.total_cont ul li:nth-child(4) img {
  padding-top: 0;
}
.total_cont ul li:first-child:before, .total_cont ul li:nth-child(3):before, .total_cont ul li:nth-child(5):before, .total_cont ul li:last-child:before {
    position: absolute;
    background-color: #4e80a9;
    padding: 6% 10%;
    color: #fff;
}
.total_cont ul li:nth-child(2) img, .total_cont ul li:nth-child(4) img, .total_cont ul li:nth-child(6) img {
    padding-top: 160%;
}






.line {
    padding: 13% 0;
}
.line a, .line b {
    width: 50%;
}
.line a {
    padding: 2% 0;
    font-size: 15px;
}
.line b {
    padding-bottom: 2%;
}
.line b span {
    font-size: 18px;
    font-weight: 600;
}





.escort .escort_fv {
    padding-bottom: 30%;
}
.escort .escort_fv p {
    width: 77%;
    right: -11%;
    padding: 8%;
}
.escort_cont ul {
    flex-wrap: wrap;
    background: linear-gradient(180deg, #fff 0%,#fff 8%,rgba(0,0,0,0) 8%,rgba(0,0,0,0) 100%);
}
.escort_cont ul li {
    width: 100%;
    margin-bottom: 10%;
}








.faq {
    display: block;
    justify-content: space-between;
    width: 80%;
    margin: 0 auto;
    padding: 12% 0;
}
.faq .left {
    width: 100%;
    display: flex;
    justify-content: space-between;
}
.faq .left h2 {
  width: 50%;
  font-size: 40px;
}
.faq .left h2 span {
    font-size: 12px;
    margin-top: 5%;
}
.faq .left .select {
    margin-top: 0;
    width: 50%;
}
.faq ul {
    width: 100%;
}
.faq ul li {
    padding: 7% 0;
}
.faq ul li p {
    display: block;
    width: 65%;
}
.faq ul li span {
    font-size: 25px;
    margin-right: 10%;
}
.faq ul li b {
    height: 16px;
}
.faq ul li b:before {
    width: 16px;
}






.magazine ul {
    display: block;
}
.magazine ul li:first-child {
    width: 100%;
}
.magazine ul li {
    width: 100%;
    margin-bottom: 10%;
}
.magazine ul li:first-child h2 b {
    font-size: 15px;
    font-weight: 600;
}





.campany {
    display: block;
    padding: 15% 0;
}
.campany .left {
    width: 100%;
    margin-bottom: 10%;
}
.campany ul {
    width: 100%;
}
.campany ul li {
    display: block;
    padding: 10% 0px;
}
.campany .left h2 {
    font-size: 40px;
}




footer {
    flex-direction: column-reverse;
    align-items: flex-start;
}
footer .logo {
    width: 34%;
    padding: 0 10% 10% 7%;
}
footer .menu {
    width: 100%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    padding: 10%;
    box-sizing: border-box;
}
footer .menu a {
    display: block;
    width: 50%;
    text-align: left;
    margin-bottom: 5%;
    font-size: 12px;
}





}







@media screen and (max-width:480px) {
  .escort .escort_fv {
    padding-bottom: 70%;
  }
  .total .total_fv {
    padding-bottom: 70%;
  }
  .line a, .line b {
    width: 85%;
  }
  .line a {
    padding: 2% 0;
    font-size: 15px;
  }
  .line b {
    padding-bottom: 6%;
  }
  header .logo {
    width: 35%;
    top: 1%;
    left: 4%;
  }
  header .line_acc {
    font-size: 14px;
    padding: 5% 5% 7% 5%;
    bottom: 3%;
  }
  .hum_menu_wrap ul li:first-child {
    width: 40%;
  }
  .hum_menu_wrap ul li:last-child {
    width: 60%;
  }
}










