.p-relative{
    position: relative;
}
.img-fluid{
    max-width: 100%; height: auto; 
}
main{
    color: #262a2c;

}
.main{
   background: #383336;
   background-image: url(../images/consulting/main_bck.png);
   background-size: cover;
   background-repeat: no-repeat;
   padding: 160px 0;
   background-position: left bottom;
   /* height: 603px; */
}
.main_txt-con{
    width: 64%;
    background: rgb(243 243 243 / 77%);
    padding: 30px;
}
.main_txt-con > div{
    color: #262a2c;
    text-align: center;
    font-weight: bold;
    font-size: 18px;
}
.main_txt-con > div h2{
  margin: 0 0 20px;
  padding: 0 0 11px;
  font-size: 34px;
  border-bottom: 5px solid #BA383C;
  box-shadow: 0 2px 0px #929292;
}

.shop_contact{
    background-color: rgb(184 41 46 / 90%);
    color: #FFF;
    display: block;
    padding: 15px;
    width: 300px;
    text-align: center;
    font-size: 20px;
    margin: 20px auto 0;
    transition:0.8s;
}
.shop_contact:hover{
   background-color: #901418;
}

.webc_h3_title{
    text-align: center;
    margin: 40px 0 0;
}
.webc_h3_title h3,.webc_h3_title h2{
    display: inline-block;
    font-size: 30px;
    padding: 16px 35px;
    border-bottom: 5px solid #BA383C;
    box-shadow: 0 2px 0px #929292;
    font-weight: bold;
  
}

/* よくご相談いただくWeb集客のお悩み */
.offten_list{
    display: flex;
    justify-content: space-between;
    margin: 40px 0 0;
}
.offten_list li{
  text-align:center;
  width: 33%;
}
.offten_list li div{
  width: 105px;
  margin:auto;
}
.offten_list li dl dt{
  font-size: 20px;
  font-weight: bold;
  margin: 20px 0 10px;
}
.offten_list li dl dd{
  font-size: 15px;
}

.fllow_arrow{
    position: relative;
    padding: 0 0 100px;
}
.fllow_arrow:after{
    content: '';
    width: 0;
    height: 0;
    border-left: 80px solid transparent;
    border-right: 80px solid transparent;
    border-top: 50px solid #4B5961;
    position: absolute;
    bottom: 0;
    left: 50%;
    margin: 0 0 0 -80px;
}


.contact_disp{
    background-color: #F2F2F2;
    padding: 70px 0;
    margin: 200px 0 0;
}
.contact_disp h2{
    text-align: center;
    font-size: 35px;
    font-weight: bold;
    margin: 0 0 20px;
}

/* CTNではこういった悩みをワンストップで解決 */
.sub_midashi_txt{
    margin: 20px 0;
    text-align: center;
    font-weight: bold;
    font-size: 24px
}
.site_flow{
    padding: 30px;
    background-color: #F2F2F2;
}
.site_flow ul li{
    display: flex;
    position:relative;
    padding: 0 0 38px;
}
.site_flow_title{
    background-color: #4B5961;
    color: #FFF;
    font-size: 18px;
    font-weight: bold;
    width: 240px;
    text-align: center;
    padding: 15px 0;
}
.site_flow_txt{
    background-color: #FFF;
    padding: 15px;
    width: calc(100% - 240px);
    font-size: 16px;
}
.site_flow ul li:after{
    content: '';
    width: 0;
    height: 0;
    border-left: 30px  solid transparent;
    border-right: 30px solid transparent;
    border-top: 20px solid #BA383C;
    position: absolute;
    bottom: 12px;
    left: 89px;
}
.site_flow ul li:last-child{
    padding: 0 0 0px;  
}
.site_flow ul li:last-child:after{
  display:none;
}

/* 多彩なメニューでWeb集客を総合支援 */
.support_disp{
    padding: 30px 85px;
    background-color: #F2F2F2;
    margin: 43px 0 0;
}
.support_disp div{
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.support_disp dl{
    width: 48%;
    margin-top:15px;
    margin-bottom:15px;
}
.support_disp dl dt{
    background-color: #4B5961;
    color: #FFF;
    font-size: 22px;
    font-weight: bold;
    text-align: center;
    padding: 15px 0;
}
.support_disp dl dd{
  background-color:#FFF;
  padding: 30px 0;
  text-align:center;
  font-size:16px;
  line-height: 1.7;
}
.support_disp p{
    text-align: right;
}

/* 施策実績 */
.zisseki{
    padding:10px;
    background-color: #F2F2F2;
    margin: 40px 0 0;
}
.zisseki_in{
    display: flex;
    border: 2px solid #969696;
    border-radius: 10px;
    background-color: #FFF;
    padding: 10px;
    flex-wrap: wrap;
    justify-content:space-between;
}
.zisseki_in > div{
    border: 1px solid #cdcdcd;
    padding:10px;
}
.zisseki_in div:first-child,
.zisseki_in div:nth-child(2n){
  width:49%;
  margin:0 0 10px;
}
.zisseki_in div:last-child{
  width:100%;

}
.zisseki_in div:first-child p:nth-child(2n){
    font-size: 18px;
    font-weight: bold;
    margin:10px 0 5px;
    color:#524f75;
}
.zisseki_in div:first-child p:nth-child(2n) span{
  color:#c00000;
}

.zisseki_in h4{
  background-color:#C00000;
  display:inline-block;
  color:#FFF;
  font-size:16px;
  padding: 2px 16px 5px 15px;
  position: relative;
}



.zisseki_in h4:before {
    position: absolute;
    top: 4px;
    right: -10px;
    transform: rotate(45deg);
    content: '';
    border-width: 0 22px 22px 0px;
    border-style: solid;
    border-color: transparent #c00000 transparent transparent;
  }


/* よくある質問 */
.faq-con{
    max-width: 900px;
    margin: 40px auto;
}
.faq-con dl{
    box-shadow: 0 2px 2px #585858;
    border-bottom: 1px solid #707070;
    font-size: 18px;
}

.faq-con dt{
    background-color: #4B5961;
    padding: 15px 10px 15px 50px;
    color: #FFF;
    position:relative;
    
}
.faq-con dt:before{
    content:'Q:';
    position:absolute;
    left: 18px;
    top: 14px;
}
.faq-con dd{
    position:relative;
    background-color: #FFF;
    padding: 10px 10px 20px 69px;

    border-right: 1px solid #707070;
    border-left: 1px solid #707070;
    font-size: 16px;
}
.faq-con dd:before{
    content:'A:';
    position:absolute;
    left: 41px;
    top: 10px;
}



/**/
.link_title-con{
    background-color: #4B5961;
    padding: 17px 0;
}
.link_title-con h2{
    text-align:center;
    font-size: 28px;
    color: #FFF;
    font-weight: bold;
}
.shop_link{
    text-align: center;
    padding: 50px 20px;
}
.shop_link p{
  font-size:18px;
  font-weight:bold;
  margin:20px 0 0;
}
.shop_link a{
    transition: 0.7s;
}
.shop_link a:hover{
    opacity: 0.8;

}



@media(min-width: 1630px) {
    .main{
         background-position: center bottom -106px;
    }

}


@media(min-width: 2000px) {
    .main{
       background-size: 2400px;
       background-position: center bottom -206px;
       /* height: 603px; */
    }

}

@media(max-width:1024px) {
 
.main{
   padding: 100px 0;
}


}


@media(max-width:980px) {
  

}

@media(max-width:768px) {
  
  .fllow_arrow:after{
      border-left: 60px solid transparent;
      border-right: 60px solid transparent;
      border-top: 34px solid #4B5961;
      margin: 0 0 0 -60px;
      bottom: 9px;
  }

 
  .main_txt-con {
      width: 75%;
      margin:auto;
  }
 
    .main{
       padding: 50px 0;
    }


  .fllow_arrow {
      position: relative;
      padding: 0 0 70px;
  }

  .offten_list{
      display: block;
      margin: 40px auto 0;
      width: 90%;
  }
  .offten_list li{
    text-align:center;
    width: 100%;
    display:flex;
    margin: 0 0 30px;
    justify-content: space-between;
  }
  .offten_list li div {
      width: 82px;
  }  
  .offten_list li dl{
    width: calc(100% - 120px);
    text-align:left;
  }
   .offten_list li dl dt br,.offten_list li dl dd br{
     display:none;

   }
  .offten_list li dl dt{
    margin: 0px 0 10px;
  }

  .support_disp {
      padding: 20px;
      margin: 43px 0 0;
  }



   
}

@media(max-width:680px) {

    .main{
       padding: 30px 0;
    }
    .main_txt-con{
        width: 100%;
        margin:auto;
        padding: 10px;
    }
    .main_txt-con > div{
        padding: 15px;
        border-radius: 15px;
        font-weight: bold;
        font-size: 14px;
    }
    .main_txt-con > div h2{
      margin: 0 0 20px;
      font-size: 22px;
    }
  .shop_contact{
      padding: 15px;
      width: 300px;
      font-size: 16px;
      margin: 0px auto 0;
  }

  .webc_h3_title h3,.webc_h3_title h2{
      font-size: 20px;
      padding: 13px 0px;

  }

  .offten_list {
      display: block;
      margin: 40px auto 0;
      width: 100%;
  }  

  .offten_list li{
    text-align:center;
    width: 100%;
    display:flex;
    margin: 0 0 30px;
    justify-content: space-between;
    flex-wrap:wrap;
  }
  .offten_list li div {
      width: 60px;
  }  
  .offten_list li dl{
    width:100%;
    text-align:center;
  }
  .sub_midashi_txt{
      font-size: 18px
  }


  .site_flow {
      padding: 10px;
  }
  .site_flow ul li{
      display: block;
      padding: 0 0 38px;
  }
  .site_flow_title{
      font-size: 18px;
      width: 100%;
      padding: 10px 0;
  }
  .site_flow_txt{
      background-color: #FFF;
      padding: 10px;
      width: 100%;
      font-size: 16px;
  }


  .site_flow ul li:after{
      border-left: 30px  solid transparent;
      border-right: 30px solid transparent;
      border-top: 20px solid #BA383C;
      position: absolute;
      bottom: 12px;
      left: 50%;
      margin-left:-30px;
  }


  .support_disp {
      padding: 10px;
  }
  .support_disp dl{
      width: 100%;
      margin-top:7px;
      margin-bottom:7px;
  }

  .support_disp dl dt{
      font-size: 18px;
      padding: 10px 0;
  }
  .support_disp dl dd{
    padding: 10px 0;
  }
  .zisseki_in div:first-child,
  .zisseki_in div:nth-child(2n){
    width:100%;
    margin:0 0 10px;
  }


  .contact_disp{
      padding: 30px 0;
      margin: 50px 0 0;
  }
  .contact_disp h2{
      text-align: center;
      font-size: 22px;
      font-weight: bold;
      margin: 0 0 0;
  }

    

    .faq-con dl{
        font-size: 18px;
    }

    .faq-con dt{
        padding: 15px 5px 15px 35px;
    }
    .faq-con dt:before{
        left: 6px;
        top: 15px;
    }
    .faq-con dd{
        padding: 10px 10px 20px 35px;
        font-size: 16px;
    }
    .faq-con dd:before{
        left: 10px;
        top: 10px;
    }
.link_title-con h2{
    font-size: 22px;
}


}

@media(max-width:480px) {

   
   
}

@media(max-width:460px) {
  

   
}

@media(max-width:420px) {

  .main_txt-con > div {
      padding: 0px;
      border-radius: 15px;
      font-weight: bold;
      font-size: 14px;
  }  
   .main_txt-con > div h2 {
      margin: 0 0 20px;
      font-size: 20px;
  }

  .shop_contact{
      margin: 10px auto 0;
  }  

  .fllow_arrow:after{
      border-left: 40px solid transparent;
      border-right: 40px solid transparent;
      border-top: 24px solid #4B5961;
      margin: 0 0 0 -40px;
      bottom: 9px;
  }

  .shop_link{
      text-align: center;
      padding: 30px 20px;
  }

}



/* contact */

.contact-container {max-width: 700px;margin: auto;}
.contact-container > li {
    display: flex;
    flex-wrap: wrap;
    width: 100%;
    padding: 10px 7px;
    /* border-bottom: 1px solid #e4e4e4; */
}
.contact-container > li  div {
    display: table-cell;
    vertical-align: middle;
    padding: 0;
    box-sizing: border-box;
}
.contact-container > li  div:first-child {
    width: 100%;
    text-align: left;
    color: #1f2b61;
    font-weight: bold;
    margin: 0 0 6px 0px;
}
.contact-container > li  div:last-child {
    width: 100%;
    font-size: 15px;
    margin: 0 0 10px;
}
.contact-container > li  div:last-child p{
  width: 100%;
  border: 1px solid #d5d5d5;
  background-color: #fcfaf3;
    padding: 10px;
    line-height: 1.8;


}
.contact-container > li ul{
  display:flex;
  justify-content: space-around;
  flex-wrap: wrap;
  padding: 10px 0;
}
.contact-container > li ul li{
}
@media (max-width:768px) {
    .contact-container {
    }
    .contact-container li {
        display: block;
        /* padding: 20px 15px; */
    }
    .contact-container li div {
        display: block;
        padding: 0;
    }
    .contact-container li div:first-child {
        width: 100%;
        text-align: left;
        margin: 0 auto 5px;
    }
    .contact-container li div:last-child {
        width: 100%;
    }
  .contact-container > li ul li{
    width:100%;
    margin:0 0 10px
  }

}


/*---------- checkbox ----------*/

.interest_label {
  position: relative;
  padding: 0 0 0 30px;
    font-size: 15px;
    height: 25px;
}
.interest_label:hover:after {
  border-color: #d5d5d5
}
.interest_label:after,  .interest_label:before{
  position: absolute;
  content: "";
  display: block;
  top: 45%;
}
.interest_label:after {
  left: 0px;
  margin-top: -10px;
  width: 25px;
  height: 25px;
  border: 1px solid #d5d5d5;
  background-color: #ffffff;
}
.interest_label:before {
  left: 0px;
    top: 0;
  width: 25px;
  height: 25px;
  opacity: 0;
    background-image: url(../../common/images/bt/check.jpg);
    background-position: center;
    background-repeat: no-repeat;
    background-size: 23px auto;
}
input[type=checkbox]:checked + .interest_label:after {
  opacity: 0;
}
input[type=checkbox]:checked + .interest_label:before {
  opacity: 1;
}


/*---------- flag ----------*/
.highlight-red {
    background-color: #ea5703;
    color: #fff;
    padding: 2px 5px;
    margin: 0 0 0 15px;
    font-weight: normal;
}
.highlight-blue {
    background-color: #6290cf;
    color: #fff;
    padding: 2px 5px;
    margin: 0 0 0 15px;
    font-weight: normal;
    font-size: 11px;
}

/*---------- dec ----------*/
.note {
    color: #333333;
    line-height: 1.5;
    font-weight: 300
}
#address1 {
    margin: 0 20px 10px 0;
}
@media (max-width:768px) {
    #address1 {
        margin: 0px 0px ;
    }
}

.btn-container {
    margin: 40px auto 0;
    text-align: center
}
.btn-container li {
    display: inline-block;
    margin: 0 20px 0;
}
@media (max-width:768px) {
    .btn-container li{
        margin: 0 auto 20px !important;
    }
}

/*---------- width ----------*/
.w300 {
    width: 100%;
}
.w350 {
    width: 100%;
}
.w600 {
    width: 100%;
}
.w120 {
    width: 216px;
}
@media (max-width:768px) {
    .w600 {
        box-sizing: border-box;
        width: 100% !important;
    }
}
@media (max-width:480px) {
    .w300 {
         box-sizing: border-box;
        width: 100% !important;
    }
    .w350 {
       box-sizing: border-box;
        width: 100% !important;
    }
}
.edit_errors {
    margin: 10px auto;
    padding: 10px 20px;
    font-weight: 400px;
    font-size: 16px;
    line-height: 1.5;
    color: #ea3603;
    max-width: 700px;
    font-weight: bold;
}

.consulting-form-content {
    max-width: 700px;
    margin: auto;
}
.consulting-form-content .form-block {
    width: 100%;
    padding: 10px 7px;
}
.consulting-form-content .form-name {
    width: 100%;
    color: #1f2b61;
    font-weight: bold;
    margin: 0 0 6px 0px;
}
.consulting-form-content .form-name span {
    background-color: #ea5703;
    color: #fff;
    padding: 2px 5px;
    margin: 0 0 0 15px;
    font-weight: normal;
    font-size: 11px;
}
.consulting-form-content .form-input {
    width: 100%;
    font-size: 15px;
    margin: 0 0 10px;
}
.consulting-form-content .form-input input {
    width: 100%;
    background-color: #fff;
    border: 1px solid #d5d5d5;
    background-color: #ffffff;
    padding: 7px 10px;
    box-sizing: border-box;
    margin: 0 0;
}
.consulting-form-content .input-spec {
    width: 22%;
}
.consulting-form-content .form-input textarea {
    width: 100%;
    height: 150px;
    background-color: #fff;
    border: none;
}
.consulting-form-content span.wpcf7-list-item {
    margin: 10px 15px;
}
.consulting-form-content span.wpcf7-list-item-label {
    color: #1f2b61;
    font-weight: 500;
}
input.wpcf7-form-control.has-spinner.wpcf7-submit{
    color: #fff;
}
.consulting-form-content .form-name span.blue-iro {
    background-color: #6290cf!important;
    color: #fff;
    padding: 2px 5px;
    margin: 0 0 0 15px;
    font-weight: normal;
    font-size: 11px;
}
.form-input {
    color: #a7a7a7;
}