@charset "UTF-8";
:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

:root { --color-gray: #929292; --color-gray-second: #c4c4c4; --color-gray-third: #707070; --color-gray-fourth: #d8d5d5; --color-gray-fifth: #e3e3e3; --color-gray-sixth: #F6F6F6; --color-black: #000000; --color-black-second: #0d0d0d; --color-black-third: #262421; --color-white: #ffffff; --color-brown: #684117; --color-red: #ff0000; --font-noto-sans-jp: "Noto Sans JP", sans-serif; --font-noto-serif-jp: "Noto Serif JP", serif; --font-saira: "Saira Semi Condensed", sans-serif; --font-libre-baskerville: "Libre Baskerville", serif; }

@keyframes prixClipFix { 0% { clip-path: polygon(50% 50%, 0 0, 0 0, 0 0, 0 0, 0 0); }
  25% { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 0, 100% 0, 100% 0); }
  50% { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 100% 100%, 100% 100%); }
  75% { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 100%); }
  100% { clip-path: polygon(50% 50%, 0 0, 100% 0, 100% 100%, 0 100%, 0 0); } }

.loading { position: fixed; left: 0; top: 0; bottom: 0; right: 0; background: #fff; z-index: 8977; -webkit-transition: 0.5s ease all; -moz-transition: 0.5s ease all; -ms-transition: 0.5s ease all; -o-transition: 0.5s ease all; transition: 0.5s ease all; }

.loading .lds-roller { width: 48px; height: 48px; border: 7px solid #dae9f1; border-radius: 50%; position: relative; transform: rotate(45deg) translateY(-50%); box-sizing: border-box; position: absolute; left: 0; right: 0; margin: 0 auto; top: 50%; }

.loading .lds-roller::before { content: ""; position: absolute; box-sizing: border-box; inset: -7px; border-radius: 50%; border: 7px solid #1d4394; animation: prixClipFix 2s infinite linear; }

.loading.is-hidden { opacity: 0; pointer-events: none; }

#main { padding-bottom: 105px; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { #main { padding-bottom: 60px; } }

/* ========== end △ */
.main-visual { position: relative; text-align: center; padding: 0; z-index: 23; overflow: hidden; height: 100vh; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual { min-height: 780px; } }

/* ========== end △ */
.main-visual .hero--scroll { position: absolute; right: 0; writing-mode: vertical-rl; font-feature-settings: "pkna"; line-height: 160%; letter-spacing: 0.0535714286em; z-index: 22; position: absolute; right: 20px; bottom: 20px; color: #fff; }

.main-visual .mv-slider { height: 100%; width: 100%; position: relative; z-index: 3; }

.main-visual .mv-slider:not(.slick-initialized) .mv-slide-img { display: none; }

.main-visual .mv-slider:not(.slick-initialized) .mv-slide-img:first-child { display: block; }

.main-visual .mv-slider .slick-list { height: 100%; width: 100%; }

.main-visual .mv-slider .slick-track { height: 100%; }

.main-visual .mv-slider .slick-slide { height: 100%; }

.main-visual .mv-slider .slick-slide > div { height: 100%; }

.main-visual .mv-slider .mv-ttl01 { color: #fff; font-size: 120px; line-height: 1; letter-spacing: 0.1em; font-weight: 300; -webkit-transition: 1s ease all; -moz-transition: 1s ease all; -ms-transition: 1s ease all; -o-transition: 1s ease all; transition: 1s ease all; opacity: 0; mix-blend-mode: difference; -webkit-mix-blend-mode: difference; position: absolute; content: ""; z-index: 22; left: 20px; right: 20px; max-width: 1240px; margin: 0 auto; text-align: left; bottom: 30%; transform: translateY(50%); }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual .mv-slider .mv-ttl01 { white-space: nowrap; } }

@media only screen and (min-width: 768px) and (max-width: 1520px) { .main-visual .mv-slider .mv-ttl01 { font-size: 7.29167vw; } }

/* ========== end △ */
.main-visual .mv-slider .mv-ttl02 { color: #000; font-family: "Noto Sans JP", sans-serif; font-size: 50px; line-height: 1.24; letter-spacing: 0.1em; font-weight: 300; margin: 80px 0 0; -webkit-transition: 1s ease all; -moz-transition: 1s ease all; -ms-transition: 1s ease all; -o-transition: 1s ease all; transition: 1s ease all; opacity: 0; transform: translateY(60px); position: absolute; content: ""; z-index: 22; left: 20px; right: 20px; max-width: 1240px; margin: 0 auto; text-align: left; bottom: calc(30% - 7.29167vw); transform: translateY(50%); }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1520px) { .main-visual .mv-slider .mv-ttl02 { font-size: 3.48958vw; } }

/* ========== end △ */
.main-visual .mv-slider .mv-slide-img { width: 100%; height: 100%; }

.main-visual .mv-slider .mv-slide-img .c-img { width: 100%; height: 100%; }

.main-visual .mv-slider .mv-slide-img.mv01 .mv-ttl02 { color: #fff; }

.main-visual .mv-slider .mv-slide-img.mv03 .mv-ttl02 { color: #fff; }

.main-visual .mv-slider .mv-slide-img.mv04 .mv-ttl02 { color: #fff; }

.main-visual .mv-slider .slick-animated .mv-slide-img .pic { width: 100%; height: 100%; animation-timing-function: linear; -webkit-backface-visibility: hidden; backface-visibility: hidden; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .main-visual .mv-slider .slick-animated .mv-slide-img .pic { -webkit-animation-name: showZoom; animation-name: showZoom; -webkit-animation-duration: 10s; animation-duration: 10s; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .main-visual .mv-slider .slick-animated .mv-slide-img .pic { -webkit-animation-name: showZoom2; animation-name: showZoom2; -webkit-animation-duration: 6s; animation-duration: 6s; } }

/* ========== end △ */
.main-visual .mv-slider .slick-animated .mv-ttl01 { opacity: 1; transform: translateY(0px); transition-delay: 0.5s; }

.main-visual .mv-slider .slick-animated .mv-ttl02 { opacity: 1; transform: translateY(0px); transition-delay: 1.2s; }

/* ▽ PC-TAB layout ========== */
/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .main-visual .mv-slider .mv-ttl { left: 15px; right: 15px; top: 53%; }
  .main-visual .mv-slider .mv-ttl01 { left: 15px; right: 15px; font-size: 40px; line-height: 1.2; bottom: 45%; }
  .main-visual .mv-slider .mv-ttl02 { font-size: 17px; line-height: 1.76471; letter-spacing: 0em; margin: 20px 0 0; left: 15px; right: 15px; bottom: calc(45% - 50px); } }

/* ========== end △ */
.sec01 { padding: 85px 0 125px; position: relative; }

.sec01 .rows .c-ttl01 { margin-bottom: 40px; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec01 .rows { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec01 .rows .col { width: 48%; margin-right: 4%; }
  .sec01 .rows .col:nth-child(2n) { margin-right: 0; }
  .sec01 .rows .col.col01 .c-ttl01 { margin-bottom: 25px; } }

/* ========== end △ */
.sec01 .topics-box ul li .date { color: #1d4394; font-size: 16px; line-height: 1.5625; letter-spacing: 0.1em; font-weight: 400; width: 110px; }

.sec01 .topics-box ul li .ttl { color: #000000; font-size: 16px; line-height: 1.5625; letter-spacing: 0.1em; font-weight: 400; width: calc(100% - 110px); -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.sec01 .topics-box ul li a { text-decoration: none; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 23px 0 23px; position: relative; }

.sec01 .topics-box ul li a:before { position: absolute; content: ""; left: 0; bottom: 0; height: 1px; width: 100%; background: #1d4394; z-index: 3; transform: scaleX(0); -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; transform-origin: 0; }

.sec01 .topics-box ul li a:after { position: absolute; content: ""; left: 0; bottom: 0; height: 1px; width: 100%; background: #b1b2b4; z-index: 1; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec01 .topics-box ul li a:hover:before { transform: scaleX(1); }
  .sec01 .topics-box ul li a:hover .ttl { color: #1d4394; } }

/* ========== end △ */
.sec01 .btn01 { margin: 33px 0 0; text-align: right; }

/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec01 { padding: 30px 0 15px; }
  .sec01 .rows .c-ttl01 { margin-bottom: 20px; }
  .sec01 .rows .col { margin-bottom: 25px; }
  .sec01 .topics-box ul li .date { font-size: 15px; line-height: 1.46667; width: 95px; }
  .sec01 .topics-box ul li .ttl { font-size: 15px; line-height: 1.46667; width: calc(100% - 95px); }
  .sec01 .topics-box ul li a { padding: 12px 0 12px; }
  .sec01 .btn01 { margin: 20px 0 0; text-align: center; } }

/* ========== end △ */
.sec02 { background: #5890ab; padding: 108px 0 129px; position: relative; }

.sec02:before { position: absolute; content: ""; width: 800px; height: 477px; background: url(../images/bg01.png) no-repeat center center; background-size: 100% auto; left: 45%; top: 0; pointer-events: none; z-index: 2; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1299px) { .sec02:before { width: 530px; height: 310px; } }

/* ========== end △ */
.sec02 .block { position: relative; z-index: 22; }

.sec02 .block .c-txt01 { color: #fff; }

.sec02 .block .btn01 { margin: 78px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec02 .block { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; -moz-justify-content: space-between; justify-content: space-between; margin: 65px 0 0; }
  .sec02 .block .block__left { width: 49%; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: end; -ms-flex-pack: end; -webkit-justify-content: flex-end; -moz-justify-content: flex-end; justify-content: flex-end; padding: 0 20px 0 20px; }
  .sec02 .block .block__left .box { max-width: 540px; padding-right: 40px; }
  .sec02 .block .block__ytb { width: 51%; padding-top: 19px; }
  .sec02 .block .block__ytb .ytb { position: relative; }
  .sec02 .block .block__ytb .ytb:before { display: block; content: " "; width: 100%; padding-top: 56.4%; }
  .sec02 .block .block__ytb .ytb > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }
  .sec02 .block .block__ytb .ytb iframe { display: block; object-fit: cover; position: absolute; left: 0; top: 0; width: 100%; height: 100%; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec02 { padding: 45px 0 45px; overflow: hidden; }
  .sec02:before { width: 220px; height: 150px; left: auto; right: 0; top: -25px; }
  .sec02 .block .btn01 { margin: 20px 0 0; text-align: center; }
  .sec02 .block .btn01 .c-btn01 { margin: 0 auto; }
  .sec02 .block .block__left { padding: 0 15px 0; }
  .sec02 .block .block__ytb { padding: 35px 15px 0; } }

/* ========== end △ */
.sec03 { background: #f6f6f6; padding: 119px 0 105px; position: relative; }

.sec03 .block { position: relative; z-index: 22; }

.sec03 .block .btn01 { margin: 24px 0 0; text-align: right; }

.sec03 .block__img .c-img { position: relative; border-radius: 10px; }

.sec03 .block__img .c-img:before { display: block; content: " "; width: 100%; padding-top: 89.17275%; }

.sec03 .block__img .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.sec03 .block__img .c-img img { border-radius: 10px; }

.sec03 .block__img .pic { width: 100%; height: 100%; opacity: 0; -webkit-transition: 0.6s ease all; -moz-transition: 0.6s ease all; -ms-transition: 0.6s ease all; -o-transition: 0.6s ease all; transition: 0.6s ease all; position: absolute; left: 0; top: 0; bottom: 0; right: 0; border-radius: 10px; }

.sec03 .block__img .pic.is-active { z-index: 2; }

.sec03 .block__img .pic.is-show { opacity: 1; z-index: 5; }

.sec03 .block .block__info .heading { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.sec03 .block .block__info .heading .num { color: #244292; font-size: 24px; line-height: 1.66667; letter-spacing: 0.05em; font-weight: 300; width: 61px; }

.sec03 .block .block__info .heading .ttl { color: #244292; font-size: 30px; line-height: 1.33333; letter-spacing: 0.05em; font-weight: 300; width: calc(100% - 61px); }

.sec03 .block .block__info .drop {
  display: block;

  @media (min-width: 768px) {
    display: none;
  }
}

.sec03 .block .block__info ul li { cursor: pointer; border-bottom: 1px solid #c5c5c5; }

.sec03 .block .block__info ul li a {
  text-decoration: none;
  display: block;
  padding: 15px 0 15px;

  @media (any-hover:hover) {

    &:hover {

      .c-link01::after {
        background: #1e3e96 url(../common_img/ico_arr01.png) no-repeat center center;
      }
    }
  }

  @media (min-width: 768px) {
    padding: 35px 0 35px;
  }

}

.sec03 .block .block__info ul li .drop { margin: 19px 0 0; }

.sec03 .block .block__info ul li.is-show .drop { display: block; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec03 .block { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; -moz-justify-content: space-between; justify-content: space-between; margin: 61px 0 0; }
  .sec03 .block .block__info { order: 2; width: 57.5%; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: start; -ms-flex-pack: start; -webkit-justify-content: flex-start; -moz-justify-content: flex-start; justify-content: flex-start; padding: 0 20px 80px 80px; }
  .sec03 .block .block__info .box { width: 100%; max-width: 635px; }
  .sec03 .block .block__img { order: 1; width: 42.5%; padding-top: 33px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec03 { padding: 45px 15px 45px; }
  .sec03 .block .btn01 { margin: 10px 0 0; }
  .sec03 .block__img { text-align: center; margin: 25px 0 0; }
  .sec03 .block__img .c-img { position: relative; }
  .sec03 .block__img .c-img:before { display: block; content: " "; width: 100%; padding-top: 58.66667%; }
  .sec03 .block__img .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }
  .sec03 .block .block__info .heading .num { font-size: 19px; line-height: 1.57895; width: 40px; }
  .sec03 .block .block__info .heading .ttl { font-size: 21px; line-height: 1.42857; width: calc(100% - 40px); }
  .sec03 .block .block__info ul li { padding: 15px 0 15px; }
  .sec03 .block .block__info ul li .c-txt01 { margin: 10px 0 0; } }

/* ========== end △ */
.sec04 { overflow: hidden; position: relative; background: #fff; padding: 0 0 103px; }

.sec04 .container { position: relative; padding: 63px 20px 0; max-width: 1110px; }

.sec04 .container:before { position: absolute; content: ""; height: 425px; width: 50vw; background: #f6f6f6; right: 100%; top: 0; pointer-events: none; z-index: 2; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.sec04 .c-ttl01 { margin: 0 0 0 40px; }

.sec04 .lst-sv { margin: 67px 0 0 40px; }

.sec04 .lst-sv .item { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.sec04 .lst-sv .item__ttl { font-size: 24px; line-height: 1.25; letter-spacing: 0.025em; font-weight: 300; }

.sec04 .lst-sv .item__img { width: 180px; }

.sec04 .lst-sv .item__img .c-img { position: relative; }

.sec04 .lst-sv .item__img .c-img:before { display: block; content: " "; width: 100%; padding-top: 72.22222%; }

.sec04 .lst-sv .item__img .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.sec04 .lst-sv .item__info { width: calc(100% - 180px); padding: 0 0 0 28px; }

.sec04 .lst-sv .item .c-txt01 { margin: 10px 0 0; }

.sec04 .lst-sv .item .c-txt01 p { font-size: 16px; line-height: 1.5; letter-spacing: 0em; }

.sec04 .lst-sv .item .btn01 { text-align: right; margin: 18px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec04 .lst-sv { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }
  .sec04 .lst-sv .item { width: 48%; margin: 0 4% 0 0; }
  .sec04 .lst-sv .item:nth-child(2n) { margin-right: 0; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec04 { padding: 0 0 15px; }
  .sec04 .container { padding: 25px 15px 0; }
  .sec04 .container:before { height: 425px; width: 50vw; }
  .sec04 .c-ttl01 { margin: 0px; }
  .sec04 .lst-sv { margin: 25px 0 0 0; }
  .sec04 .lst-sv .item { width: 100%; margin-bottom: 25px; }
  .sec04 .lst-sv .item__ttl { font-size: 18px; line-height: 1.38889; }
  .sec04 .lst-sv .item__img { width: 38%; }
  .sec04 .lst-sv .item__info { width: 58%; padding: 0 0 0 10px; }
  .sec04 .lst-sv .item .c-txt01 { margin: 7px 0 0; }
  .sec04 .lst-sv .item .c-txt01 p { font-size: 13px; line-height: 1.69231; }
  .sec04 .lst-sv .item .btn01 { margin: 5px 0 0; } }

/* ========== end △ */
.sec05 { overflow: hidden; position: relative; background: #fff; padding: 118px 0 65px; }

.sec05 .container { max-width: 1200px; }

.sec05 .sec-slider { position: relative; margin: -77px 0 0 -579px; transform: translateX(50vw); overflow: hidden; padding: 0; }

.sec05 .btn01 {
  margin-top: 20px;
}

  @media (min-width: 768px) {
    .sec05 .cs_flex{
      display: flex;
      justify-content: space-between;
    }
    .sec05 .btn01 {
    margin-top: 0;
    width: 30%;
    }
  }

  .c-btn01 {
    margin-left: auto;
    margin-right: auto;
  }

/* ▽ PC-TAB layout ========== */
@media only screen and (min-width: 768px) and (max-width: 1340px) { .sec05 .sec-slider { margin: 79px 0 0 20px; transform: translateX(0vw); } }

/* ========== end △ */
.sec05 .lst-case .slick-track {
  display: flex;
}

.sec05 .lst-case .slick-track .slick-slide {
  height: auto;
}

.sec05 .lst-case .slick-track .slick-slide > div {
  height: 100%;
}

.sec05 .lst-case .item { 
  height: 100%;
  padding: 10px;
 }

.sec05 .lst-case .item__cats { margin-bottom: 20px; }

.sec05 .lst-case .item__cats span { display: inline-block; vertical-align: top; background: #d1e4f2; text-align: center; font-size: 16px; line-height: 1.375; letter-spacing: 0.1em; font-weight: bold; min-width: 125px; padding: 4px 4px 4px; }

.sec05 .lst-case .item__cats span.cat02 { background: #bdc4d3; }

.sec05 .lst-case .item__ttl { font-size: 18px; line-height: 1.33333; letter-spacing: 0.1em; font-weight: bold; margin-bottom: 21px; }

.sec05 .lst-case .item .c-txt01 { margin: 10px 0 0; }

.sec05 .lst-case .item .c-txt01 p { font-size: 16px; line-height: 1.25; letter-spacing: 0.1em; }

.sec05 .lst-case .item a { 
  display: block; 
  height: 100%;
  background: #f2f2f2; 
  border-radius: 5px; 
  padding: 45px 25px 45px; 
  text-decoration: none; 
  -webkit-transition: 0.3s ease all; 
  -moz-transition: 0.3s ease all; 
  -ms-transition: 0.3s ease all; 
  -o-transition: 0.3s ease all; 
  transition: 0.3s ease all; 
}

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec05 .lst-case .item a:hover { opacity: 1; box-shadow: 3px 3px 10px rgba(0, 0, 0, 0.1); } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec05 { padding: 25px 0 25px; }
  .sec05 .sec-slider { margin: 0px 0 0 0; transform: translateX(0); }
  .sec05 .lst-case .item { padding: 7px; }
  .sec05 .lst-case .item__cats { margin-bottom: 10px; }
  .sec05 .lst-case .item__cats span { font-size: 14px; line-height: 1.42857; min-width: 95px; padding: 4px 4px 4px; }
  .sec05 .lst-case .item__ttl { font-size: 16px; line-height: 1.375; margin-bottom: 15px; }
  .sec05 .lst-case .item .c-txt01 { margin: 10px 0 0; }
  .sec05 .lst-case .item .c-txt01 p { font-size: 15px; line-height: 1.33333; }
  .sec05 .lst-case .item a { border-radius: 5px; padding: 25px 15px 25px; } }

/* ========== end △ */
.sec06 { position: relative; margin: 66px 0 75px; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; }

.sec06 .img01 { border-radius: 0 5px 5px 0; }

.sec06 .img01 .c-img { position: relative; border-radius: 0 5px 5px 0; }

.sec06 .img01 .c-img:before { display: block; content: " "; width: 100%; padding-top: 160.82474%; }

.sec06 .img01 .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.sec06 .img02 { border-radius: 5px 0 0 5px; }

.sec06 .img02 .c-img { position: relative; border-radius: 5px 0 0 5px; }

.sec06 .img02 .c-img:before { display: block; content: " "; width: 100%; padding-top: 160.82474%; }

.sec06 .img02 .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.sec06 .block { max-width: 793px; margin: 0 auto; padding: 108px 0 196px; }

.sec06 .btn01 { text-align: right; margin: 55px 8px 0 0; }

.sec06 .c-link02 { padding: 0 33px 0 68px; }

.sec06 .c-link02:before { position: absolute; content: ""; width: 52px; height: 52px; background: url(../common_img/logo01.png) no-repeat center center; background-size: 100% auto; left: 0; top: -13px; z-index: 3; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec06 { justify-content: space-between; align-items: center; }
  .sec06 .img01 { order: 1; width: calc(50vw - 474px); } }

@media only screen and (min-width: 768px) and (max-width: 1365px) { .sec06 .img01 { width: 20%; } }

@media print, screen and (min-width: 768px) { .sec06 .img02 { width: calc(50vw - 474px); order: 3; } }

@media only screen and (min-width: 768px) and (max-width: 1365px) { .sec06 .img02 { width: 20%; } }

@media print, screen and (min-width: 768px) { .sec06 .block { max-width: 833px; margin: 0 auto; padding: 0 20px; order: 2; } }

@media only screen and (min-width: 768px) and (max-width: 1365px) { .sec06 .block { width: 58%; } }

@media print, screen and (min-width: 768px) { .sec06 .block .c-ttl01 { margin-bottom: 64px; } }

@media only screen and (min-width: 768px) and (max-width: 1420px) { .sec06 .block .c-ttl01 { margin-bottom: 25px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec06 { margin: 25px 0 25px; }
  .sec06 .img01 { width: 50%; padding-right: 5px; }
  .sec06 .img02 { width: 50%; padding-left: 5px; }
  .sec06 .block { width: 100%; padding: 0 15px 30px; }
  .sec06 .btn01 { margin: 25px 0 0; }
  .sec06 .c-link02 { padding: 0 33px 0 68px; }
  .sec06 .c-link02:before { width: 52px; height: 52px; left: 0; top: -13px; } }

/* ========== end △ */
.sec07 { position: relative; padding: 55px 0 0; z-index: 331; }

.sec07 .block__img .c-img { position: relative; border-radius: 5px 0 0 5px; }

.sec07 .block__img .c-img:before { display: block; content: " "; width: 100%; padding-top: 72.72727%; }

.sec07 .block__img .c-img > .content { position: absolute; top: 0; left: 0; right: 0; bottom: 0; }

.sec07 .block .c-ttl01 .ttlen { display: block; margin: 0 0 37px; }

.sec07 .block .c-ttl01 .ttljp { display: block; }

.sec07 .block .btn01 { margin: 44px 0 0; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec07 .block { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; -webkit-box-pack: justify; -ms-flex-pack: justify; -webkit-justify-content: space-between; -moz-justify-content: space-between; justify-content: space-between; margin: 0; }
  .sec07 .block__info { order: 2; width: 55.5%; display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; padding: 0 20px 0 43px; }
  .sec07 .block__info .box { max-width: 670px; }
  .sec07 .block__img { width: 43%; order: 1; padding-top: 19px; }
  .sec07 .block__img .c-img { min-height: 600px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec07 { padding: 20px 0 0; }
  .sec07 .block { padding: 0 15px; }
  .sec07 .block__img { text-align: center; margin: 25px 0 0; }
  .sec07 .block__img .c-img { border-radius: 5px; }
  .sec07 .block .c-ttl01 .ttlen { margin: 0 0 10px; }
  .sec07 .block .btn01 { margin: 20px 0 0; text-align: center; }
  .sec07 .block .btn01 .c-btn01 { margin: 0 auto; } }

/* ========== end △ */
.sec08 { padding: 81px 0 117px; position: relative; }

.sec08:before { position: absolute; content: ""; left: 0; bottom: 0; top: -70px; right: 0; background: #f6f6f6; z-index: 1; pointer-events: none; }

.sec08 .lst01 { position: relative; z-index: 22; }

.sec08 .lst01 .item { border-radius: 5px; }

.sec08 .lst01 .item__img { position: absolute; left: 0; right: 0; top: 0; bottom: 0; border-radius: 5px; }

.sec08 .lst01 .item__img:before { position: absolute; content: ""; left: 0; bottom: 0; top: 0px; right: 0; background: rgba(0, 0, 0, 0.6); z-index: 2; border-radius: 5px; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.sec08 .lst01 .item__img .c-img { width: 100%; height: 100%; border-radius: 5px; }

.sec08 .lst01 .item__img .c-img img { border-radius: 5px; }

.sec08 .lst01 .item__info { position: relative; z-index: 22; }

.sec08 .lst01 .item__info .item__ttl { color: #fff; font-size: 30px; line-height: 0.66667; letter-spacing: 0.1em; font-weight: 300; margin-bottom: 34px; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.sec08 .lst01 .item__info .item__desc { color: #fff; margin-bottom: 28px; -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; }

.sec08 .lst01 .item__info .item__desc p { color: #fff; }

.sec08 .lst01 .item__info .btn01 { text-align: right; }

.sec08 .lst01 .item__info .btn01 .c-link01 { color: #fff; }

.sec08 .lst01 .item a { -webkit-transition: 0.3s ease all; -moz-transition: 0.3s ease all; -ms-transition: 0.3s ease all; -o-transition: 0.3s ease all; transition: 0.3s ease all; border-radius: 5px; display: block; position: relative; padding: 95px 49px 75px; text-decoration: none; }

/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec08 .lst01 .item a:hover .item__img:before { background: rgba(0, 0, 0, 0.3); }
  .sec08 .lst01 .item a:hover .item__info .btn01 .c-link01:after { background: #1e3e96 url(../common_img/ico_arr01.png) no-repeat center center; background-size: 11px auto; } }

/* ========== end △ */
/* ▽ PC-TAB layout ========== */
@media print, screen and (min-width: 768px) { .sec08 .lst01 { display: -webkit-box; display: -webkit-flex; display: -moz-flex; display: -ms-flexbox; display: flex; -webkit-flex-wrap: wrap; -moz-flex-wrap: wrap; -ms-flex-wrap: wrap; flex-wrap: wrap; max-width: 1150px; margin: 0 auto; }
  .sec08 .lst01 .item { width: 50%; padding: 0 20px; } }

/* ========== end △ */
/* ▽ SP layout ========== */
@media only screen and (max-width: 767px) { .sec08 { padding: 35px 0 25px; }
  .sec08:before { top: -70px; }
  .sec08 .lst01 .item { margin-bottom: 25px; }
  .sec08 .lst01 .item__img { text-align: center; }
  .sec08 .lst01 .item__info .item__ttl { font-size: 26px; line-height: 1.15385; margin-bottom: 25px; }
  .sec08 .lst01 .item__info .item__desc { margin-bottom: 15px; }
  .sec08 .lst01 .item__info .btn01 { text-align: right; }
  .sec08 .lst01 .item a { padding: 25px 15px 25px; } }

/* ========== end △ */

/*# sourceMappingURL=maps/top.css.map */
