@charset "UTF-8";
main {
  overflow: hidden;
  padding-top: 0;
  z-index: 1;
}

.kv_wrap {
  position: relative;
  background: #0064AF;
  background: url(../images/home/kv_back_image.jpg) no-repeat center center;
  background-size: cover;
  width: 100%;
  height: 63.9vw;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: center;
  -webkit-box-pack: center;
          justify-content: center;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  /*
  &::before{
      content: "";
      position: absolute;
      left: -45%;
      top: 0;
      height: 100vh;
      width: 100%;
      background: b.$keycolor1;
      transform: skewX(-45deg);
      z-index: 1;
  }
  */
}
.kv_wrap::before {
  content: "";
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  background: #0064AF;
  clip-path: polygon(0 0, 83.5% 0%, 26.6% 100%, 0% 100%);
}
.kv_wrap .kv_text {
  position: relative;
  width: 30vw;
  margin-right: 6.25vw;
  margin-top: 11.7vw;
  z-index: 2;
}
.kv_wrap .kv_text h2 {
  line-height: 0;
  font-size: 0;
  margin: 0 0 4vw 0;
  width: 30vw;
}
.kv_wrap h3 {
  color: #FFF;
  font-size: 22px;
}
.kv_wrap .kv_figure {
  position: relative;
  width: 49vw;
  height: 38vw;
  margin-top: 10.3vw;
  z-index: 2;
}
.kv_wrap .kv_figure img {
  position: absolute;
  border-radius: 10px;
}
.kv_wrap .kv_figure img:nth-child(1) {
  left: 0;
  top: 0;
  width: 14vw;
}
.kv_wrap .kv_figure img:nth-child(2) {
  left: 16.8vw;
  top: 8.4vw;
  width: 16.4vw;
}
.kv_wrap .kv_figure img:nth-child(3) {
  right: 0;
  top: 4.6vw;
  width: 13.6vw;
}
.kv_wrap .kv_figure img:nth-child(4) {
  left: 3.1vw;
  bottom: 1.5vw;
  width: 11.8vw;
}
.kv_wrap .kv_figure img:nth-child(5) {
  bottom: 0;
  right: 3.9vw;
  width: 9.9vw;
}
.kv_wrap .kv_news {
  position: absolute;
  left: 4.5%;
  bottom: 5.7vw;
  width: 91%;
  margin: 0 auto;
  background: #FFF;
  padding: 20px 35px;
  border-radius: 100px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.kv_wrap .kv_news p {
  width: 5em;
  margin: 0 1.5em 0 0;
  text-align: center;
  font-size: 15px;
  font-weight: bold;
}
.kv_wrap .kv_news p a {
  display: block;
  background: #0064AF;
  border-radius: 5px;
  padding: 0.1em 0;
  border: 1px solid #0064AF;
  color: #FFF;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.kv_wrap .kv_news p a:hover {
  background: #FFF;
  color: #0064AF;
}
.kv_wrap .kv_news time {
  width: 6em;
  font-size: 14px;
  font-weight: bold;
  color: #0064AF;
}
.kv_wrap .kv_news h4 {
  font-size: 15px;
  font-weight: normal;
  width: calc(100% - 12.5em);
}
.kv_wrap .kv_news h4 a {
  line-height: 1.8em;
  display: block;
  text-decoration: none;
  color: #323232;
}
.kv_wrap .kv_news h4 a .icon_rarrow {
  position: absolute;
  right: 25px;
  top: calc(50% - 4px);
}
@media screen and (max-width: 1280px) {
  .kv_wrap h3 {
    font-size: 1.72vw;
  }
}
@media screen and (max-width: 1160px) {
  .kv_wrap .kv_figure img {
    border-radius: 0.86vw;
  }
  .kv_wrap .kv_news {
    padding: 1.72vw 3.02vw;
    border-radius: 8.62vw;
  }
  .kv_wrap .kv_news p {
    font-size: 1.29vw;
  }
  .kv_wrap .kv_news p a {
    border-radius: 0.43vw;
  }
  .kv_wrap .kv_news time {
    font-size: 1.21vw;
  }
  .kv_wrap .kv_news h4 {
    font-size: 1.29vw;
  }
  .kv_wrap .kv_news h4 a .icon_rarrow {
    right: 2.16vw;
    top: calc(50% - 0.31vw);
  }
}
@media screen and (max-width: 750px) {
  .kv_wrap {
    position: relative;
    background: #0064AF;
    background: url(../images/home/kv_back_image.jpg) no-repeat top center;
    background-size: cover;
    width: 100%;
    height: 236.11vw;
    display: block;
  }
  .kv_wrap::before {
    content: "";
    position: absolute;
    left: 0;
    top: 0;
    width: 100%;
    height: 100%;
    background: #0064AF;
    clip-path: polygon(0 0, 127vw 0%, 0% 143vw, 0% 100%);
  }
  .kv_wrap .kv_text {
    position: relative;
    width: 100%;
    height: auto;
    padding-top: 23.61vw;
    margin: 0 0 0 6.94vw;
    z-index: 2;
  }
  .kv_wrap .kv_text h2 {
    margin: 0 0 13.89vw 0;
    width: 80.56vw;
    line-height: 0;
  }
  .kv_wrap .kv_figure {
    position: relative;
    width: 84.44vw;
    height: 65.28vw;
    margin: 0 auto 9.17vw auto;
    z-index: 2;
  }
  .kv_wrap .kv_figure img {
    position: absolute;
    border-radius: 2.78vw;
  }
  .kv_wrap .kv_figure img:nth-child(1) {
    left: 0;
    top: 0;
    width: 23.89vw;
  }
  .kv_wrap .kv_figure img:nth-child(2) {
    left: 28.61vw;
    right: auto;
    top: 14.44vw;
    width: 27.78vw;
  }
  .kv_wrap .kv_figure img:nth-child(3) {
    right: 0;
    top: 8.06vw;
    width: 23.33vw;
  }
  .kv_wrap .kv_figure img:nth-child(4) {
    left: 5.56vw;
    bottom: 2.78vw;
    width: 20.28vw;
  }
  .kv_wrap .kv_figure img:nth-child(5) {
    bottom: 0;
    right: 6.94vw;
    width: 17.22vw;
  }
  .kv_wrap h3 {
    font-size: 5vw;
    width: 87.22vw;
    margin: 0 0 9.17vw 8.5vw;
  }
  .kv_wrap .kv_news {
    left: 5.56vw;
    bottom: 11.11vw;
    width: 88.89vw;
    padding: 1.5em 5.56vw;
    border-radius: 2.78vw;
  }
  .kv_wrap .kv_news p {
    position: absolute;
    right: 0;
    top: 1em;
    width: 4.5em;
    font-size: 3.61vw;
  }
  .kv_wrap .kv_news p a {
    border-radius: 1.39vw;
    border-radius: 5px;
    padding: 0 0;
    color: #0064AF;
    background: #FFF;
    border: 1px solid #0064AF;
  }
  .kv_wrap .kv_news p a:hover {
    color: #FFF;
    background: #0064AF;
  }
  .kv_wrap .kv_news time {
    width: 100%;
    font-size: 3.33vw;
  }
  .kv_wrap .kv_news h4 {
    width: 100%;
    font-size: 3.33vw;
  }
  .kv_wrap .kv_news h4 a .hover_line {
    display: block;
    padding-right: 1em;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
  }
  .kv_wrap .kv_news h4 a .icon_rarrow {
    right: 6.11vw;
    top: calc(50% - 1.67vw);
  }
}

.harl_text_inner h2 {
  font-size: 50px;
  line-height: 1.44em;
  margin-bottom: 25px;
  letter-spacing: 0.05em;
}
.harl_text_inner h2 span:nth-of-type(1) {
  color: #71ABD8;
}
.harl_text_inner h2 span:nth-of-type(2) {
  color: #0064AF;
}
.harl_text_inner p {
  margin-bottom: 45px;
}
.harl_text_inner p.arrow_btn {
  margin-bottom: 0;
}
@media screen and (max-width: 1160px) {
  .harl_text_inner h2 {
    font-size: 4.31vw;
    margin-bottom: 2.16vw;
  }
  .harl_text_inner p {
    margin-bottom: 3.88vw;
  }
}
@media screen and (max-width: 750px) {
  .harl_text_inner h2 {
    font-size: 11.67vw;
    margin-bottom: 8.33vw;
    line-height: 1.48em;
  }
  .harl_text_inner p {
    margin-bottom: 0;
  }
  .harl_text_inner p.arrow_btn {
    margin-bottom: 0;
  }
}

.home_strength {
  position: relative;
  background: url(../images/home/strength_image.jpg) no-repeat center center;
  background-size: cover;
  padding: 115px 0 125px 0;
}
@media screen and (max-width: 1160px) {
  .home_strength {
    padding: 9.91vw 0 10.78vw 0;
  }
}
@media screen and (max-width: 750px) {
  .home_strength {
    padding: 22.22vw 0 22.22vw 0;
  }
}

.home_strength_inner {
  position: relative;
  width: 1030px;
  margin: 0 auto;
}
.home_strength_inner .home_title_btn h2 {
  color: #FFF;
}
.home_strength_inner .home_title_btn p {
  color: #FFF;
}
.home_strength_inner .arrow_btn {
  position: absolute;
  right: 0;
  top: 0;
}
.home_strength_inner .arrow_btn a {
  color: #FFF;
  border-color: #FFF;
}
.home_strength_inner .arrow_btn a span {
  background: url(../images/common/icon_arrow_right_w.svg) no-repeat right center;
  background-size: 10px;
}
.home_strength_inner .arrow_btn a:hover {
  background: #FFF;
  color: #0064AF;
}
.home_strength_inner .arrow_btn a:hover span {
  background: url(../images/common/icon_arrow_right_b.svg) no-repeat right center;
  background-size: 10px;
}
@media screen and (max-width: 1160px) {
  .home_strength_inner {
    width: 88.79vw;
  }
  .home_strength_inner .arrow_btn a span {
    background-size: 0.86vw;
  }
  .home_strength_inner .arrow_btn a:hover span {
    background-size: 0.86vw;
  }
}
@media screen and (max-width: 750px) {
  .home_strength_inner {
    width: 86.67vw;
  }
  .home_strength_inner .home_title_btn h2 {
    color: #FFF;
    font-size: 11.11vw;
    margin-bottom: 4.72vw;
  }
  .home_strength_inner .home_title_btn p {
    color: #FFF;
    font-size: 5.56vw;
    margin-bottom: 9.44vw;
  }
  .home_strength_inner .arrow_btn {
    position: relative;
  }
  .home_strength_inner .arrow_btn a span {
    background-size: 2.78vw;
  }
  .home_strength_inner .arrow_btn a:hover span {
    background-size: 2.78vw;
  }
}

.strength_list {
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.strength_list .strength_box {
  width: 48.5%;
}
@media screen and (max-width: 750px) {
  .strength_list {
    margin-bottom: 12.5vw;
  }
  .strength_list .strength_box {
    width: 100%;
  }
}

.home_security {
  position: relative;
  width: 1030px;
  margin: 0 auto;
  padding: 130px 0;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
}
.home_security .security_text {
  width: 29.1%;
}
.home_security .security_text h2 {
  font-size: 28px;
  color: #0064AF;
  line-height: 1.7em;
  margin-bottom: 25px;
}
.home_security .security_text p {
  font-size: 16px;
  line-height: 1.8em;
}
.home_security .security_text p.arrow_btn {
  line-height: 1.3em;
}
.home_security ul {
  width: 61.1%;
  list-style: none;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_security ul.spv {
  display: none;
}
.home_security ul li {
  width: 47.6%;
  line-height: 0;
  margin: 0 0 30px 0;
}
.home_security ul li img {
  border-radius: 10px;
}
@media screen and (max-width: 1160px) {
  .home_security {
    width: 88.79vw;
    padding: 11.21vw 0;
  }
  .home_security .security_text h2 {
    font-size: 2.41vw;
    margin-bottom: 2.16vw;
  }
  .home_security .security_text p {
    font-size: 1.38vw;
  }
  .home_security ul li {
    margin: 0 0 2.59vw 0;
  }
  .home_security ul li img {
    border-radius: 0.86vw;
  }
}
@media screen and (max-width: 750px) {
  .home_security {
    width: 86.67vw;
    padding: 21.39vw 0;
    display: block;
  }
  .home_security .security_text {
    width: 100%;
  }
  .home_security .security_text h2 {
    font-size: 7.78vw;
    margin-bottom: 6.94vw;
  }
  .home_security .security_text p {
    font-size: 4.44vw;
  }
  .home_security ul {
    width: 100%;
    margin-bottom: 5.56vw;
  }
  .home_security ul.pcv {
    display: none;
  }
  .home_security ul.spv {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
  }
  .home_security ul li {
    width: 48%;
    margin: 0 0 3.33vw 0;
  }
  .home_security ul li img {
    border-radius: 2.78vw;
  }
}

.home_service {
  background: #0064AF;
  padding: 200px 0;
}
.home_service .home_title_btn p,
.home_service .home_title_btn h2 {
  color: #FFF;
}
.home_service .arrow_btn {
  position: absolute;
  right: 0;
  top: -150px;
}
.home_service .arrow_btn a {
  color: #FFF;
  border-color: #FFF;
}
.home_service .arrow_btn a span {
  background: url(../images/common/icon_arrow_right_w.svg) no-repeat right center;
  background-size: 10px;
}
.home_service .arrow_btn a:hover {
  background: #FFF;
  color: #0064AF;
}
.home_service .arrow_btn a:hover span {
  background: url(../images/common/icon_arrow_right_b.svg) no-repeat right center;
  background-size: 10px;
}
@media screen and (max-width: 1160px) {
  .home_service {
    padding: 17.24vw 0;
  }
  .home_service .arrow_btn {
    top: -12.93vw;
  }
  .home_service .arrow_btn a span {
    background-size: 0.86vw;
  }
  .home_service .arrow_btn a:hover span {
    background-size: 0.86vw;
  }
}
@media screen and (max-width: 750px) {
  .home_service {
    padding: 20.83vw 0 22.22vw 0;
  }
  .home_service p {
    font-size: 5.56vw;
    margin-bottom: 8.33vw;
  }
  .home_service h2 {
    font-size: 11.11vw;
    margin-bottom: 5.56vw;
  }
  .home_service .arrow_btn {
    position: relative;
    right: auto;
    top: auto;
    font-size: 4.44vw;
  }
  .home_service .arrow_btn a span {
    background-size: 2.78vw;
  }
  .home_service .arrow_btn a:hover span {
    background-size: 2.78vw;
  }
}

.home_service_list {
  position: relative;
  width: 1030px;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: stretch;
  -webkit-box-align: stretch;
          align-items: stretch;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_service_list article {
  position: relative;
  width: 48.5%;
  margin: 0 0 30px 0;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
}
.home_service_list article a {
  display: block;
  border-radius: 10px;
  padding: 27px 40px;
  height: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  background: #FFF;
  text-decoration: none;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_service_list article a:hover h3 {
  color: #0064AF;
  background-size: 100% 1px;
}
.home_service_list article a:hover ul {
  opacity: 0.5;
}
.home_service_list article a:hover figure {
  opacity: 0.5;
}
.home_service_list article h3 {
  position: relative;
  display: inline-block;
  font-size: 26px;
  margin-bottom: 35px;
  padding-right: 40px;
  background-repeat: no-repeat;
  -webkit-transition: background-size 0.4s;
  transition: background-size 0.4s;
  background-size: 0 1px;
  background-image: -webkit-gradient(linear, left top, right top, from(#0064AF), to(#0064AF));
  background-image: linear-gradient(90deg, #0064AF, #0064AF);
  background-position: left bottom;
}
.home_service_list article h3::before {
  position: absolute;
  top: 10px;
  right: 0;
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid #0064AF;
  border-radius: 50%;
}
.home_service_list article h3 .icon_rarrow {
  position: absolute;
  top: 18px;
  right: 8px;
}
.home_service_list article ul {
  list-style: none;
  width: 50%;
  margin-bottom: 20px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_service_list article ul li {
  padding: 0 0.7em;
  font-size: 15px;
  font-weight: bold;
  text-align: center;
  border-radius: 20px;
  margin: 0 8px 10px 0;
  display: inline-block;
  color: #0064AF;
  border: 1px solid #0064AF;
}
.home_service_list article figure {
  position: absolute;
  right: 30px;
  bottom: 40px;
  width: 157px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_service_list article:nth-child(2) figure {
  width: 150px;
}
.home_service_list article:nth-child(3) figure {
  width: 175px;
}
.home_service_list article:nth-child(4) ul {
  width: 65%;
}
.home_service_list article:nth-child(4) figure {
  width: 170px;
}
.home_service_list article:nth-child(5) ul {
  width: 60%;
}
.home_service_list article:nth-child(5) figure {
  width: 176px;
}
.home_service_list article:nth-child(6) figure {
  width: 187px;
}
@media screen and (max-width: 1160px) {
  .home_service_list {
    width: 88.79vw;
  }
  .home_service_list article {
    margin: 0 0 2.59vw 0;
  }
  .home_service_list article a {
    border-radius: 0.86vw;
    padding: 2.33vw 3.45vw;
  }
  .home_service_list article h3 {
    font-size: 2.24vw;
    margin-bottom: 3.02vw;
    padding-right: 3.45vw;
  }
  .home_service_list article h3::before {
    top: 0.86vw;
    width: 2.07vw;
    height: 2.07vw;
    border-radius: 1.03vw;
  }
  .home_service_list article h3 .icon_rarrow {
    top: 1.55vw;
    right: 0.69vw;
  }
  .home_service_list article ul {
    margin-bottom: 1.72vw;
  }
  .home_service_list article ul li {
    font-size: 1.29vw;
    border-radius: 1.72vw;
    margin: 0 0.69vw 0.86vw 0;
  }
  .home_service_list article figure {
    right: 2.59vw;
    bottom: 3.45vw;
    width: 13.53vw;
  }
  .home_service_list article:nth-child(2) figure {
    width: 12.93vw;
  }
  .home_service_list article:nth-child(3) figure {
    width: 15.09vw;
  }
  .home_service_list article:nth-child(4) figure {
    width: 14.66vw;
  }
  .home_service_list article:nth-child(5) figure {
    width: 15.17vw;
  }
  .home_service_list article:nth-child(6) figure {
    width: 16.12vw;
  }
}
@media screen and (max-width: 750px) {
  .home_service_list {
    width: 86.67vw;
    display: block;
  }
  .home_service_list article {
    width: 100%;
    margin: 0 0 3.89vw 0;
  }
  .home_service_list article a {
    border-radius: 2.78vw;
    padding: 5.56vw;
  }
  .home_service_list article h3 {
    font-size: 5.56vw;
    margin-bottom: 5.56vw;
    padding-right: 11.11vw;
    background: none;
  }
  .home_service_list article h3::before {
    top: 1.94vw;
    width: 5.56vw;
    height: 5.56vw;
    border-radius: 11.11vw;
  }
  .home_service_list article h3 .icon_rarrow {
    top: 3.33vw;
    right: 1.53vw;
  }
  .home_service_list article ul {
    width: 100% !important;
    margin-bottom: 0;
  }
  .home_service_list article ul li {
    font-size: 4.17vw;
    border-radius: 5.56vw;
    margin: 0 8px 2.78vw 0;
  }
  .home_service_list article figure {
    position: relative;
    right: auto;
    bottom: auto;
    width: 43.61vw;
    margin: 0 auto 6.94vw;
  }
  .home_service_list article:nth-child(2) figure {
    width: 41.67vw;
  }
  .home_service_list article:nth-child(3) figure {
    width: 48.61vw;
  }
  .home_service_list article:nth-child(4) ul {
    width: 100%;
  }
  .home_service_list article:nth-child(4) figure {
    width: 47.22vw;
  }
  .home_service_list article:nth-child(5) ul {
    width: 100%;
  }
  .home_service_list article:nth-child(5) figure {
    width: 48.89vw;
  }
  .home_service_list article:nth-child(6) figure {
    width: 51.94vw;
  }
  .home_service_list .arrow_btn {
    margin-top: 2em;
  }
}

.home_project {
  position: relative;
  width: 100%;
  background: #F0F5FA;
  padding: 150px 0 110px 0;
  overflow: hidden;
}
.home_project .home_title_btn h2,
.home_project .home_title_btn p {
  color: #0064AF;
}
.home_project .arrow_btn {
  position: absolute;
  left: 730px;
  top: -150px;
}
@media screen and (max-width: 1160px) {
  .home_project {
    padding: 12.93vw 0 9.48vw 0;
  }
  .home_project .arrow_btn {
    left: 62.93vw;
    top: -12.93vw;
  }
}
@media screen and (max-width: 750px) {
  .home_project {
    background: #F0F5FA;
    padding: 20.83vw 0 22.22vw 0;
  }
  .home_project .home_title_btn h2 {
    font-size: 11.11vw;
    margin-bottom: 5.56vw;
  }
  .home_project .home_title_btn p {
    font-size: 5.56vw;
    margin-bottom: 8.33vw;
  }
  .home_project .arrow_btn {
    position: relative;
    left: auto;
    top: auto;
  }
}

.service_inner {
  position: relative;
  width: calc(50% + 515px);
  margin: 0 0 0 auto;
}
.service_inner .swiper-wrapper {
  width: 100%;
}
.service_inner .swiper-wrapper article {
  width: 330px;
  background: #FFF;
  border-bottom-right-radius: 10px;
  border-bottom-left-radius: 10px;
}
.service_inner .swiper-wrapper article a {
  text-decoration: none;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.service_inner .swiper-wrapper article a:hover figure img {
  -webkit-transform: scale(1.1);
          transform: scale(1.1);
}
.service_inner .swiper-wrapper article a:hover h3 {
  color: #0064AF;
}
.service_inner .swiper-wrapper article figure {
  line-height: 0;
  font-size: 0;
  overflow: hidden;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
  -webkit-transition: all 0.7s;
  transition: all 0.7s;
}
.service_inner .swiper-wrapper article figure img {
  height: auto;
  -webkit-transition: -webkit-transform 0.5s ease;
  transition: -webkit-transform 0.5s ease;
  transition: transform 0.5s ease;
  transition: transform 0.5s ease, -webkit-transform 0.5s ease;
  border-top-left-radius: 10px;
  border-top-right-radius: 10px;
}
.service_inner .swiper-wrapper article div {
  padding: 25px 20px 40px 20px;
}
.service_inner .swiper-wrapper article p {
  color: #0064AF;
  margin: 0;
  font-weight: bold;
}
.service_inner .swiper-wrapper article h3 {
  position: relative;
  color: #323232;
  font-size: 20px;
  display: block;
  padding-right: 40px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.service_inner .swiper-wrapper article h3::before {
  position: absolute;
  top: 5px;
  right: 0;
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid #0064AF;
  border-radius: 50%;
}
.service_inner .swiper-wrapper article h3 .icon_rarrow {
  position: absolute;
  top: 13px;
  right: 8px;
}
.service_inner .swiper-horizontal > .swiper-scrollbar,
.service_inner .swiper-scrollbar.swiper-scrollbar-horizontal {
  position: relative;
  left: auto;
  top: auto;
  height: 34px;
  border-radius: 17px;
  width: 440px;
  margin: 130px auto 100px auto;
}
.service_inner .swiper-scrollbar-drag {
  border-radius: 17px;
}
.service_inner .scrollbar_btn {
  width: 64px !important;
  height: 30px;
  background: url(../images/common/slider_drag.svg) no-repeat top 5px center;
  background-size: 64px;
}
@media screen and (max-width: 1160px) {
  .service_inner {
    width: calc(50% + 44.3vw);
  }
  .service_inner .swiper-wrapper article {
    width: 28.45vw;
    border-bottom-right-radius: 0.86vw;
    border-bottom-left-radius: 0.86vw;
  }
  .service_inner .swiper-wrapper article figure img {
    border-top-left-radius: 0.86vw;
    border-top-right-radius: 0.86vw;
  }
  .service_inner .swiper-wrapper article div {
    padding: 2.16vw 1.72vw 3.45vw 1.72vw;
  }
  .service_inner .swiper-wrapper article h3 {
    font-size: 1.72vw;
    padding-right: 3.45vw;
  }
  .service_inner .swiper-wrapper article h3::before {
    top: 0.43vw;
    width: 2.07vw;
    height: 2.07vw;
    border-radius: 1.03vw;
  }
  .service_inner .swiper-wrapper article h3 .icon_rarrow {
    top: 1.12vw;
    right: 0.69vw;
  }
  .service_inner .swiper-horizontal > .swiper-scrollbar,
  .service_inner .swiper-scrollbar.swiper-scrollbar-horizontal {
    height: 2.93vw;
    border-radius: 1.47vw;
    width: 37.93vw;
    margin: 11.21vw auto 8.62vw auto;
  }
  .service_inner .swiper-scrollbar-drag {
    border-radius: 1.47vw;
  }
  .service_inner .scrollbar_btn {
    width: 5.52vw !important;
    height: 2.59vw;
    background: url(../images/common/slider_drag.svg) no-repeat top 0.43vw center;
    background-size: 5.52vw;
  }
}
@media screen and (max-width: 750px) {
  .service_inner {
    width: 93.61vw;
    margin: 0 0 0 auto;
  }
  .service_inner .swiper-wrapper article {
    width: 75vw;
    border-bottom-right-radius: 2.78vw;
    border-bottom-left-radius: 2.78vw;
  }
  .service_inner .swiper-wrapper article figure {
    border-top-left-radius: 2.78vw;
    border-top-right-radius: 2.78vw;
  }
  .service_inner .swiper-wrapper article figure img {
    border-top-left-radius: 2.78vw;
    border-top-right-radius: 2.78vw;
  }
  .service_inner .swiper-wrapper article div {
    padding: 8.33vw 4.72vw;
  }
  .service_inner .swiper-wrapper article p {
    font-size: 4.44vw;
  }
  .service_inner .swiper-wrapper article h3 {
    font-size: 5.56vw;
    padding-right: 0;
  }
  .service_inner .swiper-wrapper article h3::before {
    top: 1.39vw;
    width: 5.56vw;
    height: 5.56vw;
    border-radius: 5.56vw;
  }
  .service_inner .swiper-wrapper article h3 .icon_rarrow {
    top: 2.78vw;
    right: 1.39vw;
  }
  .service_inner .swiper-horizontal > .swiper-scrollbar,
  .service_inner .swiper-scrollbar.swiper-scrollbar-horizontal {
    height: 4.72vw;
    border-radius: 4.72vw;
    width: 86.67vw;
    margin: 16.67vw auto 13.89vw auto;
  }
  .service_inner .swiper-scrollbar-drag {
    border-radius: 4.72vw;
  }
  .service_inner .scrollbar_btn {
    width: 11.11vw !important;
    height: 4.72vw;
    background: url(../images/common/slider_drag.svg) no-repeat top 1px center;
    background-size: 11.11vw;
  }
}

.home_news {
  width: 100%;
  padding: 145px 0 150px 0;
}
@media screen and (max-width: 1160px) {
  .home_news {
    padding: 12.5vw 0 12.93vw 0;
  }
}
@media screen and (max-width: 750px) {
  .home_news {
    padding: 20.83vw 0 26.39vw 0;
  }
}

.home_news_inner {
  position: relative;
  width: 1030px;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_news_inner .home_news_title {
  width: 350px;
}
.home_news_inner .home_news_title h2 {
  font-size: 50px;
  line-height: 1em;
  margin-bottom: 15px;
  color: #0064AF;
  font-weight: 600;
  font-family: "Source Sans 3", serif;
}
.home_news_inner .home_news_title h3 {
  font-size: 24px;
  font-weight: bold;
  color: #0064AF;
  margin-bottom: 120px;
}
.home_news_inner .arrow_btn {
  font-size: 16px;
  position: absolute;
  left: 0;
  top: 230px;
}
@media screen and (max-width: 1160px) {
  .home_news_inner {
    width: 88.79vw;
  }
  .home_news_inner .home_news_title {
    width: 30.17vw;
  }
  .home_news_inner .home_news_title h2 {
    font-size: 4.31vw;
    margin-bottom: 1.29vw;
  }
  .home_news_inner .home_news_title h3 {
    font-size: 2.07vw;
    margin-bottom: 10.34vw;
  }
  .home_news_inner .arrow_btn {
    font-size: 1.38vw;
    top: 19.83vw;
  }
}
@media screen and (max-width: 750px) {
  .home_news_inner {
    width: 86.67vw;
    display: block;
  }
  .home_news_inner .home_news_title {
    width: 100%;
  }
  .home_news_inner .home_news_title h2 {
    font-size: 11.11vw;
    line-height: 1em;
    margin-bottom: 5.56vw;
  }
  .home_news_inner .home_news_title h3 {
    font-size: 5.56vw;
    margin-bottom: 0;
    margin-bottom: 8.33vw;
  }
  .home_news_inner .arrow_btn {
    position: relative;
    top: auto;
    font-size: 4.44vw;
  }
}

.home_news_base {
  position: relative;
  width: 500px;
}
.home_news_base ul {
  list-style: none;
  margin-bottom: 50px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_news_base ul li {
  width: 25%;
  text-align: center;
  font-size: 16px;
  padding-bottom: 0.3em;
  font-size: 16px;
  font-weight: bold;
  border-bottom: 2px solid #FFF;
  color: #323232;
  cursor: pointer;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_news_base ul li.current {
  color: #0064AF;
  border-bottom: 2px solid #0064AF;
}
.home_news_base ul li.stop {
  pointer-events: none;
  opacity: 0.5;
}
.home_news_base ul li:hover {
  color: #0064AF;
}
@media screen and (max-width: 1160px) {
  .home_news_base {
    width: 43.1vw;
  }
  .home_news_base ul {
    margin-bottom: 4.31vw;
  }
  .home_news_base ul li {
    font-size: 1.38vw;
    font-size: 1.38vw;
  }
}
@media screen and (max-width: 750px) {
  .home_news_base {
    width: 100%;
  }
  .home_news_base ul {
    list-style: none;
    margin-bottom: 13.89vw;
  }
  .home_news_base ul li {
    width: 18.5%;
    font-size: 3.61vw;
  }
}

.home_news_archive {
  position: relative;
}
.home_news_archive article {
  display: none;
}
.home_news_archive article.current {
  display: block;
}

.home_recruit {
  position: relative;
  padding: 0 0 150px 0;
}
@media screen and (max-width: 1160px) {
  .home_recruit {
    padding: 0 0 12.93vw 0;
  }
}
@media screen and (max-width: 750px) {
  .home_recruit {
    padding: 0 0 22.22vw 0;
  }
}

.home_recruit_inner {
  position: relative;
  width: 91.4%;
  margin: 0 auto;
  border-radius: 20px;
}
.home_recruit_inner .swiper {
  z-index: -1 !important;
}
.home_recruit_inner a {
  text-decoration: none;
}
.home_recruit_inner a:hover .flow_slide {
  opacity: 0.8;
}
.home_recruit_inner .flow_slide {
  z-index: 1;
  border-radius: 20px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_recruit_inner .home_recruit_title {
  position: absolute;
  width: 1030px;
  top: 70px;
  left: calc(50% - 515px);
  z-index: 2;
}
.home_recruit_inner .home_recruit_title h2 {
  font-size: 50px;
  color: #FFF;
  font-weight: 600;
  font-family: "Source Sans 3", serif;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_recruit_inner .home_recruit_title h3 {
  position: relative;
  display: inline-block;
  font-size: 24px;
  color: #FFF;
  padding-right: 40px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_recruit_inner .home_recruit_title h3::before {
  position: absolute;
  top: 8px;
  right: 0;
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid #FFF;
  border-radius: 50%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_recruit_inner .home_recruit_title h3 .icon_rarrow {
  position: absolute;
  top: 16px;
  right: 8px;
  background: url(../images/common/icon_arrow_right_w.svg) no-repeat center center;
  background-size: 10px;
}
.home_recruit_inner .home_recruit_news {
  position: absolute;
  bottom: 60px;
  left: calc(50% - 515px);
  width: 1030px;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  z-index: 2;
}
.home_recruit_inner .home_recruit_news a {
  display: block;
  text-decoration: none;
  background: #FFF;
  padding: 20px 30px;
  border-radius: 60px;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: start;
  -webkit-box-pack: start;
          justify-content: flex-start;
  -ms-flex-align: center;
  -webkit-box-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_recruit_inner .home_recruit_news a:hover h3 {
  color: #0064AF;
}
.home_recruit_inner .home_recruit_news time {
  font-size: 14px;
  width: 7em;
  color: #0064AF;
  margin: 0;
  padding: 0;
  font-weight: bold;
  line-height: 1.5em;
}
.home_recruit_inner .home_recruit_news h3 {
  position: relative;
  display: block;
  font-size: 15px;
  line-height: 1.4em;
  font-weight: normal;
  width: calc(100% - 7em);
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_recruit_inner .home_recruit_news h3 .icon_rarrow {
  position: absolute;
  top: 8px;
  right: 0;
}
@media screen and (max-width: 1160px) {
  .home_recruit_inner .flow_slide {
    border-radius: 1.72vw;
  }
  .home_recruit_inner .home_recruit_title {
    width: 88.79vw;
    top: 6.03vw;
    left: calc(50% - 44.3vw);
  }
  .home_recruit_inner .home_recruit_title h2 {
    font-size: 4.31vw;
  }
  .home_recruit_inner .home_recruit_title h3 {
    font-size: 2.07vw;
  }
  .home_recruit_inner .home_recruit_news {
    bottom: 5.17vw;
    left: calc(50% - 44.3vw);
    width: 88.79vw;
  }
  .home_recruit_inner .home_recruit_news a {
    padding: 1.72vw 2.59vw;
    border-radius: 5.17vw;
  }
  .home_recruit_inner .home_recruit_news time {
    font-size: 1.21vw;
  }
  .home_recruit_inner .home_recruit_news h3 {
    font-size: 1.29vw;
  }
  .home_recruit_inner .home_recruit_news h3 .icon_rarrow {
    top: 0.69vw;
  }
}
@media screen and (max-width: 750px) {
  .home_recruit_inner {
    width: 94.44vw;
    border-radius: 2.78vw;
  }
  .home_recruit_inner .flow_slide {
    border-radius: 2.78vw;
  }
  .home_recruit_inner .home_recruit_title {
    width: 86.67vw;
    top: 6.67vw;
    left: calc(50% - 43.33vw);
  }
  .home_recruit_inner .home_recruit_title h2 {
    font-size: 11.11vw;
    margin-bottom: 5.56vw;
    line-height: 1em;
  }
  .home_recruit_inner .home_recruit_title h3 {
    font-size: 5.56vw;
    padding-right: 0;
    padding-right: 8.33vw;
  }
  .home_recruit_inner .home_recruit_title h3::before {
    top: 2.22vw;
    width: 5.56vw;
    height: 5.56vw;
  }
  .home_recruit_inner .home_recruit_title h3 .icon_rarrow {
    top: 3.75vw;
    right: 1.53vw;
    background-size: 2.78vw;
  }
  .home_recruit_inner .home_recruit_news {
    bottom: 8.33vw;
    left: calc(50% - 43.33vw);
    width: 86.67vw;
  }
  .home_recruit_inner .home_recruit_news a {
    padding: 3.33vw;
    border-radius: 16.67vw;
  }
  .home_recruit_inner .home_recruit_news time {
    width: 5em;
    font-size: 3.33vw;
  }
  .home_recruit_inner .home_recruit_news h3 {
    font-size: 3.33vw;
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    padding-right: 1.5em;
    width: calc(100% - 5em);
    overflow: hidden;
    text-overflow: ellipsis;
    white-space: nowrap;
  }
  .home_recruit_inner .home_recruit_news h3 .icon_rarrow {
    top: 0.56vw;
    right: 0;
  }
}

.home_project_banner {
  position: relative;
  width: 1050px;
  margin: 0 auto;
  display: -ms-flexbox;
  display: -webkit-box;
  display: flex;
  -ms-flex-pack: justify;
  -webkit-box-pack: justify;
          justify-content: space-between;
  -ms-flex-align: start;
  -webkit-box-align: start;
          align-items: flex-start;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
}
.home_project_banner article {
  position: relative;
  width: 47.6%;
}
.home_project_banner article a {
  display: block;
  text-decoration: none;
}
.home_project_banner article a:hover figure {
  opacity: 0.8;
}
.home_project_banner article figure {
  position: relative;
  line-height: 0;
  border-radius: 10px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_project_banner article figure img {
  border-radius: 10px;
}
.home_project_banner article h3 {
  position: absolute;
  left: 1em;
  top: 1em;
  display: inline-block;
  font-size: 24px;
  color: #FFF;
  padding-right: 40px;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_project_banner article h3::before {
  position: absolute;
  top: 8px;
  right: 0;
  content: "";
  width: 24px;
  height: 24px;
  border: 1px solid #FFF;
  border-radius: 50%;
  -webkit-transition: all 0.2s;
  transition: all 0.2s;
}
.home_project_banner article h3 .icon_rarrow {
  position: absolute;
  top: 16px;
  right: 8px;
  background: url(../images/common/icon_arrow_right_w.svg) no-repeat center center;
  background-size: 10px;
}
@media screen and (max-width: 1160px) {
  .home_project_banner {
    width: 90.52vw;
  }
  .home_project_banner article figure {
    border-radius: 0.86vw;
  }
  .home_project_banner article figure img {
    border-radius: 0.86vw;
  }
  .home_project_banner article h3 {
    font-size: 2.07vw;
    padding-right: 3.45vw;
  }
  .home_project_banner article h3::before {
    top: 0.69vw;
    width: 2.07vw;
    height: 2.07vw;
  }
  .home_project_banner article h3 .icon_rarrow {
    top: 1.38vw;
    right: 0.69vw;
    background-size: 0.86vw;
  }
}
@media screen and (max-width: 750px) {
  .home_project_banner {
    width: 94.44vw;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
  }
  .home_project_banner article {
    width: 100%;
    margin-bottom: 6.94vw;
  }
  .home_project_banner article figure {
    border-radius: 2.78vw;
  }
  .home_project_banner article figure img {
    border-radius: 2.78vw;
  }
  .home_project_banner article h3 {
    font-size: 5.56vw;
    padding-right: 0;
    padding-right: 8.33vw;
  }
  .home_project_banner article h3::before {
    top: 2.22vw;
    width: 5.56vw;
    height: 5.56vw;
  }
  .home_project_banner article h3 .icon_rarrow {
    top: 3.75vw;
    right: 1.53vw;
    background-size: 2.78vw;
  }
}

.min {
  font-family: "游明朝体", "Yu Mincho", YuMincho, "ヒラギノ明朝 Pro", "Hiragino Mincho Pro", "MS P明朝", "MS PMincho", serif;
}