@charset "UTF-8";
.hero_area {
  margin-bottom: 70px;
  position: relative; }
  @media screen and (max-width: 1000px) {
    .hero_area {
      margin-bottom: 10px; } }
  .hero_area .scroll {
    position: absolute;
    right: 200px;
    bottom: 0px;
    height: 77px;
    width: 25px;
    border-left: 1px solid #fff; }
    @media screen and (max-width: 1280px) {
      .hero_area .scroll {
        right: 120px; } }
    @media screen and (max-width: 1000px) {
      .hero_area .scroll {
        display: none; } }
    .hero_area .scroll::after {
      content: "";
      display: block;
      position: absolute;
      right: 25px;
      bottom: -32px;
      background-color: #002E76;
      width: 1px;
      height: 32px;
      z-index: 99; }
      @media screen and (max-width: 1000px) {
        .hero_area .scroll::after {
          display: none; } }
    .hero_area .scroll::before {
      content: "";
      display: block;
      position: absolute;
      right: 20px;
      bottom: 72px;
      background-color: #fff;
      width: 10px;
      height: 10px;
      border-radius: 5px;
      z-index: 100;
      -webkit-animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite;
      animation: circlemove 1.6s ease-in-out infinite, cirlemovehide 1.6s ease-out infinite; }
      @media screen and (max-width: 1000px) {
        .hero_area .scroll::before {
          -webkit-animation: circlemove_sp 1.5s ease-in-out infinite, cirlemovehide 1.5s ease-out infinite;
          animation: circlemove_sp 1.5s ease-in-out infinite, cirlemovehide 1.5s ease-out infinite; } }

@-webkit-keyframes circlemove {
  0% {
    bottom: 72px; }
  100% {
    bottom: -32px; } }

@keyframes circlemove {
  0% {
    bottom: 72px; }
  100% {
    bottom: -32px; } }

@-webkit-keyframes circlemove_sp {
  0% {
    bottom: 72px; }
  100% {
    bottom: -5px; } }

@keyframes circlemove_sp {
  0% {
    bottom: 72px; }
  100% {
    bottom: -5px; } }

@-webkit-keyframes cirlemovehide {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  80% {
    opacity: 0.9; }
  100% {
    opacity: 0; } }

@keyframes cirlemovehide {
  0% {
    opacity: 0; }
  50% {
    opacity: 1; }
  80% {
    opacity: 0.9; }
  100% {
    opacity: 0; } }
    .hero_area .scroll img {
      width: 12px;
      height: auto;
      display: block;
      margin-left: 13px; }
  .hero_area .hero_area-in {
    overflow: hidden;
    width: 100%;
    height: 100vh;
    position: relative; }
    @media screen and (max-width: 768px) {
      .hero_area .hero_area-in {
        height: auto;
        min-height: 100vh;
        /* Fallback */
        min-height: calc(var(--vh, 1vh) * 100); } }
    .hero_area .hero_area-in .bg {
      width: 100%;
      height: 100%;
      background: url(../../img/index/img01.jpg) top center no-repeat;
      background-size: cover;
      position: absolute;
      left: 0px;
      top: 0px;
      z-index: -1; }
      @media screen and (max-width: 1000px) {
        .hero_area .hero_area-in .bg {
          background: url(../../img/index/img01_sp.jpg) top center no-repeat;
          background-size: cover; } }
      .hero_area .hero_area-in .bg.opa_on {
        -webkit-transition: all 10.0s;
        transition: all 10.0s;
        -webkit-transform: scale(1.1);
        -ms-transform: scale(1.1);
        transform: scale(1.1); }
    .hero_area .hero_area-in .logo {
      width: 152px;
      height: 152px; }
      @media screen and (max-width: 420px) {
        .hero_area .hero_area-in .logo {
          width: 91px;
          height: 91px; } }
      .hero_area .hero_area-in .logo img {
        width: 96px;
        height: auto; }
        @media screen and (max-width: 420px) {
          .hero_area .hero_area-in .logo img {
            width: 57px; } }
    .hero_area .hero_area-in .txt_area {
      position: absolute;
      left: 60px;
      bottom: -5px; }
      @media screen and (max-width: 1000px) {
        .hero_area .hero_area-in .txt_area {
          left: 0px;
          bottom: 0px; } }
      .hero_area .hero_area-in .txt_area .scroll-in {
        display: none; }
        @media screen and (max-width: 1000px) {
          .hero_area .hero_area-in .txt_area .scroll-in {
            display: block;
            position: relative;
            right: auto;
            top: auto;
            margin-left: 15px;
            margin-bottom: 20px; } }
      .hero_area .hero_area-in .txt_area .txt01 {
        line-height: 1;
        color: #fff;
        font-family: shippori-mincho, sans-serif;
        font-weight: 600;
        font-style: normal;
        font-size: 33px;
        display: inline-block;
        margin-bottom: 12px; }
        @media screen and (max-width: 768px) {
          .hero_area .hero_area-in .txt_area .txt01 {
            font-size: 20px;
            margin-bottom: 8px;
            margin-left: 10px; } }
        .hero_area .hero_area-in .txt_area .txt01.txt01_on {
          -webkit-transition: all 0.3s;
          transition: all 0.3s;
          background-color: rgba(0, 46, 118, 0.8); }
        .hero_area .hero_area-in .txt_area .txt01 span {
          -webkit-transition: all 0.1s;
          transition: all 0.1s;
          -webkit-transform: scale(1) translateX(-10px);
          -ms-transform: scale(1) translateX(-10px);
          transform: scale(1) translateX(-10px);
          display: inline-block;
          color: transparent;
          text-shadow: 0px 0px 10px #fff;
          opacity: 0; }
          .hero_area .hero_area-in .txt_area .txt01 span.txt_on {
            color: #fff;
            text-shadow: inherit;
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
            opacity: 1; }
      .hero_area .hero_area-in .txt_area .txt02 {
        margin-top: 10px;
        position: relative; }
        .hero_area .hero_area-in .txt_area .txt02 span {
          display: block;
          line-height: 1;
          font-size: 133px;
          color: #fff;
          font-family: shippori-mincho, sans-serif;
          font-weight: 600;
          font-style: normal; }
          .hero_area .hero_area-in .txt_area .txt02 span i {
            -webkit-transition: all 0.2s;
            transition: all 0.2s;
            -webkit-transform: scale(0) translateX(-120px);
            -ms-transform: scale(0) translateX(-120px);
            transform: scale(0) translateX(-120px);
            display: inline-block;
            opacity: 0;
            color: transparent;
            text-shadow: 0px 0px 10px #fff;
            -webkit-transform-origin: center center;
            -ms-transform-origin: center center;
            transform-origin: center center; }
            .hero_area .hero_area-in .txt_area .txt02 span i.txt_on {
              -webkit-transform: scale(1);
              -ms-transform: scale(1);
              transform: scale(1);
              opacity: 1;
              color: #fff;
              text-shadow: inherit; }
          .hero_area .hero_area-in .txt_area .txt02 span i.ls {
            letter-spacing: -50px; }
          @media screen and (max-width: 1280px) {
            .hero_area .hero_area-in .txt_area .txt02 span {
              font-size: 120px; } }
          @media screen and (max-width: 1000px) {
            .hero_area .hero_area-in .txt_area .txt02 span {
              font-size: 105px; } }
          @media screen and (max-width: 768px) {
            .hero_area .hero_area-in .txt_area .txt02 span {
              font-size: 52px;
              display: inline;
              letter-spacing: -2px; } }

main .tit_main_area {
  margin-bottom: 60px;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center; }
  @media screen and (max-width: 1280px) {
    main .tit_main_area {
      margin-bottom: 40px; } }
  main .tit_main_area .tit_main_area-in {
    width: 83.45%;
    margin: 0px auto;
    background: url(../../img/common/bg.png) 0px 0px repeat;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 100px 30px; }
    @media screen and (max-width: 1280px) {
      main .tit_main_area .tit_main_area-in {
        width: 100%;
        padding: 40px 15px; } }
  main .tit_main_area .tit01 {
    line-height: 1;
    font-size: 68px;
    display: inline; }
    @media screen and (max-width: 1280px) {
      main .tit_main_area .tit01 {
        font-size: 60px; } }
    @media screen and (max-width: 1000px) {
      main .tit_main_area .tit01 {
        font-size: 52px; } }
    @media screen and (max-width: 768px) {
      main .tit_main_area .tit01 {
        font-size: 40px; } }
  main .tit_main_area .tit02 {
    display: inline;
    font-size: 51px; }
    @media screen and (max-width: 1280px) {
      main .tit_main_area .tit02 {
        font-size: 42px; } }
    @media screen and (max-width: 768px) {
      main .tit_main_area .tit02 {
        font-size: 30px; } }
  main .tit_main_area .tit03 {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    line-height: 1; }
    main .tit_main_area .tit03 .tit03_1 {
      font-size: 128px;
      display: block; }
      @media screen and (max-width: 1280px) {
        main .tit_main_area .tit03 .tit03_1 {
          font-size: 110px; } }
      @media screen and (max-width: 1000px) {
        main .tit_main_area .tit03 .tit03_1 {
          font-size: 80px; } }
      @media screen and (max-width: 768px) {
        main .tit_main_area .tit03 .tit03_1 {
          font-size: 60px;
          letter-spacing: -5px; } }
    main .tit_main_area .tit03 .tit03_2 {
      font-size: 56px;
      display: block; }
      @media screen and (max-width: 1280px) {
        main .tit_main_area .tit03 .tit03_2 {
          font-size: 52px; } }
      @media screen and (max-width: 1000px) {
        main .tit_main_area .tit03 .tit03_2 {
          font-size: 48px; } }
      @media screen and (max-width: 768px) {
        main .tit_main_area .tit03 .tit03_2 {
          font-size: 44px; } }
    main .tit_main_area .tit03 .tit03_3 {
      font-size: 163px;
      display: block; }
      @media screen and (max-width: 1280px) {
        main .tit_main_area .tit03 .tit03_3 {
          font-size: 100px; } }
      @media screen and (max-width: 1000px) {
        main .tit_main_area .tit03 .tit03_3 {
          font-size: 90px; } }
      @media screen and (max-width: 768px) {
        main .tit_main_area .tit03 .tit03_3 {
          font-size: 70px; } }

main .mov_area {
  width: 100%;
  position: relative; }
  main .mov_area::after {
    content: "";
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0px;
    top: 0px;
    background-color: #FA9910;
    -webkit-transition: all 0.6s;
    transition: all 0.6s; }
  main .mov_area.fade_other_on img {
    -webkit-filter: blur(0px);
    filter: blur(0px); }
  main .mov_area.fade_other_on::after {
    height: 0px; }
  main .mov_area .mov {
    width: 100%; }
    main .mov_area .mov video {
      width: 100%; }
  main .mov_area .cont {
    text-align: center;
    position: absolute;
    top: calc(50% - 100px); }
    @media screen and (max-width: 768px) {
      main .mov_area .cont {
        top: calc(50% - 60px); } }
    main .mov_area .cont a img {
      width: 69px;
      height: 69px;
      display: block;
      margin: 0px auto;
      margin-bottom: 10px; }
      @media screen and (max-width: 768px) {
        main .mov_area .cont a img {
          width: 40px;
          height: 40px; } }
    main .mov_area .cont a span {
      text-align: center;
      color: #002E76;
      font-size: 17px;
      font-weight: bold; }
      @media screen and (max-width: 768px) {
        main .mov_area .cont a span {
          font-size: 14px; } }
  main .mov_area.mov01 {
    padding-bottom: 110px;
    margin-bottom: 110px;
    position: relative; }
    main .mov_area.mov01::after {
      content: "";
      width: 100%;
      position: absolute;
      left: 0px;
      top: auto;
      bottom: 0px;
      display: block;
      background-color: #F4F7FC;
      height: 470px;
      z-index: -1; }
      @media screen and (max-width: 1280px) {
        main .mov_area.mov01::after {
          height: 300px; } }
      @media screen and (max-width: 1000px) {
        main .mov_area.mov01::after {
          height: 100px;
          position: static; } }
    @media screen and (max-width: 1000px) {
      main .mov_area.mov01 {
        padding-bottom: 0px;
        margin-bottom: 100px; } }
    main .mov_area.mov01 .mov_area_in {
      width: 75.54%;
      margin: 0px auto; }
      @media screen and (max-width: 1000px) {
        main .mov_area.mov01 .mov_area_in {
          width: 100%; } }
      main .mov_area.mov01 .mov_area_in .cont {
        width: 100%;
        left: 0px; }
  @media screen and (max-width: 1000px) {
    main .mov_area.mov02 {
      height: 100%; } }
  main .mov_area.mov02 .cont span {
    position: relative; }
    main .mov_area.mov02 .cont span::after {
      content: "";
      display: block;
      width: 80px;
      height: 1px;
      background-color: #fff;
      margin: 0px auto;
      margin-top: 10px; }
  main .mov_area.mov02 .cont-L {
    left: 30%; }
    @media screen and (max-width: 1000px) {
      main .mov_area.mov02 .cont-L {
        top: calc(30% - 40px);
        width: 100%;
        left: 0px; } }
  main .mov_area.mov02 .cont-R {
    right: 30%; }
    @media screen and (max-width: 1000px) {
      main .mov_area.mov02 .cont-R {
        top: calc(70% - 40px);
        width: 100%;
        right: 0%; } }

main .sec_com {
  margin-bottom: 600px;
  position: relative;
  height: 100%; }
  @media screen and (max-width: 1000px) {
    main .sec_com {
      margin-bottom: 400px; } }
  @media screen and (max-width: 420px) {
    main .sec_com {
      margin-bottom: 200px; } }
  main .sec_com::before {
    content: "";
    width: 0px;
    height: 2px;
    display: block;
    position: absolute;
    right: 12%;
    top: -500px;
    z-index: 20;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    background-color: #F4F7FC;
    -webkit-transform: rotate(-20deg);
    -ms-transform: rotate(-20deg);
    transform: rotate(-20deg);
    -webkit-transform-origin: right top;
    -ms-transform-origin: right top;
    transform-origin: right top; }
    @media screen and (max-width: 1000px) {
      main .sec_com::before {
        top: -300px; } }
    @media screen and (max-width: 420px) {
      main .sec_com::before {
        height: 1px;
        top: -150px; } }
  main .sec_com.fade_other_on::before {
    width: 80%;
    background-color: #002E76; }
  main .sec_com .sec_com-in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;
    position: relative;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    margin-bottom: 200px; }
    @media screen and (max-width: 1280px) {
      main .sec_com .sec_com-in {
        -webkit-box-align: start;
        -ms-flex-align: start;
        align-items: flex-start; } }
    @media screen and (max-width: 1000px) {
      main .sec_com .sec_com-in {
        margin-bottom: 40px; } }
    main .sec_com .sec_com-in .tit_com01 {
      position: absolute;
      left: 8%;
      bottom: 0px;
      font-family: shippori-mincho, sans-serif;
      font-weight: 600;
      font-style: normal;
      display: inline-block;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      -webkit-transition: all 2.0s;
      transition: all 2.0s; }
      main .sec_com .sec_com-in .tit_com01.fade_tit_on {
        background-color: #fff; }
      @media screen and (max-width: 1000px) {
        main .sec_com .sec_com-in .tit_com01 {
          position: static;
          display: block;
          width: 100%;
          margin-bottom: 35px; } }
      main .sec_com .sec_com-in .tit_com01 strong {
        display: block;
        font-size: 130px;
        line-height: 1;
        letter-spacing: -5px; }
        @media screen and (max-width: 1280px) {
          main .sec_com .sec_com-in .tit_com01 strong {
            font-size: 100px; } }
        @media screen and (max-width: 1000px) {
          main .sec_com .sec_com-in .tit_com01 strong {
            font-size: 90px; } }
        @media screen and (max-width: 768px) {
          main .sec_com .sec_com-in .tit_com01 strong {
            font-size: 46px; } }
        main .sec_com .sec_com-in .tit_com01 strong span {
          -webkit-transition: all 0.2s;
          transition: all 0.2s;
          -webkit-transform: scale(0) translateX(-120px);
          -ms-transform: scale(0) translateX(-120px);
          transform: scale(0) translateX(-120px);
          display: inline-block;
          opacity: 0;
          color: transparent;
          text-shadow: 0px 0px 10px #fff;
          -webkit-transform-origin: center center;
          -ms-transform-origin: center center;
          transform-origin: center center; }
          main .sec_com .sec_com-in .tit_com01 strong span.txt_on {
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
            opacity: 1;
            color: #272727;
            text-shadow: inherit; }
      main .sec_com .sec_com-in .tit_com01 .ls {
        letter-spacing: -50px; }
        @media screen and (max-width: 768px) {
          main .sec_com .sec_com-in .tit_com01 .ls {
            letter-spacing: -25px; } }
    main .sec_com .sec_com-in > .img_area {
      width: 51.97%;
      position: relative;
      overflow: hidden; }
      main .sec_com .sec_com-in > .img_area img {
        -webkit-filter: blur(10px);
        filter: blur(10px);
        -webkit-transition: all 1.2s;
        transition: all 1.2s; }
      main .sec_com .sec_com-in > .img_area::after {
        content: "";
        display: block;
        position: absolute;
        right: 0px;
        top: 0px;
        width: 100%;
        height: 100%;
        background-color: #fff;
        -webkit-transition: all 0.6s;
        transition: all 0.6s; }
      @media screen and (max-width: 1000px) {
        main .sec_com .sec_com-in > .img_area {
          width: 100%; } }
      main .sec_com .sec_com-in > .img_area.fade_other_on img {
        -webkit-filter: blur(0px);
        filter: blur(0px); }
      main .sec_com .sec_com-in > .img_area.fade_other_on::after {
        height: 0px;
        background-color: #FA9910; }
    main .sec_com .sec_com-in > .txt_area {
      width: 48.02%;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding: 0px 0px 0px 12%; }
      @media screen and (max-width: 1280px) {
        main .sec_com .sec_com-in > .txt_area {
          width: 48.02%;
          padding: 0px 40px 0px 6%; } }
      @media screen and (max-width: 1000px) {
        main .sec_com .sec_com-in > .txt_area {
          width: 100%;
          padding: 0px 20px; } }
      main .sec_com .sec_com-in > .txt_area .case_icon_area {
        position: absolute;
        width: 126px;
        height: auto;
        left: 12%;
        top: 0px; }
        @media screen and (max-width: 1280px) {
          main .sec_com .sec_com-in > .txt_area .case_icon_area {
            position: static;
            width: 60px;
            margin-bottom: 25px; } }
      main .sec_com .sec_com-in > .txt_area .txt_com01 {
        font-size: 17px;
        font-weight: bold;
        line-height: 2; }
        @media screen and (max-width: 768px) {
          main .sec_com .sec_com-in > .txt_area .txt_com01 {
            font-size: 15px; } }
      main .sec_com .sec_com-in > .txt_area.pb {
        padding-bottom: 130px; }
        @media screen and (max-width: 1280px) {
          main .sec_com .sec_com-in > .txt_area.pb {
            padding-bottom: 100px; } }
        @media screen and (max-width: 768px) {
          main .sec_com .sec_com-in > .txt_area.pb {
            padding-bottom: 0px; } }
  main .sec_com .more_detail_area {
    width: 100%; }
    main .sec_com .more_detail_area .btn_more {
      width: 81px;
      height: 133px;
      background-color: #002E76;
      text-align: center;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      -webkit-box-pack: center;
      -ms-flex-pack: center;
      justify-content: center;
      margin-left: 12%; }
      @media screen and (max-width: 1000px) {
        main .sec_com .more_detail_area .btn_more {
          width: 128px;
          height: 50px;
          display: block;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          padding: 15px;
          margin-left: 20px;
          position: relative;
          z-index: 1; } }
      @media screen and (max-width: 1000px) {
        main .sec_com .more_detail_area .btn_more div {
          width: 100%;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center; } }
      main .sec_com .more_detail_area .btn_more div span {
        color: #fff;
        font-family: "FOT-セザンヌ Pro M", "游ゴシック";
        font-size: 17px;
        font-weight: bold;
        display: block;
        margin-bottom: 5px;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .btn_more div span {
            font-size: 15px;
            margin-bottom: 0px; } }
      main .sec_com .more_detail_area .btn_more div i {
        position: relative;
        display: block;
        width: 1px;
        height: 28px;
        background-color: #fff;
        margin: 0px auto;
        -webkit-transition: all 0.3s;
        transition: all 0.3s; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .btn_more div i {
            width: 36px;
            height: 1px;
            position: absolute;
            right: 15px;
            top: 50%; } }
        main .sec_com .more_detail_area .btn_more div i::after {
          content: "";
          display: block;
          position: absolute;
          bottom: 0px;
          width: 1px;
          height: 10px;
          background-color: #fff;
          -webkit-transform: rotate(-30deg);
          -ms-transform: rotate(-30deg);
          transform: rotate(-30deg);
          -webkit-transform-origin: right bottom;
          -ms-transform-origin: right bottom;
          transform-origin: right bottom; }
          @media screen and (max-width: 1000px) {
            main .sec_com .more_detail_area .btn_more div i::after {
              right: 0px;
              -webkit-transform: rotate(-40deg);
              -ms-transform: rotate(-40deg);
              transform: rotate(-40deg); } }
      main .sec_com .more_detail_area .btn_more:hover div span, main .sec_com .more_detail_area .btn_more.btn_more-on div span {
        display: none; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .btn_more:hover div span, main .sec_com .more_detail_area .btn_more.btn_more-on div span {
            display: block;
            opacity: 0; } }
      main .sec_com .more_detail_area .btn_more:hover div i, main .sec_com .more_detail_area .btn_more.btn_more-on div i {
        height: 85px; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .btn_more:hover div i, main .sec_com .more_detail_area .btn_more.btn_more-on div i {
            height: 1px;
            width: calc(100% - 30px); } }
    main .sec_com .more_detail_area .btn_out {
      display: none; }
      @media screen and (max-width: 768px) {
        main .sec_com .more_detail_area .btn_out {
          display: block;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          padding: 20px; } }
    main .sec_com .more_detail_area .btn_area {
      position: relative;
      z-index: 1;
      -webkit-box-sizing: border-box;
      box-sizing: border-box; }
      main .sec_com .more_detail_area .btn_area ul {
        width: 100%; }
        main .sec_com .more_detail_area .btn_area ul li {
          margin-bottom: 17px; }
          main .sec_com .more_detail_area .btn_area ul li a {
            padding: 30px 0px;
            line-height: 1;
            font-size: 17px;
            font-weight: bold;
            color: #fff;
            text-align: center;
            -webkit-box-sizing: border-box;
            box-sizing: border-box;
            border-style: solid;
            border-width: 2px;
            -webkit-transition: all 0.2s;
            transition: all 0.2s; }
            @media screen and (max-width: 768px) {
              main .sec_com .more_detail_area .btn_area ul li a {
                text-align: left;
                padding: 30px 15px;
                font-size: 15px; } }
            main .sec_com .more_detail_area .btn_area ul li a.-blank {
              padding: 25px 15px 25px;
              position: relative;
              line-height: 1.3; }
              main .sec_com .more_detail_area .btn_area ul li a.-blank::after {
                content: "";
                display: inline-block;
                width: 23px;
                height: 23px;
                vertical-align: bottom;
                margin-left: 5px;
                background: url(../../img/common/icon_blank.png) 0px 0px no-repeat;
                background-size: cover; }
                @media screen and (max-width: 768px) {
                  main .sec_com .more_detail_area .btn_area ul li a.-blank::after {
                    width: 20px;
                    height: 20px;
                    position: absolute;
                    right: 20px;
                    top: calc(50% - 11px); } }
              main .sec_com .more_detail_area .btn_area ul li a.-blank:hover::after {
                background: url(../../img/common/icon_blank_on.png) 0px 0px no-repeat;
                background-size: cover; }
            main .sec_com .more_detail_area .btn_area ul li a.-orange {
              background-color: #EB6F2D;
              border-color: #EB6F2D; }
              main .sec_com .more_detail_area .btn_area ul li a.-orange:hover {
                color: #EB6F2D; }
            main .sec_com .more_detail_area .btn_area ul li a.-yellow {
              background-color: #FA9910;
              border-color: #FA9910; }
              main .sec_com .more_detail_area .btn_area ul li a.-yellow:hover {
                color: #FA9910; }
            main .sec_com .more_detail_area .btn_area ul li a.-blue {
              background-color: #002E76;
              border-color: #002E76; }
              main .sec_com .more_detail_area .btn_area ul li a.-blue:hover {
                color: #002E76; }
            main .sec_com .more_detail_area .btn_area ul li a:hover {
              background-color: #fff; }
          main .sec_com .more_detail_area .btn_area ul li:nth-last-child(1) {
            margin-bottom: 0px; }
    main .sec_com .more_detail_area .more_detail_area-in {
      width: 100%;
      background-color: #fff;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding: 98px 98px 0px 98px;
      position: relative;
      display: none; }
      @media screen and (max-width: 1000px) {
        main .sec_com .more_detail_area .more_detail_area-in {
          padding: 50px 0px 0px;
          margin-top: -20px; } }
      main .sec_com .more_detail_area .more_detail_area-in::before {
        content: "";
        width: 42.16%;
        position: absolute;
        right: 0px;
        top: 0px;
        background-color: #FAF5EA;
        display: block;
        height: 0%;
        z-index: 1;
        -webkit-transition: all 0.5s;
        transition: all 0.5s; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .more_detail_area-in::before {
            display: none; } }
      main .sec_com .more_detail_area .more_detail_area-in.fade_other_on {
        background-color: #FA9910;
        -webkit-transform: translateX(0px);
        -ms-transform: translateX(0px);
        transform: translateX(0px); }
        main .sec_com .more_detail_area .more_detail_area-in.fade_other_on::before {
          height: 100%; }
      main .sec_com .more_detail_area .more_detail_area-in .main_img_area {
        width: 100%;
        position: relative;
        z-index: 2; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .more_detail_area-in .main_img_area {
            margin-bottom: 20px;
            padding: 0px 15px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
        @media screen and (max-width: 768px) {
          main .sec_com .more_detail_area .more_detail_area-in .main_img_area {
            margin-bottom: 0px; } }
    main .sec_com .more_detail_area .more_detail_txt_area {
      width: 100%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-align: center;
      -ms-flex-align: center;
      align-items: center;
      min-height: 410px; }
      @media screen and (max-width: 1000px) {
        main .sec_com .more_detail_area .more_detail_txt_area {
          min-height: inherit; } }
      main .sec_com .more_detail_area .more_detail_txt_area .txt_area {
        width: 59.14%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 55px; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .more_detail_txt_area .txt_area {
            width: 100%;
            padding: 0px 20px;
            margin-bottom: 30px; } }
        main .sec_com .more_detail_area .more_detail_txt_area .txt_area .txt_com01 {
          font-size: 16px;
          font-weight: bold;
          color: #fff;
          line-height: 2; }
          @media screen and (max-width: 768px) {
            main .sec_com .more_detail_area .more_detail_txt_area .txt_area .txt_com01 {
              font-size: 15px; } }
      main .sec_com .more_detail_area .more_detail_txt_area .btn_area {
        width: 40.85%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 60px;
        padding-top: 10px; }
        @media screen and (max-width: 1000px) {
          main .sec_com .more_detail_area .more_detail_txt_area .btn_area {
            width: 100%;
            padding: 20px 20px 50px;
            background-color: #FAF5EA; } }
        @media screen and (max-width: 768px) {
          main .sec_com .more_detail_area .more_detail_txt_area .btn_area {
            position: relative;
            padding: 0px 20px 50px; }
            main .sec_com .more_detail_area .more_detail_txt_area .btn_area::before {
              content: "";
              position: absolute;
              left: 0px;
              top: 0px;
              width: 100%;
              display: block;
              height: 35px;
              background-color: #FA9910;
              z-index: -1; } }
  main .sec_com.sec00 {
    margin-bottom: 230px; }
    @media screen and (max-width: 1000px) {
      main .sec_com.sec00 {
        margin-bottom: 100px; } }
    main .sec_com.sec00::before {
      content: "";
      width: 2px;
      height: 0%;
      left: 20%;
      top: -35%;
      -webkit-transition: all 1.0s;
      transition: all 1.0s;
      -webkit-transform: rotate(0deg);
      -ms-transform: rotate(0deg);
      transform: rotate(0deg);
      background-color: #F4F7FC; }
      @media screen and (max-width: 768px) {
        main .sec_com.sec00::before {
          width: 1px;
          left: 48px;
          top: -250px; } }
    @media screen and (max-width: 768px) {
      main .sec_com.sec00 .tit_com01 {
        font-size: 55px; } }
    main .sec_com.sec00.fade_other_on::before {
      height: 60%;
      background-color: #002E76; }
      @media screen and (max-width: 1280px) {
        main .sec_com.sec00.fade_other_on::before {
          height: 40%; } }
      @media screen and (max-width: 768px) {
        main .sec_com.sec00.fade_other_on::before {
          height: 210px; } }
  main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (max-width: 768px) {
      main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area {
        margin-bottom: 10px; } }
    main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area figure, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area figure {
      width: 33.3%;
      position: relative; }
      @media screen and (max-width: 768px) {
        main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area figure, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area figure {
          width: 100%;
          margin-bottom: 10px; } }
      main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area figure figcaption, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area figure figcaption {
        position: absolute;
        left: 0px;
        bottom: 0px;
        width: 50%;
        background-color: rgba(255, 255, 255, 0.8);
        line-height: 1;
        padding: 15px 0px;
        text-align: center;
        color: #002E76;
        font-size: 16px;
        font-weight: bold; }
        @media screen and (max-width: 768px) {
          main .sec_com.sec01 .more_detail_area .more_detail_area-in .main_img_area figure figcaption, main .sec_com.sec04 .more_detail_area .more_detail_area-in .main_img_area figure figcaption {
            font-size: 14px; } }
  @media screen and (max-width: 768px) {
    main .sec_com.sec01 .tit_com01, main .sec_com.sec04 .tit_com01 {
      letter-spacing: -7px; } }
  main .sec_com.sec02 .sec_com-in {
    margin-bottom: 70px; }
    @media screen and (max-width: 1280px) {
      main .sec_com.sec02 .sec_com-in {
        margin-bottom: 170px; } }
    @media screen and (max-width: 1000px) {
      main .sec_com.sec02 .sec_com-in {
        margin-bottom: 70px; } }
    main .sec_com.sec02 .sec_com-in .tit_com01 {
      bottom: 0px; }
      @media screen and (max-width: 1000px) {
        main .sec_com.sec02 .sec_com-in .tit_com01 {
          bottom: 0px; } }
  main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area {
    background: url(../../img/index/img12.jpg) 0px 0px no-repeat;
    background-size: cover;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-box-align: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -ms-flex-pack: justify;
    justify-content: space-between; }
    @media screen and (max-width: 1000px) {
      main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area {
        width: calc(100% - 40px);
        margin: 0px auto;
        padding: 30px 12px 30px;
        margin-bottom: 20px; } }
    @media screen and (max-width: 768px) {
      main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area {
        display: block;
        background: url(../../img/index/img12_sp.jpg) 0px 0px no-repeat;
        background-size: cover;
        padding: 0px 12px 30px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: 40px; } }
    main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img {
      width: 50%;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: end;
      -ms-flex-pack: end;
      justify-content: flex-end;
      padding: 15px 0px; }
      @media screen and (max-width: 1000px) {
        main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img {
          width: 50%; } }
      @media screen and (max-width: 768px) {
        main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img {
          width: 100%;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          padding: 30px 0px; } }
      main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img img {
        width: 65.81%; }
        @media screen and (max-width: 1000px) {
          main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img img {
            margin: 0px auto; } }
        @media screen and (max-width: 768px) {
          main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .img img {
            width: 100%; } }
    main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area {
      width: 40.85%; }
      @media screen and (max-width: 1000px) {
        main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area {
          width: 50%; } }
      @media screen and (max-width: 768px) {
        main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area {
          width: 100%; } }
      main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area p {
        color: #fff;
        font-size: 46px;
        font-family: shippori-mincho, sans-serif;
        font-weight: 600;
        font-style: normal;
        line-height: 1.5;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 25px;
        display: inline-block;
        border-top: 1px solid #fff;
        border-bottom: 1px solid #fff; }
        @media screen and (max-width: 1000px) {
          main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area p {
            font-size: 28px;
            padding: 20px;
            letter-spacing: -2px;
            display: block; } }
        main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area p span {
          font-size: 29px; }
          @media screen and (max-width: 768px) {
            main .sec_com.sec02 .more_detail_area .more_detail_area-in .main_img_area .txt_area p span {
              font-size: 23px; } }
  main .sec_com.sec02 .tit_com01 strong {
    display: inline; }
    @media screen and (max-width: 420px) {
      main .sec_com.sec02 .tit_com01 strong {
        display: block; } }
  main .sec_com.sec03 .more_detail_area .more_detail_area-in .main_img_area {
    background: url(../../img/index/img15.jpg) 0px 0px no-repeat;
    background-size: cover;
    padding: 30px 0px; }
    @media screen and (max-width: 1000px) {
      main .sec_com.sec03 .more_detail_area .more_detail_area-in .main_img_area {
        width: calc(100% - 40px);
        margin: 0px auto;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        margin-bottom: 20px;
        padding: 100px 0px; } }
    @media screen and (max-width: 768px) {
      main .sec_com.sec03 .more_detail_area .more_detail_area-in .main_img_area {
        display: block;
        background: url(../../img/index/img15_sp.jpg) 0px 0px no-repeat;
        background-size: cover;
        margin-bottom: 40px; } }
    main .sec_com.sec03 .more_detail_area .more_detail_area-in .main_img_area img {
      width: 55.55%;
      margin: 0px auto; }
      @media screen and (max-width: 768px) {
        main .sec_com.sec03 .more_detail_area .more_detail_area-in .main_img_area img {
          width: 100%;
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); } }
  @media screen and (max-width: 768px) {
    main .sec_com.sec03 .tit_com01 br {
      display: none; } }
  @media screen and (max-width: 768px) and (max-width: 420px) {
    main .sec_com.sec03 .tit_com01 br {
      display: block; } }
  main .sec_com.sec04 .sec_com-in {
    margin-bottom: 70px; }
    @media screen and (max-width: 1280px) {
      main .sec_com.sec04 .sec_com-in {
        margin-bottom: 170px; } }
    @media screen and (max-width: 1000px) {
      main .sec_com.sec04 .sec_com-in {
        margin-bottom: 70px; } }
    main .sec_com.sec04 .sec_com-in .tit_com01 {
      bottom: 0px; }
      @media screen and (max-width: 1000px) {
        main .sec_com.sec04 .sec_com-in .tit_com01 {
          bottom: 0px; } }
      main .sec_com.sec04 .sec_com-in .tit_com01 strong {
        display: inline; }
        @media screen and (max-width: 1000px) {
          main .sec_com.sec04 .sec_com-in .tit_com01 strong {
            display: block; } }
  main .sec_com.sec05 {
    margin-bottom: 160px; }
    @media screen and (max-width: 768px) {
      main .sec_com.sec05 {
        margin-bottom: 50px; } }
    @media screen and (max-width: 768px) {
      main .sec_com.sec05 .tit_com01 br {
        display: none; } }
    main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area {
      background: url(../../img/index/img22.jpg) center center no-repeat;
      background-size: cover;
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap; }
      @media screen and (max-width: 1280px) {
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area {
          padding: 20px 0px; } }
      @media screen and (max-width: 1000px) {
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area {
          width: calc(100% - 40px) !important;
          margin: 0px auto;
          margin-bottom: 20px; } }
      @media screen and (max-width: 768px) {
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area {
          width: 100%;
          background: none;
          padding: 0px 0px;
          display: block;
          margin-bottom: 40px; } }
      main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .img {
        width: 47.69%;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
        padding: 60px 0px; }
        @media screen and (max-width: 768px) {
          main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .img {
            width: 100%;
            background: url(../../img/index/img22_1_sp.jpg) center center no-repeat;
            background-size: cover;
            padding: 20px 20px 40px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .img img {
          width: 77.06%;
          margin: 0px auto; }
          @media screen and (max-width: 768px) {
            main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .img img {
              width: 100%; } }
      main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area {
        width: 52.3%;
        color: #fff;
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-align: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -ms-flex-pack: center;
        justify-content: center; }
        @media screen and (max-width: 768px) {
          main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area {
            width: 100%;
            background: url(../../img/index/img22_2_sp.jpg) center center no-repeat;
            background-size: cover;
            padding: 20px 10px 20px;
            -webkit-box-sizing: border-box;
            box-sizing: border-box; } }
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area .dl_area {
          padding: 25px 0px;
          border-top: 2px solid #fff;
          border-bottom: 2px solid #fff; }
          @media screen and (max-width: 768px) {
            main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area .dl_area {
              width: 100%;
              border-width: 1px; } }
        main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl {
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          color: #fff;
          line-height: 1;
          margin-bottom: 25px;
          padding-bottom: 25px;
          border-bottom: 1px solid #fff; }
          main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl dt {
            font-size: 15px;
            padding-right: 7px;
            border-right: 1px solid #fff; }
            @media screen and (max-width: 768px) {
              main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl dt {
                font-size: 13px; } }
          main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl dd {
            font-size: 17px;
            font-weight: bold;
            padding-left: 12px; }
            @media screen and (max-width: 768px) {
              main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl dd {
                font-size: 15px; } }
          main .sec_com.sec05 .more_detail_area .more_detail_area-in .main_img_area .txt_area dl:nth-last-child(1) {
            margin-bottom: 0px;
            padding-bottom: 0px;
            border-bottom: none; }

main .triangle_area {
  width: 100%;
  position: relative; }
  main .triangle_area .triangle_area-in {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap;
    -webkit-transition: all 0.3s;
    transition: all 0.3s;
    margin-top: 170px;
    opacity: 0; }
    @media screen and (max-width: 1000px) {
      main .triangle_area .triangle_area-in {
        margin-top: 0px;
        opacity: 1; } }
    main .triangle_area .triangle_area-in .left, main .triangle_area .triangle_area-in .right {
      width: 50%; }
      @media screen and (max-width: 1000px) {
        main .triangle_area .triangle_area-in .left, main .triangle_area .triangle_area-in .right {
          display: none; } }
    main .triangle_area .triangle_area-in .LR {
      display: none; }
      @media screen and (max-width: 768px) {
        main .triangle_area .triangle_area-in .LR {
          width: 100%;
          margin-top: -1px; } }
    main .triangle_area .triangle_area-in.triangle_area-on {
      margin-top: 0px;
      opacity: 1; }
      @media screen and (max-width: 768px) {
        main .triangle_area .triangle_area-in.triangle_area-on .LR {
          display: block; } }
  main .triangle_area .logo {
    width: 320px;
    height: 320px;
    position: absolute;
    left: calc(50% - 160px);
    top: 0px; }
    @media screen and (max-width: 1000px) {
      main .triangle_area .logo {
        width: 180px;
        height: 180px;
        left: calc(50% - 90px); } }
    main .triangle_area .logo img {
      width: 152px;
      height: auto; }
      @media screen and (max-width: 1000px) {
        main .triangle_area .logo img {
          width: 88px; } }
  main .triangle_area .txt_area {
    padding-left: 12%;
    font-family: shippori-mincho, sans-serif;
    font-weight: 600;
    font-style: normal;
    padding-top: 300px; }
    @media screen and (max-width: 1280px) {
      main .triangle_area .txt_area {
        padding: 300px 10px 0px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    @media screen and (max-width: 1000px) {
      main .triangle_area .txt_area {
        padding: 200px 10px 0px;
        -webkit-box-sizing: border-box;
        box-sizing: border-box; } }
    main .triangle_area .txt_area .txt01 {
      margin-bottom: 20px; }
      main .triangle_area .txt_area .txt01 strong {
        font-size: 100px;
        display: block; }
        @media screen and (max-width: 1280px) {
          main .triangle_area .txt_area .txt01 strong {
            font-size: 84px; } }
        @media screen and (max-width: 1000px) {
          main .triangle_area .txt_area .txt01 strong {
            font-size: 72px; } }
        @media screen and (max-width: 768px) {
          main .triangle_area .txt_area .txt01 strong {
            font-size: 34px;
            letter-spacing: -3px; } }
        main .triangle_area .txt_area .txt01 strong span {
          -webkit-transition: all 0.2s;
          transition: all 0.2s;
          -webkit-transform: scale(0) translateX(-120px);
          -ms-transform: scale(0) translateX(-120px);
          transform: scale(0) translateX(-120px);
          display: inline-block;
          opacity: 0;
          color: transparent;
          text-shadow: 0px 0px 10px #fff;
          -webkit-transform-origin: center center;
          -ms-transform-origin: center center;
          transform-origin: center center; }
          main .triangle_area .txt_area .txt01 strong span.txt_on {
            -webkit-transform: scale(1);
            -ms-transform: scale(1);
            transform: scale(1);
            opacity: 1;
            color: #272727;
            text-shadow: inherit; }
    main .triangle_area .txt_area .txt02 {
      font-size: 29px;
      margin-bottom: 50px; }
      @media screen and (max-width: 420px) {
        main .triangle_area .txt_area .txt02 {
          font-size: 20px;
          margin-bottom: 40px; } }
    main .triangle_area .txt_area .txt03 {
      line-height: 1;
      background-color: #002E76;
      color: #fff;
      font-family: shippori-mincho, sans-serif;
      font-weight: 600;
      font-style: normal;
      font-size: 30px;
      padding: 5px;
      display: inline-block;
      margin-bottom: 12px; }
      @media screen and (max-width: 420px) {
        main .triangle_area .txt_area .txt03 {
          display: none; } }

main .nav_area {
  width: 100%;
  margin-bottom: 600px; }
  @media screen and (max-width: 1000px) {
    main .nav_area {
      margin-bottom: 300px;
      -webkit-box-sizing: border-box;
      box-sizing: border-box;
      padding: 0px 20px; } }
  @media screen and (max-width: 768px) {
    main .nav_area {
      margin-bottom: 200px; } }
  main .nav_area ul {
    width: 100%;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
    flex-wrap: wrap; }
    @media screen and (max-width: 768px) {
      main .nav_area ul {
        -webkit-box-pack: justify;
        -ms-flex-pack: justify;
        justify-content: space-between; } }
    main .nav_area ul li {
      width: 20%; }
      @media screen and (max-width: 1000px) {
        main .nav_area ul li {
          width: 33.3%;
          margin-bottom: 150px; } }
      @media screen and (max-width: 768px) {
        main .nav_area ul li {
          width: 47.76%;
          margin-bottom: 80px; } }
      main .nav_area ul li a {
        width: 100%;
        position: relative; }
        main .nav_area ul li a .img {
          width: 100%;
          overflow: hidden; }
          main .nav_area ul li a .img img {
            -webkit-transition: all 0.6s;
            transition: all 0.6s; }
        main .nav_area ul li a .btn_more {
          width: 105px;
          left: calc(50% - 52px);
          position: absolute;
          bottom: calc(-120px);
          padding: 10px;
          -webkit-box-sizing: border-box;
          box-sizing: border-box;
          background-color: #fff;
          text-align: center;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center;
          padding: 10px;
          overflow: hidden;
          -webkit-transition: all 0.4s;
          transition: all 0.4s;
          -webkit-transform-origin: left top;
          -ms-transform-origin: left top;
          transform-origin: left top; }
          @media screen and (max-width: 768px) {
            main .nav_area ul li a .btn_more {
              bottom: calc(-100px);
              border: 1px solid #002E76;
              display: none; } }
          @media screen and (max-width: 768px) {
            main .nav_area ul li a .btn_more div {
              display: block; } }
          main .nav_area ul li a .btn_more div span {
            color: #fff;
            font-family: "FOT-セザンヌ Pro M", "游ゴシック";
            font-size: 13px;
            font-weight: bold;
            display: block;
            margin-bottom: 5px; }
            @media screen and (max-width: 768px) {
              main .nav_area ul li a .btn_more div span {
                color: #002E76;
                font-size: 12px;
                margin-bottom: 0px;
                text-align: center;
                display: block; } }
          main .nav_area ul li a .btn_more div i {
            position: relative;
            display: block;
            width: 1px;
            height: 24px;
            background-color: #fff;
            margin: 0px auto;
            -webkit-transition: all 0.4s;
            transition: all 0.4s;
            -webkit-transform: translateY(-20px);
            -ms-transform: translateY(-20px);
            transform: translateY(-20px); }
            @media screen and (max-width: 768px) {
              main .nav_area ul li a .btn_more div i {
                display: none; } }
            main .nav_area ul li a .btn_more div i::after {
              content: "";
              display: block;
              position: absolute;
              bottom: 0px;
              width: 1px;
              height: 10px;
              background-color: #fff;
              -webkit-transform: rotate(30deg);
              -ms-transform: rotate(30deg);
              transform: rotate(30deg);
              -webkit-transform-origin: right bottom;
              -ms-transform-origin: right bottom;
              transform-origin: right bottom; }
              @media screen and (max-width: 768px) {
                main .nav_area ul li a .btn_more div i::after {
                  right: 0px;
                  -webkit-transform: rotate(-40deg);
                  -ms-transform: rotate(-40deg);
                  transform: rotate(-40deg); } }
        main .nav_area ul li a .case_icon_area {
          position: absolute;
          bottom: -50px;
          left: calc(50% - 52px);
          width: 105px;
          height: 98px;
          background-color: #fff;
          color: #272727;
          display: -webkit-box;
          display: -ms-flexbox;
          display: flex;
          -ms-flex-wrap: wrap;
          flex-wrap: wrap;
          -webkit-box-align: center;
          -ms-flex-align: center;
          align-items: center;
          -webkit-box-pack: center;
          -ms-flex-pack: center;
          justify-content: center; }
          main .nav_area ul li a .case_icon_area .case_icon_area-in {
            width: 52px;
            height: 52px;
            position: relative; }
            @media screen and (max-width: 768px) {
              main .nav_area ul li a .case_icon_area .case_icon_area-in {
                width: 100%;
                height: auto;
                -webkit-box-sizing: border-box;
                box-sizing: border-box;
                padding: 15px; } }
            main .nav_area ul li a .case_icon_area .case_icon_area-in img {
              width: 100%; }
            main .nav_area ul li a .case_icon_area .case_icon_area-in::after {
              content: "";
              width: 0px;
              height: 1px;
              position: absolute;
              left: 0px;
              bottom: 17px;
              background-color: #FA9910;
              display: block;
              -webkit-transition: all 0.3s;
              transition: all 0.3s; }
              @media screen and (max-width: 768px) {
                main .nav_area ul li a .case_icon_area .case_icon_area-in::after {
                  display: none; } }
        main .nav_area ul li a:hover .img img {
          -webkit-transform: scale(1.1);
          -ms-transform: scale(1.1);
          transform: scale(1.1); }
        main .nav_area ul li a:hover .case_icon_area-in::after {
          width: 100%; }
        main .nav_area ul li a:hover .btn_more {
          background-color: #002E76; }
          @media screen and (max-width: 768px) {
            main .nav_area ul li a:hover .btn_more {
              background-color: #fff; } }
          main .nav_area ul li a:hover .btn_more i {
            -webkit-transform: translateY(0px);
            -ms-transform: translateY(0px);
            transform: translateY(0px); }

main .sns_area {
  width: 100%;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  padding: 110px 0px;
  background-color: #EFEEEC;
  margin-bottom: 50px; }
  @media screen and (max-width: 420px) {
    main .sns_area {
      padding: 60px 0px 30px;
      margin-bottom: 15px; } }
  main .sns_area .tit01 {
    margin-bottom: 30px; }
    @media screen and (max-width: 420px) {
      main .sns_area .tit01 {
        margin-bottom: 25px; } }
    main .sns_area .tit01 a {
      text-align: center;
      font-size: 20px;
      font-weight: bold;
      color: #002E76; }
      @media screen and (max-width: 420px) {
        main .sns_area .tit01 a {
          font-size: 16px; } }
      main .sns_area .tit01 a::before {
        content: "";
        width: 50px;
        height: 50px;
        display: inline-block;
        background: url(../../img/common/icon_insta.png) 0px 0px no-repeat;
        background-size: cover;
        vertical-align: middle;
        margin-right: 10px; }
        @media screen and (max-width: 420px) {
          main .sns_area .tit01 a::before {
            width: 34px;
            height: 34px; } }
  main .sns_area .img_area {
    width: 67.56%;
    max-width: 923px;
    margin: 0px auto; }
    @media screen and (max-width: 420px) {
      main .sns_area .img_area {
        width: 100%;
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding: 0px 20px; } }
    main .sns_area .img_area ul {
      display: -webkit-box;
      display: -ms-flexbox;
      display: flex;
      -ms-flex-wrap: wrap;
      flex-wrap: wrap;
      -webkit-box-pack: justify;
      -ms-flex-pack: justify;
      justify-content: space-between; }
      main .sns_area .img_area ul li {
        width: 24.05%;
        margin-bottom: 12px; }
        @media screen and (max-width: 420px) {
          main .sns_area .img_area ul li {
            width: 48.52%; } }

.youtube_bg {
  display: block;
  width: 100%;
  height: 100vh;
  position: fixed;
  left: 0px;
  top: 0px;
  background-color: rgba(0, 0, 0, 0.9);
  z-index: 100;
  display: none; }

.youtube_close {
  width: 50px;
  height: 50px;
  z-index: 301;
  position: fixed;
  right: 30px;
  top: 60px;
  -webkit-transform: rotate(45deg);
  -ms-transform: rotate(45deg);
  transform: rotate(45deg);
  -webkit-transform-origin: right top;
  -ms-transform-origin: right top;
  transform-origin: right top;
  display: none; }
  @media screen and (max-width: 768px) {
    .youtube_close {
      width: 40px;
      height: 40px;
      right: 20px;
      top: 60px; } }
  .youtube_close::before, .youtube_close::after {
    content: "";
    display: block;
    width: 100%;
    height: 1px;
    background-color: #fff; }
  .youtube_close::before {
    -webkit-transform: rotate(90deg);
    -ms-transform: rotate(90deg);
    transform: rotate(90deg); }

.youtube_area {
  width: 100%;
  position: relative;
  height: 100vh;
  z-index: 200;
  position: fixed;
  left: 0px;
  top: 0px;
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -ms-flex-wrap: wrap;
  flex-wrap: wrap;
  -webkit-box-align: center;
  -ms-flex-align: center;
  align-items: center;
  -webkit-box-pack: center;
  -ms-flex-pack: center;
  justify-content: center;
  display: none; }
  .youtube_area iframe {
    position: absolute;
    width: 60%;
    height: 600px;
    top: calc(50% - 300px);
    left: 20%;
    z-index: 200; }
    @media screen and (max-width: 768px) {
      .youtube_area iframe {
        width: 100%;
        left: 0%;
        height: 240px;
        top: calc(50% - 120px); } }
