@charset "UTF-8";
.c5-container {
  width: 100%;
  overflow-x: hidden;
  background: #333333;
  color: #FFFFFF;
  font-size: 16px;
  line-height: 2;
}
@media only screen and (max-width: 766px) {
  .c5-container {
    font-size: clamp(14px, 3.7333333333vw, 21px);
    line-height: 1.8;
  }
}
.c5-container > .c5-section01:last-of-type {
  margin-bottom: 180px;
}
@media only screen and (max-width: 766px) {
  .c5-container > .c5-section01:last-of-type {
    margin-bottom: 32vw;
  }
}

img {
  max-width: 100%;
  vertical-align: bottom;
  height: auto;
}

@media only screen and (min-width: 767px) {
  .c5-sp {
    display: none !important;
  }
}

@media only screen and (max-width: 766px) {
  .c5-pc {
    display: none !important;
  }
}

.c5-inner {
  max-width: 1140px;
  box-sizing: content-box;
  margin: 0 auto;
  padding: 0 30px;
}
.c5-inner > *:first-child {
  margin-top: 0;
}
.c5-inner > *:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 766px) {
  .c5-inner {
    padding: 0 20px;
  }
}

.c5-mv {
  text-align: center;
  margin: 0;
}
@media only screen and (max-width: 1919px) {
  .c5-mv {
    display: flex;
    justify-content: center;
  }
}
@media only screen and (max-width: 766px) {
  .c5-mv {
    margin-bottom: 2.6666666667vw;
  }
}
.c5-mv img {
  width: -webkit-max-content;
  width: max-content;
  height: auto;
  max-width: none;
}
@media only screen and (min-width: 1920px) {
  .c5-mv img {
    width: 100%;
  }
}
@media only screen and (max-width: 766px) {
  .c5-mv img {
    width: 100%;
  }
}

.c5-section01 {
  margin: 0 0 150px;
}
@media only screen and (max-width: 766px) {
  .c5-section01 {
    margin-bottom: 21.3333333333vw;
  }
}

.c5-lead01 {
  text-align: center;
  margin: 0 0 40px;
}
@media only screen and (max-width: 766px) {
  .c5-lead01 {
    margin-bottom: 10.6666666667vw;
  }
}

.c5-lead02 {
  text-align: center;
  margin: 0 0 40px;
}
@media only screen and (max-width: 766px) {
  .c5-lead02 {
    margin-bottom: 10.6666666667vw;
    text-align: left;
  }
}

.c5-em01 {
  color: #FF5252;
  font-weight: 500;
}

.c5-note01 {
  font-size: 14px;
  line-height: 2;
  font-weight: 200;
}
@media only screen and (max-width: 766px) {
  .c5-note01 {
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}

.c5-title01 {
  min-height: 177px;
  display: flex;
  justify-content: center;
  align-items: center;
  font-size: 32px;
  font-weight: bold;
  line-height: 1.6;
  background: url(../images/bg_title01.png) center center no-repeat;
  background-size: 100% 100%;
  text-align: center;
  margin: 0 auto 100px;
  padding: 10px 30px;
  box-sizing: border-box;
}
@media only screen and (max-width: 766px) {
  .c5-title01 {
    background: url(../images/bg_title01_sp.png) center center no-repeat;
    font-size: clamp(20px, 5.3333333333vw, 30px);
    line-height: 1.8;
    padding: 8vw 4vw;
    max-width: 89.3333333333vw;
    margin-bottom: 21.3333333333vw;
  }
}

.c5-title02 {
  text-align: center;
  font-size: 28px;
  line-height: 1.2;
  font-weight: bold;
  margin: 0 0 60px;
}
@media only screen and (max-width: 766px) {
  .c5-title02 {
    font-size: clamp(20px, 5.3333333333vw, 30px);
    line-height: 1.8;
    margin-bottom: 10.6666666667vw;
  }
}
.c5-title02 > span {
  display: inline-block;
  padding: 0 28px;
  position: relative;
}
@media only screen and (max-width: 766px) {
  .c5-title02 > span {
    padding: 0 9.6vw;
  }
}
@media only screen and (max-width: 639px) {
  .c5-title02 > span {
    display: block;
  }
}
.c5-title02 > span:before, .c5-title02 > span:after {
  content: "";
  display: block;
  width: 103px;
  height: 1px;
  background: linear-gradient(90deg, rgb(255, 255, 255) 0%, rgba(255, 255, 255, 0) 100%);
  position: absolute;
  top: 50%;
}
@media only screen and (max-width: 766px) {
  .c5-title02 > span:before, .c5-title02 > span:after {
    width: 6.9333333333vw;
  }
}
.c5-title02 > span:before {
  left: 0;
  -webkit-transform: translate(-100%, -50%) rotate(180deg);
          transform: translate(-100%, -50%) rotate(180deg);
}
@media only screen and (max-width: 766px) {
  .c5-title02 > span:before {
    left: 0;
    -webkit-transform: translate(0, -50%) rotate(180deg);
            transform: translate(0, -50%) rotate(180deg);
  }
}
.c5-title02 > span:after {
  right: 0;
  -webkit-transform: translate(100%, -50%);
          transform: translate(100%, -50%);
}
@media only screen and (max-width: 766px) {
  .c5-title02 > span:after {
    right: 0;
    -webkit-transform: translate(0, -50%);
            transform: translate(0, -50%);
  }
}

.c5-figure01 {
  margin: 0 0 65px;
  text-align: center;
}
.c5-figure01 img {
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.4);
  border-radius: 10px;
  overflow: hidden;
}
@media only screen and (max-width: 766px) {
  .c5-figure01 img {
    border-radius: 1.6vw;
    box-shadow: 0 0 13.3333333333vw 0 rgba(0, 0, 0, 0.4);
  }
}
.c5-figure01 img + figcaption {
  margin-top: 25px;
  font-size: 14px;
  text-align: center;
}
@media only screen and (max-width: 766px) {
  .c5-figure01 img + figcaption {
    margin-top: 4vw;
    font-size: clamp(13px, 3.4666666667vw, 19.5px);
  }
}

.c5-figure02 {
  margin: 0 auto 65px;
  /* position: relative; */
  text-align: center;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.4);
}
@media only screen and (max-width: 766px) {
  .c5-figure02 {
    display: table;
    width: 1%;
    white-space: nowrap;
    box-shadow: 0 0 13.3333333333vw 0 rgba(0, 0, 0, 0.4);
  }
}
@media only screen and (max-width: 639px) {
  .c5-figure02 {
    width: 100%;
  }
}
.c5-figure02 img {
  border-radius: 10px 10px 0 0;
  overflow: hidden;
}
@media only screen and (max-width: 766px) {
  .c5-figure02 img {
    max-width: none;
    border-radius: 1.6vw 1.6vw 0 0;
  }
}
@media only screen and (max-width: 766px) and (max-width: 639px) {
  .c5-figure02 img {
    width: 100%;
  }
}
.c5-figure02 img + figcaption {
  /* position: absolute; */
  /* bottom: -1px; */
  /* left: 0; */
  width: 100%;
  min-height: 60px;
  background: linear-gradient(90deg, rgb(38, 38, 38) 0%, rgb(0, 0, 0) 100%);
  color: white;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.225;
  display: flex;
  justify-content: center;
  align-items: center;
  padding: 10px 20px;
  box-sizing: border-box;
  border-radius: 0 0 10px 10px;
}
@media only screen and (max-width: 766px) {
  .c5-figure02 img + figcaption {
    border-radius: 0 0 1.6vw 1.6vw;
    padding: 2.6666666667vw 5.3333333333vw;
    min-height: clamp(48px, 12.8vw, 72px);
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}

.c5-caseBlock01 {
  text-align: center;
  display: table;
  margin: 80px auto 0;
}
@media only screen and (max-width: 766px) {
  .c5-caseBlock01 {
    display: block;
    margin-top: 16vw;
  }
}
.c5-caseBlock01__title {
  margin: 0 0 40px;
  font-size: 24px;
  font-weight: bold;
  line-height: 1.2;
}
@media only screen and (max-width: 766px) {
  .c5-caseBlock01__title {
    font-size: clamp(18px, 4.8vw, 27px);
    margin-bottom: 7.4666666667vw;
  }
}

.c5-caseRow01 {
  justify-content: center;
}
.c5-caseRow01 .c5-row01__col:only-child {
  margin: 0 auto;
}
@media only screen and (min-width: 767px) {
  .c5-caseRow01 .c5-row01__col:only-child {
    max-width: 547px;
    width: 100%;
  }
}

.c5-caseBox01 {
  margin: 0 auto;
}
.c5-caseBox01__figure {
  margin-bottom: 25px;
}
@media only screen and (max-width: 766px) {
  .c5-caseBox01__figure {
    margin-bottom: 4vw;
  }
}
.c5-caseBox01__figure img {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.4);
}
@media only screen and (max-width: 766px) {
  .c5-caseBox01__figure img {
    border-radius: 1.6vw;
    box-shadow: 0 0 13.3333333333vw 0 rgba(0, 0, 0, 0.4);
  }
}
.c5-caseBox01__body {
  margin-bottom: 25px;
}
@media only screen and (max-width: 766px) {
  .c5-caseBox01__body {
    margin-bottom: 6.4vw;
  }
}
.c5-caseBox01__body p {
  font-size: 16px;
  line-height: 1.225;
}
@media only screen and (max-width: 766px) {
  .c5-caseBox01__body p {
    font-size: clamp(14px, 3.7333333333vw, 21px);
  }
}
.c5-caseBox01__btns {
  display: flex;
  justify-content: center;
}

.c5-btn01 {
  min-width: 250px;
  min-height: 48px;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  text-decoration: none !important;
  font-size: 14px;
  line-height: 1.8;
  border-radius: 3px;
  background: linear-gradient(180deg, rgb(31, 90, 120) 0%, rgb(24, 142, 159) 100%);
  color: white !important;
  transition: all 0.4s !important;
  /* will-change: background; */
  padding: 10px 25px;
  box-sizing: border-box;
  position: relative;
  overflow: hidden;
}
.c5-btn01:before {
  content: "";
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: linear-gradient(180deg, rgb(18, 132, 158) 0%, rgb(13, 172, 192) 100%);
  opacity: 0;
  transition: opacity 0.5s ease;
  z-index: 0;
}
.c5-btn01 img, .c5-btn01 span {
  text-align: center;
  position: relative;
  z-index: 1;
}
@media only screen and (min-width: 767px) {
  .c5-btn01 {
    min-width: 250px;
  }
}
@media only screen and (max-width: 766px) {
  .c5-btn01 {
    font-size: clamp(14px, 3.7333333333vw, 21px);
    min-width: 66.6666666667vw;
    min-height: 12.8vw;
    border-radius: 0.8vw;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c5-btn01:hover, .c5-btn01:focus {
    /* background: linear-gradient(180deg, rgba(18, 132, 158, 1) 0%, rgba(13, 172, 192, 1) 100%); */
  }
  .c5-btn01:hover:before, .c5-btn01:focus:before {
    opacity: 1;
  }
}
@media (hover: none) and (pointer: coarse) {
  .c5-btn01:active, .c5-btn01:focus {
    /* background: linear-gradient(180deg, rgba(18, 132, 158, 1) 0%, rgba(13, 172, 192, 1) 100%); */
  }
  .c5-btn01:active:before, .c5-btn01:focus:before {
    opacity: 1;
  }
}

.c5-iconAd {
  background: #FF5252;
  border-radius: 2px;
  padding: 4px 6px 2px;
  line-height: 1;
  font-size: 0.85em;
  letter-spacing: 0.1em;
}

/*===== レイアウト =====*/
/* マルチカラム */
.c5-row01 {
  display: flex;
  flex-wrap: wrap;
  grid-gap: 46px;
  margin-bottom: 65px;
}
@media only screen and (max-width: 766px) {
  .c5-row01 {
    grid-gap: 7.4666666667vw;
    margin-bottom: 10.6666666667vw;
  }
}
.c5-row01__col > *:last-child {
  margin-bottom: 0;
}
@media only screen and (max-width: 766px) {
  .c5-row01__col {
    width: 100%;
  }
}
@media only screen and (min-width: 767px) {
  .c5-row01__col--1 {
    width: calc(100% / 12 * 1 - 46px / 12 * 11);
  }
  .c5-row01__col--2 {
    width: calc(100% / 12 * 2 - 46px / 12 * 10);
  }
  .c5-row01__col--3 {
    width: calc(100% / 12 * 3 - 46px / 12 * 9);
  }
  .c5-row01__col--4 {
    width: calc(100% / 12 * 4 - 46px / 12 * 8);
  }
  .c5-row01__col--5 {
    width: calc(100% / 12 * 5 - 46px / 12 * 7);
  }
  .c5-row01__col--6 {
    width: calc(100% / 12 * 6 - 46px / 12 * 6);
  }
  .c5-row01__col--7 {
    width: calc(100% / 12 * 7 - 46px / 12 * 5);
  }
  .c5-row01__col--8 {
    width: calc(100% / 12 * 8 - 46px / 12 * 4);
  }
  .c5-row01__col--9 {
    width: calc(100% / 12 * 9 - 46px / 12 * 3);
  }
  .c5-row01__col--10 {
    width: calc(100% / 12 * 10 - 46px / 12 * 2);
  }
  .c5-row01__col--11 {
    width: calc(100% / 12 * 11 - 46px / 12 * 1);
  }
  .c5-row01__col--12 {
    width: calc(100% / 12 * 12 - 46px / 12 * 0);
  }
}

.c5-card01 {
  margin-bottom: 120px;
}
@media only screen and (min-width: 767px) {
  .c5-card01 {
    display: flex;
    flex-direction: row;
    grid-gap: 46px;
  }
}
.c5-card01__body {
  flex: 1;
  padding: 16px 0 0;
}
.c5-card01__body .c5-title02 {
  margin: 0 0 3.2rem;
  line-height: 1.5;
}
.c5-card01__figure {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  grid-gap: 16px;
}
@media only screen and (min-width: 767px) {
  .c5-card01__figure {
    max-width: calc(50% - 23px);
  }
}
@media only screen and (max-width: 766px) {
  .c5-card01__figure {
    flex-direction: column;
  }
}
.c5-card01__figure img {
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.4);
}
.c5-card01__title {
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin: 0 0 40px;
}
.c5-card01__btns {
  margin-top: 25px;
}
@media only screen and (min-width: 767px) {
  .c5-card01--rtl {
    flex-direction: row-reverse;
  }
}

.c5-card02 {
  display: grid;
  grid-column-gap: 46px;
  margin-bottom: 120px;
}
@media only screen and (min-width: 767px) {
  .c5-card02 {
    grid-template-areas: "title figure" "body figure";
    grid-template-columns: auto 1fr; /* figureは自動幅、titleとbodyは残りの幅 */
    grid-template-rows: auto 1fr; /* titleは内容に応じた高さ、bodyは残りの高さ */
  }
}
@media only screen and (max-width: 766px) {
  .c5-card02 {
    display: flex;
    flex-direction: column;
    margin-bottom: 19.2vw;
  }
}
@media only screen and (min-width: 767px) {
  .c5-card02--rtl {
    grid-template-areas: "figure title" "figure body";
  }
}
.c5-card02__title {
  padding: 16px 0 0;
  font-size: 20px;
  line-height: 1.4;
  font-weight: bold;
  margin: 0 0 40px;
  grid-area: title;
}
@media only screen and (max-width: 766px) {
  .c5-card02__title {
    font-size: clamp(16px, 4.2666666667vw, 24px);
    line-height: 1.75;
    text-align: center;
    padding-top: 0;
    margin-bottom: 4.2666666667vw;
  }
}
.c5-card02__body {
  grid-area: body;
  flex: 1;
}
.c5-card02__figure {
  grid-area: figure;
  display: inline-flex;
  justify-content: center;
  align-items: flex-start;
  grid-gap: 16px;
  text-align: center;
}
@media only screen and (max-width: 766px) {
  .c5-card02__figure {
    flex-direction: column;
    align-items: center;
    margin-bottom: 5.3333333333vw;
    grid-gap: 4.2666666667vw;
  }
}
.c5-card02__figure img {
  background: yellow;
  overflow: hidden;
  border-radius: 10px;
  box-shadow: 0 0 50px 0 rgba(0, 0, 0, 0.4);
}
@media only screen and (min-width: 767px) {
  .c5-card02__figure img {
    max-width: calc(46vw - 23px);
  }
}
.c5-card02__btns {
  margin-top: 25px;
  text-align: center;
}
@media only screen and (max-width: 766px) {
  .c5-card02__btns {
    margin-top: 6.4vw;
  }
}

/*===== ボックス =====*/
div[class*=__body] > *:first-child {
  margin-top: 0;
}
div[class*=__body] > *:last-child {
  margin-bottom: 0;
}

.c5-stickyBlock01 {
  background: rgba(0, 0, 0, 0.5);
  padding: 22px 0;
  box-sizing: border-box;
  z-index: 100;
}
.c5-stickyBlock01__inner {
  display: flex;
  justify-content: center;
  grid-gap: 30px;
}
@media only screen and (max-width: 766px) {
  .c5-stickyBlock01__inner {
    flex-direction: column;
    grid-gap: 4vw;
  }
}
.c5-stickyBlock01__btn {
  min-height: 65px;
  border-radius: 3px;
  background: white;
  font-size: 16px;
  font-weight: bold;
  line-height: 1.5555555556;
  color: black !important;
  padding: 10px 20px;
  text-decoration: none !important;
  display: inline-flex;
  justify-content: center;
  align-items: center;
  box-sizing: border-box;
  text-align: center;
  transition: background 0.4s !important;
}
.c5-stickyBlock01__btn span {
  text-align: center;
}
@media only screen and (min-width: 767px) {
  .c5-stickyBlock01__btn {
    width: 340px;
  }
}
@media only screen and (max-width: 766px) {
  .c5-stickyBlock01__btn {
    font-size: clamp(15.8px, 4.2133333333vw, 23.7px);
    width: 85.3333333333vw;
    min-height: 13.3333333333vw;
    border-radius: 1.6vw;
    margin: 0 auto;
  }
}
@media (hover: hover) and (pointer: fine) {
  .c5-stickyBlock01__btn:hover, .c5-stickyBlock01__btn:focus {
    background: rgba(255, 255, 255, 0.6);
    color: inherit;
  }
}
@media (hover: none) and (pointer: coarse) {
  .c5-stickyBlock01__btn:active, .c5-stickyBlock01__btn:focus {
    background: rgba(255, 255, 255, 0.6);
    color: inherit;
  }
}
.c5-stickyBlock01__btn--contact {
  background: #D24615;
  color: white !important;
}
@media (hover: hover) and (pointer: fine) {
  .c5-stickyBlock01__btn--contact:hover, .c5-stickyBlock01__btn--contact:focus {
    background: rgba(210, 70, 21, 0.6);
    color: white;
  }
}
@media (hover: none) and (pointer: coarse) {
  .c5-stickyBlock01__btn--contact:active, .c5-stickyBlock01__btn--contact:focus {
    background: rgba(210, 70, 21, 0.6);
    color: white;
  }
}
@media only screen and (min-width: 767px) {
  .c5-stickyBlock01 {
    transition: -webkit-transform 0.4s;
    transition: transform 0.4s;
    transition: transform 0.4s, -webkit-transform 0.4s;
  }
  .c5-stickyBlock01.is-fixed {
    position: fixed;
    bottom: 0;
    left: 0;
    width: 100%;
    -webkit-transform: translateY(110%);
            transform: translateY(110%);
  }
  .c5-stickyBlock01.is-fixed.is-show {
    -webkit-transform: translateY(0);
            transform: translateY(0);
  }
}

.c5-wideVisual01 {
  margin-bottom: 150px;
  height: 523px;
  background-image: url("../images/subvisual_w1600.jpg");
  background-size: 1600px auto;
  background-repeat: no-repeat;
  background-position: center top;
  background-attachment: scroll;
}
@media only screen and (min-width: 1920px) {
  .c5-wideVisual01 {
    background-image: url("../images/subvisual_w1920.jpg");
    background-size: 100% auto;
  }
}
@media only screen and (max-width: 766px) {
  .c5-wideVisual01 {
    background-image: url("../images/subvisual_sp.jpg");
    height: 65.3333333333vw;
    background-size: cover;
    will-change: background-position;
    transition: background-position 0.001s;
    margin-bottom: 21.3333333333vw;
  }
}

.case-slider .splide__arrows button,
.case-slider .splide__pagination button {
  padding: 0;
  background: inherit;
  color: inherit;
}

.splide__container {
  box-sizing: border-box;
  position: relative;
}

.splide__list {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  display: flex;
  height: 100%;
  margin: 0 !important;
  padding: 0 !important;
  -webkit-transform-style: preserve-3d;
  transform-style: preserve-3d;
}

.splide.is-initialized:not(.is-active) .splide__list {
  display: block;
}

.splide__pagination {
  align-items: center;
  display: flex;
  flex-wrap: wrap;
  justify-content: center;
  margin: 0;
  pointer-events: none;
}

.splide__pagination li {
  display: inline-block;
  line-height: 1;
  list-style-type: none;
  margin: 0;
  pointer-events: auto;
}

.splide__progress__bar {
  width: 0;
}

.splide {
  position: relative;
  visibility: hidden;
}

.splide.is-initialized,
.splide.is-rendered {
  visibility: visible;
}

.splide__slide {
  -webkit-backface-visibility: hidden;
  backface-visibility: hidden;
  box-sizing: border-box;
  flex-shrink: 0;
  list-style-type: none !important;
  margin: 0;
  position: relative;
}

.splide__slide img {
  vertical-align: bottom;
}

.splide__slider {
  position: relative;
}

.splide__spinner {
  -webkit-animation: splide-loading 1s linear infinite;
  animation: splide-loading 1s linear infinite;
  border: 2px solid #999;
  border-left-color: transparent;
  border-radius: 50%;
  bottom: 0;
  contain: strict;
  display: inline-block;
  height: 20px;
  left: 0;
  margin: auto;
  position: absolute;
  right: 0;
  top: 0;
  width: 20px;
}

.splide__track {
  overflow: hidden;
  position: relative;
  z-index: 0;
}

@-webkit-keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
@keyframes splide-loading {
  0% {
    -webkit-transform: rotate(0);
    transform: rotate(0);
  }
  to {
    -webkit-transform: rotate(1turn);
    transform: rotate(1turn);
  }
}
.splide--draggable > .splide__slider > .splide__track,
.splide--draggable > .splide__track {
  -webkit-user-select: none;
  -ms-user-select: none;
  user-select: none;
}

.splide--fade > .splide__slider > .splide__track > .splide__list,
.splide--fade > .splide__track > .splide__list {
  display: block;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide,
.splide--fade > .splide__track > .splide__list > .splide__slide {
  left: 0;
  opacity: 0;
  position: absolute;
  top: 0;
  z-index: 0;
}

.splide--fade > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active,
.splide--fade > .splide__track > .splide__list > .splide__slide.is-active {
  opacity: 1;
  position: relative;
  z-index: 1;
}

.splide--rtl {
  direction: rtl;
}

.splide--ttb.is-active > .splide__slider > .splide__track > .splide__list,
.splide--ttb.is-active > .splide__track > .splide__list {
  display: block;
}

.splide__arrow {
  align-items: center;
  background: #ccc;
  border: 0;
  cursor: pointer;
  display: flex;
  height: 2em;
  justify-content: center;
  opacity: 0.8;
  padding: 0;
  position: absolute;
  top: 50%;
  -webkit-transform: translateY(-50%);
  transform: translateY(-50%);
  width: 2em;
  z-index: 1;
}

.splide__arrow svg {
  fill: #000;
  height: 1.2em;
  width: 1.2em;
}

.splide__arrow:hover {
  opacity: 0.9;
}

.splide__arrow--prev {
  left: 1em;
}

.splide__arrow--prev svg {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}

.splide__arrow--next {
  right: 1em;
}

.splide__pagination {
  bottom: 0.5em;
  left: 0;
  padding: 0 1em;
  position: absolute;
  right: 0;
  z-index: 1;
}

.case-slider button.splide__pagination__page {
  background: #ccc;
  border: 0;
  border-radius: 50%;
  display: inline-block;
  height: 8px;
  margin: 3px;
  opacity: 0.7;
  padding: 0;
  transition: -webkit-transform 0.2s linear;
  transition: transform 0.2s linear;
  transition: transform 0.2s linear, -webkit-transform 0.2s linear;
  width: 8px;
  transition: all 0.3s;
}

.case-slider button.splide__pagination__page.is-active {
  background: #fff;
  -webkit-transform: scale(1);
  transform: scale(1);
  opacity: 0.9;
}

.case-slider button.splide__pagination__page:hover {
  cursor: pointer;
  opacity: 0.9;
}

.splide__progress__bar {
  background: #ccc;
  height: 3px;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide,
.splide--nav > .splide__track > .splide__list > .splide__slide {
  border: 3px solid transparent;
  cursor: pointer;
}

.splide--nav > .splide__slider > .splide__track > .splide__list > .splide__slide.is-active,
.splide--nav > .splide__track > .splide__list > .splide__slide.is-active {
  border: 3px solid #000;
}

.splide--rtl > .splide__arrows .splide__arrow--prev,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev {
  left: auto;
  right: 1em;
}

.splide--rtl > .splide__arrows .splide__arrow--prev svg,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--prev svg {
  -webkit-transform: scaleX(1);
  transform: scaleX(1);
}

.splide--rtl > .splide__arrows .splide__arrow--next,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--next {
  left: 1em;
  right: auto;
}

.splide--rtl > .splide__arrows .splide__arrow--next svg,
.splide--rtl > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg,
.splide--rtl > .splide__track > .splide__arrows .splide__arrow--next svg {
  -webkit-transform: scaleX(-1);
  transform: scaleX(-1);
}

.splide--ttb > .splide__arrows .splide__arrow,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow {
  left: 50%;
  -webkit-transform: translate(-50%);
  transform: translate(-50%);
}

.splide--ttb > .splide__arrows .splide__arrow--prev,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev {
  top: 1em;
}

.splide--ttb > .splide__arrows .splide__arrow--prev svg,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--prev svg,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--prev svg {
  -webkit-transform: rotate(-90deg);
  transform: rotate(-90deg);
}

.splide--ttb > .splide__arrows .splide__arrow--next,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--next {
  bottom: 1em;
  top: auto;
}

.splide--ttb > .splide__arrows .splide__arrow--next svg,
.splide--ttb > .splide__slider > .splide__track > .splide__arrows .splide__arrow--next svg,
.splide--ttb > .splide__track > .splide__arrows .splide__arrow--next svg {
  -webkit-transform: rotate(90deg);
  transform: rotate(90deg);
}

.splide--ttb > .splide__pagination,
.splide--ttb > .splide__slider > .splide__pagination {
  bottom: 0;
  display: flex;
  flex-direction: column;
  left: auto;
  padding: 1em 0;
  right: 0.5em;
  top: 0;
}

.splide__pagination {
  position: static;
  padding-top: 40px;
  padding-top: 10.66667vw;
}

@media screen and (min-width: 640px) {
  .splide__pagination {
    padding-top: 40px;
    padding-top: 3.90625vw;
  }
}
@media screen and (min-width: 1025px) {
  .splide__pagination {
    padding-top: 40px;
    padding-top: 2.5vw;
  }
}
@media screen and (min-width: 1600px) {
  .splide__pagination {
    padding-top: 40px;
  }
}
.splide__pagination__page {
  background: #bcbccc;
  width: 8px;
  height: 8px;
}

.splide__pagination__page:hover,
.splide__pagination__page:focus {
  background: #2f353d;
}

.splide__pagination__page.is-active {
  background: #2f353d;
  -webkit-transform: scale(1);
  transform: scale(1);
}

.splide__arrow {
  width: 34px;
  width: 9.06667vw;
  top: 20vw;
  transition: opacity 0.3s !important;
}

.splide__arrow:disabled {
  opacity: 0;
  visibility: hidden;
}

.splide__arrow img {
  width: 100%;
}

@media screen and (min-width: 640px) {
  .splide__arrow {
    top: 8.4vw;
    width: 34px;
    width: 3.32031vw;
  }
}
@media screen and (min-width: 1025px) {
  .splide__arrow {
    top: 6.4vw;
    width: 34px;
    width: 2.125vw;
  }
}
@media screen and (min-width: 1600px) {
  .splide__arrow {
    top: 106px;
    width: 34px;
  }
}
.splide__arrow--prev {
  left: 0;
}

@media screen and (min-width: 640px) {
  .splide__arrow--prev {
    left: -17px;
    left: -1.66016vw;
  }
}
@media screen and (min-width: 1025px) {
  .splide__arrow--prev {
    left: -70px;
    left: -4.375vw;
  }
}
@media screen and (min-width: 1600px) {
  .splide__arrow--prev {
    left: -70px;
  }
}
.splide__arrow--next {
  right: 0;
}

@media screen and (min-width: 640px) {
  .splide__arrow--next {
    right: -17px;
    right: -1.66016vw;
  }
}
@media screen and (min-width: 1300px) {
  .splide__arrow--next {
    right: -70px;
    right: -4.375vw;
  }
}
@media screen and (min-width: 1600px) {
  .splide__arrow--next {
    right: -70px;
  }
}
.case-link {
  display: block;
  transition: opacity 0.3s !important;
}

.case-link:hover,
.case-link:focus {
  text-decoration: none;
  color: inherit;
}

.case-link:hover .imgbox,
.case-link:focus .imgbox {
  opacity: 0.7;
}

.case-slider .case-item .imgbox {
  width: 100%;
  transition: opacity 0.3s !important;
}

.case-slider .case-item .imgbox img {
  display: block;
  width: 100%;
}

.case-slider .case-item .textbox {
  padding-top: 20px;
  padding-top: 5.33333vw;
}
.case-slider .case-item .textbox-inner > *:last-child {
  margin-bottom: 0;
}

@media screen and (min-width: 640px) {
  .case-slider .case-item .textbox {
    padding-top: 25px;
    padding-top: 2.44141vw;
  }
}
@media screen and (min-width: 1025px) {
  .case-slider .case-item .textbox {
    padding-top: 25px;
    padding-top: 1.5625vw;
  }
}
@media screen and (min-width: 1600px) {
  .case-slider .case-item .textbox {
    margin-top: 25px;
  }
}
.case-slider .case-item .case-title {
  font-size: 13px;
  font-size: 3.46667vw;
  line-height: 1.53846;
}

@media screen and (min-width: 640px) {
  .case-slider .case-item .case-title {
    font-size: 14px;
    font-size: 1.36719vw;
    line-height: 1.42857;
  }
}
@media screen and (min-width: 1025px) {
  .case-slider .case-item .case-title {
    font-size: 14px;
    font-size: 0.875vw;
  }
}
@media screen and (min-width: 1600px) {
  .case-slider .case-item .case-title {
    font-size: 14px;
    font-size: 0.875rem;
  }
}
.case-slider .case-item .case-text {
  margin-top: 10px;
  margin-top: 2.66667vw;
  font-size: 13px;
  font-size: 3.46667vw;
  line-height: 1.53846;
}

@media screen and (min-width: 640px) {
  .case-slider .case-item .case-text {
    margin-top: 15px;
    margin-top: 1.46484vw;
    font-size: 14px;
    font-size: 1.36719vw;
    line-height: 1.42857;
  }
}
@media screen and (min-width: 1025px) {
  .case-slider .case-item .case-text {
    margin-top: 15px;
    margin-top: 0.9375vw;
    font-size: 14px;
    font-size: 0.875vw;
  }
}
@media screen and (min-width: 1600px) {
  .case-slider .case-item .case-text {
    margin-top: 15px;
    font-size: 14px;
    font-size: 0.875rem;
  }
}
@media only screen and (min-width: 767px) {
  .s5-returnToTop__inner1 {
    bottom: 80px;
    z-index: 100;
  }
}