.cppProblem img{max-width:100%}
.flex_box {
  display: flex;
}
.flex_box.jc_sb {
  justify-content: space-between;
}
.flex_box.flexwrap {
  flex-wrap: wrap;
}
.flex_box.alignc {
  align-items: center;
}
h3.sub_heading_blue {
  font-size: 28px;
  color: #2c52a9;
  line-height: 2;
}
h3.sub_heading_blue.f24{
  font-size: 24px;
  line-height: 2;
}
.font16px{
  font-size: 16px !important;
}
.font18px{
  font-size: 18px !important;
}
.font20px{
  font-size: 20px !important;
}
.lh_20{
  line-height: 2;
}
.lh_17{
  line-height: 1.7;
}
.lh_16{
  line-height: 1.6;
}
.lh_15{
  line-height: 1.5;
}
.lh_14{
  line-height: 1.4;
}
.is_sp {
    display: none;
}
.asterisk {
  padding-left: 1rem;
  font-size: 12px;
}
.asterisk::before {
  content: "※";
  margin-left: -1rem;
}
.heading_str_set {
  width: 100%;
  display: block;
  margin:60px auto 0 auto;
}
.heading_str_set.first {
  margin: 55px auto 0 auto;
}

.heading_str_set h3{
  background: #2c52a9;
  text-align: center;
  color: #fff;
  padding: 33px 0;
  font-size: 16px;
}

.hero_panel.is-line2.sdgs-B {
  padding: 30px 30px 25px;
}
.sc_notice {
  font-size: 22px;
  font-weight: 700;
  line-height: 2.;
  text-decoration: underline;
  margin-top: 100px;
  color: #2c52a9;
}
.proceeding__ttl__text span {
  color: #2c52a9;
  font-style: normal;
  display: inline-block;
  margin-right: 2rem;
}
.proceeding.sdgs-B .proceeding__02{
  padding: 0px;
}
.proceeding.sdgs-B .cppProblem{
  margin-top: 90px;
}
.contents.sdgs-B-first{
  padding-bottom: 140px;
}
@media only screen and (max-width: 768px) {
  .hero_panel.is-line2.sdgs-B{
    padding: 10px 15px;
  }
  .contents.sdgs-B-first{
    padding-bottom: 100px;
  }
  .is_pc {
    display: none !important;
  }
  .is_sp {
    display: block;
  }
  .cppProblem p {
    font-size: 14px;
  }
  .sp_font14px {
    font-size: 14px !important;
  }
  .sp_font16px {
    font-size: 16px !important;
  }
  .sp_font18px {
    font-size: 18px !important;
  }
  .sp-mt-2 {
    margin-top: 20px;
  }
   .sp-mt-3 {
    margin-top: 30px;
  }
  .sp-mt-4 {
    margin-top: 40px;
  }
  .sp-mt-4.first {
    margin-top: 50px;
  }
  .heading_str_set h3 {
    padding: 16px 0;
  }
  .heading_str_set.first,
  .heading_str_set {
    margin-top: 30px;
  }
  .proceeding.sdgs-B .cppProblem {
    margin-top: 30px;
  }
  .proceeding__02,
  .proceeding__03{
    margin-top: 50px;
    padding: 0 0;
  }
  .proceeding__04{
    padding: 0 0 30px 0;
  }
  .proceeding__ttl .proceeding__ttl__text {
    font-size: 18px;
  }
  .proceeding__ttl__text {
    font-size: 18px;
  }
  .proceeding__ttl__text span {
    display: block;
    margin-right: unset;
    font-size: 22px;
  }
  .sc_notice {
    font-size: 18px;
    font-weight: 700;
    line-height: 1.6;
    text-decoration: underline;
    margin-top: 50px;
  }

}


.heading_str_set ol {
  counter-reset:number; 
  list-style-type: none!important; 
  padding: 14px 23px;
  background: #f5faff;
}
.heading_str_set ol li {
  position: relative;
  line-height: 1.5em;
  padding: 9px 0 9px 40px;
  font-size: 18px;
  font-weight: 700;
}

.heading_str_set ol li:before{
  position: absolute;
  counter-increment: number;
  content: counter(number);
  display:inline-block;
  background: #2c52a9;
  color: white;
  font-family: 'Lato', sans-serif;    
  font-weight: 600;
  font-size: 20px;
  border-radius: 50%;
  left: 0;
  width: 28px;
  height: 28px;
  line-height: 25px;
  text-align: center;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
}
.sm_important {
  margin-top: 135px !important;
}
@media only screen and (max-width: 768px) {
  .sm_important {
    margin-top: 50px !important;
  }
  .heading_str_set ol li {
    font-size: 14px;
  }
}
/* merit__wrap blue  */
.merit__wrap.blue{
  background: #2c52a9;
  padding: 80px 0;
}
.merit__wrap.blue .headlineLv6.merit__ttl {
  color: #fff;
}
.merit__wrap.blue .headlineLv6 span:before {
  background: #fff;
}
.merit__wrap.blue .merit__list {
  background: #fff;
}
.merit__wrap.blue .merit__list li p{
  padding-right: 1em;
}
@media only screen and (max-width: 768px) {
  .merit__wrap.blue{padding: 40px 0}
}
/* prosseing  */
.sm_proceeding {
  margin-top: 140px !important;
}
@media only screen and (max-width: 768px) {
  .sm_proceeding {
    margin-top: 50px !important;
  }
}
.bg_note {
  background: #e9edf6;
  line-height: 1.7;
  padding: 22px;
  font-size: 14px;
}
.marketingSection_num.lp_adjust {
    height: 98px;
    width: 98px;
    background: #2c52a9;
    color: #fff;
    font-size: 20px;
    text-align: center;
    margin-left: auto;
    margin-right: auto;
    font-family: 'Lato', sans-serif;
    font-weight: 300;
    -moz-border-radius: 50%;
    -webkit-border-radius: 50%;
    -o-border-radius: 50%;
    -ms-border-radius: 50%;
    -khtml-border-radius: 50%;
    border-radius: 50%;
    font-weight: 700;
    line-height: 4;
}
.marketingSection_num.lp_adjust span {
  font-size: 24px;
}
.services_can_provide {
  background: #2c52a9;
  padding: 10px;
  color: #fff;
  font-weight: 600;
}
.services_can_provide h3 {
  background: #fff;
  color: #2c52a9;
  text-align: center;
  padding: 10px;
  font-weight: 700;
}
.cppProblem.last {
  margin-top: 70px;
}
.contactBox-lp-mt {
  margin-top: 140px;
}
.sdgs-B-contactflow {
  border:8px solid #e9edf6;
  padding: 55px;
}
.sdgs-B-contactflow h3{
  font-size: 26px;
  color: #2c52a9;
  text-align: center;
  font-weight: 700;
}
@media only screen and (max-width: 768px) {
  h3.sub_heading_blue {
    font-size: 20px;
    line-height: 1.6;
  }
  .marketingSection_num.lp_adjust {
    width: 78px;
    height: 78px;
    line-height: 3.5;
    font-size: 18px;
  }
  .marketingSection_num.lp_adjust span {
    font-size: 22px;
  }
  .contactBox-lp-mt {
    margin-top: 70px;
  }
  .services_can_provide {
    margin-top: 30px !important;
  }
  .services_can_provide p {
    font-size:12px;
  }
  .image_center img{
    display: block;
    margin-left: auto;
    margin-right: auto;
  }
  .contactBox_title {
    font-size: 1.6rem;
  }
} 
/* 汎用  */
.fl        { float: left  ; }
.fr        { float: right ; }
.sp_fl     { float: left  ; }
.sp_fr     { float: right ; }
.ib {display: inline-block;}
.bl{display: block;}
.vt {vertical-align: top;}
.vm {vertical-align: middle;}
.vb {vertical-align: bottom;}
.ac {text-align: center;}
.ar {text-align: right;}
.al {text-align: left;}
.tx_white {color:#fff !important;}
.tx_normal{font-weight:normal;}
.tx_bold{font-weight:bold;}

/** width
/**************************************/
.w100p { width : 100%; }
.w98p { width : 98%; }
.w90p  { width : 90%; }
.w89p  { width : 89%; }
.w85p  { width : 85%; }
.w80p  { width : 80%; }
.w79p  { width : 79%; }
.w78p  { width : 78%; }
.w75p  { width : 75%; }
.w70p  { width : 70%; }
.w68p  { width : 68%; }
.w65p  { width : 65%; }
.w62p  { width : 62%; }
.w60p  { width : 60%; }
.w58p  { width : 58%; }
.w55p  { width : 55%; }
.w53p  { width : 53%; }
.w52p  { width : 52%; }
.w50p  { width : 50%; }
.w49p  { width : 49%; }
.w48p  { width : 48%; }
.w45p  { width : 45%; }
.w40p  { width : 40%; }
.w39p  { width : 39%; }
.w38p  { width : 38%; }
.w37p  { width : 37%; }
.w36p  { width : 36%; }
.w35p  { width : 35%; }
.w33p  { width : 33%; }
.w32p  { width : 32%; }
.w31p  { width : 31%; }
.w30p  { width : 30%; }
.w28p  { width : 28%; }
.w25p  { width : 25%; }
.w24p  { width : 24%; }
.w20p  { width : 20%; }
.w18p  { width : 18%; }
.w15p  { width : 15%; }
.w14p  { width : 14%; }
.w12p  { width : 12%; }
.w10p  { width : 10%; }

@media screen and (max-width: 767px) {
  .sp_w20p{
    width: 20% !important;
  }
  .sp_w48p {
    width: 48% !important;
  }
  .sp_w50p {
    width: 50% !important;
  }
  .sp_w79p{
    width: 79% !important;
  }
  .sp_w100p{
    width:100% !important;
    display:block;
  }
}

.fl        { float: left  ; }
.fr        { float: right ; }
.sp_fl     { float: left  ; }
.sp_fr     { float: right ; }
.ib {display: inline-block;}
.bl{display: block;}
.vt {vertical-align: top;}
.vm {vertical-align: middle;}
.vb {vertical-align: bottom;}
.ac {text-align: center;}
.ar {text-align: right;}
.al {text-align: left;}
.tx_white {color:#fff !important;}
.tx_normal{font-weight:normal;}
.tx_bold{font-weight:bold;}