/* ==========================================================================
   Index
   ========================================================================== */
/* attention
   ========================================================================== */
.attention {
  background-color: #F4F4F4;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  padding-bottom: 15px;
  padding-top: 18px;
  width: 100%;
}
.attention > dl {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.attention > dl > dt {
  color: #ef1313;
  font-weight: 700;
  line-height: 1.5;
  margin-right: 12px;
}
.attention > dl > dt::before {
  margin-right: 5px;
}
.attention > dl > dd > ul {
  line-height: 1.5;
}
.attention > dl > dd > ul > li > a {
  background: -webkit-gradient(linear, left bottom, left top, from(#1E52A6), to(#1E52A6)) no-repeat 100% 100%;
  background: -webkit-linear-gradient(bottom, #1E52A6, #1E52A6) no-repeat 100% 100%;
  background: linear-gradient(0deg, #1E52A6, #1E52A6) no-repeat 100% 100%;
  background-size: 0 1px;
  text-decoration: none;
  -webkit-transition: background-size 0.3s;
  transition: background-size 0.3s;
}
@media (min-width: 768px) {
  .attention > dl > dd > ul > li > a:hover {
    background-position: 0 100%;
    background-size: 100% 1px;
  }
}
@media (max-width: 767px) {
  .attention {
    padding: 7px 15px;
    width: 100%;
  }
  .attention > dl {
    display: block;
  }
  .attention > dl > dt {
    font-size: 1.2em;
    margin-bottom: 3px;
    margin-right: 0;
  }
  .attention > dl > dd {
    font-size: 1.2em;
  }
}
/* main-visual
   ========================================================================== */
.main-visual {
  background-size: cover;
  height: 640px;
  overflow: hidden;
  position: relative;
}
.main-visual::after,
.main-visual::before {
  content: "";
  height: 100%;
  width: 100%;
  position: absolute;
  left: 0;
  top: 0;
}
.main-visual::before {
  background-color: rgba(25, 33, 255, 0.12);
  z-index: 1;
}
.main-visual::after {
  background-color: rgba(74, 74, 74, 0.4);
  z-index: 0;
}
.main-visual h1 {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  color: #fff;
  font-size: 8.1em;
  font-weight: 700;
  line-height: 1.3;
  text-align: center;
  width: 100%;
  position: absolute;
  left: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 2;
}
.main-visual h1 > span {
  display: block;
  margin-top: 30px;
  height: 50px;
}
.main-visual h1 > span img {
  max-width: 571px;
}
.main-visual .main-visual_scroll {
  display: table;
  margin: 30px auto 0;
  text-align: center;
  position: relative;
}
.main-visual .main-visual_scroll::after,
.main-visual .main-visual_scroll::before {
  background-color: #fff;
  content: "";
  position: absolute;
  left: 50%;
  top: 17px;
  -webkit-transform: translateX(-50%);
      -ms-transform: translateX(-50%);
          transform: translateX(-50%);
}
.main-visual .main-visual_scroll::before {
  height: 40px;
  width: 2px;
}
.main-visual .main-visual_scroll::after {
  border-radius: 50%;
  height: 9px;
  width: 9px;
  -webkit-animation: mvscroll 1.5s ease-out 0s infinite forwards;
          animation: mvscroll 1.5s ease-out 0s infinite forwards;
}
.main-visual .main-visual_bg {
  height: 100%;
  width: 100%;
  position: absolute;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.main-visual .main-visual_bg video {
  height: 100%;
  -o-object-fit: cover;
     object-fit: cover;
  width: 100%;
}
@media (max-width: 767px) {
  .main-visual {
    background-image: url(/img/index_main-visual_bg-sp.jpg);
    height: 100vh;
    position: relative;
  }
  .main-visual h1 {
    font-size: 3.8em;
  }
  .main-visual h1 > span {
    margin-top: 10px;
  }
  .main-visual h1 > span img {
    max-width: 295px;
  }
}
@-webkit-keyframes mvscroll {
  0% {
    -webkit-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0);
  }
  100% {
    -webkit-transform: translateX(-50%) translateY(31px);
            transform: translateX(-50%) translateY(31px);
  }
}
@keyframes mvscroll {
  0% {
    -webkit-transform: translateX(-50%) translateY(0);
            transform: translateX(-50%) translateY(0);
  }
  100% {
    -webkit-transform: translateX(-50%) translateY(31px);
            transform: translateX(-50%) translateY(31px);
  }
}
/* top-link
   ========================================================================== */
.top-link {
  color: #333;
  display: table;
  font-size: 1.7rem;
  font-weight: 700;
  line-height: 60px;
  padding-right: 70px;
  text-decoration: none;
  position: relative;
}
.top-link > i {
  background-color: #f4f4f4;
  border-radius: 50%;
  height: 60px;
  overflow: hidden;
  width: 60px;
  position: absolute;
  right: 0;
  top: 0;
}
.top-link > i::before {
  color: #fff;
  content: "\e900";
  display: block;
  font-family: 'icomoon';
  font-size: 1.3rem;
  opacity: 0;
  line-height: 60px;
  text-align: center;
  width: 60px;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scale(0.1);
      -ms-transform: scale(0.1);
          transform: scale(0.1);
  z-index: 2;
}
.top-link > i::after {
  background-color: #1E52A6;
  border-radius: 50%;
  content: "";
  height: 5px;
  width: 5px;
  position: absolute;
  right: 27px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 0;
}
@media (min-width: 768px) {
  .top-link:hover {
    text-decoration: none;
  }
  .top-link:hover > i {
    background-color: #1E52A6;
    -webkit-transition: all 0.2s 0.2s;
    transition: all 0.2s 0.2s;
  }
  .top-link:hover > i::before {
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-transition: opacity 0.2s 0.1s, -webkit-transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, -webkit-transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, transform 0.2s linear 0.1s, -webkit-transform 0.2s linear 0.1s;
  }
  .top-link:hover > i::after {
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
}
@media (max-width: 767px) {
  .top-link {
    font-size: 1.4rem;
    line-height: 26px;
    padding-right: 36px;
  }
  .top-link > i {
    background-color: #1E52A6;
    height: 26px;
    width: 26px;
  }
  .top-link > i::before {
    color: #fff;
    font-size: 1rem;
    line-height: 26px;
    opacity: 1;
    width: 26px;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
  }
  .top-link > i::after {
    content: none;
  }
}
/* top-title
   ========================================================================== */
.top-title {
  margin-bottom: 40px;
  position: relative;
}
.top-title > span {
  color: #7A9ED8;
  display: table;
  font-weight: 700;
  line-height: 1;
  margin-top: 10px;
  padding-left: 45px;
  position: relative;
}
.top-title > span::before {
  background-color: #7A9ED8;
  content: "";
  height: 1px;
  width: 38px;
  position: absolute;
  left: 0;
  top: 50%;
}
@media (max-width: 767px) {
  .top-title {
    font-size: 1.2em;
    margin-bottom: 20px;
  }
  .top-title > span {
    padding-left: 20px;
  }
  .top-title > span::before {
    width: 18px;
  }
}
.top-title .top-title_link {
  margin-top: 20px;
}
.top-title.theme-center {
  text-align: center;
}
.top-title.theme-center > span {
  margin: 0 auto;
  padding-left: 0;
}
.top-title.theme-center > span::before {
  content: none;
}
.top-title.theme-center .top-title_link {
  margin-top: 0;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (max-width: 767px) {
  .top-title.theme-center .top-title_link {
    margin: 15px auto 0;
    position: relative;
    right: 0;
    top: 0;
    -webkit-transform: translateY(0);
        -ms-transform: translateY(0);
            transform: translateY(0);
  }
}
.top-title.theme-right {
  display: table;
  margin-left: auto;
}
.top-title.theme-right > span {
  margin-left: auto;
}
.top-title.theme-right .top-title_link {
  margin-left: auto;
}
.top-title.opt-white > span {
  color: #fff;
}
.top-title.opt-white > span::before {
  background-color: #fff;
}
/* top-challenge
   ========================================================================== */
.top-challenge {
  margin-top: 60px;
  padding-bottom: 80px;
  position: relative;
  z-index: 0;
}
.top-challenge::before {
  background-color: #F2F4F8;
  content: "";
  display: block;
  height: 100%;
  max-height: 750px;
  position: absolute;
  bottom: 0;
  left: 100px;
  right: 0;
  z-index: -1;
}
@media (max-width: 767px) {
  .top-challenge {
    padding: 50px 0 20px;
  }
  .top-challenge::before {
    left: 15px;
  }
}
@media (max-width: 767px) {
  .top-challenge .top-challenge_title img {
    width: 213px;
  }
}
.top-challenge .top-challenge_catch {
  font-size: 2em;
  font-weight: 700;
  margin-bottom: 40px;
  text-align: center;
}
@media (max-width: 767px) {
  .top-challenge .top-challenge_catch {
    font-size: 1.6em;
    margin-bottom: 25px;
    margin-top: 0;
  }
}
.top-challenge .top-challenge_banner {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 100px;
}
.top-challenge .top-challenge_banner > li {
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-right: 16px;
}
.top-challenge .top-challenge_banner > li:last-child {
  margin-right: 0;
}
.top-challenge .top-challenge_banner > li > a {
  display: block;
  text-decoration: none;
  -webkit-transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
  transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
@media (min-width: 768px) {
  .top-challenge .top-challenge_banner > li > a:hover {
    opacity: 0.4;
  }
}
.top-challenge .top-challenge_banner > li > a > span {
  display: inline-block;
  font-weight: 500;
  margin-top: 14px;
  padding-right: 30px;
  position: relative;
}
.top-challenge .top-challenge_banner > li > a > span::before {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  background-color: #1E52A6;
  border-radius: 50%;
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  height: 26px;
  font-size: 1rem;
  font-weight: 400;
  width: 26px;
  position: absolute;
  right: 0;
  top: 0;
}
@media (max-width: 767px) {
  .top-challenge .top-challenge_banner {
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    padding-left: 15px;
    padding-right: 15px;
  }
  .top-challenge .top-challenge_banner > li {
    -webkit-box-flex: 1;
        -ms-flex: auto;
            flex: auto;
    margin-bottom: 20px;
    margin-right: 4%;
    width: 48%;
  }
  .top-challenge .top-challenge_banner > li:nth-child(2n) {
    margin-right: 0;
  }
  .top-challenge .top-challenge_banner > li > a {
    display: block;
    text-decoration: none;
  }
  .top-challenge .top-challenge_banner > li > a > span {
    margin-top: 6px;
    padding-right: 22px;
  }
  .top-challenge .top-challenge_banner > li > a > span::before {
    height: 17px;
    font-size: 1rem;
    width: 17px;
  }
}
/* top-news
   ========================================================================== */
.top-news {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-top: 100px;
}
.top-news .top-news_list {
  border-top: 1px solid #ddd;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  margin-left: 48px;
  margin-top: 0;
}
.top-news .top-news_list > li {
  border-bottom: 1px solid #ddd;
}
.top-news .top-news_list > li > a {
  display: block;
  padding: 20px 30px 20px 0;
  text-decoration: none;
  position: relative;
}
.top-news .top-news_list > li > a::before {
  color: #1E52A6;
  content: "\e900";
  font-family: 'icomoon';
  font-size: 1.3rem;
  font-weight: 700;
  position: absolute;
  right: 10px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.top-news .top-news_list > li > a > p {
  background: -webkit-gradient(linear, left bottom, left top, from(#1E52A6), to(#1E52A6)) no-repeat 100% 100%;
  background: -webkit-linear-gradient(bottom, #1E52A6, #1E52A6) no-repeat 100% 100%;
  background: linear-gradient(0deg, #1E52A6, #1E52A6) no-repeat 100% 100%;
  background-size: 0 1px;
  display: inline;
  margin-top: 0;
  -webkit-transition: background-size 0.3s;
  transition: background-size 0.3s;
}
@media (min-width: 768px) {
  .top-news .top-news_list > li > a:hover > p {
    background-position: 0 100%;
    background-size: 100% 1px;
  }
}
.top-news .top-news_list_items {
  color: #707070;
  line-height: 1;
  margin-bottom: 5px;
}
.top-news .top-news_list_items > span,
.top-news .top-news_list_items > time {
  margin-right: 12px;
}
.top-news .top-news_list_items .top-news_list_items_lang {
  background-color: #9F9F9F;
  color: #fff;
  font-size: 1.2rem;
  line-height: 1.1;
  padding: 3px 5px 2px;
}
.top-news .top-news_list_category {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  color: #C3C3C3;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-bottom: 10px;
}
.top-news .top-news_list_category span {
  display: inline-block;
  margin-right: 13px;
}
@media (max-width: 767px) {
  .top-news {
    display: block;
    margin-top: 50px;
    padding-left: 15px;
    padding-right: 15px;
  }
  .top-news .top-news_title {
    margin-bottom: 15px;
    position: relative;
  }
  .top-news .top-news_title img {
    width: 81px;
  }
  .top-news .top-news_title .top-news_title_link {
    margin-top: 0;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .top-news .top-news_list {
    line-height: 1.5;
    margin-left: 0;
  }
  .top-news .top-news_list > li > a {
    padding: 15px 30px 15px 0;
  }
  .top-news .top-news_list_items > span,
  .top-news .top-news_list_items > time {
    margin-right: 7px;
  }
  .top-news .top-news_list_items .top-news_list_items_lang {
    font-size: 1rem;
    padding: 2px 5px;
  }
  .top-news .top-news_list_category {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: block;
  }
  .top-news .top-news_list_category > li {
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    margin-bottom: 5px;
  }
  .top-news .top-news_list_category > li:last-child {
    margin-bottom: 0;
  }
  .top-news .top-news_list_category span {
    margin-right: 7px;
  }
  .top-news .top-news_list_category span:not(.m-category) {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
  }
}
/* top-event
   ========================================================================== */
.top-event {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .top-event {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.top-event .top-event_title {
  color: #1E52A6;
  font-size: 3em;
  font-weight: 700;
  margin-bottom: 20px;
  min-height: 60px;
  position: relative;
}
.top-event .top-event_title .top-event_title_link {
  color: #333;
  position: absolute;
  right: 0;
  top: 0;
}
@media (max-width: 767px) {
  .top-event .top-event_title {
    font-size: 2em;
    margin-bottom: 15px;
  }
  .top-event .top-event_title .top-event_title_link {
    margin-left: auto;
    margin-top: 10px;
    position: relative;
  }
}
.top-event .top-event_list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  margin-top: 0;
}
.top-event .top-event_list > li {
  margin-right: 2%;
  width: 49%;
}
.top-event .top-event_list > li:nth-child(2n) {
  margin-right: 0;
}
@media (min-width: 768px) {
  .top-event .top-event_list > li {
    margin-top: 20px;
  }
  .top-event .top-event_list > li:nth-child(-n+2) {
    margin-top: 0;
  }
}
.top-event .top-event_list > li > a {
  background-color: #fff;
  border: 1px solid #ddd;
  display: block;
  padding: 20px 48px 12px 20px;
  text-decoration: none;
}
.top-event .top-event_list > li > a > p {
  margin-top: 5px;
}
@media (min-width: 768px) {
  .top-event .top-event_list > li > a:hover {
    border-color: #1E52A6;
  }
}
.top-event .top-event_list .top-event_list_tag {
  background-color: #A68C1E;
  color: #fff;
  display: block;
  font-size: 1.4rem;
  font-weight: 500;
  line-height: 1.1;
  padding: 3px 0 2px;
  text-align: center;
  width: 95px;
}
.top-event .top-event_list .top-event_list_tag.is-active {
  background-color: #1E52A6;
}
.top-event .top-event_list .top-event_list_items {
  font-size: 1.2rem;
}
.top-event .top-event_list .top-event_list_items > span {
  display: inline-block;
  letter-spacing: 0;
  margin-right: 10px;
}
.top-event .top-event_list .top-event_list_items > span::before {
  color: #1E52A6;
  font-size: 1.5rem;
  margin-right: 5px;
}
@media (max-width: 767px) {
  .top-event .top-event_list {
    display: block;
    margin-top: 0;
  }
  .top-event .top-event_list > li {
    margin-bottom: 20px;
    margin-right: 0;
    width: auto;
  }
  .top-event .top-event_list > li:last-child {
    margin-bottom: 0;
  }
  .top-event .top-event_list > li > a {
    padding: 20px;
  }
  .top-event .top-event_list .top-event_list_tag {
    font-size: 1.2rem;
    width: 93px;
  }
  .top-event .top-event_list .top-event_list_items {
    margin-top: 15px;
  }
  .top-event .top-event_list .top-event_list_items > span {
    display: block;
    letter-spacing: 0;
    margin-bottom: 5px;
    margin-right: 0;
  }
  .top-event .top-event_list .top-event_list_items > span:last-child {
    margin-bottom: 0;
  }
}
/* top-group-vision
   ========================================================================== */
.top-group-vision {
  margin-top: 60px;
  overflow: hidden;
  position: relative;
}
@media (max-width: 767px) {
  .top-group-vision {
    margin-top: 35px;
  }
}
.top-group-vision .top-group-vision_wrap {
  padding-bottom: 287px;
  padding-top: 367px;
  position: relative;
}
.top-group-vision .top-group-vision_wrap::before {
  background: url(/img/index_group-vision_bg.svg) no-repeat 50% 50%;
  background-size: 100% 100%;
  content: "";
  height: 1448px;
  width: 1453px;
  position: absolute;
  left: -150px;
  top: 0;
  z-index: 0;
}
@media (max-width: 767px) {
  .top-group-vision .top-group-vision_wrap {
    padding: 100px 15px 80px;
  }
  .top-group-vision .top-group-vision_wrap::before {
    background-image: url(/img/index_group-vision_bg-sp.png);
    height: 684px;
    width: 684px;
    left: 50%;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.top-group-vision .top-group-vision_box {
  margin-left: auto;
  margin-right: auto;
  max-width: 870px;
  text-align: center;
  position: relative;
  z-index: 1;
}
.top-group-vision .top-group-vision_box .top-group-vision_title {
  display: table;
  margin: 0 auto;
}
.top-group-vision .top-group-vision_box .top-group-vision_title_link {
  margin: 20px auto 0;
}
.top-group-vision .top-group-vision_box .top-group-vision_title_link > i {
  background-color: rgba(30, 82, 166, 0.07);
}
@media (min-width: 768px) {
  .top-group-vision .top-group-vision_box .top-group-vision_title_link:hover > i {
    background-color: #1E52A6;
  }
}
.top-group-vision .top-group-vision_box h3 {
  color: #1E52A6;
  font-size: 4em;
  font-weight: 700;
  line-height: 1.5;
  margin-top: 30px;
  text-align: center;
}
.top-group-vision .top-group-vision_box p {
  font-size: 2em;
  font-weight: 700;
  line-height: 2;
  margin-top: 20px;
}
@media (max-width: 767px) {
  .top-group-vision .top-group-vision_box .top-group-vision_title img {
    width: 302px;
  }
  .top-group-vision .top-group-vision_box .top-group-vision_link > i {
    background-color: #1E52A6;
  }
  .top-group-vision .top-group-vision_box h3 {
    font-size: 2.6em;
    line-height: 1.3;
    margin-top: 25px;
  }
  .top-group-vision .top-group-vision_box p {
    font-size: 1.6em;
    line-height: 1.5;
    margin-top: 15px;
  }
}
.top-group-vision .top-group-vision_airplane {
  background: url(/img/index_group-vision-airplane_img.svg) no-repeat;
  background-size: 100% 100%;
  height: 210px;
  width: 283px;
  position: absolute;
  right: -66px;
  top: 54px;
  -webkit-animation: airplane 190s linear infinite;
          animation: airplane 190s linear infinite;
}
@media (max-width: 767px) {
  .top-group-vision .top-group-vision_airplane {
    display: none;
  }
}
.top-group-vision .top-group-vision_express {
  background: url(/img/index_group-vision-express_img.svg) no-repeat;
  background-size: 100% 100%;
  height: 294px;
  width: 446px;
  position: absolute;
  left: -234px;
  top: 643px;
  -webkit-animation: express 10s ease infinite;
          animation: express 10s ease infinite;
}
@media (max-width: 767px) {
  .top-group-vision .top-group-vision_express {
    display: none;
  }
}
.top-group-vision .top-group-vision_cloud {
  background: url(/img/index_group-vision-cloud_img.svg) no-repeat;
  background-size: 100% 100%;
  height: 155px;
  width: 248px;
  position: absolute;
}
.top-group-vision .top-group-vision_cloud.opt-left01 {
  left: -234px;
  top: 228px;
  -webkit-animation: cloudleft01 200s linear infinite;
          animation: cloudleft01 200s linear infinite;
}
.top-group-vision .top-group-vision_cloud.opt-left02 {
  left: -38px;
  top: 160px;
  -webkit-animation: cloudleft02 210s infinite;
          animation: cloudleft02 210s infinite;
}
.top-group-vision .top-group-vision_cloud.opt-right {
  right: -177px;
  top: 265px;
  -webkit-animation: cloudright 230s infinite;
          animation: cloudright 230s infinite;
}
@media (max-width: 767px) {
  .top-group-vision .top-group-vision_cloud {
    display: none;
  }
}
@-webkit-keyframes airplane {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@keyframes airplane {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@-webkit-keyframes express {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(1000%, 1000%);
            transform: translate(1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(-1000%, -1000%);
            transform: translate(-1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@keyframes express {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(1000%, 1000%);
            transform: translate(1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(-1000%, -1000%);
            transform: translate(-1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@-webkit-keyframes cloudleft01 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@keyframes cloudleft01 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@-webkit-keyframes cloudleft02 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@keyframes cloudleft02 {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@-webkit-keyframes cloudright {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
@keyframes cloudright {
  0% {
    -webkit-transform: translate(0, 0);
            transform: translate(0, 0);
  }
  50% {
    -webkit-transform: translate(-1000%, 1000%);
            transform: translate(-1000%, 1000%);
  }
  51% {
    -webkit-transform: translate(1000%, -1000%);
            transform: translate(1000%, -1000%);
  }
  100% {
    -webkit-transform: translate(0%, 0%);
            transform: translate(0%, 0%);
  }
}
/* top-business
   ========================================================================== */
.top-business {
  position: relative;
  margin-top: 100px;
}
.top-group-vision + .top-business {
  margin-top: 0;
}
.top-business .top-business_box {
  position: relative;
}
.top-business .top-business_title {
  position: absolute;
  right: 7px;
  top: 65px;
  z-index: 2;
}
.top-business .top-business_title > span {
  color: #fff;
}
.top-business .top-business_title > span::before {
  background-color: #fff;
}
@media (min-width: 768px) and (max-width: 1200px) {
  .top-business .top-business_title {
    right: -webkit-calc(7 / 1200 * 100vw);
    right: calc(7 / 1200 * 100vw);
    top: -webkit-calc(65 / 1200 * 100vw);
    top: calc(65 / 1200 * 100vw);
  }
  .top-business .top-business_title img {
    width: -webkit-calc(533 / 1200 * 100vw);
    width: calc(533 / 1200 * 100vw);
  }
}
@media (max-width: 767px) {
  .top-business .top-business_title {
    right: auto;
    left: 50%;
    top: 45px;
    -webkit-transform: translateX(-50%);
        -ms-transform: translateX(-50%);
            transform: translateX(-50%);
  }
}
.top-business .top-business_title_link {
  color: #fff;
  margin-top: 20px;
}
.top-business .top-business_title_link > i {
  background-color: #1E52A6;
}
.top-business .top-business_title_link > i::after {
  background-color: #fff;
}
@media (min-width: 768px) {
  .top-business .top-business_title_link:hover > i {
    background-color: #fff;
  }
  .top-business .top-business_title_link:hover > i::before {
    color: #1E52A6;
  }
}
@media (max-width: 767px) {
  .top-business .top-business_title_link {
    margin: 15px auto 0;
  }
  .top-business .top-business_title_link > i {
    background-color: #fff;
  }
  .top-business .top-business_title_link > i::before {
    color: #1E52A6;
  }
}
.top-business .top-business_lead {
  color: #fff;
  font-size: 2em;
  font-weight: 700;
  line-height: 1.7;
  margin-bottom: 70px;
  max-width: 565px;
  position: absolute;
  left: 0;
  top: 90px;
  z-index: 2;
}
@media (min-width: 768px) and (max-width: 1200px) {
  .top-business .top-business_lead {
    font-size: -webkit-calc(20 / 1200 * 100vw);
    font-size: calc(20 / 1200 * 100vw);
    margin-bottom: -webkit-calc(70 / 1200 * 100vw);
    margin-bottom: calc(70 / 1200 * 100vw);
    max-width: -webkit-calc(565 / 1200 * 100vw);
    max-width: calc(565 / 1200 * 100vw);
  }
}
@media (max-width: 767px) {
  .top-business .top-business_lead {
    font-size: 1.6em;
    margin-bottom: 0;
    padding-left: 15px;
    padding-right: 15px;
    top: 145px;
  }
}
.top-business .top-business_list {
  display: block;
  max-width: 565px;
  padding-bottom: 80px;
  padding-top: 310px;
  padding-right: -webkit-calc(100% - 565px);
  padding-right: calc(100% - 565px);
  position: relative;
  -webkit-transform: none;
      -ms-transform: none;
          transform: none;
}
.top-business .top-business_list > li {
  border-bottom: 1px solid #fff;
  position: static;
}
.top-business .top-business_list > li:first-child {
  border-top: 1px solid #fff;
}
.top-business .top-business_list > li > a {
  color: #fff;
  text-decoration: none;
}
.top-business .top-business_list > li > a > dl > dt {
  font-size: 2.4rem;
  font-weight: 700;
  padding: 40px 70px 40px 0;
  position: relative;
}
.top-business .top-business_list > li > a > dl > dt > b {
  margin-right: 13px;
}
.top-business .top-business_list > li > a > dl > dt > i {
  background-color: #1E52A6;
  border-radius: 50%;
  height: 60px;
  overflow: hidden;
  width: 60px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
.top-business .top-business_list > li > a > dl > dt > i::before {
  color: #1E52A6;
  content: "\e900";
  display: block;
  font-family: 'icomoon';
  font-size: 1.3rem;
  opacity: 0;
  line-height: 60px;
  text-align: center;
  width: 60px;
  position: absolute;
  right: 0;
  top: 0;
  -webkit-transform: scale(0.1);
      -ms-transform: scale(0.1);
          transform: scale(0.1);
  z-index: -1;
}
.top-business .top-business_list > li > a > dl > dt > i::after {
  background-color: #fff;
  border-radius: 50%;
  content: "";
  height: 5px;
  width: 5px;
  position: absolute;
  right: 27px;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
  z-index: 0;
}
.top-business .top-business_list > li > a > dl > dd {
  height: 0;
  overflow: hidden;
  opacity: 0;
  font-weight: 500;
  padding-bottom: 0;
  pointer-events: none;
  -webkit-transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
  transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
.top-business .top-business_list > li .top-business_list_img {
  margin: 0;
  position: absolute;
  right: 0;
  top: 310px;
}
.top-business .top-business_list > li .top-business_list_img img:nth-child(2) {
  position: absolute;
}
.top-business .top-business_list > li .top-business_list_btn {
  display: none;
}
.top-business .top-business_list > li::before {
  background: no-repeat 0 0;
  background-size: cover;
  content: "";
  height: 100%;
  opacity: 0;
  pointer-events: none;
  position: absolute;
  bottom: 0;
  right: 40px;
  left: -12.5vw;
  top: 0;
  -webkit-transition: opacity 0.3s;
  transition: opacity 0.3s;
  z-index: -1;
}
@media (min-width: 1601px) {
  .top-business .top-business_list > li::before {
    left: -20vw;
  }
}
@media (min-width: 2001px) {
  .top-business .top-business_list > li::before {
    left: -40vw;
  }
}
.top-business .top-business_list > li.top-business_slide01 .top-business_list_img img:nth-child(2) {
  bottom: 96px;
  right: -120px;
}
.top-business .top-business_list > li.top-business_slide01::before {
  background-image: url(/img/index_our-business_bg01.jpg);
  opacity: 1;
}
.top-business .top-business_list > li.top-business_slide02 .top-business_list_img img:nth-child(2) {
  bottom: 127px;
  right: -160px;
}
.top-business .top-business_list > li.top-business_slide02::before {
  background-image: url(/img/index_our-business_bg02.jpg);
}
.top-business .top-business_list > li.top-business_slide03 .top-business_list_img img:nth-child(2) {
  bottom: 80px;
  right: -150px;
}
.top-business .top-business_list > li.top-business_slide03::before {
  background-image: url(/img/index_our-business_bg03.jpg);
}
.top-business .top-business_list > li.top-business_slide04 .top-business_list_img img:nth-child(2) {
  bottom: 127px;
  right: -160px;
}
.top-business .top-business_list > li.top-business_slide04::before {
  background-image: url(/img/index_our-business_bg04.jpg);
}
@media (min-width: 768px) {
  .top-business .top-business_list > li.is-hover::before {
    opacity: 1;
  }
  .top-business .top-business_list > li.is-hover > a > dl > dt > i {
    background-color: #fff;
    -webkit-transition: all 0.2s 0.2s;
    transition: all 0.2s 0.2s;
  }
  .top-business .top-business_list > li.is-hover > a > dl > dt > i::before {
    color: #1E52A6;
    opacity: 1;
    -webkit-transform: scale(1);
        -ms-transform: scale(1);
            transform: scale(1);
    -webkit-transition: opacity 0.2s 0.1s, -webkit-transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, -webkit-transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, transform 0.2s linear 0.1s;
    transition: opacity 0.2s 0.1s, transform 0.2s linear 0.1s, -webkit-transform 0.2s linear 0.1s;
  }
  .top-business .top-business_list > li.is-hover > a > dl > dt > i::after {
    opacity: 0;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
  }
  .top-business .top-business_list > li.is-hover > a > dl > dd {
    height: auto;
    overflow: visible;
    opacity: 1;
    padding-bottom: 20px;
    pointer-events: all;
  }
}
@media (min-width: 768px) and (max-width: 1200px) {
  .top-business .top-business_list {
    max-width: -webkit-calc(565 / 1200 * 100vw);
    max-width: calc(565 / 1200 * 100vw);
    padding-right: -webkit-calc(100% - (565 / 1200 * 100vw));
    padding-right: calc(100% - (565 / 1200 * 100vw));
  }
  .top-business .top-business_list > li > a > dl > dt {
    font-size: -webkit-calc(24 / 1200 * 100vw);
    font-size: calc(24 / 1200 * 100vw);
    padding: -webkit-calc(40 / 1200 * 100vw) -webkit-calc(70 / 1200 * 100vw) -webkit-calc(40 / 1200 * 100vw) 0;
    padding: calc(40 / 1200 * 100vw) calc(70 / 1200 * 100vw) calc(40 / 1200 * 100vw) 0;
  }
  .top-business .top-business_list > li > a > dl > dt > b {
    margin-right: -webkit-calc(13 / 1200 * 100vw);
    margin-right: calc(13 / 1200 * 100vw);
  }
  .top-business .top-business_list > li > a > dl > dt > i {
    height: -webkit-calc(60 / 1200 * 100vw);
    height: calc(60 / 1200 * 100vw);
    width: -webkit-calc(60 / 1200 * 100vw);
    width: calc(60 / 1200 * 100vw);
  }
  .top-business .top-business_list > li > a > dl > dt > i::before {
    font-size: -webkit-calc(13 / 1200 * 100vw);
    font-size: calc(13 / 1200 * 100vw);
    line-height: -webkit-calc(60 / 1200 * 100vw);
    line-height: calc(60 / 1200 * 100vw);
    width: -webkit-calc(60 / 1200 * 100vw);
    width: calc(60 / 1200 * 100vw);
  }
  .top-business .top-business_list > li > a > dl > dt > i::after {
    height: 5px;
    width: 5px;
    right: -webkit-calc(27 / 1200 * 100vw);
    right: calc(27 / 1200 * 100vw);
  }
  .top-business .top-business_list > li .top-business_list_img {
    width: -webkit-calc(540 / 1200 * 100vw);
    width: calc(540 / 1200 * 100vw);
  }
  .top-business .top-business_list > li::before {
    right: -webkit-calc(40 / 1200 * 100vw);
    right: calc(40 / 1200 * 100vw);
  }
}
@media (max-width: 767px) {
  .top-business .top-business_list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    max-width: initial;
    padding: 0;
  }
  .top-business .top-business_list > li {
    padding-bottom: 120px;
    padding-top: 375px;
  }
  .top-business .top-business_list > li > a {
    color: #fff;
    display: block;
    padding-left: 15px;
    padding-right: 15px;
    text-decoration: none;
  }
  .top-business .top-business_list > li > a > dl > dt {
    font-size: 2rem;
    line-height: 1.3;
    margin-bottom: 25px;
    padding: 0;
  }
  .top-business .top-business_list > li > a > dl > dt > b {
    margin-right: 10px;
  }
  .top-business .top-business_list > li > a > dl > dt > i {
    display: none;
  }
  .top-business .top-business_list > li > a > dl > dt > i::before {
    content: none;
  }
  .top-business .top-business_list > li > a > dl > dt > i::after {
    content: none;
  }
  .top-business .top-business_list > li > a > dl > dd {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    height: auto;
    overflow: visible;
    opacity: 1;
    pointer-events: all;
  }
  .top-business .top-business_list > li .top-business_list_img {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    position: relative;
    right: auto;
    top: auto;
  }
  .top-business .top-business_list > li .top-business_list_text {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    margin-right: 25px;
  }
  .top-business .top-business_list > li .top-business_list_btn {
    display: table;
    margin-top: 30px;
    padding-right: 36px;
    position: relative;
  }
  .top-business .top-business_list > li .top-business_list_btn > i {
    background-color: #fff;
    border-radius: 50%;
    position: absolute;
    right: 0;
    top: 50%;
    -webkit-transform: translateY(-50%);
        -ms-transform: translateY(-50%);
            transform: translateY(-50%);
  }
  .top-business .top-business_list > li .top-business_list_btn > i::before {
    color: #1E52A6;
    content: "\e900";
    display: block;
    font-family: 'icomoon';
    font-size: 1rem;
    font-weight: 400;
    line-height: 26px;
    text-align: center;
    width: 26px;
    z-index: 2;
  }
  .top-business .top-business_list > li::before {
    opacity: 1;
    right: 0;
    left: 0;
    top: 0;
  }
  .top-business .top-business_list > li.top-business_slide01 .top-business_list_img img:nth-child(2) {
    bottom: 2vw;
    left: -9vw;
    right: auto;
    width: 11.2vw;
  }
  .top-business .top-business_list > li.top-business_slide01::before {
    background-image: url(/img/index_our-business_bg01-sp.jpg);
    opacity: 1;
  }
  .top-business .top-business_list > li.top-business_slide02 .top-business_list_img img:nth-child(2) {
    bottom: 2vw;
    left: -13vw;
    right: auto;
    width: 19.2vw;
  }
  .top-business .top-business_list > li.top-business_slide02::before {
    background-image: url(/img/index_our-business_bg02-sp.jpg);
  }
  .top-business .top-business_list > li.top-business_slide03 .top-business_list_img img:nth-child(2) {
    bottom: 2vw;
    left: -13vw;
    right: auto;
    width: 19.2vw;
  }
  .top-business .top-business_list > li.top-business_slide03::before {
    background-image: url(/img/index_our-business_bg03-sp.jpg);
  }
  .top-business .top-business_list > li.top-business_slide04 .top-business_list_img img:nth-child(2) {
    bottom: 4vw;
    left: -13vw;
    right: auto;
    width: 19.2vw;
  }
  .top-business .top-business_list > li.top-business_slide04::before {
    background-image: url(/img/index_our-business_bg04-sp.jpg);
  }
}
.top-business .top-business_slider_button {
  display: none;
}
@media (max-width: 767px) {
  .top-business .top-business_slider_button {
    -webkit-box-sizing: border-box;
            box-sizing: border-box;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    padding: 0 10px;
    width: 100%;
    position: absolute;
    bottom: 60px;
    left: auto;
    top: auto;
    -webkit-transform: translate(0);
        -ms-transform: translate(0);
            transform: translate(0);
  }
}
.top-business .top-business_slider_button .top-business_slider_pagination {
  width: 66.6667%;
  position: absolute;
  bottom: auto;
  left: 50%;
  top: 50%;
  -webkit-transform: translate(-50%, -50%);
      -ms-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
}
.top-business .top-business_slider_button .top-business_slider_next,
.top-business .top-business_slider_button .top-business_slider_prev {
  background-color: #fff;
  height: 40px;
  width: 40px;
  position: relative;
  -webkit-transform: translate(0);
      -ms-transform: translate(0);
          transform: translate(0);
}
.top-business .top-business_slider_button .top-business_slider_next::after,
.top-business .top-business_slider_button .top-business_slider_prev::after {
  color: #1E52A6;
}
/* top-sustainability
   ========================================================================== */
.top-sustainability {
  margin-top: 180px;
  padding-bottom: 115px;
  padding-top: 40px;
  position: relative;
  z-index: 0;
}
.top-sustainability::before {
  background: url(/img/index_sustainability_bg.jpg) no-repeat 0 0;
  background-size: cover;
  content: "";
  height: 100%;
  width: 68.75vw;
  position: absolute;
  right: 0;
  top: 0;
  z-index: -1;
}
.top-sustainability .top-sustainability_wrap {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top-sustainability .top-sustainability_box {
  width: -webkit-calc(100% - 400px);
  width: calc(100% - 400px);
  color: #fff;
  padding-top: 140px;
  text-align: right;
}
.top-sustainability .top-sustainability_box h3 {
  font-family: 'Noto Serif JP', sans-serif;
  font-size: 5.4em;
  font-weight: 300;
  margin-top: 0;
  line-height: 1;
}
.top-sustainability .top-sustainability_box p {
  font-size: 2em;
  font-weight: 700;
}
@media (max-width: 767px) {
  .top-sustainability {
    margin-top: 60px;
    padding: 40px 15px 60px;
  }
  .top-sustainability::before {
    background-image: url(/img/index_sustainability_bg-sp.jpg);
    width: 88vw;
  }
  .top-sustainability .top-sustainability_wrap {
    display: block;
  }
  .top-sustainability .top-sustainability_title img {
    width: 207px;
  }
  .top-sustainability .top-sustainability_title .top-sustainability_link {
    margin-left: auto;
    color: #fff;
  }
  .top-sustainability .top-sustainability_title .top-sustainability_link > i {
    background-color: #fff;
  }
  .top-sustainability .top-sustainability_title .top-sustainability_link > i::before {
    color: #1E52A6;
  }
  .top-sustainability .top-sustainability_box {
    width: initial;
    padding-top: 54px;
    text-align: right;
  }
  .top-sustainability .top-sustainability_box h3 {
    font-size: 3.8em;
    line-height: 1.15;
  }
  .top-sustainability .top-sustainability_box h3 > span {
    display: block;
    margin-right: 2em;
  }
  .top-sustainability .top-sustainability_box p {
    font-size: 1.6em;
  }
}
/* top-investor
   ========================================================================== */
.top-investor {
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  margin-top: 100px;
  min-height: 480px;
  padding-top: 0;
  position: relative;
}
.top-investor .top-investor_title {
  padding-top: 40px;
  position: relative;
  z-index: 1;
}
@media (max-width: 767px) {
  .top-investor {
    margin-top: 50px;
    min-height: 0;
    padding-left: 15px;
    padding-right: 15px;
  }
  .top-investor .top-investor_title {
    padding-top: 0;
  }
  .top-investor .top-investor_title img {
    width: 246px;
  }
}
.top-investor .top-investor_nav {
  border-top: 1px solid #D8DBE0;
  display: table;
  margin-left: auto;
  margin-top: 30px;
  width: 246px;
}
.top-investor .top-investor_nav > li {
  border-bottom: 1px solid #D8DBE0;
  font-weight: 700;
  text-align: left;
}
.top-investor .top-investor_nav > li > a {
  display: block;
  padding: 24px 24px 24px 0;
  text-decoration: none;
  position: relative;
  -webkit-transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
  transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
.top-investor .top-investor_nav > li > a::before {
  background-color: #1E52A6;
  border-radius: 50%;
  color: #fff;
  content: '\e900';
  font-family: 'icomoon';
  font-size: 1rem;
  font-weight: 400;
  height: 24px;
  line-height: 24px;
  text-align: center;
  width: 24px;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (min-width: 768px) {
  .top-investor .top-investor_nav > li > a:hover {
    color: #1E52A6;
  }
}
@media (max-width: 767px) {
  .top-investor .top-investor_nav {
    display: block;
    margin-top: 25px;
    width: auto;
  }
  .top-investor .top-investor_nav > li > a {
    padding: 20px 24px 20px 0;
  }
}
.top-investor .top-investor_stock {
  background: url(/img/index_investor_bg.jpg) no-repeat 50% 0;
  background-size: cover;
  margin-top: 0;
  width: 75%;
  position: absolute;
  bottom: 0;
  left: 0;
  top: 0;
}
.top-investor .top-investor_stock > a {
  background-color: #1E52A6;
  display: block;
  padding: 18px;
  text-decoration: none;
  position: absolute;
  bottom: 50px;
  left: 40px;
  right: 40px;
  -webkit-transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
  transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
.top-investor .top-investor_stock > a > dl {
  color: #fff;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  line-height: 1;
  margin-left: auto;
  margin-right: auto;
  text-align: left;
}
.top-investor .top-investor_stock > a > dl > dt {
  -ms-flex-item-align: center;
      align-self: center;
  font-size: 2em;
  font-weight: 700;
}
.top-investor .top-investor_stock > a > dl > dd {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin-left: 30px;
}
@media (min-width: 768px) {
  .top-investor .top-investor_stock > a:hover {
    background-color: #346FE0;
  }
}
@media (max-width: 767px) {
  .top-investor .top-investor_stock {
    min-height: 184px;
    width: auto;
    position: relative;
    bottom: auto;
    top: auto;
  }
  .top-investor .top-investor_stock > a {
    padding: 12px;
    bottom: 18px;
    left: 15px;
    right: 15px;
  }
  .top-investor .top-investor_stock > a > dl > dt {
    -webkit-box-flex: 1;
        -ms-flex: 1;
            flex: 1;
    font-size: 1.8em;
    width: 80px;
  }
  .top-investor .top-investor_stock > a > dl > dd {
    -webkit-box-flex: 2.5;
        -ms-flex: 2.5;
            flex: 2.5;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    margin-left: 18px;
  }
}
.top-investor .top-investor_stock_current {
  font-family: 'Lato', sans-serif;
  font-size: 3.2rem;
}
.top-investor .top-investor_stock_current > b {
  font-size: 1.6rem;
  margin-left: 6px;
}
@media (max-width: 767px) {
  .top-investor .top-investor_stock_current {
    font-size: 2rem;
  }
  .top-investor .top-investor_stock_current > b {
    font-size: 1rem;
  }
}
.top-investor .top-investor_stock_comparison {
  background-color: #fff;
  color: #1E52A6;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  margin-left: 18px;
  margin-top: 0;
  padding: 12px 18px;
}
.top-investor .top-investor_stock_comparison > dt {
  font-size: 1.4rem;
  font-weight: 400;
}
.top-investor .top-investor_stock_comparison > dd {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  -webkit-box-orient: horizontal;
  -webkit-box-direction: reverse;
      -ms-flex-direction: row-reverse;
          flex-direction: row-reverse;
  font-family: 'Lato', sans-serif;
  font-size: 2.4rem;
  font-weight: 500;
  margin-left: 18px;
}
.top-investor .top-investor_stock_comparison > dd::before {
  margin-left: 18px;
}
@media (max-width: 767px) {
  .top-investor .top-investor_stock_comparison {
    margin-left: 8px;
    padding: 5px 8px;
  }
  .top-investor .top-investor_stock_comparison > dt {
    font-size: 0.8rem;
  }
  .top-investor .top-investor_stock_comparison > dd {
    font-size: 1.5rem;
    margin-left: 5px;
  }
  .top-investor .top-investor_stock_comparison > dd::before {
    margin-left: 3px;
  }
}
.top-investor .top-investor_stock_data {
  font-size: 1.2rem;
  font-weight: 500;
  line-height: 1.7;
  margin-left: 18px;
}
.top-investor .top-investor_stock_data time {
  display: block;
  font-family: 'Lato', sans-serif;
  font-size: 1.4rem;
}
@media (max-width: 767px) {
  .top-investor .top-investor_stock_data {
    font-size: 0.9rem;
    margin-left: 0;
    margin-top: 6px;
  }
  .top-investor .top-investor_stock_data time {
    display: inline;
    font-size: inherit;
    margin-right: 4px;
  }
}
.top-investor .top-investor_stock_btn {
  border-left: 1px solid #fff;
  color: #fff;
  display: block;
  margin-left: 18px;
  padding: 16px 20px 16px 18px;
  text-decoration: none;
  position: relative;
}
.top-investor .top-investor_stock_btn > span {
  background: -webkit-gradient(linear, left bottom, left top, from(#fff), to(#fff)) no-repeat 100% 100%;
  background: -webkit-linear-gradient(bottom, #fff, #fff) no-repeat 100% 100%;
  background: linear-gradient(0deg, #fff, #fff) no-repeat 100% 100%;
  background-size: 0 1px;
  display: inline-block;
  font-weight: 500;
  line-height: 1.3;
  -webkit-transition: background-size 0.3s;
  transition: background-size 0.3s;
}
.top-investor .top-investor_stock_btn > span::before {
  font-size: 1.2rem;
  font-weight: 400;
  line-height: 1;
  position: absolute;
  right: 0;
  top: 21px;
}
@media (min-width: 768px) {
  .top-investor .top-investor_stock_btn:hover > span {
    background-position: 0 100%;
    background-size: 100% 1px;
  }
}
@media (max-width: 767px) {
  .top-investor .top-investor_stock_btn {
    display: none;
  }
}
/* top-recruit
   ========================================================================== */
.top-recruit {
  background: url(/img/index_recruit_bg.jpg) no-repeat 50% 50%;
  background-size: cover;
  margin-top: 100px;
  padding-bottom: 110px;
  padding-top: 110px;
}
.top-recruit .top-recruit_wrap {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
}
.top-recruit .top-recruit_title .top-title {
  margin-bottom: 20px;
}
.top-recruit .top-recruit_title .top-recruit_title_link {
  color: #fff;
}
.top-recruit .top-recruit_title .top-recruit_title_link > i {
  background-color: rgba(25, 33, 255, 0.12);
}
.top-recruit .top-recruit_title .top-recruit_title_link > i::after {
  background-color: #fff;
}
@media (min-width: 768px) {
  .top-recruit .top-recruit_title .top-recruit_title_link:hover > i {
    background-color: #1E52A6;
  }
}
.top-recruit .top-recruit_box {
  color: #fff;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  font-weight: 700;
  margin-left: 90px;
}
.top-recruit .top-recruit_box p {
  font-size: 2em;
}
@media (max-width: 767px) {
  .top-recruit {
    background-image: url(/img/index_recruit_bg-sp.jpg);
    margin-top: 60px;
    padding: 60px 15px;
  }
  .top-recruit .top-recruit_wrap {
    display: block;
  }
  .top-recruit .top-recruit_title {
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
        -ms-flex-pack: justify;
            justify-content: space-between;
    margin-bottom: 60px;
  }
  .top-recruit .top-recruit_title .top-title {
    margin-bottom: 0;
  }
  .top-recruit .top-recruit_title img {
    width: 108px;
  }
  .top-recruit .top-recruit_title .top-recruit_title_link {
    color: #fff;
    margin-left: 20px;
  }
  .top-recruit .top-recruit_title .top-recruit_title_link > i {
    background-color: #fff;
  }
  .top-recruit .top-recruit_title .top-recruit_title_link > i::before {
    color: #1E52A6;
  }
  .top-recruit .top-recruit_box {
    margin-left: 0;
  }
  .top-recruit .top-recruit_box p {
    font-size: 1.6em;
  }
}
/* top-information
   ========================================================================== */
.top-information {
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding-bottom: 70px;
  padding-top: 70px;
  text-align: left;
}
.top-information h3 {
  font-size: 2.8em;
  font-weight: 700;
  line-height: 1.1;
  margin-bottom: 0;
  margin-right: 40px;
}
.top-information .top-information_list {
  border-top: 1px solid #ddd;
  -webkit-box-flex: 1;
      -ms-flex: 1;
          flex: 1;
  max-width: 840px;
  margin-left: auto;
  margin-top: 0;
}
.top-information .top-information_list > li {
  border-bottom: 1px solid #ddd;
  font-weight: 500;
}
.top-information .top-information_list > li a {
  display: block;
  padding: 20px 20px 20px 0;
  text-decoration: none;
  position: relative;
  -webkit-transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
  transition: 0.3s cubic-bezier(0.18, -0.01, 0.3, 1);
}
.top-information .top-information_list > li a::before {
  content: "\e900";
  color: #1E52A6;
  font-family: 'icomoon';
  font-size: 1rem;
  font-weight: 400;
  position: absolute;
  right: 0;
  top: 50%;
  -webkit-transform: translateY(-50%);
      -ms-transform: translateY(-50%);
          transform: translateY(-50%);
}
@media (min-width: 768px) {
  .top-information .top-information_list > li a:hover {
    color: #1E52A6;
  }
}
@media (max-width: 767px) {
  .top-information {
    display: block;
    padding: 60px 15px;
  }
  .top-information h3 {
    font-size: 2.4em;
    margin-bottom: 20px;
    margin-right: 0;
  }
}
