@charset "UTF-8";
/*◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

  .top_fv

◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇*/
.top_fv {
  position: relative;
}
@media screen and (max-width: 1023px) {
  .top_fv .fv_slider picture {
    display: block;
    height: 100vh;
    min-height: calc(667/375*100vw);
    overflow: hidden;
  }
}
.top_fv .fv_slider img {
  width: 100%;
  height: 100vh;
  -webkit-transform-origin: center top;
      -ms-transform-origin: center top;
          transform-origin: center top;
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
}
@media screen and (max-width: 1023px) {
  .top_fv .fv_slider img {
    min-height: calc(667/375*100vw);
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
    -webkit-transform-origin: center center;
        -ms-transform-origin: center center;
            transform-origin: center center;
  }
}
@media screen and (max-width: 767px) {
  .top_fv .fv_slider img {
    min-height: calc(667/375*100vw);
  }
}
.top_fv .fv_slide.slick-current img {
  -webkit-transform: scale(1.05);
      -ms-transform: scale(1.05);
          transform: scale(1.05);
  -webkit-animation: fvFadeOut 6s linear 1 forwards;
          animation: fvFadeOut 6s linear 1 forwards;
}
@media screen and (max-width: 1023px) {
  .top_fv .fv_slide.slick-current img {
    -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
            transform: scale(1.1);
  }
}
.top_fv .fv_slide.preve-slide img {
  -webkit-animation: fvFadeOut_prev 6s linear 1 forwards;
          animation: fvFadeOut_prev 6s linear 1 forwards;
}
.top_fv .fv_slide.first img {
  -webkit-animation: fvFadeOut 5s linear 1 forwards;
          animation: fvFadeOut 5s linear 1 forwards;
}
.top_fv .container {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 50%;
  z-index: 1;
  -webkit-transform: translate(-50%, 0);
      -ms-transform: translate(-50%, 0);
          transform: translate(-50%, 0);
}
.top_fv .text {
  opacity: 0;
  -webkit-transform: translate(0, 50px);
      -ms-transform: translate(0, 50px);
          transform: translate(0, 50px);
  -webkit-transition: opacity 0.5s, -webkit-transform 0.5s;
  transition: opacity 0.5s, -webkit-transform 0.5s;
  -o-transition: transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s;
  transition: transform 0.5s, opacity 0.5s, -webkit-transform 0.5s;
}
.top_fv .text.scrollIn {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.top_fv .text_wrap {
  position: absolute;
  top: 44.3%;
  left: 27px;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .top_fv .text_wrap {
    top: 48%;
    left: calc(23/375*100vw);
  }
}
@media screen and (max-width: 767px) {
  .top_fv .text_wrap {
    top: calc(424/375*100vw);
  }
}
.top_fv .text01 {
  margin-bottom: 15px;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 1023px) {
  .top_fv .text01 {
    margin-bottom: calc(6/375*100vw);
    font-size: calc(9/375*100vw);
  }
}
.top_fv .text02 {
  font-size: 60px;
  line-height: 80px;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 1023px) {
  .top_fv .text02 {
    font-size: calc(49/375*100vw);
    line-height: calc(60/375*100vw);
  }
}
.top_fv .text03 {
  margin-top: 15px;
  font-family: "Oswald", sans-serif;
  font-size: 28px;
  font-weight: 700;
  color: #fff;
}
@media screen and (max-width: 1023px) {
  .top_fv .text03 {
    margin-top: calc(8/375*100vw);
    font-size: calc(23/375*100vw);
  }
}

@-webkit-keyframes fvFadeOut {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}

@keyframes fvFadeOut {
  0% {
    -webkit-transform: scale(1.1);
            transform: scale(1.1);
  }
  100% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
}
@-webkit-keyframes fvFadeOut_prev {
  0% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@keyframes fvFadeOut_prev {
  0% {
    -webkit-transform: scale(1.05);
            transform: scale(1.05);
  }
  100% {
    -webkit-transform: scale(1);
            transform: scale(1);
  }
}
@media screen and (max-width: 1023px) {
  @-webkit-keyframes fvFadeOut {
    0% {
      -webkit-transform: scale(1.2);
              transform: scale(1.2);
    }
    100% {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
    }
  }
  @keyframes fvFadeOut {
    0% {
      -webkit-transform: scale(1.2);
              transform: scale(1.2);
    }
    100% {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
    }
  }
  @-webkit-keyframes fvFadeOut_prev {
    0% {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
  @keyframes fvFadeOut_prev {
    0% {
      -webkit-transform: scale(1.1);
              transform: scale(1.1);
    }
    100% {
      -webkit-transform: scale(1);
              transform: scale(1);
    }
  }
}
.fv_bottom {
  position: relative;
}
@media screen and (max-width: 1023px) {
  .fv_bottom {
    margin-top: calc(85/375*100vw);
    margin-bottom: calc(50/375*100vw);
  }
}
.fv_bottom .fv_card_list {
  position: absolute;
  top: -120px;
  right: 0;
  z-index: 2;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list {
    position: relative;
    top: 0;
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list #arrow {
    width: calc(85/375*100vw);
    position: absolute;
    top: calc(-50/375*100vw);
    right: calc(20/375*100vw);
    z-index: 1;
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list #arrow .slick-prev, .fv_bottom .fv_card_list #arrow .slick-next {
    display: block;
    width: auto;
    height: auto;
    padding: 0;
    font-size: 0;
    line-height: 0;
    top: 0;
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list #arrow .slick-prev:before, .fv_bottom .fv_card_list #arrow .slick-next:before {
    content: "";
    display: block;
    width: 0;
    height: 0;
    border-style: solid;
    border-width: calc(6/375*100vw) 0 calc(6/375*100vw) calc(19/375*100vw);
    border-color: transparent transparent transparent #003CB4;
    opacity: 1;
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list #arrow .slick-prev {
    left: 0;
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list #arrow .slick-prev:before {
    -webkit-transform: scale(-1, 1);
        -ms-transform: scale(-1, 1);
            transform: scale(-1, 1);
  }
}
.fv_bottom .fv_card_list #arrow .slick-next {
  right: 0;
}
.fv_bottom .fv_card_list_slider {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  margin: 0 -7px;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider {
    margin: 0 calc(-10/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card {
  width: 289px;
  margin: 0 7px;
  background: #fff;
  position: relative;
  opacity: 0;
  -webkit-transform: translate(0, 50px);
      -ms-transform: translate(0, 50px);
          transform: translate(0, 50px);
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card {
    width: calc(335/375*100vw);
    margin: 0 calc(10/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card.scrollIn {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.fv_bottom .fv_card_list_slider .card .title {
  font-size: 15px;
  line-height: 20px;
  font-weight: 900;
  color: #003CB4;
  position: absolute;
  top: 20px;
  left: 10px;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .title {
    font-size: calc(15/375*100vw);
    line-height: 1.5;
    top: calc(20/375*100vw);
    left: calc(25/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card .img_area {
  padding-top: 10px;
  border-bottom: 1px solid #F9F7F7;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .img_area {
    padding-top: 0;
    padding-bottom: calc(10/375*100vw);
    border-bottom: none;
    position: relative;
  }
  .fv_bottom .fv_card_list_slider .card .img_area:before {
    content: "";
    display: block;
    width: calc(290/375*100vw);
    height: 1px;
    background: #F9F7F7;
    position: absolute;
    bottom: 0;
    left: 50%;
    z-index: 1;
    -webkit-transform: translate(-50%, 0);
        -ms-transform: translate(-50%, 0);
            transform: translate(-50%, 0);
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .img_area img {
    width: 100%;
    height: calc(195/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card .text_area {
  padding: 20px 10px;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .text_area {
    padding: calc(20/375*100vw) calc(22/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card .text_area p {
  font-size: 13px;
  line-height: 18px;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .text_area p {
    font-size: calc(13/375*100vw);
    line-height: 1.5;
  }
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .text_area p.matchHeight {
    height: auto !important;
  }
}
.fv_bottom .fv_card_list_slider .card .text_area .btn {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 190px;
  height: 50px;
  margin: 0 auto;
  margin-top: 20px;
  background: #CC0033;
  font-size: 12px;
  font-weight: 700;
  color: #fff;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .fv_bottom .fv_card_list_slider .card .text_area .btn {
    width: calc(190/375*100vw);
    height: calc(50/375*100vw);
    margin: 0 auto;
    margin-top: calc(35/375*100vw);
    font-size: calc(12/375*100vw);
  }
}
.fv_bottom .fv_card_list_slider .card .text_area .btn:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2px 0 2px 6px;
  border-color: transparent transparent transparent #fff;
  position: absolute;
  top: 50%;
  right: 16px;
  z-index: 1;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
.fv_bottom .fv_card_list_slider .card.blue {
  background: #003CB4;
}
.fv_bottom .fv_card_list_slider .card.blue .title {
  color: #fff;
}
.fv_bottom .fv_card_list_slider .card.blue .text_area p {
  color: #fff;
}

/*◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

  .sec

◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇*/
.sec_heading .en {
  display: block;
  margin-bottom: 16px;
  font-family: "Oswald", sans-serif;
  font-size: 12px;
  font-weight: 700;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .sec_heading .en {
    margin-bottom: calc(10/375*100vw);
    font-size: calc(12/375*100vw);
  }
}
.sec_heading .jp {
  font-size: 34px;
  line-height: 45px;
  font-weight: 700;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .sec_heading .jp {
    font-size: calc(25/375*100vw);
    line-height: calc(35/375*100vw);
  }
}
.sec_heading p {
  margin-top: 16px;
  font-size: 14px;
  line-height: 25px;
  font-weight: 700;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .sec_heading p {
    margin-top: calc(20/375*100vw);
    font-size: calc(13/375*100vw);
    line-height: calc(23/375*100vw);
  }
}
@media screen and (max-width: 1023px) {
  .sec_body {
    margin-top: calc(20/375*100vw);
  }
}

/*◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

  .sec01

◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇*/
.sec01 {
  background: #F9F7F7;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .sec01 {
    padding-top: calc(50/375*100vw);
  }
}
.sec01 .img_wrap {
  width: 683px;
  max-width: 50%;
  position: absolute;
  top: 364px;
  right: 0;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .sec01 .img_wrap {
    width: calc(277/375*100vw);
    max-width: none;
    margin: 0 auto;
    margin-bottom: calc(50/375*100vw);
    position: relative;
    top: 0;
  }
}
.sec01 .img_wrap:before {
  content: "";
  display: block;
  padding-top: 85.505124%;
}
@media screen and (max-width: 1023px) {
  .sec01 .img_wrap img {
    width: 100%;
  }
}
.sec01 .img_wrap .sec01_img01 {
  width: 48.316252%;
  position: absolute;
  z-index: 1;
  opacity: 0;
  -webkit-transform: translate(0, 50px);
      -ms-transform: translate(0, 50px);
          transform: translate(0, 50px);
  -webkit-transition: 0.5s;
  -o-transition: 0.5s;
  transition: 0.5s;
}
.sec01 .img_wrap .sec01_img01.scrollIn {
  opacity: 1;
  -webkit-transform: translate(0, 0);
      -ms-transform: translate(0, 0);
          transform: translate(0, 0);
}
.sec01 .img_wrap .sec01_img01_1 {
  top: 0;
  left: 0;
}
.sec01 .img_wrap .sec01_img01_2 {
  top: 46px;
  right: 0;
}
@media screen and (max-width: 1023px) {
  .sec01 .img_wrap .sec01_img01_2 {
    top: calc(19/375*100vw);
  }
}
.sec01 .container {
  padding-top: 460px;
  padding-bottom: 264px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .sec01 .container {
    padding: 0 calc(45/375*100vw) calc(80/375*100vw);
  }
}
.sec01 .line {
  width: 1px;
  height: 360px;
  position: absolute;
  top: 50px;
  left: 207px;
  z-index: 1;
}
@media screen and (max-width: 1023px) {
  .sec01 .line {
    height: calc(145/375*100vw);
    top: calc(-30/375*100vw);
    left: auto;
    right: calc(45/375*100vw);
  }
}
.sec01 .line:before {
  content: "";
  width: 100%;
  height: 100%;
  background: #003CB4;
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 1;
  -webkit-animation: line_ani 1s linear 0s infinite;
          animation: line_ani 1s linear 0s infinite;
}
.sec01 .sec_heading {
  max-width: 42%;
}
@media screen and (max-width: 1023px) {
  .sec01 .sec_heading {
    max-width: none;
  }
}

@-webkit-keyframes line_ani {
  0% {
    height: 0;
    top: auto;
    bottom: 0;
  }
  50% {
    height: 100%;
    top: auto;
    bottom: 0;
  }
  51% {
    height: 100%;
    top: 0;
    bottom: auto;
  }
  100% {
    height: 0;
    top: 0;
    bottom: auto;
  }
}

@keyframes line_ani {
  0% {
    height: 0;
    top: auto;
    bottom: 0;
  }
  50% {
    height: 100%;
    top: auto;
    bottom: 0;
  }
  51% {
    height: 100%;
    top: 0;
    bottom: auto;
  }
  100% {
    height: 0;
    top: 0;
    bottom: auto;
  }
}
/*◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇

  .sec02

◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇◆◇*/
.sec02 .container {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  padding-top: 100px;
  padding-bottom: 190px;
}
@media screen and (max-width: 1023px) {
  .sec02 .container {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: 0 calc(45/375*100vw);
    padding-top: calc(80/375*100vw);
    padding-bottom: calc(110/375*100vw);
  }
}
.sec02 .sec_heading {
  min-width: 250px;
}
@media screen and (max-width: 1023px) {
  .sec02 .sec_heading {
    min-width: auto;
  }
}
.sec02 .sec_body {
  width: 100%;
  max-width: 813px;
  margin-left: auto;
}
@media screen and (max-width: 1023px) {
  .sec02 .sec_body {
    max-width: none;
    margin-left: 0;
  }
}
.sec02 .topics_list:first-child {
  border-top: 1px solid #46DCFF;
}
.sec02 .topics_list.hidden {
  display: none;
}
.sec02 .topics_item {
  border-bottom: 1px solid #46DCFF;
}
.sec02 .topics_item a {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  width: 100%;
  padding: 12px 0;
  padding-right: 40px;
  position: relative;
}
@media screen and (max-width: 1023px) {
  .sec02 .topics_item a {
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    padding: calc(15/375*100vw) 0;
    padding-right: calc(25/375*100vw);
  }
}
.sec02 .topics_item a:after {
  content: "";
  display: block;
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 2px 0 2px 6px;
  border-color: transparent transparent transparent #003CB4;
  position: absolute;
  top: 50%;
  right: 16px;
  z-index: 1;
  -webkit-transform: translate(0, -50%);
      -ms-transform: translate(0, -50%);
          transform: translate(0, -50%);
}
@media screen and (max-width: 1023px) {
  .sec02 .topics_item a:after {
    border-width: calc(2/375*100vw) 0 calc(2/375*100vw) calc(6/375*100vw);
    top: calc(23/375*100vw);
    right: calc(10/375*100vw);
    -webkit-transform: translate(0, 0);
        -ms-transform: translate(0, 0);
            transform: translate(0, 0);
  }
}
.sec02 .topics_item time {
  font-family: "Oswald", sans-serif;
  font-size: 11px;
  line-height: 18px;
  font-weight: 700;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .sec02 .topics_item time {
    margin-bottom: calc(8/375*100vw);
    font-size: calc(12/375*100vw);
    line-height: 1;
  }
}
.sec02 .topics_item p {
  margin-left: 50px;
  font-size: 13px;
  line-height: 18px;
  color: #003CB4;
  /*display: -webkit-box;
  -webkit-box-orient: vertical;
  -webkit-line-clamp: 1;
  overflow: hidden;
  max-height: calc(13px*1);*/
}
@media screen and (max-width: 1023px) {
  .sec02 .topics_item p {
    margin-left: 0;
    font-size: calc(13/375*100vw);
    line-height: calc(23/375*100vw);
  }
}
.sec02 .topics_view_more {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  width: 100%;
  height: 40px;
  margin-top: 56px;
  border: 1px solid #003CB4;
  background: url(/img/common/icon_plus.svg) right 14px center/10px no-repeat;
  font-size: 12px;
  font-weight: 700;
  color: #003CB4;
}
@media screen and (max-width: 1023px) {
  .sec02 .topics_view_more {
    height: calc(50/375*100vw);
    margin-top: calc(30/375*100vw);
    font-size: calc(13/375*100vw);
    background: url(/img/common/icon_plus.svg) right calc(10/375*100vw) center/calc(10/375*100vw) no-repeat;
  }
}