@charset "UTF-8";
/*! Writen  by SCSS */
.mainvisual .main_ttl_wrap {
  margin-bottom: 30px; }

.section.sec01 {
  background: #F0F1F4; }
.section.sec02 {
  background: #E3E6EA; }
.section.sec03 {
  background: #D5D8E6; }
.section.sec04 {
  background: #C7CBDE; }
.section.sec05 {
  background: #BCC1D8; }
.section .slider_wrap {
  padding: 30px 0 60px; }

.slider_wrap {
  position: relative; }
  .slider_wrap .vision_num_wrap {
    margin-bottom: 40px; }
    @media screen and (max-width: 480px) {
      .slider_wrap .vision_num_wrap {
        margin-bottom: 30px; } }
    .slider_wrap .vision_num_wrap .vision_num {
      text-align: center;
      color: #3D4555;
      width: fit-content;
      line-height: 0.9;
      margin: 0 auto 15px;
      padding: 0 25px;
      position: relative;
      font-style: italic; }
      .slider_wrap .vision_num_wrap .vision_num span {
        display: block;
        line-height: 0.9; }
        .slider_wrap .vision_num_wrap .vision_num span.small {
          display: block;
          font-weight: 600;
          font-size: 14px;
          text-align: center; }
          @media screen and (max-width: 480px) {
            .slider_wrap .vision_num_wrap .vision_num span.small {
              font-size: 13px; } }
        .slider_wrap .vision_num_wrap .vision_num span.big {
          font-size: 60px;
          transform: translateX(-5px); }
          @media screen and (max-width: 480px) {
            .slider_wrap .vision_num_wrap .vision_num span.big {
              font-size: 50px; } }
      .slider_wrap .vision_num_wrap .vision_num:before, .slider_wrap .vision_num_wrap .vision_num:after {
        content: "";
        display: block;
        position: absolute;
        bottom: 0;
        width: 1px;
        height: 60%;
        margin: auto;
        background: #3D4556; }
      .slider_wrap .vision_num_wrap .vision_num:before {
        left: 0;
        transform: rotate(-30deg); }
      .slider_wrap .vision_num_wrap .vision_num:after {
        right: 0;
        transform: rotate(30deg); }
    .slider_wrap .vision_num_wrap .vision_sub {
      text-align: center;
      font-size: 20px;
      color: #3D4555; }
      @media screen and (max-width: 480px) {
        .slider_wrap .vision_num_wrap .vision_sub {
          font-size: 18px; } }
  .slider_wrap .vision_slide .vision_ttl {
    display: flex;
    line-height: 1.6;
    justify-content: center;
    align-items: center;
    font-size: 24px;
    color: #667792;
    text-align: center;
    margin-bottom: 20px;
    padding: 0 20px; }
    @media screen and (max-width: 480px) {
      .slider_wrap .vision_slide .vision_ttl {
        font-size: 21px; } }
  .slider_wrap .vision_slide .img_onlyi {
    margin: -30px auto 28px;
    width: 100%;
    text-align: center;
    display: block; }
  .slider_wrap .vision_slide .vision_read {
    padding: 0 30px;
    font-size: 14px;
    line-height: 2.2; }
  .slider_wrap .vision_slide .col3 {
    display: flex;
    justify-content: space-between;
    padding: 0 30px; }
    .slider_wrap .vision_slide .col3 li {
      width: 31%;
      text-align: center; }
      .slider_wrap .vision_slide .col3 li .col3_icon {
        text-align: center;
        margin-bottom: 10px; }
      .slider_wrap .vision_slide .col3 li .col3_name {
        font-size: 16px;
        color: #4e5b71;
        line-height: 1.2;
        margin-bottom: 10px; }
        @media screen and (max-width: 480px) {
          .slider_wrap .vision_slide .col3 li .col3_name {
            font-size: 14px; } }
        .slider_wrap .vision_slide .col3 li .col3_name.sm {
          font-size: 14px; }
      .slider_wrap .vision_slide .col3 li .col3_read {
        font-size: 12px;
        text-align: left; }
  .slider_wrap .slide_nav_wrap {
    margin-top: 40px;
    display: flex;
    justify-content: center;
    gap: 0 30px; }
    .slider_wrap .slide_nav_wrap .swiper-button-next, .slider_wrap .slide_nav_wrap .swiper-button-prev {
      position: static;
      width: auto;
      height: auto;
      transition: 0.5s opacity ease-in-out 0s; }
      .slider_wrap .slide_nav_wrap .swiper-button-next:before, .slider_wrap .slide_nav_wrap .swiper-button-next:after, .slider_wrap .slide_nav_wrap .swiper-button-prev:before, .slider_wrap .slide_nav_wrap .swiper-button-prev:after {
        content: none; }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .swiper-button-prev:hover .circle_wrap .circle_line:after,
    body:not(.mobile) .slider_wrap .slide_nav_wrap .swiper-button-next:hover .circle_wrap .circle_line:after {
      border-color: #FFF !important; }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .swiper-button-prev:hover .circle_wrap .circle_line.prev:after,
    body:not(.mobile) .slider_wrap .slide_nav_wrap .swiper-button-next:hover .circle_wrap .circle_line.prev:after {
      border-color: #FFF !important; }
    .slider_wrap .slide_nav_wrap .vision-prev,
    .slider_wrap .slide_nav_wrap .vision-next {
      pointer-events: all;
      position: static;
      display: flex;
      justify-content: center;
      align-items: center;
      gap: 0 12px; }
      .slider_wrap .slide_nav_wrap .vision-prev.swiper-button-disabled,
      .slider_wrap .slide_nav_wrap .vision-next.swiper-button-disabled {
        pointer-events: none; }
        .slider_wrap .slide_nav_wrap .vision-prev.swiper-button-disabled .circle_rotate,
        .slider_wrap .slide_nav_wrap .vision-next.swiper-button-disabled .circle_rotate {
          animation-play-state: paused !important; }
      .slider_wrap .slide_nav_wrap .vision-prev .btn_txt,
      .slider_wrap .slide_nav_wrap .vision-next .btn_txt {
        font-size: 14px;
        color: #3D4554;
        font-weight: 500;
        font-style: italic;
        font-family: YakuHanMP_Noto, 'Shippori Mincho', "游明朝", "Yu Mincho", YuMincho, "游明朝体", 'ヒラギノ明朝 Pro W3','Hiragino Mincho Pro','HGS明朝E','ＭＳ Ｐ明朝', serif;
        transition: 0.3s transform ease-in-out 0s; }
      .slider_wrap .slide_nav_wrap .vision-prev .circle_rotate.circle_anime,
      .slider_wrap .slide_nav_wrap .vision-next .circle_rotate.circle_anime {
        animation: 15s rotate_anime linear infinite; }
      .slider_wrap .slide_nav_wrap .vision-prev .circle_rotate.circle_anime_rev,
      .slider_wrap .slide_nav_wrap .vision-next .circle_rotate.circle_anime_rev {
        animation: 15s rotate_anime_rev linear infinite; }
      .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap,
      .slider_wrap .slide_nav_wrap .vision-next .circle_wrap {
        position: relative;
        transition: 0.4s transform cubic-bezier(0.74, 0, 0.46, 1.03) 0s; }
        .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap .circle,
        .slider_wrap .slide_nav_wrap .vision-next .circle_wrap .circle {
          width: 42px;
          aspect-ratio: 1;
          background: #FFF;
          transform-origin: center;
          border-radius: 50px;
          transition: 0.4s background cubic-bezier(0.74, 0, 0.46, 1.03) 0s; }
          .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap .circle:before,
          .slider_wrap .slide_nav_wrap .vision-next .circle_wrap .circle:before {
            content: "";
            position: absolute;
            inset: 0;
            border: 1px dashed #3D4556;
            border-radius: 50px;
            transition: 0.4s border-color cubic-bezier(0.74, 0, 0.46, 1.03) 0s; }
        .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap .circle_line,
        .slider_wrap .slide_nav_wrap .vision-next .circle_wrap .circle_line {
          position: absolute;
          inset: 0;
          margin: auto;
          display: flex;
          justify-content: center;
          align-items: center; }
          .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap .circle_line:after,
          .slider_wrap .slide_nav_wrap .vision-next .circle_wrap .circle_line:after {
            content: "";
            margin: 0;
            padding: 0;
            border: none;
            position: absolute;
            top: 50%;
            left: 12px;
            display: flex;
            justify-content: center;
            align-items: center;
            margin-top: -4px;
            height: 6px;
            width: 15px;
            border-bottom: solid 1px #3D4556;
            border-right: solid 1px #3D4556;
            transform: skewX(45deg);
            transition: 0.4s border-color cubic-bezier(0.74, 0, 0.46, 1.03) 0s; }
          .slider_wrap .slide_nav_wrap .vision-prev .circle_wrap .circle_line.prev:after,
          .slider_wrap .slide_nav_wrap .vision-next .circle_wrap .circle_line.prev:after {
            left: 16px;
            border-left: solid 1px #3D4556;
            border-right: none;
            transform: skewX(-45deg);
            transition: 0.4s border-color cubic-bezier(0.74, 0, 0.46, 1.03) 0s; }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-prev:hover .btn_txt {
      transform: translateX(-5px); }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-prev:hover .circle_wrap {
      transform: scale(1.3); }
      body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-prev:hover .circle_wrap:after {
        border-color: #FFF; }
      body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-prev:hover .circle_wrap .circle {
        background: #3D4556; }
        body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-prev:hover .circle_wrap .circle:before {
          border-color: #FFF; }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-next:hover .btn_txt {
      transform: translateX(5px); }
    body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-next:hover .circle_wrap {
      transform: scale(1.3); }
      body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-next:hover .circle_wrap:after {
        border-color: #FFF; }
      body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-next:hover .circle_wrap .circle {
        background: #3D4556; }
        body:not(.mobile) .slider_wrap .slide_nav_wrap .vision-next:hover .circle_wrap .circle:before {
          border-color: #FFF; }
    .slider_wrap .slide_nav_wrap .vision-next {
      flex-direction: row-reverse; }
@keyframes rotate_anime {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(-360deg); } }
@keyframes rotate_anime_rev {
  0% {
    transform: rotate(0); }
  100% {
    transform: rotate(360deg); } }
    .slider_wrap .slide_nav_wrap button {
      cursor: pointer;
      border: none;
      padding: 0;
      background: none;
      margin: 0;
      transition: opacity 0.3s ease-in-out; }
