@charset "UTF-8";
/* ===================================================================
CSS information

 file name  : corporate.css
 author     : Ability Consultant
 style info : コピー
=================================================================== */
.txt_center {
  text-align: center;
}
@media only screen and (max-width: 767px) {
  .txt_center {
    text-align: left;
  }
}

.btn_more {
  font-size: 118%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .btn_more {
    font-size: 106%;
  }
}
@media only screen and (max-width: 767px) {
  .btn_more {
    font-size: 95%;
  }
}
.btn_more .extend_a {
  display: inline-block;
  position: relative;
  font-family: "Oswald", sans-serif;
  line-height: 1;
}
.btn_more .extend_a:before, .btn_more .extend_a:after {
  transition: all .4s ease;
}
.btn_more .extend_a:before {
  content: "";
  position: absolute;
  bottom: -10px;
  /* style */
  width: 147%;
  height: 1px;
  background: #fff;
}
.btn_more .extend_a:after {
  content: "";
  position: absolute;
  bottom: -10px;
  right: -47%;
  /* style */
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 7px 0 0 11px;
  border-color: transparent transparent transparent #fff;
}
.btn_more .extend_a span:before {
  content: "\f481";
  font-family: "Ionicons";
  /* style */
  margin-right: .5em;
}

/* -----------------------------------------------------------
	con_main
----------------------------------------------------------- */
.con_main {
  min-height: 420px;
  background: url(../images/corporate/img_main.jpg) no-repeat center center;
  background-size: cover;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_main {
    min-height: 252px;
  }
}
@media only screen and (max-width: 767px) {
  .con_main {
    min-height: 240px;
  }
}
@media only screen and (max-width: 767px) {
  .con_main {
    background-position-x: -180px;
  }
}

/* -----------------------------------------------------------
	con_main
----------------------------------------------------------- */
.con_main h1 {
  font-weight: 100;
}

/* -----------------------------------------------------------
	con_content
----------------------------------------------------------- */
.con_content {
  padding: 0px 1em;
  padding-bottom: 91px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content {
    padding-bottom: 2em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content {
    padding-bottom: 2em;
  }
}
.con_content .box_content {
  width: 1280px;
  max-width: 100%;
  margin: 0 auto;
}
.con_content .box_content .box_text {
  margin-bottom: 88px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_text {
    margin-bottom: 2.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_text {
    margin-bottom: 2em;
  }
}
.con_content .box_content .box_text .tl_basic {
  margin-bottom: 78px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_text .tl_basic {
    margin-bottom: 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_text .tl_basic {
    margin-bottom: 2em;
  }
}
@media only screen and (min-width: 1025px) {
  .con_content .box_content .box_text .tl_basic {
    font-size: 236%;
  }
}
@media print {
  .con_content .box_content .box_text .tl_basic {
    font-size: 236%;
  }
}
.ie8 .con_content .box_content .box_text .tl_basic {
  font-size: 236%;
}
@media only screen and (min-width: 1025px) {
  .con_content .box_content .box_text .txt {
    line-height: 2.2;
  }
}
@media print {
  .con_content .box_content .box_text .txt {
    line-height: 2.2;
  }
}
.ie8 .con_content .box_content .box_text .txt {
  line-height: 2.2;
}
.con_content .box_content .box_list {
  margin-bottom: 88px;
  display: flex;
  flex-wrap: wrap;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list {
    margin-bottom: 2.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list {
    margin-bottom: 2em;
  }
}
.con_content .box_content .box_list .box {
  width: 25%;
  position: relative;
  color: #fff;
  display: block;
  transition: all .5s ease;
  overflow: hidden;
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box {
    width: 100%;
    margin-bottom: 1em;
  }
}
.con_content .box_content .box_list .box:after {
  position: absolute;
  content: "";
  /* style */
  width: 0;
  height: 100%;
  top: 0;
  left: -600px;
  background: linear-gradient(180deg, #0ba7da 0%, #1c97de 100%);
  opacity: .4;
  -webkit-transform: skew(127deg);
  transform: skew(127deg);
  z-index: 0;
  transition: all 0.8s ease;
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box:after {
    left: -767px;
  }
}
.con_content .box_content .box_list .box .img img {
  width: 100%;
  transition: all 0.4s ease;
}
.con_content .box_content .box_list .box .box_info {
  width: 330px;
  max-width: 95%;
  left: 0;
  right: 0;
  margin: 0 auto;
  position: absolute;
  z-index: 1;
  color: #fff;
  bottom: 35px;
  text-align: left;
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box .box_info {
    width: 90%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list .box .box_info {
    max-width: 90%;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box .box_info {
    max-width: 90%;
  }
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list .box .box_info {
    bottom: 1.5em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box .box_info {
    bottom: 2em;
  }
}
.con_content .box_content .box_list .box .box_info h3 {
  font-weight: 100;
  margin-bottom: 37px;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list .box .box_info h3 {
    margin-bottom: 0.4em;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box .box_info h3 {
    margin-bottom: 0.25em;
  }
}
@media only screen and (min-width: 1025px) {
  .con_content .box_content .box_list .box .box_info h3 {
    font-size: 471%;
  }
}
@media print {
  .con_content .box_content .box_list .box .box_info h3 {
    font-size: 471%;
  }
}
.ie8 .con_content .box_content .box_list .box .box_info h3 {
  font-size: 471%;
}
@media only screen and (min-width: 1025px) and (max-width: 1180px) {
  .con_content .box_content .box_list .box .box_info h3 {
    font-size: 412%;
  }
}
@media print {
  .con_content .box_content .box_list .box .box_info h3 {
    font-size: 412%;
  }
}
.ie8 .con_content .box_content .box_list .box .box_info h3 {
  font-size: 412%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list .box .box_info h3 {
    font-size: 236%;
  }
}
.con_content .box_content .box_list .box .box_info h3 .en:first-letter {
  color: #007ec1;
}
.con_content .box_content .box_list .box:hover {
  color: #fff;
}
.con_content .box_content .box_list .box:hover:after {
  width: 400%;
}
@media only screen and (min-width: 768px) and (max-width: 1024px) {
  .con_content .box_content .box_list .box:hover:after {
    width: 500%;
  }
}
@media only screen and (max-width: 767px) {
  .con_content .box_content .box_list .box:hover:after {
    width: 500%;
  }
}
.con_content .box_content .box_list .box:hover img {
  filter: blur(1px);
  -webkit-transform: scale(1.025, 1.025);
  transform: scale(1.025, 1.025);
}
.con_content .box_content .box_list .box:hover .btn_more .extend_a:before {
  width: 155%;
}
.con_content .box_content .box_list .box:hover .btn_more .extend_a:after {
  right: -55%;
}
