@charset "UTF-8";
/* http://meyerweb.com/eric/tools/css/reset/
   v5.0.1 | 20191019
   License: none (public domain)
*/
html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, menu, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed,
figure, figcaption, footer, header, hgroup,
main, menu, nav, output, ruby, section, summary,
time, mark, audio, video {
  margin: 0;
  padding: 0;
  border: 0;
  font-size: 100%;
  font: inherit;
  vertical-align: baseline;
}

/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure,
footer, header, hgroup, main, menu, nav, section {
  display: block;
}

/* HTML5 hidden-attribute fix for newer browsers */
*[hidden] {
  display: none;
}

body {
  line-height: 1;
}

menu, ol, ul {
  list-style: none;
}

blockquote, q {
  quotes: none;
}

blockquote:before, blockquote:after,
q:before, q:after {
  content: "";
  content: none;
}

table {
  border-collapse: collapse;
  border-spacing: 0;
}

@font-face {
  font-family: "swiper-icons";
  src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA") format("woff");
  font-weight: 400;
  font-style: normal;
}
:root {
  --swiper-theme-color: #007aff;
}

.swiper {
  margin-left: auto;
  margin-right: auto;
  position: relative;
  overflow: hidden;
  list-style: none;
  padding: 0;
  /* Fix of Webkit flickering */
  z-index: 1;
}

.swiper-vertical > .swiper-wrapper {
  flex-direction: column;
}

.swiper-wrapper {
  position: relative;
  width: 100%;
  height: 100%;
  z-index: 1;
  display: flex;
  transition-property: transform;
  box-sizing: content-box;
}

.swiper-android .swiper-slide,
.swiper-wrapper {
  transform: translate3d(0px, 0, 0);
}

.swiper-pointer-events {
  touch-action: pan-y;
}
.swiper-pointer-events.swiper-vertical {
  touch-action: pan-x;
}

.swiper-slide {
  flex-shrink: 0;
  width: 100%;
  height: 100%;
  position: relative;
  transition-property: transform;
}

.swiper-slide-invisible-blank {
  visibility: hidden;
}

/* Auto Height */
.swiper-autoheight,
.swiper-autoheight .swiper-slide {
  height: auto;
}
.swiper-autoheight .swiper-wrapper {
  align-items: flex-start;
  transition-property: transform, height;
}

.swiper-backface-hidden .swiper-slide {
  transform: translateZ(0);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}

/* 3D Effects */
.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
  perspective: 1200px;
}
.swiper-3d .swiper-wrapper,
.swiper-3d .swiper-slide,
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom,
.swiper-3d .swiper-cube-shadow {
  transform-style: preserve-3d;
}
.swiper-3d .swiper-slide-shadow,
.swiper-3d .swiper-slide-shadow-left,
.swiper-3d .swiper-slide-shadow-right,
.swiper-3d .swiper-slide-shadow-top,
.swiper-3d .swiper-slide-shadow-bottom {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  pointer-events: none;
  z-index: 10;
}
.swiper-3d .swiper-slide-shadow {
  background: rgba(0, 0, 0, 0.15);
}
.swiper-3d .swiper-slide-shadow-left {
  background-image: linear-gradient(to left, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-right {
  background-image: linear-gradient(to right, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-top {
  background-image: linear-gradient(to top, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}
.swiper-3d .swiper-slide-shadow-bottom {
  background-image: linear-gradient(to bottom, rgba(0, 0, 0, 0.5), rgba(0, 0, 0, 0));
}

/* CSS Mode */
.swiper-css-mode > .swiper-wrapper {
  overflow: auto;
  scrollbar-width: none;
  /* For Firefox */
  -ms-overflow-style: none;
  /* For Internet Explorer and Edge */
}
.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
  display: none;
}
.swiper-css-mode > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: start start;
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: x mandatory;
      scroll-snap-type: x mandatory;
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
  -ms-scroll-snap-type: y mandatory;
      scroll-snap-type: y mandatory;
}

.swiper-centered > .swiper-wrapper::before {
  content: "";
  flex-shrink: 0;
  order: 9999;
}
.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-start: var(--swiper-centered-offset-before);
          margin-inline-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-horizontal > .swiper-wrapper::before {
  height: 100%;
  width: var(--swiper-centered-offset-after);
}
.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
  -webkit-margin-before: var(--swiper-centered-offset-before);
          margin-block-start: var(--swiper-centered-offset-before);
}
.swiper-centered.swiper-vertical > .swiper-wrapper::before {
  width: 100%;
  height: var(--swiper-centered-offset-after);
}
.swiper-centered > .swiper-wrapper > .swiper-slide {
  scroll-snap-align: center center;
}

html.has-scroll-smooth {
  overflow: hidden;
}
html.has-scroll-dragging {
  -webkit-user-select: none;
     -moz-user-select: none;
      -ms-user-select: none;
          user-select: none;
}

.has-scroll-smooth body {
  overflow: hidden;
}

.has-scroll-smooth [data-scroll-container] {
  min-height: 100vh;
}
[data-scroll-direction=horizontal] [data-scroll-container] {
  height: 100vh;
  display: inline-block;
  white-space: nowrap;
}

[data-scroll-direction=horizontal] [data-scroll-section] {
  display: inline-block;
  vertical-align: top;
  white-space: nowrap;
  height: 100%;
}

.c-scrollbar {
  position: absolute;
  right: 0;
  top: 0;
  width: 11px;
  height: 100%;
  transform-origin: center right;
  transition: transform 0.3s, opacity 0.3s;
  opacity: 0;
}
.c-scrollbar:hover {
  transform: scaleX(1.45);
}
.c-scrollbar:hover, .has-scroll-scrolling .c-scrollbar, .has-scroll-dragging .c-scrollbar {
  opacity: 1;
}
[data-scroll-direction=horizontal] .c-scrollbar {
  width: 100%;
  height: 10px;
  top: auto;
  bottom: 0;
  transform: scaleY(1);
}
[data-scroll-direction=horizontal] .c-scrollbar:hover {
  transform: scaleY(1.3);
}

.c-scrollbar_thumb {
  position: absolute;
  top: 0;
  right: 0;
  background-color: black;
  opacity: 0.5;
  width: 7px;
  border-radius: 10px;
  margin: 2px;
  cursor: -webkit-grab;
  cursor: grab;
}
.has-scroll-dragging .c-scrollbar_thumb {
  cursor: -webkit-grabbing;
  cursor: grabbing;
}
[data-scroll-direction=horizontal] .c-scrollbar_thumb {
  right: auto;
  bottom: 0;
}

* {
  box-sizing: border-box;
}

/* break points */
@-webkit-keyframes MOVE_LEFT_TO_RIGHT {
  0% {
    transform: translateX(0);
  }
  49% {
    transform: translateX(5px);
    opacity: 0;
  }
  51% {
    transform: translateX(-5px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes MOVE_LEFT_TO_RIGHT {
  0% {
    transform: translateX(0);
  }
  49% {
    transform: translateX(5px);
    opacity: 0;
  }
  51% {
    transform: translateX(-5px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes MOVE_RIGHT_TO_LEFT {
  0% {
    transform: translateX(0);
  }
  49% {
    transform: translateX(-5px);
    opacity: 0;
  }
  51% {
    transform: translateX(5px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@keyframes MOVE_RIGHT_TO_LEFT {
  0% {
    transform: translateX(0);
  }
  49% {
    transform: translateX(-5px);
    opacity: 0;
  }
  51% {
    transform: translateX(5px);
    opacity: 0;
  }
  100% {
    transform: translateX(0);
    opacity: 1;
  }
}
@-webkit-keyframes MOVE_TOP_TO_BOTTOM {
  0% {
    transform: translateY(0);
  }
  49% {
    transform: translateY(5px);
    opacity: 0;
  }
  51% {
    transform: translateY(-5px);
    opacity: 0;
  }
  100% {
    transform: translateY(1px);
    opacity: 1;
  }
}
@keyframes MOVE_TOP_TO_BOTTOM {
  0% {
    transform: translateY(0);
  }
  49% {
    transform: translateY(5px);
    opacity: 0;
  }
  51% {
    transform: translateY(-5px);
    opacity: 0;
  }
  100% {
    transform: translateY(1px);
    opacity: 1;
  }
}
html {
  font-size: 0.78125vw;
}
@media (max-width: 767px) {
  html {
    font-size: 2.6666666667vw;
  }
}

body {
  width: 100%;
  color: rgba(53, 62, 71, 0.92);
  background-color: #fff;
  font-weight: 400;
  font-size: 1rem;
  font-feature-settings: "palt" on, "kern" off;
  letter-spacing: 0em;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
}

.has-scroll-smooth body {
  height: 100%;
}

a {
  text-decoration: none;
  color: inherit;
}
a:hover {
  text-decoration: none;
}

button {
  background: none;
  border: none;
  padding: 0;
  outline: none;
}

img {
  max-width: 100%;
  height: auto;
  vertical-align: bottom;
}

hr {
  margin: 0;
  border: none;
}

nav li::before {
  display: none;
}

nav ol, nav ul {
  margin: 0;
}

::-moz-selection {
  background: #1595DC;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-fill-color: #fff;
}

::selection {
  background: #1595DC;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-fill-color: #fff;
}

::-moz-selection {
  background: #1595DC;
  color: #fff;
  -webkit-text-fill-color: #fff;
  text-fill-color: #fff;
}

.l-bg {
  pointer-events: none;
  position: fixed;
  z-index: -1;
  top: 0;
  left: 0;
  width: 100%;
  overflow: hidden;
  background: #1595DC;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  min-height: 100vh;
  min-height: calc(var(--vh, 1vh) * 100);
}
.l-bg canvas {
  pointer-events: none;
  width: 100%;
  height: 100%;
  opacity: 0.7;
}

.l-book {
  position: relative;
  padding: 30vh 22rem 30vh 14rem;
}
@media (max-width: 767px) {
  .l-book {
    margin-top: 0;
    padding: 144px 4rem 124px;
  }
}
.l-book:before {
  position: absolute;
  content: " ";
  display: block;
  width: 100%;
  height: 120px;
  top: -1px;
  left: 0;
  background: linear-gradient(0deg, rgba(255, 255, 255, 0) 0%, #fff 100%);
}
@media (max-width: 767px) {
  .l-book:before {
    height: 60px;
  }
}

.l-concept {
  position: relative;
  padding: 120px 14rem calc(100vh + 3000px);
}
@media (max-width: 1151px) {
  .l-concept {
    padding: 120px 10.5rem calc(100vh + 3000px);
  }
}
@media (max-width: 1023px) {
  .l-concept {
    padding: 120px 10.5rem 400px;
  }
}
@media (max-width: 767px) {
  .l-concept {
    padding: 120px 4rem 63px;
  }
}

.l-footer {
  background-color: #fff;
  padding-top: 120px;
}
@media (max-width: 767px) {
  .l-footer {
    padding-top: 100px;
  }
}

.l-future {
  position: relative;
  padding: 170px 14rem 140px;
}
@media (max-width: 1151px) {
  .l-future {
    padding: 170px 10.5rem 140px;
  }
}
@media (max-width: 767px) {
  .l-future {
    padding: 164px 4rem 113px;
  }
}
.l-future:before {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 200px;
  background-image: linear-gradient(to bottom, rgba(255, 255, 255, 0), white);
}
@media (max-width: 767px) {
  .l-future:before {
    height: 160px;
  }
}

.l-header {
  position: absolute;
  top: 0;
  left: 0;
  z-index: 5;
  width: 100%;
  height: 90px;
}
.l-header:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 1px;
  background-color: rgba(255, 255, 255, 0.2);
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (max-width: 767px) {
  .l-header {
    height: 55px;
  }
}

.l-intro {
  position: relative;
  margin-top: 140px;
  padding: 140px 14rem 100px;
  background-color: #fff;
}
@media (max-width: 767px) {
  .l-intro {
    margin-top: 0;
    padding: 92px 4rem 0;
  }
}
.l-intro:before {
  position: absolute;
  top: -139px;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 140px;
  background: linear-gradient(to top, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
}

@media (max-width: 1023px) {
  .l-kv {
    transform: translate(0) !important;
  }
}

.l-loader {
  position: fixed;
  z-index: 200;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background-color: #fff;
}

.is-load-end .l-loader {
  transition: 0.8s linear;
  opacity: 0;
  pointer-events: none;
}

.l-nav {
  position: fixed;
  z-index: 100;
  right: 35px;
  bottom: 80px;
  transition: 0.2s linear;
}
@media (max-width: 767px) {
  .l-nav {
    display: none;
    right: 20px;
    bottom: 20px;
  }
}

.is-hide-nav .l-nav {
  opacity: 0;
  pointer-events: none;
}

.l-outro {
  position: relative;
  padding: 165px 14rem 290px;
}
@media (max-width: 1151px) {
  .l-outro {
    padding: 165px 10.5rem 290px;
  }
}
@media (max-width: 767px) {
  .l-outro {
    padding: 162px 4rem 110px;
  }
}
.l-outro:before {
  position: absolute;
  bottom: -1px;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 240px;
  background: linear-gradient(to top, #FFFFFF 0%, rgba(255, 255, 255, 0) 100%);
}
@media (max-width: 767px) {
  .l-outro:before {
    height: 150px;
  }
}

.l-section {
  position: relative;
  padding: 150px 22rem 1px 14rem;
  background-color: #fff;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
@media (max-width: 1151px) {
  .l-section {
    padding: 110px 16.5rem 0 10.5rem;
  }
}
@media (max-width: 767px) {
  .l-section {
    padding: 82px 4rem 0;
  }
}
.l-section + .l-section {
  margin-top: -1px;
}

.l-section__header {
  width: 43.4782608696%;
}
@media (max-width: 767px) {
  .l-section__header {
    width: 100%;
  }
}

.l-section__body {
  margin-top: 100px;
}
@media (max-width: 767px) {
  .l-section__body {
    margin-top: 40px;
  }
}

.l-section__link {
  margin-top: 48px;
}
@media (max-width: 767px) {
  .l-section__link {
    margin-top: 40px;
  }
}

.l-section--bottom {
  padding-bottom: 140px;
}
@media (max-width: 1151px) {
  .l-section--bottom {
    padding-bottom: 140px;
  }
}
@media (max-width: 767px) {
  .l-section--bottom {
    padding-bottom: 100px;
  }
}

.l-section--last {
  position: relative;
  padding-bottom: 200px;
}
@media (max-width: 1151px) {
  .l-section--last {
    padding-bottom: 200px;
  }
}
@media (max-width: 767px) {
  .l-section--last {
    padding-bottom: 100px;
  }
}
.l-section--last:before {
  position: absolute;
  content: " ";
  display: block;
  width: 100%;
  height: 120px;
  bottom: 0;
  left: 0;
  background: linear-gradient(180deg, rgba(240, 249, 255, 0) 0%, #E5F5FF 100%);
}
@media (max-width: 767px) {
  .l-section--last:before {
    height: 100px;
  }
}

.js-copy-wrapper + .l-section--copy {
  margin-top: 0;
}

.l-section--copy {
  position: relative;
  margin-top: 220px;
  background-color: transparent;
  color: #fff;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .l-section--copy {
    display: block;
    margin-top: 113px;
  }
  .l-section--copy + .l-section {
    margin-top: 113px;
  }
}
.l-section--copy .l-section__image {
  position: absolute;
  top: 230px;
  left: 0;
}
@media (max-width: 767px) {
  .l-section--copy .l-section__image {
    top: -45px;
    left: auto;
  }
}
.l-section--copy#value .l-section__image {
  left: -11px;
  width: 511.43px;
  height: 357.38px;
}
@media (max-width: 767px) {
  .l-section--copy#value .l-section__image {
    top: -12px;
    left: auto;
    right: 0;
    width: 28.678rem;
    height: 20.399rem;
  }
}
.l-section--copy#personality .l-section__image {
  width: 954.23px;
  height: 400px;
}
@media (max-width: 767px) {
  .l-section--copy#personality .l-section__image {
    top: 3px;
    left: auto;
    right: -86.5px;
    width: 44.1615rem;
    height: 18.5rem;
  }
}
.l-section--copy#philosophy .l-section__image {
  width: 601.01px;
  height: 357.38px;
}
@media (max-width: 767px) {
  .l-section--copy#philosophy .l-section__image {
    top: -8px;
    left: auto;
    right: 0;
    width: 29.9615rem;
    height: 20rem;
  }
}
.l-section--copy .l-section__header {
  flex: 0 1 39.1304347826%;
}
.l-section--copy .l-section__header .c-section-header__description {
  width: 83.3333333333%;
}
@media (max-width: 767px) {
  .l-section--copy .l-section__header .c-section-header__description {
    width: 100%;
  }
}
.l-section--copy .l-section__body {
  margin-top: 0;
  flex: 0 1 52.1739130435%;
}
@media (max-width: 767px) {
  .l-section--copy .l-section__body {
    margin-top: 70px;
  }
}
.l-section--copy.l-section--bottom {
  padding-bottom: 300px;
}
@media (max-width: 767px) {
  .l-section--copy.l-section--bottom {
    padding-bottom: 120px;
  }
}
.l-section--copy.l-section--bottom:before, .l-section--copy.l-section--bottom:after {
  position: absolute;
  content: " ";
  display: block;
  width: 100%;
  height: 100px;
  bottom: -1px;
  left: 0;
  background: linear-gradient(180deg, rgba(240, 249, 255, 0) 0%, #fff 100%);
}
@media (max-width: 767px) {
  .l-section--copy.l-section--bottom:before, .l-section--copy.l-section--bottom:after {
    height: 60px;
  }
}

.l-wrapper {
  overflow: hidden;
}

.c-case-link {
  position: relative;
  padding: 3px;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  background: #FFFFFF;
  border-radius: 12px;
  box-shadow: 0 0 20px rgba(21, 149, 220, 0.1);
}
@media (max-width: 767px) {
  .c-case-link {
    border-radius: 6px;
    padding: 0;
  }
}
.c-case-link:before {
  position: absolute;
  top: 0;
  left: 0;
  display: block;
  content: " ";
  width: 100%;
  height: 100%;
  background-image: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  border-radius: 12px;
  opacity: 0;
}
@media (max-width: 767px) {
  .c-case-link:before {
    display: none;
  }
}
@media (max-width: 767px) {
  .c-case-link {
    display: block;
    height: auto;
    padding: 0;
  }
}

.c-case-link__inner {
  position: relative;
  z-index: 2;
  width: 100%;
  height: 100%;
  padding: 27px 37px 47px;
  background-color: #fff;
  border-radius: 9px;
}
@media (max-width: 767px) {
  .c-case-link__inner {
    padding: 27px 0 0;
    height: auto;
    border-radius: 6px;
  }
}

.c-case-link__title {
  font-weight: 700;
  font-size: 18px;
  line-height: 125%;
  font-feature-settings: "vhal" on, "vkrn" on;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: rgba(53, 62, 71, 0.92);
  background-clip: text;
  text-fill-color: rgba(53, 62, 71, 0.92);
  transition: 0.2s linear;
}
@media (max-width: 767px) {
  .c-case-link__title {
    padding: 0 20px;
    font-size: 18px;
    line-height: 125%;
    align-items: center;
    font-feature-settings: "vhal" on, "vkrn" on, "palt" on, "liga" off, "kern" off;
  }
}

.c-case-link__img {
  position: relative;
  display: flex;
  align-items: center;
  min-height: 223px;
}
@media (max-width: 767px) {
  .c-case-link__img {
    display: block;
  }
}

.c-case-link__case {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  justify-content: center;
  flex-direction: column;
  opacity: 0;
}
@media (max-width: 767px) {
  .c-case-link__case {
    position: static;
    padding: 20px 20px;
    opacity: 1;
    display: flex;
    height: auto;
    justify-content: flex-start;
    flex-direction: row;
    border-top: 1px solid #E1E8ED;
  }
}
.c-case-link__case svg {
  display: none;
}
@media (max-width: 767px) {
  .c-case-link__case svg {
    display: block;
    width: 10px;
    height: 15px;
  }
}

.c-case-link__logo {
  width: 24rem;
  max-width: 240px;
}
@media (max-width: 767px) {
  .c-case-link__logo {
    margin-right: 9px;
    width: 100px;
    max-width: 100%;
    border: 1px solid #E1E8ED;
  }
}

.c-case-link__text {
  font-weight: 700;
  font-size: 16px;
  line-height: 125%;
  font-feature-settings: "vhal" on, "vkrn" on;
  text-align: center;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .c-case-link__text {
    font-weight: 500;
    font-size: 12px;
    line-height: 160%;
    letter-spacing: 0.1em;
    text-align: left;
  }
}

.c-case-link__more {
  margin-top: 28px;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  font-weight: 700;
  font-size: 16px;
  line-height: 150%;
  text-align: center;
  font-feature-settings: "vhal" on, "vkrn" on;
  color: #1595DC;
}
@media (max-width: 767px) {
  .c-case-link__more {
    display: none;
  }
}
.c-case-link__more svg {
  margin-left: 5px;
  width: 7.07px;
  height: 11.1px;
}

.c-case-link__more__text {
  position: relative;
  display: inline-block;
  overflow: hidden;
}
.c-case-link__more__text:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transform-origin: right center;
  transform: scaleX(0);
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}

.c-case-link__thumb {
  opacity: 1;
  transform: scale(1);
  transition: 0.2s linear;
  max-width: 320px;
  width: 32rem;
  margin: auto;
}
@media (max-width: 767px) {
  .c-case-link__thumb {
    width: 100vw;
    opacity: 1;
    transform: scale(1);
    max-width: 100%;
    width: 100%;
  }
}

.c-case-link__case {
  opacity: 0;
  transform: scale(0.9);
  transition: 0.2s linear;
}
@media (max-width: 767px) {
  .c-case-link__case {
    opacity: 1;
    transform: scale(1);
  }
}

.c-case-link:hover {
  z-index: 2;
  box-shadow: 0 0 0px rgba(21, 149, 220, 0.1);
}
.c-case-link:hover:before {
  opacity: 1;
}
@media (max-width: 767px) {
  .c-case-link:hover {
    box-shadow: 0 0 20px rgba(21, 149, 220, 0.1);
  }
}
.c-case-link:hover .c-case-link__more svg {
  -webkit-animation: MOVE_LEFT_TO_RIGHT 0.4s;
          animation: MOVE_LEFT_TO_RIGHT 0.4s;
}
.c-case-link:hover .c-case-link__more__text:before {
  transform-origin: left center;
  transform: scaleX(1);
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}
.c-case-link:hover .c-case-link__title {
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}
.c-case-link:hover .c-case-link__thumb {
  opacity: 0;
  transform: scale(0.9);
}
@media (max-width: 767px) {
  .c-case-link:hover .c-case-link__thumb {
    opacity: 1;
    transform: scale(1);
  }
}
.c-case-link:hover .c-case-link__case {
  opacity: 1;
  transform: scale(1);
}
@media (max-width: 767px) {
  .c-case-link:hover .c-case-link__case {
    opacity: 1;
  }
}

.c-clip {
  position: relative;
}

@media (max-width: 767px) {
  .c-clip__link svg {
    width: 14px;
    height: 14px;
  }
}

.c-clip__tooltip {
  position: absolute;
  white-space: nowrap;
  bottom: 40px;
  left: calc(50% + 4px);
  transform: translateX(-50%);
  display: inline-block;
  font-size: 12px;
  padding: 0 12px;
  border-radius: 4px;
  color: #fff;
  background-color: rgba(53, 62, 71, 0.92);
  -webkit-background-clip: inherit;
  background-clip: inherit;
  -webkit-text-fill-color: #fff;
  text-fill-color: #fff;
}
@media (max-width: 767px) {
  .c-clip__tooltip {
    transform: translateX(-100%);
    left: 50%;
    font-size: 10px;
    bottom: 47px;
    padding: 0 8px;
  }
}
.c-clip__tooltip:before {
  position: absolute;
  bottom: -5px;
  left: 0;
  right: 0;
  margin: auto;
  content: " ";
  display: block;
  width: 0;
  height: 0;
  border-top: none;
  border-left: 4px solid transparent;
  border-right: 4px solid transparent;
  border-top: 5px solid rgba(53, 62, 71, 0.92);
}
@media (max-width: 767px) {
  .c-clip__tooltip:before {
    left: auto;
    right: 22px;
  }
}

.c-clip__tooltip {
  opacity: 0;
  transition: opacity 0.2s linear, transform 0.2s cubic-bezier(0.77, 0, 0.175, 1);
  transform: translateX(-50%) translateY(20%);
}
@media (max-width: 767px) {
  .c-clip__tooltip {
    transform: translateX(calc(-100% + 30px)) translateY(20%);
  }
}

.is-cliped .c-clip__tooltip {
  opacity: 1;
  transform: translateX(-50%) translateY(0%);
}
@media (max-width: 767px) {
  .is-cliped .c-clip__tooltip {
    transform: translateX(calc(-100% + 30px)) translateY(10%);
  }
}

a:hover .c-clip svg path {
  fill: url(#linearGradient-1);
  opacity: 1;
  fill-opacity: 1;
}

.c-copy__title {
  font-weight: 700;
  font-size: 40px;
  line-height: 105%;
  letter-spacing: 0.05em;
}
@media (max-width: 767px) {
  .c-copy__title {
    font-weight: 700;
    font-size: 20px;
    letter-spacing: 0.05em;
    font-feature-settings: "palt" on, "kern" off, "liga" off;
  }
}

.c-copy__description {
  margin-top: 22px;
  font-weight: 700;
  font-size: 14px;
  line-height: 180%;
  display: flex;
  align-items: center;
  color: rgba(255, 255, 255, 0.74);
}
@media (max-width: 767px) {
  .c-copy__description {
    margin-top: 14px;
    font-weight: 500;
    font-size: 11px;
    font-feature-settings: "palt" on, "kern" off, "liga" off;
  }
}

.c-do {
  width: 100%;
  display: flex;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .c-do {
    display: block;
  }
}

.c-do__img {
  position: relative;
  flex: 0 1 41.3043478261%;
  width: 41.3043478261%;
}
@media (max-width: 767px) {
  .c-do__img {
    width: 100%;
  }
}

.c-do__img__do {
  position: relative;
  z-index: 0;
  transition: 0.2s linear;
}

.c-do__img__dont {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  transition: 0.2s linear;
}

.c-do__content {
  flex: 0 1 47.8260869565%;
  width: 47.8260869565%;
}
@media (max-width: 767px) {
  .c-do__content {
    width: 100%;
    margin-top: 32px;
  }
}

.c-do__title {
  font-weight: 700;
  font-size: 44px;
  line-height: 125%;
}
.c-do__title * {
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .c-do__title {
    font-size: 27px;
    letter-spacing: 0.05em;
  }
}

.c-do__description {
  width: 90.9090909091%;
  margin-top: 35px;
  font-weight: 500;
  font-size: 14px;
  line-height: 24px;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: #CDCFD2;
  background-clip: text;
  text-fill-color: #CDCFD2;
}
@media (max-width: 767px) {
  .c-do__description {
    width: 100%;
    margin-top: 18px;
    font-size: 12px;
    line-height: 160%;
  }
}

.c-do__list__wrapper {
  position: relative;
  margin-top: 24px;
}

.c-do__list {
  width: 90.9090909091%;
}
@media (max-width: 767px) {
  .c-do__list {
    width: 100%;
  }
}
.c-do__list > li {
  font-weight: 700;
  font-size: 14px;
  line-height: 180%;
  letter-spacing: 0.03em;
}
@media (max-width: 767px) {
  .c-do__list > li {
    margin-top: 5px;
    font-size: 12px;
    line-height: 160%;
  }
  .c-do__list > li:first-child {
    margin-top: 0;
  }
}

.c-do__list--do {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0s linear;
}

.c-do__list--dont {
  opacity: 1;
  transition: opacity 0.2s linear;
}

.c-do__switch {
  margin-top: 20px;
  width: 180px;
}
@media (max-width: 767px) {
  .c-do__switch {
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0;
    width: 100%;
    padding: 0 2rem 2rem;
  }
}

.c-do.is-active .c-do__img__do {
  opacity: 1;
}
.c-do.is-active .c-do__img__dont {
  opacity: 0;
}
.c-do.is-active .c-do__list--do {
  position: static;
  opacity: 1;
  transition: opacity 0.2s linear;
}
.c-do.is-active .c-do__list--dont {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 0s linear;
}
.c-do.is-active .c-do__description {
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.c-fade-in {
  opacity: 0;
  transform: translateY(50px);
}

.is-enter .c-fade-in,
.is-enter.c-fade-in {
  opacity: 1;
  transform: translateY(0px);
  transition: opacity 0.8s linear, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.is-enter .c-fade-in[data-delay="0"],
.is-enter.c-fade-in[data-delay="0"] {
  transition: opacity 0.8s linear 0s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
}
.is-enter .c-fade-in[data-delay="0.1"],
.is-enter.c-fade-in[data-delay="0.1"] {
  transition: opacity 0.8s linear 0.1s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
}
.is-enter .c-fade-in[data-delay="0.2"],
.is-enter.c-fade-in[data-delay="0.2"] {
  transition: opacity 0.8s linear 0.2s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
}
.is-enter .c-fade-in[data-delay="0.3"],
.is-enter.c-fade-in[data-delay="0.3"] {
  transition: opacity 0.8s linear 0.3s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}
.is-enter .c-fade-in[data-delay="0.4"],
.is-enter.c-fade-in[data-delay="0.4"] {
  transition: opacity 0.8s linear 0.4s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
}
.is-enter .c-fade-in[data-delay="0.5"],
.is-enter.c-fade-in[data-delay="0.5"] {
  transition: opacity 0.8s linear 0.5s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
}
.is-enter .c-fade-in[data-delay="0.6"],
.is-enter.c-fade-in[data-delay="0.6"] {
  transition: opacity 0.8s linear 0.6s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
}
.is-enter .c-fade-in[data-delay="0.7"],
.is-enter.c-fade-in[data-delay="0.7"] {
  transition: opacity 0.8s linear 0.7s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s;
}
.is-enter .c-fade-in[data-delay="0.8"],
.is-enter.c-fade-in[data-delay="0.8"] {
  transition: opacity 0.8s linear 0.8s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.is-enter .c-fade-in[data-delay="0.9"],
.is-enter.c-fade-in[data-delay="0.9"] {
  transition: opacity 0.8s linear 0.9s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
}
.is-enter .c-fade-in[data-delay="1"],
.is-enter.c-fade-in[data-delay="1"] {
  transition: opacity 0.8s linear 1s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1s;
}
.is-enter .c-fade-in[data-delay="1.1"],
.is-enter.c-fade-in[data-delay="1.1"] {
  transition: opacity 0.8s linear 1.1s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;
}
.is-enter .c-fade-in[data-delay="1.2"],
.is-enter.c-fade-in[data-delay="1.2"] {
  transition: opacity 0.8s linear 1.2s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
}
.is-enter .c-fade-in[data-delay="1.3"],
.is-enter.c-fade-in[data-delay="1.3"] {
  transition: opacity 0.8s linear 1.3s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s;
}
.is-enter .c-fade-in[data-delay="1.4"],
.is-enter.c-fade-in[data-delay="1.4"] {
  transition: opacity 0.8s linear 1.4s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s;
}
.is-enter .c-fade-in[data-delay="1.5"],
.is-enter.c-fade-in[data-delay="1.5"] {
  transition: opacity 0.8s linear 1.5s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.5s;
}
.is-enter .c-fade-in[data-delay="1.6"],
.is-enter.c-fade-in[data-delay="1.6"] {
  transition: opacity 0.8s linear 1.6s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.6s;
}
.is-enter .c-fade-in[data-delay="1.7"],
.is-enter.c-fade-in[data-delay="1.7"] {
  transition: opacity 0.8s linear 1.7s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.7s;
}
.is-enter .c-fade-in[data-delay="1.8"],
.is-enter.c-fade-in[data-delay="1.8"] {
  transition: opacity 0.8s linear 1.8s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.8s;
}
.is-enter .c-fade-in[data-delay="1.9"],
.is-enter.c-fade-in[data-delay="1.9"] {
  transition: opacity 0.8s linear 1.9s, transform 0.8s cubic-bezier(0.165, 0.84, 0.44, 1) 1.9s;
}

.c-img-section {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .c-img-section {
    display: block;
  }
}

.c-img-section__img {
  flex: 0 1 43.4782608696%;
  text-align: left;
}
.c-img-section__img img {
  max-width: 520px;
  width: 40rem;
}
@media (max-width: 767px) {
  .c-img-section__img img {
    width: 100%;
    max-width: 100%;
  }
}

.c-img-section__content {
  flex: 0 1 52.1739130435%;
}
@media (max-width: 767px) {
  .c-img-section__content {
    margin-top: 65px;
  }
}

.c-img-section--reverse {
  flex-direction: row;
}
.c-img-section__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 125%;
  /* or 45px */
  display: flex;
  align-items: center;
  font-feature-settings: "vhal" on, "vkrn" on, "palt" on, "liga" off, "kern" off;
}
@media (max-width: 767px) {
  .c-img-section__title {
    font-size: 20px;
    line-height: 150%;
  }
}
.c-img-section__title .c-slide-in__inner {
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}

.c-img-section__description {
  padding-right: 16.6666666667%;
  margin-top: 30px;
  font-weight: 500;
  font-size: 14px;
  line-height: 200%;
  letter-spacing: 0.1em;
  font-feature-settings: "palt" on, "liga" off, "kern" off;
}
@media (max-width: 767px) {
  .c-img-section__description {
    padding-right: 0;
    width: 100%;
    margin-top: 17px;
    font-size: 12px;
    line-height: 160%;
  }
}

/*
.c-link
*/
.c-link {
  position: relative;
  z-index: 2;
  display: flex;
  align-items: center;
  color: #1595DC;
}

.c-link__text {
  position: relative;
  flex: 0 30 auto;
  width: auto;
  font-weight: 700;
  font-size: 16px;
  line-height: 150%;
  font-feature-settings: "vhal" on, "vkrn" on;
  overflow: hidden;
}
.c-link__text:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transform: scaleX(0);
}
@media (max-width: 767px) {
  .c-link__text {
    font-size: 15px;
  }
}

.c-link__icon {
  flex: 0 1 76px;
  position: relative;
  margin-left: 20px;
  display: flex;
  width: 76px;
  height: 76px;
  align-items: center;
  justify-content: center;
}
@media (max-width: 767px) {
  .c-link__icon {
    flex: 0 1 54px;
    width: 54px;
    height: 54px;
  }
}
.c-link__icon svg {
  position: relative;
  display: block;
  z-index: 3;
}
.c-link__icon .c-link__circle__icon {
  position: absolute;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-link__icon .c-link__circle {
  position: absolute;
  z-index: 1;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
}
.c-link__icon .c-link__circle .c-transitionCircle {
  stroke-width: 1.2;
}
.c-link__icon .c-link__circle:last-child {
  z-index: 0;
}
.c-link__icon .c-link__circle:last-child .c-transitionCircle {
  stroke-width: 0.6;
}

@-webkit-keyframes RIPPLE {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  37% {
    opacity: 0.75;
  }
  75% {
    opacity: 0;
    transform: scale(1.75);
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}

@keyframes RIPPLE {
  0% {
    opacity: 0;
    transform: scale(1);
  }
  37% {
    opacity: 0.75;
  }
  75% {
    opacity: 0;
    transform: scale(1.75);
  }
  100% {
    opacity: 0;
    transform: scale(1.5);
  }
}
.c-link--white {
  color: #fff;
}
.c-link--white .c-link__icon {
  flex: 0 1 99px;
  position: relative;
  width: 99px;
  height: 99px;
  margin-left: 10px;
  background: rgba(255, 255, 255, 0);
  border-radius: 50%;
  transition: 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
@media (max-width: 767px) {
  .c-link--white .c-link__icon {
    flex: 0 1 71px;
    width: 71px;
    height: 71px;
  }
}
.c-link--white .c-link__icon:before {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: block;
  content: " ";
  width: 75px;
  height: 75px;
  background: #FFFFFF;
  border-radius: 50%;
  transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
@media (max-width: 767px) {
  .c-link--white .c-link__icon:before {
    width: 54px;
    height: 54px;
  }
}
.c-link--white .c-link__icon:after {
  position: absolute;
  top: 0;
  left: 0;
  bottom: 0;
  right: 0;
  margin: auto;
  display: block;
  content: " ";
  width: 75px;
  height: 75px;
  border: 1px solid #fff;
  border-radius: 50%;
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}
@media (max-width: 767px) {
  .c-link--white .c-link__icon:after {
    width: 54px;
    height: 54px;
  }
}
.c-link--white .c-link__icon .c-link__circle {
  display: none;
}
.c-link--white:hover .c-link__icon {
  transform: scale(0.75);
}
.c-link--white:hover .c-link__icon:before {
  transform: scale(1.25);
}
.c-link--white:hover .c-link__icon:after {
  -webkit-animation: RIPPLE 1.2s infinite;
          animation: RIPPLE 1.2s infinite;
}

.c-link__text {
  opacity: 1;
  transition: opacity 0.2s linear;
}
.c-link__text:before {
  transform-origin: right center;
  transform: scaleX(0);
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}

.c-link__icon:after {
  z-index: 1;
  opacity: 0;
  transition: opacity 0.1s linear, transform 0 linear 0.1s;
}

.c-link__icon {
  transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}

.c-link__circle {
  transition: transform 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}

.c-link__circle:last-child {
  opacity: 0;
}

.c-link:hover .c-link__text:before {
  transform-origin: left center;
  transform: scaleX(1);
}
.c-link:hover .c-link__circle {
  transform: scale(1.25);
}
.c-link:hover .c-link__circle:last-child {
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
  -webkit-animation: RIPPLE 1.2s infinite;
          animation: RIPPLE 1.2s infinite;
}
.c-link:hover .c-link__icon {
  transform: scale(0.75);
}
.c-link:hover .c-link__icon > svg:first-child {
  -webkit-animation: MOVE_LEFT_TO_RIGHT 0.4s;
          animation: MOVE_LEFT_TO_RIGHT 0.4s;
}
.c-link:hover .c-link__icon:before {
  transform: scale(1.25);
}

.c-link.c-link--download:hover .c-link__icon > svg:first-child {
  -webkit-animation: MOVE_TOP_TO_BOTTOM 0.4s;
          animation: MOVE_TOP_TO_BOTTOM 0.4s;
}

/*
.c-section-header
*/
.c-section-header {
  position: relative;
  padding: 19px 0 0;
  border-top: 1px solid #E1E8ED;
}
@media (max-width: 767px) {
  .c-section-header {
    padding: 13px 0 0;
  }
}
.c-section-header:before {
  position: absolute;
  display: block;
  content: " ";
  top: -1px;
  left: 0;
  width: 18px;
  height: 1px;
  background-image: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  opacity: 0;
}
@media (max-width: 767px) {
  .c-section-header:before {
    width: 40px;
  }
}

.c-section-header__title {
  display: block;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 44px;
  line-height: 125%;
  letter-spacing: -0.01em;
  font-feature-settings: "case" on;
}
@media (max-width: 767px) {
  .c-section-header__title {
    font-size: 20px;
  }
}

.c-section-header__copy {
  margin-top: 35px;
  font-weight: 700;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0.03em;
  font-feature-settings: "palt" on, "liga" off, "kern" off;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .c-section-header__copy {
    font-size: 24px;
    line-height: 125%;
  }
}

.c-section-header__description {
  margin-top: 25px;
  font-weight: 500;
  font-size: 13px;
  line-height: 180%;
  font-feature-settings: "palt" on, "kern" off;
  background-image: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .c-section-header__description {
    font-size: 12px;
    line-height: 180%;
  }
}

.c-section-header__link {
  margin-top: 60px;
}
@media (max-width: 767px) {
  .c-section-header__link {
    margin-top: 17px;
  }
}

.c-section-header--white {
  border-top: 1px solid rgba(255, 255, 255, 0.24);
}
.c-section-header--white:before {
  background-image: none;
  background-color: #fff;
}
.c-section-header--white .c-section-header__copy {
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: initial;
  text-fill-color: initial;
  background-image: none;
  color: #fff;
}
.c-section-header--white .c-section-header__description {
  -webkit-background-clip: initial;
  background-clip: initial;
  -webkit-text-fill-color: initial;
  text-fill-color: initial;
  background-image: none;
  color: rgba(255, 255, 255, 0.74);
}

.c-section-header:before {
  width: 100%;
}

.is-enter .c-section-header:before,
.is-enter.c-section-header:before {
  transition: width 1.2s cubic-bezier(0.77, 0, 0.175, 1), opacity 1.2s linear;
  width: 18px;
  opacity: 1;
}
@media (max-width: 767px) {
  .is-enter .c-section-header:before,
.is-enter.c-section-header:before {
    width: 40px;
  }
}

.c-section-header--keyword {
  padding: 16px 0 0;
}
@media (max-width: 767px) {
  .c-section-header--keyword {
    padding: 16px 0 0;
  }
}
.c-section-header--keyword .c-section-header__title {
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 16px;
  line-height: 135%;
  letter-spacing: -0.01em;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .c-section-header--keyword .c-section-header__title {
    font-size: 14px;
  }
}
.c-section-header--keyword .c-section-header__copy {
  margin-top: 15px;
  display: inline-block;
  font-family: "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 120%;
  letter-spacing: 0.03em;
  color: rgba(53, 62, 71, 0.92);
  -webkit-text-fill-color: rgba(53, 62, 71, 0.92);
  text-fill-color: rgba(53, 62, 71, 0.92);
}
@media (max-width: 767px) {
  .c-section-header--keyword .c-section-header__copy {
    margin-top: 20px;
    font-size: 24px;
  }
}

.c-slide-in {
  display: inline-block;
  transform: translateX(-100%);
  overflow: hidden;
}
@media (max-width: 767px) {
  .c-slide-in {
    transform: translateX(0) translateY(50px) translateY(0%);
  }
}

.c-slide-in__inner {
  display: inline-block;
  transform: translateX(100%) translateY(20%) scale(0.95);
  opacity: 0;
}
@media (max-width: 767px) {
  .c-slide-in__inner {
    transform: translateX(0%) translateY(0) scale(0.95);
    opacity: 0;
  }
}

.is-enter .c-slide-in,
.is-enter.c-slide-in {
  transform: translateX(0%) translateY(0%);
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.is-enter .c-slide-in .c-slide-in__inner,
.is-enter.c-slide-in .c-slide-in__inner {
  opacity: 1;
  transform: translateX(0%) translateY(0%) scale(1);
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1), opacity 1.2s linear;
}
.is-enter .c-slide-in[data-delay="0"],
.is-enter.c-slide-in[data-delay="0"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s;
}
.is-enter .c-slide-in[data-delay="0"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0s, opacity 1.2s linear 0s;
}
.is-enter .c-slide-in[data-delay="0.1"],
.is-enter.c-slide-in[data-delay="0.1"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s;
}
.is-enter .c-slide-in[data-delay="0.1"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.1"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.1s, opacity 1.2s linear 0.1s;
}
.is-enter .c-slide-in[data-delay="0.2"],
.is-enter.c-slide-in[data-delay="0.2"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s;
}
.is-enter .c-slide-in[data-delay="0.2"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.2"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.2s, opacity 1.2s linear 0.2s;
}
.is-enter .c-slide-in[data-delay="0.3"],
.is-enter.c-slide-in[data-delay="0.3"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s;
}
.is-enter .c-slide-in[data-delay="0.3"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.3"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.3s, opacity 1.2s linear 0.3s;
}
.is-enter .c-slide-in[data-delay="0.4"],
.is-enter.c-slide-in[data-delay="0.4"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s;
}
.is-enter .c-slide-in[data-delay="0.4"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.4"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.4s, opacity 1.2s linear 0.4s;
}
.is-enter .c-slide-in[data-delay="0.5"],
.is-enter.c-slide-in[data-delay="0.5"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s;
}
.is-enter .c-slide-in[data-delay="0.5"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.5"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.5s, opacity 1.2s linear 0.5s;
}
.is-enter .c-slide-in[data-delay="0.6"],
.is-enter.c-slide-in[data-delay="0.6"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s;
}
.is-enter .c-slide-in[data-delay="0.6"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.6"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.6s, opacity 1.2s linear 0.6s;
}
.is-enter .c-slide-in[data-delay="0.7"],
.is-enter.c-slide-in[data-delay="0.7"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s;
}
.is-enter .c-slide-in[data-delay="0.7"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.7"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.7s, opacity 1.2s linear 0.7s;
}
.is-enter .c-slide-in[data-delay="0.8"],
.is-enter.c-slide-in[data-delay="0.8"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s;
}
.is-enter .c-slide-in[data-delay="0.8"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.8"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.8s, opacity 1.2s linear 0.8s;
}
.is-enter .c-slide-in[data-delay="0.9"],
.is-enter.c-slide-in[data-delay="0.9"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s;
}
.is-enter .c-slide-in[data-delay="0.9"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="0.9"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 0.9s, opacity 1.2s linear 0.9s;
}
.is-enter .c-slide-in[data-delay="1"],
.is-enter.c-slide-in[data-delay="1"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1s;
}
.is-enter .c-slide-in[data-delay="1"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1s, opacity 1.2s linear 1s;
}
.is-enter .c-slide-in[data-delay="1.1"],
.is-enter.c-slide-in[data-delay="1.1"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s;
}
.is-enter .c-slide-in[data-delay="1.1"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.1"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.1s, opacity 1.2s linear 1.1s;
}
.is-enter .c-slide-in[data-delay="1.2"],
.is-enter.c-slide-in[data-delay="1.2"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s;
}
.is-enter .c-slide-in[data-delay="1.2"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.2"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.2s, opacity 1.2s linear 1.2s;
}
.is-enter .c-slide-in[data-delay="1.3"],
.is-enter.c-slide-in[data-delay="1.3"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s;
}
.is-enter .c-slide-in[data-delay="1.3"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.3"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.3s, opacity 1.2s linear 1.3s;
}
.is-enter .c-slide-in[data-delay="1.4"],
.is-enter.c-slide-in[data-delay="1.4"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s;
}
.is-enter .c-slide-in[data-delay="1.4"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.4"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.4s, opacity 1.2s linear 1.4s;
}
.is-enter .c-slide-in[data-delay="1.5"],
.is-enter.c-slide-in[data-delay="1.5"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.5s;
}
.is-enter .c-slide-in[data-delay="1.5"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.5"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.5s, opacity 1.2s linear 1.5s;
}
.is-enter .c-slide-in[data-delay="1.6"],
.is-enter.c-slide-in[data-delay="1.6"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.6s;
}
.is-enter .c-slide-in[data-delay="1.6"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.6"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.6s, opacity 1.2s linear 1.6s;
}
.is-enter .c-slide-in[data-delay="1.7"],
.is-enter.c-slide-in[data-delay="1.7"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.7s;
}
.is-enter .c-slide-in[data-delay="1.7"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.7"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.7s, opacity 1.2s linear 1.7s;
}
.is-enter .c-slide-in[data-delay="1.8"],
.is-enter.c-slide-in[data-delay="1.8"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.8s;
}
.is-enter .c-slide-in[data-delay="1.8"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.8"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.8s, opacity 1.2s linear 1.8s;
}
.is-enter .c-slide-in[data-delay="1.9"],
.is-enter.c-slide-in[data-delay="1.9"] {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.9s;
}
.is-enter .c-slide-in[data-delay="1.9"] .c-slide-in__inner,
.is-enter.c-slide-in[data-delay="1.9"] .c-slide-in__inner {
  transition: transform 1.2s cubic-bezier(0.165, 0.84, 0.44, 1) 1.9s, opacity 1.2s linear 1.9s;
}

@media (max-width: 767px) {
  .c-slider__wrapper {
    height: auto;
  }
}

.c-slider__slide.swiper-slide {
  transition-property: opacity;
}
.c-slider__slide img {
  width: 100%;
  height: auto;
}

.c-slider__pagination {
  display: flex;
  align-items: center;
  justify-content: center;
  position: absolute;
  z-index: 10;
  top: 0;
  left: 0;
  width: 100%;
  height: 16px;
}
@media (max-width: 767px) {
  .c-slider__pagination {
    height: 10px;
  }
}
.c-slider__pagination .swiper-pagination-bullet {
  display: block;
  width: 18px;
  height: 18px;
  border-radius: 50%;
  padding: 3px;
}
.c-slider__pagination .swiper-pagination-bullet:before {
  content: " ";
  display: block;
  width: 100%;
  height: 100%;
  margin: auto;
  background-color: #E1E8ED;
  border: 1px solid #FFFFFF;
  transform-origin: center center;
  transform: scale(0.572);
  border-radius: 50%;
  transition: background-color 0.3s linear, transform 0.3s cubic-bezier(0.165, 0.84, 0.44, 1);
}
.c-slider__pagination .swiper-pagination-bullet:hover:before {
  background-color: #1595DC;
}
.c-slider__pagination .swiper-pagination-bullet.swiper-pagination-bullet-active:before {
  background-color: #1595DC;
  transform: scale(1);
}

.c-slider__nav {
  position: absolute;
  width: 160px;
  margin: auto;
  left: 0;
  right: 0;
  bottom: 30px;
  font-weight: bold;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  color: #1595DC;
  font-size: 14px;
}
@media (max-width: 767px) {
  .c-slider__nav {
    width: 115px;
    bottom: 10px;
  }
}
.c-slider__nav .c-slider__pagination {
  width: 42px;
  margin: auto;
  left: 0;
  right: 0;
  bottom: 5px;
  top: auto;
}
@media (max-width: 767px) {
  .c-slider__nav .c-slider__pagination {
    width: 34px;
    bottom: 7px;
  }
}
.c-slider__nav .swiper-pagination-current {
  position: absolute;
  text-align: center;
  bottom: -1px;
  left: -1px;
  font-size: 20px;
}
@media (max-width: 767px) {
  .c-slider__nav .swiper-pagination-current {
    font-size: 14px;
    bottom: -1px;
    left: 0;
  }
}
.c-slider__nav .swiper-pagination-total {
  position: absolute;
  text-align: center;
  bottom: 1px;
  right: 0;
  font-weight: bold;
  font-size: 14px;
}
@media (max-width: 767px) {
  .c-slider__nav .swiper-pagination-total {
    bottom: -1px;
    right: 0;
  }
}

.c-slider__next {
  cursor: pointer;
  position: absolute;
  z-index: 2;
  width: 20px;
  height: 20px;
  bottom: 2px;
  right: 0;
  display: flex;
  align-items: center;
  justify-content: center;
}
.c-slider__next:hover svg {
  -webkit-animation: MOVE_LEFT_TO_RIGHT 0.4s cubic-bezier(0.77, 0, 0.175, 1);
          animation: MOVE_LEFT_TO_RIGHT 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
@media (max-width: 767px) {
  .c-slider__next {
    bottom: 1.5px;
  }
}

.c-slider__prev {
  cursor: pointer;
  position: absolute;
  z-index: 2;
  bottom: 2px;
  left: 0;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 20px;
  height: 20px;
  transition: opacity 0.2s lienar;
  transform: rotate(-180deg);
  transform-origin: center center;
}
.c-slider__prev:hover svg {
  -webkit-animation: MOVE_LEFT_TO_RIGHT 0.4s cubic-bezier(0.77, 0, 0.175, 1);
          animation: MOVE_LEFT_TO_RIGHT 0.4s cubic-bezier(0.77, 0, 0.175, 1);
}
@media (max-width: 767px) {
  .c-slider__prev {
    bottom: 1.5px;
  }
}

.c-switch {
  display: inline-flex;
  width: 100%;
  background: #fff;
  border: 1px solid #E1E8ED;
  border-radius: 6px;
}

.c-switch__button {
  flex: 0 1 50%;
  display: block;
  padding: 11px 0;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 20px;
  line-height: 100%;
  letter-spacing: -0.01em;
  text-align: center;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: #CDCFD2;
  background-clip: text;
  text-fill-color: #CDCFD2;
  transition: -webkit-text-fill-color 0.2s linear;
}
@media (max-width: 767px) {
  .c-switch__button {
    font-size: 14px;
    line-height: 100%;
  }
}
.c-switch__button:hover {
  -webkit-text-fill-color: #727A81;
  text-fill-color: #727A81;
}
.c-switch__button.is-active {
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}
.c-switch__button.is-active:hover {
  -webkit-text-fill-color: transparent;
  text-fill-color: transparent;
}

.c-switch__button--do {
  flex: 0 1 80px;
}
@media (max-width: 767px) {
  .c-switch__button--do {
    flex: 0 1 100%;
  }
}

.c-switch__button--dont {
  flex: 0 1 100px;
}
@media (max-width: 767px) {
  .c-switch__button--dont {
    flex: 0 1 100%;
  }
}

.c-switch__button:first-child {
  position: relative;
}
.c-switch__button:first-child:after {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  content: " ";
  width: 1px;
  height: 16px;
  background-color: #E1E8ED;
}

.p-book {
  position: relative;
  display: flex;
  justify-content: space-between;
  align-items: center;
  padding: 0 0 22px;
  color: #fff;
  border-bottom: 1px solid #fff;
}

.p-book__title {
  font-weight: 700;
  font-size: 34px;
  line-height: 100%;
  opacity: 0.9;
}
@media (max-width: 767px) {
  .p-book__title {
    margin-top: 8px;
    position: absolute;
    top: 5px;
    left: 0;
    font-size: 22px;
    line-height: 100%;
  }
}

.p-book__link {
  position: relative;
  z-index: 2;
}
.p-book__link .c-link__text {
  color: #fff;
}
@media (max-width: 767px) {
  .p-book__link {
    width: 100%;
  }
  .p-book__link .c-link {
    justify-content: space-between;
    align-items: flex-end;
  }
  .p-book__link .c-link__text {
    margin-bottom: 11px;
    font-weight: 500;
    font-size: 12px;
    line-height: 150%;
  }
}

.p-case {
  padding: 90px 6rem 0 0;
  border-top: 1px solid #E1E8ED;
}
@media (max-width: 767px) {
  .p-case {
    padding: 77px 0 0;
  }
}

.p-case__header {
  font-weight: 700;
  font-size: 24px;
  line-height: 150%;
  font-feature-settings: "vhal" on, "vkrn" on;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .p-case__header {
    font-size: 22px;
    line-height: 125%;
    letter-spacing: 0.03em;
  }
}

.p-case__list {
  margin-top: 80px;
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
}
@media (max-width: 767px) {
  .p-case__list {
    display: block;
  }
}

.p-case__item {
  position: relative;
  flex: 0 1 46.511627907%;
}
@media (max-width: 767px) {
  .p-case__item {
    margin-top: 30px;
  }
  .p-case__item:first-child {
    margin-top: 0;
  }
}
.p-case__item:nth-child(2) {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .p-case__item:nth-child(2) {
    margin-top: 30px;
  }
}
.p-case__item:nth-child(3) {
  margin-top: -30px;
}
@media (max-width: 767px) {
  .p-case__item:nth-child(3) {
    margin-top: 30px;
  }
}
.p-case__item:nth-child(2n+4) {
  margin-top: 30px;
}
@media (max-width: 767px) {
  .p-case__item:nth-child(2n+4) {
    margin-top: 30px;
  }
}
@media (max-width: 767px) {
  .p-case__item {
    margin-top: 70px;
  }
  .p-case__item:first-child {
    margin-top: 0;
  }
}

.p-concept {
  color: #fff;
  margin-bottom: 400px;
}
@media (max-width: 1023px) {
  .p-concept {
    transform: translate(0) !important;
    margin-bottom: 0;
  }
}

.p-concept__inner {
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
}
@media (max-width: 767px) {
  .p-concept__inner {
    transition: transform 0s;
  }
}
.p-concept__inner.is-scroll {
  transition: transform 0.6s cubic-bezier(0.165, 0.84, 0.44, 1);
  transform: translateY(-160px);
}
@media (min-width: 1600px) {
  .p-concept__inner.is-scroll {
    transform: translateY(-280px);
  }
}
@media (max-width: 767px) {
  .p-concept__inner.is-scroll {
    transition: transform 0s;
    transform: translateY(0px);
  }
}

.p-concept__title {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 36px;
  line-height: 100%;
  letter-spacing: 0.15em;
  font-feature-settings: initial;
}
@media (min-width: 1600px) {
  .p-concept__title {
    font-size: 45px;
  }
}
@media (max-width: 767px) {
  .p-concept__title {
    font-size: 18px;
  }
}
.p-concept__title > * {
  display: inline-block;
  margin-top: 44px;
}
@media (max-width: 767px) {
  .p-concept__title > * {
    margin-top: 22px;
  }
}
.p-concept__title > *:first-child {
  margin-top: 0;
}

.p-concept__copy {
  margin-top: 99px;
  font-weight: 500;
  font-size: 16px;
  line-height: 250%;
  letter-spacing: 0.25em;
  font-feature-settings: "palt" on, "kern" off;
}
@media (min-width: 1600px) {
  .p-concept__copy {
    font-size: 20px;
  }
}
@media (max-width: 767px) {
  .p-concept__copy {
    margin-top: 50px;
    font-size: 12px;
    line-height: 250%;
    letter-spacing: 0.1em;
  }
}
.p-concept__copy > p {
  margin-top: 2.5em;
}
.p-concept__copy > p:first-child {
  margin-top: 0;
}

.p-concept__description {
  margin-top: 62px;
  font-weight: 400;
  font-size: 13px;
  line-height: 250%;
  letter-spacing: 0.1em;
  font-feature-settings: "palt" on, "kern" off;
}
@media (min-width: 1600px) {
  .p-concept__description {
    font-size: 16.25px;
  }
}
@media (max-width: 767px) {
  .p-concept__description {
    margin-top: 68px;
    font-size: 11px;
    letter-spacing: -0.02em;
  }
}
.p-concept__description > p {
  margin-top: 2.5em;
}
.p-concept__description > p:first-child {
  margin-top: 0;
}

.p-concept__footer {
  display: none;
}
@media (max-width: 1023px) {
  .p-concept__footer {
    margin-top: 184px;
    margin-bottom: 60px;
    display: block;
  }
}

.p-concept__footer__copy {
  font-weight: 700;
  font-size: 45px;
  line-height: 120%;
  letter-spacing: 0.25em;
}
@media (max-width: 767px) {
  .p-concept__footer__copy {
    font-size: 24px;
  }
}

.p-concept__footer__logo {
  margin-top: 26px;
}
@media (max-width: 767px) {
  .p-concept__footer__logo {
    margin-top: 12px;
  }
}
.p-concept__footer__logo svg {
  width: 151.81px;
  height: 24px;
}
@media (max-width: 767px) {
  .p-concept__footer__logo svg {
    width: 107.53px;
    height: 17px;
  }
}

.p-copy__item {
  margin-top: 60px;
}
.p-copy__item:first-child {
  margin-top: 0;
}

.p-do__item {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .p-do__item {
    margin-top: 60px;
  }
}
.p-do__item:first-child {
  margin-top: 0;
}

.p-future {
  position: relative;
  color: #fff;
}

.p-future__header {
  position: absolute;
  top: 0;
  left: 0;
}
@media (max-width: 767px) {
  .p-future__header {
    position: static;
  }
}

.p-future__link {
  position: absolute;
  padding: 16px 0 16px;
  width: 44rem;
  top: 140px;
  left: 0;
  border-top: 1px solid #fff;
  border-bottom: 1px solid #fff;
}
@media (max-width: 767px) {
  .p-future__link {
    margin-top: 55px;
    padding: 22px 0;
    width: auto;
    position: static;
  }
}
.p-future__link .c-link {
  color: #fff;
  justify-content: space-between;
}

.p-future__content {
  padding-left: 55%;
}
@media (max-width: 767px) {
  .p-future__content {
    margin-top: 48px;
    padding: 0;
  }
}

.p-future__copy {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0.25em;
}
@media (max-width: 767px) {
  .p-future__copy {
    font-size: 16px;
  }
}

.p-future__logo {
  margin-top: 16px;
}
@media (max-width: 767px) {
  .p-future__logo {
    margin-top: 12px;
  }
  .p-future__logo svg {
    width: 260px;
    height: 41.93px;
  }
}

.p-future__title {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-style: normal;
  font-weight: 700;
  font-size: 24px;
  line-height: 120%;
  letter-spacing: 0.15em;
}
@media (max-width: 767px) {
  .p-future__title {
    font-size: 18px;
  }
}

.p-future__description {
  margin-top: 43px;
  font-style: normal;
  font-weight: 400;
  font-size: 12px;
  line-height: 250%;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .p-future__description {
    margin-top: 35px;
    font-size: 11px;
  }
}
.p-future__description > p {
  margin-top: 2.5em;
}
.p-future__description > p:first-child {
  margin-top: 0;
}

.p-header {
  position: relative;
  width: 100%;
  height: 100%;
  display: flex;
  align-items: center;
  padding: 0 14rem;
}
@media (max-width: 1151px) {
  .p-header {
    padding: 0 10.5rem;
  }
}
@media (max-width: 767px) {
  .p-header {
    padding: 0 4rem 0;
  }
}

.p-header__back {
  display: flex;
  align-items: center;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 14px;
  line-height: 150%;
  font-feature-settings: "vhal" on, "vkrn" on;
  color: #FFFFFF;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
  transition: 0.2s;
}
@media (max-width: 767px) {
  .p-header__back {
    font-size: 11px;
  }
}
.p-header__back:hover .p-header__arrow {
  -webkit-animation: MOVE_RIGHT_TO_LEFT 0.4s;
          animation: MOVE_RIGHT_TO_LEFT 0.4s;
}
.p-header__back:hover .p-header__text:before {
  transform-origin: right center;
  transform: scaleX(1);
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}

.p-header__text {
  position: relative;
  display: inline-block;
  overflow: hidden;
  -webkit-backface-visibility: hidden;
          backface-visibility: hidden;
}
.p-header__text:before {
  position: absolute;
  bottom: 0;
  left: 0;
  content: " ";
  display: block;
  width: 100%;
  height: 2px;
  background-color: currentColor;
  transform-origin: left center;
  transform: scaleX(0);
  transition: transform 0.6s cubic-bezier(0.77, 0, 0.175, 1);
}

.p-header__arrow {
  display: inline-block;
  margin-right: 10px;
}
.p-header__arrow svg {
  position: relative;
  top: 1px;
  display: block;
  transform: rotate(-180deg);
}
@media (max-width: 767px) {
  .p-header__arrow svg {
    width: 7px;
    height: 8px;
  }
}
@media (max-width: 767px) {
  .p-header__arrow {
    margin-right: 5px;
    width: 5px;
    height: 8px;
  }
}
.p-header__arrow path {
  fill: #fff;
  -webkit-animation-duration: 0s;
          animation-duration: 0s;
  transition-duration: 0s;
}

.p-img-section {
  margin-top: -20px;
}
@media (max-width: 767px) {
  .p-img-section {
    margin-top: 0px;
  }
}

.p-img-section__item {
  margin-top: 80px;
}
@media (max-width: 767px) {
  .p-img-section__item {
    margin-top: 50px;
  }
}
.p-img-section__item:first-child {
  margin-top: 0;
}

.p-intro {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .p-intro {
    display: block;
  }
}

.p-intro__content {
  width: 50%;
  flex: 0 1 50%;
}
@media (max-width: 767px) {
  .p-intro__content {
    width: 100%;
  }
}

.p-intro__img {
  margin-right: 3%;
  width: 36%;
  flex: 0 1 36%;
}
@media (max-width: 767px) {
  .p-intro__img {
    width: 170px;
    margin: 64px auto 74px;
  }
}

.p-intro__copy {
  font-weight: 700;
  font-size: 44px;
  line-height: 125%;
}
.p-intro__copy > * {
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .p-intro__copy {
    font-size: 24px;
  }
}

.p-intro__description {
  margin-top: 34px;
  font-weight: 700;
  font-size: 14px;
  line-height: 200%;
}
@media (max-width: 767px) {
  .p-intro__description {
    margin-top: 22px;
    font-weight: 500;
    font-size: 12px;
    line-height: 180%;
  }
}

.p-kv {
  position: relative;
  display: flex;
  align-items: center;
  justify-content: flex-end;
  width: 100%;
  height: 100vh;
  padding: 0 14rem;
}
@media (max-width: 1151px) {
  .p-kv {
    padding: 0 10.5rem;
  }
}
@media (max-width: 767px) {
  .p-kv {
    text-align: right;
    display: block;
    height: auto;
    padding: 320px 4rem 140px;
  }
}

.p-kv__content {
  transition: opacity 0.4s linear;
}
.p-kv__content.is-hide {
  opacity: 0;
}
@media (max-width: 767px) {
  .p-kv__content {
    display: inline-block;
    padding-left: 0;
  }
}

.p-kv__copy {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 45px;
  line-height: 120%;
  letter-spacing: 0.25em;
  color: #FFFFFF;
}
@media (min-width: 1600px) {
  .p-kv__copy {
    font-size: 56.25px;
  }
}
@media (max-width: 767px) {
  .p-kv__copy {
    font-size: 24px;
    line-height: 120%;
    letter-spacing: 0.25em;
  }
}

.p-kv__logo {
  display: block;
  margin-top: 20px;
}
@media (max-width: 767px) {
  .p-kv__logo {
    margin-top: 12px;
    text-align: left;
  }
}
.p-kv__logo svg {
  width: 164.46px;
  height: 26px;
}
@media (min-width: 1600px) {
  .p-kv__logo svg {
    width: 205.575px;
    height: 32.5px;
  }
}
@media (max-width: 767px) {
  .p-kv__logo svg {
    width: 107.53px;
    height: 17px;
  }
}

.p-kv__title {
  position: absolute;
  bottom: 84px;
  left: 14rem;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 54px;
  line-height: 135%;
  letter-spacing: -0.01em;
  color: #fff;
  opacity: 0.9;
}
@media (min-width: 1600px) {
  .p-kv__title {
    font-size: 67.5px;
  }
}
.p-kv__title > *:first-child {
  margin-bottom: -28px;
}
@media (max-width: 767px) {
  .p-kv__title {
    text-align: left;
    margin-top: 118px;
    position: static;
    font-size: 29px;
    line-height: 135%;
  }
  .p-kv__title > *:first-child {
    margin-bottom: -18px;
  }
}

@-webkit-keyframes circleMovin {
  0% {
    stroke-dashoffset: 88;
  }
  100% {
    stroke-dashoffset: -88;
  }
}

@keyframes circleMovin {
  0% {
    stroke-dashoffset: 88;
  }
  100% {
    stroke-dashoffset: -88;
  }
}
.p-loader {
  position: absolute;
  top: 50px;
  left: 50px;
}

.p-loader__circle {
  stroke-dashoffset: 88;
  stroke-dasharray: 88;
  stroke-width: 2;
  transform-origin: center;
  transform: rotate(0deg);
  -webkit-animation-name: circleMovin;
          animation-name: circleMovin;
  -webkit-animation-duration: 1.2s;
          animation-duration: 1.2s;
  -webkit-animation-timing-function: ease;
          animation-timing-function: ease;
  -webkit-animation-fill-mode: both;
          animation-fill-mode: both;
  -webkit-animation-iteration-count: infinite;
          animation-iteration-count: infinite;
}

.p-nav {
  position: relative;
  padding-right: 15px;
}

.p-nav__bar {
  position: absolute;
  top: 0;
  right: 0;
  bottom: 0;
  margin: auto;
  width: 2px;
  height: calc(100% - 6px);
  background-color: rgba(21, 149, 220, 0.34);
  transition: background-color 0.2s linear;
}
@media (max-width: 767px) {
  .p-nav__bar {
    height: calc(100% - 4px);
  }
}
.p-nav__bar span {
  position: absolute;
  display: block;
  width: 2px;
  height: 10px;
  top: 0;
  left: 0;
  opacity: 0.94;
  background-color: #1595DC;
  transition: background-color 0.2s linear, transform 0.2s cubic-bezier(0.77, 0, 0.175, 1);
}

.p-nav__item {
  margin: 13px 0;
  font-family: acumin-pro, "Noto Sans JP", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "游ゴシック", "Yu Gothic", "メイリオ", sans-serif;
  font-weight: 600;
  font-size: 14px;
  line-height: 100%;
  text-align: right;
  letter-spacing: -0.01em;
  color: #1595DC;
  transition: color 0.2s linear;
}
@media (max-width: 767px) {
  .p-nav__item {
    margin: 8px 0;
    font-size: 12px;
  }
}
.p-nav__item > a {
  opacity: 0.5;
  transition: opacity 0.2s linear;
}
.p-nav__item > a.is-current, .p-nav__item > a:hover {
  opacity: 1;
}

@-webkit-keyframes BAR {
  0% {
    transform: scaleY(1);
  }
  50% {
    transform: scaleY(1.5);
  }
  100% {
    transform: scaleY(1);
  }
}

@keyframes BAR {
  0% {
    transform: scaleY(1);
  }
  50% {
    transform: scaleY(1.5);
  }
  100% {
    transform: scaleY(1);
  }
}
.p-nav[data-index="0"] .p-nav__bar span {
  transform: translateY(0px);
}
@media (max-width: 767px) {
  .p-nav[data-index="0"] .p-nav__bar span {
    transform: translateY(0px);
  }
}
.p-nav[data-index="1"] .p-nav__bar span {
  transform: translateY(27.2px);
}
@media (max-width: 767px) {
  .p-nav[data-index="1"] .p-nav__bar span {
    transform: translateY(20px);
  }
}
.p-nav[data-index="2"] .p-nav__bar span {
  transform: translateY(54.4px);
}
@media (max-width: 767px) {
  .p-nav[data-index="2"] .p-nav__bar span {
    transform: translateY(40px);
  }
}
.p-nav[data-index="3"] .p-nav__bar span {
  transform: translateY(81.6px);
}
@media (max-width: 767px) {
  .p-nav[data-index="3"] .p-nav__bar span {
    transform: translateY(60px);
  }
}
.p-nav[data-index="4"] .p-nav__bar span {
  transform: translateY(108.8px);
}
@media (max-width: 767px) {
  .p-nav[data-index="4"] .p-nav__bar span {
    transform: translateY(80px);
  }
}
.p-nav[data-index="5"] .p-nav__bar span {
  transform: translateY(136px);
}
@media (max-width: 767px) {
  .p-nav[data-index="5"] .p-nav__bar span {
    transform: translateY(100px);
  }
}
.p-nav[data-index="6"] .p-nav__bar span {
  transform: translateY(163.2px);
}
@media (max-width: 767px) {
  .p-nav[data-index="6"] .p-nav__bar span {
    transform: translateY(120px);
  }
}
.p-nav[data-index="7"] .p-nav__bar span {
  transform: translateY(190.4px);
}
@media (max-width: 767px) {
  .p-nav[data-index="7"] .p-nav__bar span {
    transform: translateY(140px);
  }
}
.p-nav[data-index="8"] .p-nav__bar span {
  transform: translateY(217.6px);
}
@media (max-width: 767px) {
  .p-nav[data-index="8"] .p-nav__bar span {
    transform: translateY(160px);
  }
}
.p-nav[data-index="9"] .p-nav__bar span {
  transform: translateY(244.8px);
}
@media (max-width: 767px) {
  .p-nav[data-index="9"] .p-nav__bar span {
    transform: translateY(180px);
  }
}
.p-nav[data-index="10"] .p-nav__bar span {
  transform: translateY(272px);
}
@media (max-width: 767px) {
  .p-nav[data-index="10"] .p-nav__bar span {
    transform: translateY(200px);
  }
}
.p-nav[data-index="11"] .p-nav__bar span {
  transform: translateY(299.2px);
}
@media (max-width: 767px) {
  .p-nav[data-index="11"] .p-nav__bar span {
    transform: translateY(220px);
  }
}
.p-nav[data-index="12"] .p-nav__bar span {
  transform: translateY(326.4px);
}
@media (max-width: 767px) {
  .p-nav[data-index="12"] .p-nav__bar span {
    transform: translateY(240px);
  }
}
.p-nav[data-index="13"] .p-nav__bar span {
  transform: translateY(353.6px);
}
@media (max-width: 767px) {
  .p-nav[data-index="13"] .p-nav__bar span {
    transform: translateY(260px);
  }
}
.p-nav[data-index="14"] .p-nav__bar span {
  transform: translateY(380.8px);
}
@media (max-width: 767px) {
  .p-nav[data-index="14"] .p-nav__bar span {
    transform: translateY(280px);
  }
}
.p-nav[data-index="15"] .p-nav__bar span {
  transform: translateY(408px);
}
@media (max-width: 767px) {
  .p-nav[data-index="15"] .p-nav__bar span {
    transform: translateY(300px);
  }
}
.p-nav[data-index="16"] .p-nav__bar span {
  transform: translateY(435.2px);
}
@media (max-width: 767px) {
  .p-nav[data-index="16"] .p-nav__bar span {
    transform: translateY(320px);
  }
}
.p-nav[data-index="17"] .p-nav__bar span {
  transform: translateY(462.4px);
}
@media (max-width: 767px) {
  .p-nav[data-index="17"] .p-nav__bar span {
    transform: translateY(340px);
  }
}
.p-nav[data-index="18"] .p-nav__bar span {
  transform: translateY(489.6px);
}
@media (max-width: 767px) {
  .p-nav[data-index="18"] .p-nav__bar span {
    transform: translateY(360px);
  }
}
.p-nav[data-index="19"] .p-nav__bar span {
  transform: translateY(516.8px);
}
@media (max-width: 767px) {
  .p-nav[data-index="19"] .p-nav__bar span {
    transform: translateY(380px);
  }
}

.is-blue .p-nav__bar {
  background: rgba(255, 255, 255, 0.34);
}
.is-blue .p-nav__bar span {
  background: #fff;
}
.is-blue .p-nav__item {
  color: #fff;
}

.p-outro {
  position: relative;
  color: #fff;
}

.p-outro__header {
  position: relative;
  z-index: 2;
}

.p-outro__copy {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 46px;
  line-height: 120%;
  letter-spacing: 0.25em;
}
@media (max-width: 767px) {
  .p-outro__copy {
    font-size: 23px;
  }
}

.p-outro__logo {
  margin-top: 19px;
}
.p-outro__logo svg {
  width: 164.46px;
  height: 26px;
}
@media (max-width: 767px) {
  .p-outro__logo svg {
    width: 143.595px;
    height: 22px;
  }
}

.p-outro__image {
  position: absolute;
  top: 190px;
  right: -7rem;
  min-width: 64.8rem;
  width: 64.8rem;
}
@media (max-width: 1023px) {
  .p-outro__image {
    right: -16rem;
  }
}
@media (max-width: 767px) {
  .p-outro__image {
    margin-top: 40px;
    margin-left: -4rem;
    position: static;
    width: 35rem;
    min-width: 35rem;
  }
}

@-webkit-keyframes OBJECT {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(0);
  }
}

@keyframes OBJECT {
  0% {
    transform: translateY(0);
  }
  50% {
    transform: translateY(-5%);
  }
  100% {
    transform: translateY(0);
  }
}
.p-outro__object {
  -webkit-animation: OBJECT 5s cubic-bezier(0.37, 0, 0.63, 1) infinite;
          animation: OBJECT 5s cubic-bezier(0.37, 0, 0.63, 1) infinite;
}

@-webkit-keyframes SHADOW {
  0% {
    opacity: 1;
    transform: scaleY(1) scaleX(1) translateX(0%);
  }
  50% {
    opacity: 0.4;
    transform: scaleY(1.1) scaleX(1.2) translateX(-12%);
  }
  100% {
    opacity: 1;
    transform: scaleY(1) scaleX(1) translateX(0%);
  }
}

@keyframes SHADOW {
  0% {
    opacity: 1;
    transform: scaleY(1) scaleX(1) translateX(0%);
  }
  50% {
    opacity: 0.4;
    transform: scaleY(1.1) scaleX(1.2) translateX(-12%);
  }
  100% {
    opacity: 1;
    transform: scaleY(1) scaleX(1) translateX(0%);
  }
}
.p-outro__shadow {
  position: absolute;
  left: 0;
  top: 0;
  width: 100%;
  height: 100%;
  transform-origin: left bottom;
  -webkit-animation: SHADOW 5s cubic-bezier(0.37, 0, 0.63, 1) infinite;
          animation: SHADOW 5s cubic-bezier(0.37, 0, 0.63, 1) infinite;
}

.p-outro__content {
  position: relative;
  z-index: 2;
  width: 440px;
  margin-top: 74px;
}
@media (max-width: 767px) {
  .p-outro__content {
    margin-top: 40px;
    width: 100%;
  }
}

.p-outro__title {
  font-family: "游ゴシック", "Yu Gothic", "游ゴシック体", YuGothic, "游ゴシック Medium", "Yu Gothic Medium", "メイリオ", sans-serif;
  font-weight: 700;
  font-size: 28px;
  line-height: 125%;
  letter-spacing: 0.1em;
  font-feature-settings: "palt" on, "liga" off, "kern" off;
}
@media (max-width: 767px) {
  .p-outro__title {
    font-size: 18px;
    line-height: 120%;
    letter-spacing: 0.15em;
  }
}

.p-outro__description {
  margin-top: 18px;
  font-weight: 700;
  font-size: 12px;
  line-height: 250%;
  letter-spacing: 0.1em;
}
@media (max-width: 767px) {
  .p-outro__description {
    font-weight: 500;
    font-size: 12px;
    line-height: 180%;
  }
}

.p-outro__links {
  margin-top: 52px;
}

.p-outro__link {
  padding: 16px 0 16px;
  border-bottom: 1px solid #fff;
}
@media (max-width: 767px) {
  .p-outro__link {
    padding: 22px 0;
  }
}
.p-outro__link:first-child {
  border-top: 1px solid #fff;
}
.p-outro__link .c-link {
  color: #fff;
  justify-content: space-between;
}

.p-slider-section {
  display: flex;
  flex-direction: row-reverse;
  align-items: center;
  justify-content: space-between;
}
@media (max-width: 767px) {
  .p-slider-section {
    display: block;
  }
}

.p-slider-section--reverse {
  flex-direction: row;
}
.p-slider-section--reverse .p-slider-section__slider__inner {
  width: 131.8181818182%;
  margin-left: -31.8181818182%;
  border-right: 1px solid #E1E8ED;
  border-left: none;
}
@media (max-width: 767px) {
  .p-slider-section--reverse .p-slider-section__slider__inner {
    width: calc(100% + 4rem);
    margin-left: -4rem;
  }
}

.p-slider-section__slider {
  flex: 0 1 47.8260869565%;
  width: 47.8260869565%;
}
@media (max-width: 767px) {
  .p-slider-section__slider {
    width: 100%;
  }
}

.p-slider-section__slider__inner {
  position: relative;
  width: 150%;
  border-top: 1px solid #E1E8ED;
  border-left: 1px solid #E1E8ED;
}
.p-slider-section__slider__inner > * {
  max-width: 800px;
  margin: auto;
}
@media (max-width: 767px) {
  .p-slider-section__slider__inner > * {
    max-width: 100%;
  }
}
@media (max-width: 767px) {
  .p-slider-section__slider__inner {
    width: calc(100% + 4rem);
  }
}
.p-slider-section__slider__inner:after {
  position: absolute;
  bottom: 0;
  left: 0;
  z-index: 10;
  display: block;
  content: " ";
  width: 100%;
  height: 1px;
  background-color: #E1E8ED;
}

.p-slider-section__content {
  flex: 0 1 43.4782608696%;
}
@media (max-width: 767px) {
  .p-slider-section__content {
    margin-top: 30px;
  }
}

.p-slider-section__title {
  font-weight: 700;
  font-size: 42px;
  line-height: 125%;
}
.p-slider-section__title * {
  font-feature-settings: "palt" on, "kern" off, "liga" off;
  background: linear-gradient(90deg, #0089D4 50%, #14BAF8 98.07%);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
  text-fill-color: transparent;
}
@media (max-width: 767px) {
  .p-slider-section__title {
    font-size: 27px;
    line-height: 125%;
  }
}

.p-slider-section__description {
  margin-top: 37px;
  font-weight: 500;
  font-size: 14px;
  line-height: 24px;
}
@media (max-width: 767px) {
  .p-slider-section__description {
    margin-top: 18px;
    font-size: 12px;
    line-height: 160%;
  }
}

@media (min-width: 768px) {
  .u-hide--pc {
    display: none !important;
  }
}
@media (min-width: 768px) and (max-width: 1023px) {
  .u-hide--tab {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .u-hide--sp {
    display: none !important;
  }
}

@media (max-width: 767px) {
  .u-show--pc {
    display: none !important;
  }
}
@media (max-width: 1023px) {
  .u-show--pc-only {
    display: none !important;
  }
}
@media (min-width: 768px) {
  .u-show--sp {
    display: none !important;
  }
}
@media (min-width: 1024px) {
  .u-show--tab {
    display: none !important;
  }
}
@media (max-width: 767px) {
  .u-show--tab {
    display: none !important;
  }
}
/*# sourceMappingURL=../maps/style.css.map */
