#wrapper {
 width: 100%;
 min-width: 1100px;
}
@media screen and (max-width: 768px) {
 #wrapper {
  min-width: 0;
 }
}
#wrapper p.txt {
 font-size: 16px;
 line-height: 1.6;
}
@media screen and (max-width: 768px) {
 #wrapper p.txt {
  font-size: 14px;
 }
}
#wrapper .kv_area {
 position: relative;
 z-index: 1;
 width: 100%;
 min-width: 1100px;
 height: 339px;
 background: url(/efforts/ict/img/kv.jpg) center bottom no-repeat;
 background-size: cover;

 -ms-background-size: cover;
}
@media screen and (max-width: 768px) {
 #wrapper .kv_area {
  min-width: 0;
  height: 250px;
 }
}
#wrapper .kv_area >.inner {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-align: center;
 align-items: -webkit- center;
 align-items: center;
 -ms-flex-align: center;
 -webkit-box-pack: start;
 -ms-flex-pack: start;
 justify-content: -webkit- flex-start;
 justify-content: flex-start;
 width: 1100px;
 height: 339px;
 margin: 0px auto 0px;
 padding: 0 20px;

 -js-display: flex;
}
@media screen and (max-width: 768px) {
 #wrapper .kv_area >.inner {
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  padding: 0 5%;
 }
}
#wrapper .lead_area {
 margin-bottom: 80px;
 padding: 0 5%;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .lead_area {
  margin-bottom: 40px;
 }
}
#wrapper .lead_area h2 {
 margin-bottom: 25px;
}
@media screen and (max-width: 768px) {
 #wrapper .lead_area h2 {
  margin-bottom: 15px;
 }
 #wrapper .lead_area h2 img {
  width: 200px;
 }
}
#wrapper .bg_bl {
 width: 100%;
 max-width: 1150px;
 margin: 0 auto 80px;
 padding: 75px;
 background: #f5f9fa;
}
@media screen and (max-width: 768px) {
 #wrapper .bg_bl {
  margin-bottom: 40px;
  padding: 40px 7%;
 }
}
#wrapper .about {
 width: 100%;
 margin-bottom: 80px;
 padding-bottom: 90px;
 background: url(/efforts/common/img/border.png) left bottom repeat-x;
}
@media screen and (max-width: 768px) {
 #wrapper .about {
  margin-bottom: 40px;
  padding-bottom: 45px;
 }
}
#wrapper .about >.inner {
 width: 100%;
 max-width: 800px;
 margin: 0 auto;
}
#wrapper .about h2 {
 margin-bottom: 35px;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .about h2 {
  margin-bottom: 20px;
 }
 #wrapper .about h2 img {
  height: 18px;
 }
}
#wrapper .about .bgw {
 width: 100%;
 max-width: 850px;
 margin: 40px auto 0;
 padding: 45px 0 50px;
 background: #ffffff;
}
@media screen and (max-width: 768px) {
 #wrapper .about .bgw {
  padding: 25px 5% 20px;
 }
}
#wrapper .about .bgw >.inner {
 width: 100%;
 max-width: 690px;
 margin: 0 auto;
}
#wrapper .about .bgw >.inner .before,#wrapper .about .bgw >.inner .after {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -ms-flex-wrap: wrap;
 flex-wrap: wrap;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 width: 100%;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .about .bgw >.inner .before,#wrapper .about .bgw >.inner .after {
  display: block;
 }
}
#wrapper .about .bgw >.inner .before h3,#wrapper .about .bgw >.inner .after h3 {
 width: 100%;
 margin-bottom: 30px;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .about .bgw >.inner .before h3,#wrapper .about .bgw >.inner .after h3 {
  margin-bottom: 20px;
 }
 #wrapper .about .bgw >.inner .before h3 img,#wrapper .about .bgw >.inner .after h3 img {
  height: 28px;
 }
}
#wrapper .about .bgw >.inner .before .block:not(:last-child),#wrapper .about .bgw >.inner .after .block:not(:last-child) {
 margin-bottom: 25px;
}
#wrapper .about .bgw >.inner .before .block .ttl,#wrapper .about .bgw >.inner .after .block .ttl {
 font-size: 18px;
 font-weight: 500;
 margin: 15px 0 10px;
 color: #005faf;
}
@media screen and (max-width: 768px) {
 #wrapper .about .bgw >.inner .before .block .ttl,#wrapper .about .bgw >.inner .after .block .ttl {
  font-size: 16px;
  margin: 10px 0 5px;
 }
}
#wrapper .about .bgw >.inner .before {
 position: relative;
 margin-bottom: 70px;
 padding-bottom: 45px;
 border-bottom: 3px solid #005faf;
}
#wrapper .about .bgw >.inner .before:after {
 position: absolute;
 bottom: 0;
 left: 50%;
 display: block;
 width: 60px;
 height: 32px;
 content: "";
 -webkit-transform: translate(-50%, 100%);
 transform: translate(-50%, 100%);
 background: url(/efforts/ict/img/arrow.gif);
}
#wrapper .about .img_col {
 display: -webkit-box;
 display: -ms-flexbox;
 display: flex;
 -webkit-box-pack: justify;
 -ms-flex-pack: justify;
 justify-content: space-between;
 width: 100%;
 margin-top: 30px;
}
@media screen and (max-width: 768px) {
 #wrapper .about .img_col {
  display: block;
  margin-top: 20px;
 }
 #wrapper .about .img_col img {
  width: 100%;
 }
 #wrapper .about .img_col img:not(:last-child) {
  margin-bottom: 20px;
 }
}
#wrapper .change {
 width: 100%;
}
#wrapper .change >.inner {
 width: 100%;
 max-width: 800px;
 margin: 0 auto;
}
#wrapper .change >.inner h2 {
 margin-bottom: 35px;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .change >.inner h2 {
  margin-bottom: 20px;
 }
 #wrapper .change >.inner h2 img {
  height: 18px;
 }
}
#wrapper .change >.inner .img {
 margin-top: 40px;
 text-align: center;
}
@media screen and (max-width: 768px) {
 #wrapper .change >.inner .img {
  margin-top: 20px;
 }
}
/*# sourceMappingURL=layout.css.map */
