.l-container {
  inline-size: 90%;
  max-inline-size: 1100px;
  margin-inline: auto;
}
@media screen and (max-width: 768px) {
  .l-container {
    max-inline-size: 500px;
  }
}

:root {
  --header-h: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
  scroll-padding-top: calc(var(--header-h) * 1.5);
}
@media screen and (max-width: 768px) {
  :root {
    --header-h: clamp(55px, 36.7567567568px + 4.8648648649vw, 64px);
  }
}

body {
  background-color: #f5f5f5;
}

main {
  position: relative;
  padding-block: clamp(135px, 83.4277198212px + 6.7064083458vw, 180px) clamp(105px, 64.8882265276px + 5.21609538vw, 140px);
}
main::before {
  content: "";
  position: absolute;
  inset-block-start: 0;
  inset-inline-end: 0;
  z-index: -1;
  inline-size: 73%;
  aspect-ratio: 1040/397;
  background-image: url(../images/common/bg_glow.png);
  background-size: cover;
  background-position: left top;
  background-repeat: no-repeat;
}
main.top {
  -webkit-padding-before: clamp(90px, 55.6184798808px + 4.4709388972vw, 120px);
          padding-block-start: clamp(90px, 55.6184798808px + 4.4709388972vw, 120px);
}
main.top::before {
  display: none;
}

@media screen and (max-width: 768px) {
  main {
    padding-block: clamp(130px, 89.4594594595px + 10.8108108108vw, 150px) clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
  }
  main.top {
    -webkit-padding-before: clamp(120px, 83.5135135135px + 9.7297297297vw, 138px);
            padding-block-start: clamp(120px, 83.5135135135px + 9.7297297297vw, 138px);
  }
}
section {
  position: relative;
}

.slick-prev,
.slick-next {
  position: absolute;
  z-index: 10;
  inset-block-start: 50%;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  inline-size: 20px;
  aspect-ratio: 1/1;
  border: none;
  outline: none;
  background: transparent;
  cursor: pointer;
  font-size: 0;
  color: transparent;
  line-height: 0;
}

.slick-dots {
  position: absolute;
  inset-block-start: 100%;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: 10px;
  inline-size: 100%;
  block-size: -webkit-fit-content;
  block-size: -moz-fit-content;
  block-size: fit-content;
  text-align: center;
}
.slick-dots li {
  position: relative;
  display: inline-block;
  inline-size: 10px;
  aspect-ratio: 1/1;
  cursor: pointer;
}
.slick-dots li button {
  inline-size: 100%;
  aspect-ratio: 1/1;
  border: 0;
  outline: none;
  border-radius: 100%;
  background: #d9d9d9;
  cursor: pointer;
  font-size: 0;
  color: transparent;
  line-height: 0;
}
.slick-dots li.slick-active button {
  background-color: #000;
}

.header {
  position: fixed;
  z-index: 1000;
  inset-block-start: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
  inset-inline-start: 50%;
  -webkit-transform: translateX(-50%);
          transform: translateX(-50%);
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  inline-size: 95%;
  block-size: var(--header-h);
  padding-inline: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
  border-radius: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  background-color: rgba(255, 255, 255, 0.5);
  backdrop-filter: blur(5px) brightness(1);
}
@supports not (backdrop-filter: blur(1px)) {
  .header {
    background-color: rgba(255, 255, 255, 0.5);
  }
}
.header__logo {
  inline-size: clamp(92px, 56.4724292101px + 4.6199701937vw, 123px);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

.gnav__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(30px, 18.5394932936px + 1.4903129657vw, 40px);
}
.gnav__item {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  block-size: var(--header-h);
}
.gnav__link {
  font-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.gnav__link--toggle {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  block-size: 100%;
  -webkit-padding-end: clamp(9px, 5.5618479881px + 0.4470938897vw, 12px);
          padding-inline-end: clamp(9px, 5.5618479881px + 0.4470938897vw, 12px);
}
.gnav__link--toggle::before {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-end: calc(0% - clamp(2px, 0.8539493294px + 0.1490312966vw, 3px));
  -webkit-transform: translate(-50%, -50%) rotate(45deg);
          transform: translate(-50%, -50%) rotate(45deg);
  inline-size: clamp(4px, 2.8539493294px + 0.1490312966vw, 5px);
  aspect-ratio: 1/1;
  -webkit-border-after: 1px solid #2a4256;
          border-block-end: 1px solid #2a4256;
  -webkit-border-end: 1px solid #2a4256;
          border-inline-end: 1px solid #2a4256;
  -webkit-transition: border-color 0.3s;
  transition: border-color 0.3s;
}
.gnav__link--cta {
  position: relative;
  z-index: 10;
  inline-size: clamp(113px, 70.5961251863px + 5.5141579732vw, 150px);
  padding-block: clamp(12px, 7.4157973174px + 0.5961251863vw, 16px);
  border-radius: clamp(4px, 2.8539493294px + 0.1490312966vw, 5px);
  background-image: none;
  color: #fff;
  text-align: center;
}
.gnav__link--cta::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -1;
  border-radius: clamp(4px, 2.8539493294px + 0.1490312966vw, 5px);
  background: #0097c2;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  pointer-events: none;
}
.gnav__link--cta::after {
  content: "";
  position: absolute;
  inset: 0;
  z-index: -2;
  border-radius: clamp(4px, 2.8539493294px + 0.1490312966vw, 5px);
  background: -webkit-gradient(linear, left top, right top, from(#61ead4), color-stop(#7c91ff), to(#70bceb));
  background: linear-gradient(to right, #61ead4, #7c91ff, #70bceb);
  pointer-events: none;
}

.subnav {
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: clamp(-15px, -9.2697466468px + -0.7451564829vw, -20px);
  -webkit-transform: translateY(clamp(4px, 2.8539493294px + 0.1490312966vw, 5px));
          transform: translateY(clamp(4px, 2.8539493294px + 0.1490312966vw, 5px));
  -webkit-padding-before: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          padding-block-start: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  opacity: 0;
  visibility: hidden;
  pointer-events: none;
  -webkit-transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease;
  transition: opacity 0.3s ease, visibility 0.3s ease, transform 0.3s ease, -webkit-transform 0.3s ease;
}
.subnav__list {
  display: grid;
  gap: clamp(19px, 12.1236959762px + 0.8941877794vw, 25px);
  inline-size: clamp(240px, 148.3159463487px + 11.9225037258vw, 320px);
  padding: clamp(23px, 14.9776453055px + 1.043219076vw, 30px);
  border-radius: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  background-color: #2a4256;
}
.subnav__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.subnav__text {
  font-size: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
  color: #fff;
  font-weight: 700;
}

@media (hover: hover) {
  .header__logo:hover {
    opacity: 0.6;
  }
  .gnav__link:not(.gnav__link--cta):hover {
    color: #0097c2;
  }
  .gnav__link--toggle:hover::before {
    border-color: #0097c2;
  }
  .gnav__item:hover .subnav {
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .gnav__link--cta:hover::before {
    opacity: 0;
  }
}
.header__logo:focus-visible {
  opacity: 0.6;
}

.gnav__link:not(.gnav__link--cta):focus-visible {
  color: #0097c2;
}

.gnav__link--toggle:focus-visible::before {
  border-color: #0097c2;
}

.gnav__link--cta:focus-visible::before {
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .header {
    inset-block-start: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
    block-size: var(--header-h);
    padding-inline: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .header__logo {
    position: relative;
    z-index: 1500;
    inline-size: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
  }
  .header__ham {
    position: relative;
    z-index: 1500;
    inline-size: clamp(35px, 22.8378378378px + 3.2432432432vw, 41px);
    aspect-ratio: 1/1;
  }
  .header__ham-bar {
    position: absolute;
    inset-inline-start: 50%;
    -webkit-transform: translate(-50%, -50%);
            transform: translate(-50%, -50%);
    inline-size: 100%;
    block-size: clamp(2px, -0.027027027px + 0.5405405405vw, 3px);
    border-radius: clamp(50px, 33.7837837838px + 4.3243243243vw, 58px);
    background-color: #2a4256;
    -webkit-transition: opacity 0.15s ease;
    transition: opacity 0.15s ease;
    will-change: transform, top, opacity;
  }
  .header__ham-bar:first-of-type {
    inset-block-start: calc(50% - clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-animation: ham-bar01 0.3s forwards;
            animation: ham-bar01 0.3s forwards;
  }
  .header__ham-bar:nth-of-type(2) {
    inset-block-start: 50%;
    opacity: 1;
  }
  .header__ham-bar:last-of-type {
    inset-block-start: calc(50% + clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-animation: ham-bar03 0.3s forwards;
            animation: ham-bar03 0.3s forwards;
  }
  .header__ham.is-active .header__ham-bar:first-of-type {
    -webkit-animation: active-ham-bar01 0.3s forwards;
            animation: active-ham-bar01 0.3s forwards;
  }
  .header__ham.is-active .header__ham-bar:nth-of-type(2) {
    opacity: 0;
  }
  .header__ham.is-active .header__ham-bar:last-of-type {
    -webkit-animation: active-ham-bar03 0.3s forwards;
            animation: active-ham-bar03 0.3s forwards;
  }
  .gnav {
    position: absolute;
    inset-block-start: 0;
    inset-inline-start: 0;
    background-color: #fff;
    inline-size: 100%;
    block-size: 80dvh;
    padding: clamp(100px, 69.5945945946px + 8.1081081081vw, 115px) clamp(20px, 13.9189189189px + 1.6216216216vw, 23px) clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
    overflow: auto;
    opacity: 0;
    visibility: hidden;
    isolation: isolate;
    pointer-events: none;
    -webkit-transition: opacity 0.3s ease, visibility 0.3s ease, pointer-events 0.3s ease;
    transition: opacity 0.3s ease, visibility 0.3s ease, pointer-events 0.3s ease;
  }
  .gnav.is-active {
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .gnav__list {
    display: grid;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    gap: clamp(50px, 33.7837837838px + 4.3243243243vw, 58px);
  }
  .gnav__item {
    display: inline-block;
    block-size: auto;
  }
  .gnav__item:last-of-type {
    -ms-flex-item-align: end;
        align-self: end;
  }
  .gnav__link {
    display: inline-block;
    font-size: clamp(16px, 9.9189189189px + 1.6216216216vw, 19px);
    font-weight: 700;
  }
  .gnav__link--toggle {
    -webkit-padding-end: 0;
            padding-inline-end: 0;
  }
  .gnav__link--toggle::before {
    display: none;
  }
  .gnav__link--cta {
    inline-size: 100%;
    padding-block: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .gnav__link--cta::before {
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .gnav__link--cta::after {
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .subnav {
    position: static;
    inset-block-start: 0;
    inset-inline-start: 0;
    -webkit-transform: translateY(0);
            transform: translateY(0);
    opacity: 1;
    visibility: visible;
    pointer-events: auto;
  }
  .subnav__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px) clamp(50px, 33.7837837838px + 4.3243243243vw, 58px);
    inline-size: 100%;
    padding: 0;
    -webkit-margin-before: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
            margin-block-start: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
    border-radius: 0;
    background-color: transparent;
  }
  .subnav__link {
    display: inline-block;
  }
  .subnav__text {
    font-size: clamp(14px, 7.9189189189px + 1.6216216216vw, 17px);
    color: #2a4256;
    font-weight: 400;
  }
  .subnav .c-square-arrow {
    display: none;
  }
}
@-webkit-keyframes ham-bar01 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  50% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: calc(50% - clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
}
@keyframes ham-bar01 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
  50% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: calc(50% - clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
}
@-webkit-keyframes active-ham-bar01 {
  0% {
    inset-block-start: calc(50% - clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
}
@keyframes active-ham-bar01 {
  0% {
    inset-block-start: calc(50% - clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(45deg);
            transform: translate(-50%, -50%) rotate(45deg);
  }
}
@-webkit-keyframes ham-bar03 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  50% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: calc(50% + clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
}
@keyframes ham-bar03 {
  0% {
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
  50% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: calc(50% + clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
}
@-webkit-keyframes active-ham-bar03 {
  0% {
    inset-block-start: calc(50% + clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
}
@keyframes active-ham-bar03 {
  0% {
    inset-block-start: calc(50% + clamp(8px, 3.9459459459px + 1.0810810811vw, 10px));
  }
  50% {
    -webkit-transform: translate(-50%, -50%) rotate(0);
            transform: translate(-50%, -50%) rotate(0);
  }
  100% {
    inset-block-start: 50%;
    -webkit-transform: translate(-50%, -50%) rotate(-45deg);
            transform: translate(-50%, -50%) rotate(-45deg);
  }
}
.footer {
  padding-block: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px) clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
  background-color: #2a4256;
}
.footer__body {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: start;
      -ms-flex-align: start;
          align-items: flex-start;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  -webkit-margin-after: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
          margin-block-end: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
}
.footer__logo {
  inline-size: clamp(148px, 91.8435171386px + 7.302533532vw, 197px);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.footer__list {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: clamp(23px, 14.9776453055px + 1.043219076vw, 30px) clamp(15px, -59.4932935917px + 9.6870342772vw, 80px);
}
.footer__heading {
  display: inline-block;
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
  color: #fff;
  font-weight: 700;
  line-height: 1.45;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  will-change: opacity;
}
.footer__submenu {
  display: grid;
  gap: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  -webkit-margin-before: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          margin-block-start: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.footer__submenu-link {
  display: inline-block;
  will-change: opacity;
  font-size: clamp(10px, 6.5618479881px + 0.4470938897vw, 13px);
  color: #fff;
  line-height: 1.45;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.footer__meta {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
}
.footer__copyright {
  font-size: clamp(10px, 6.5618479881px + 0.4470938897vw, 13px);
  color: #fff;
  line-height: 1.45;
}
.footer__legal {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: end;
      -ms-flex-pack: end;
          justify-content: flex-end;
  gap: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
}
.footer__legal-link {
  will-change: opacity;
  font-size: clamp(10px, 6.5618479881px + 0.4470938897vw, 13px);
  color: #fff;
  line-height: 1.45;
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}

@media (hover: hover) {
  .footer__logo:hover {
    opacity: 0.6;
  }
  a.footer__heading:hover {
    opacity: 0.6;
  }
  .footer__submenu-link:hover {
    opacity: 0.6;
  }
  .footer__legal-link:hover {
    opacity: 0.6;
  }
}
.footer__logo:focus-visible {
  opacity: 0.6;
}

a.footer__heading:focus-visible {
  opacity: 0.6;
}

.footer__submenu-link:focus-visible {
  opacity: 0.6;
}

.footer__legal-link:focus-visible {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .footer {
    padding-block: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
  .footer__body {
    display: block;
    -webkit-margin-after: clamp(50px, 33.7837837838px + 4.3243243243vw, 58px);
            margin-block-end: clamp(50px, 33.7837837838px + 4.3243243243vw, 58px);
  }
  .footer__logo {
    inline-size: clamp(120px, 83.5135135135px + 9.7297297297vw, 138px);
    -webkit-margin-after: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
            margin-block-end: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
  .footer__list {
    grid-template-columns: 1fr;
    gap: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .footer__heading {
    font-size: clamp(13.5px, 8.4324324324px + 1.3513513514vw, 16px);
  }
  .footer__submenu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
        -ms-flex-align: center;
            align-items: center;
    -webkit-box-pack: start;
        -ms-flex-pack: start;
            justify-content: flex-start;
    -ms-flex-wrap: wrap;
        flex-wrap: wrap;
    gap: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px) clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
    -webkit-margin-before: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            margin-block-start: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .footer__submenu-link {
    font-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
  .footer__meta {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    -webkit-box-orient: vertical;
    -webkit-box-direction: reverse;
        -ms-flex-direction: column-reverse;
            flex-direction: column-reverse;
    gap: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .footer__copyright {
    font-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
  .footer__legal {
    -webkit-box-pack: center;
        -ms-flex-pack: center;
            justify-content: center;
    gap: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
  }
  .footer__legal-link {
    font-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
}
@media screen and (max-width: 768px) {
  .u-show--pc {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  .u-show--pc-tab {
    display: none;
  }
}
@media screen and (min-width: 769px) {
  .u-show--tab {
    display: none;
  }
}
@media screen and (max-width: 500px) {
  .u-show--tab {
    display: none;
  }
}

@media screen and (min-width: 769px) {
  .u-show--tab-sp {
    display: none;
  }
}
@media screen and (min-width: 500px) {
  .u-show--sp {
    display: none;
  }
}
.bg-glow {
  position: absolute;
  inset-block-start: 0;
  -webkit-transform: translate3d(0, -50%, 0);
          transform: translate3d(0, -50%, 0);
  z-index: -1;
}
.bg-glow::before {
  content: "";
  position: absolute;
  inset: 0;
  background-image: url(../images/common/bg_glow.png);
  background-size: cover;
  background-repeat: no-repeat;
  will-change: transform;
}

.u-gradient {
  display: inline-block;
  background: -webkit-gradient(linear, left top, right top, from(#61ead4), color-stop(#7c91ff), to(#70bceb));
  background: linear-gradient(to right, #61ead4, #7c91ff, #70bceb);
  -webkit-background-clip: text;
          background-clip: text;
  -webkit-text-fill-color: transparent;
  color: transparent;
}

.c-heading {
  -webkit-margin-after: clamp(90px, 55.6184798808px + 4.4709388972vw, 120px);
          margin-block-end: clamp(90px, 55.6184798808px + 4.4709388972vw, 120px);
}
.c-heading__title {
  -webkit-margin-after: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
          margin-block-end: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
}
.c-heading__title .u-gradient {
  font-family: "Oxanium", sans-serif;
  font-size: clamp(83px, 52.0566318927px + 4.0238450075vw, 110px);
  letter-spacing: 0;
}
.c-heading__lead {
  font-size: clamp(14px, 9.4157973174px + 0.5961251863vw, 18px);
}
.c-heading__image {
  -webkit-margin-before: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
          margin-block-start: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
}
.c-heading__image img {
  border-radius: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
}

.top .c-heading {
  -webkit-margin-after: clamp(53px, 33.5171385991px + 2.5335320417vw, 70px);
          margin-block-end: clamp(53px, 33.5171385991px + 2.5335320417vw, 70px);
}

@media screen and (max-width: 768px) {
  .c-heading {
    -webkit-margin-after: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
            margin-block-end: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
  }
  .c-heading__title {
    -webkit-margin-after: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            margin-block-end: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .c-heading__title .u-gradient {
    font-size: clamp(60px, 41.7567567568px + 4.8648648649vw, 69px);
  }
  .c-heading__lead {
    font-size: clamp(14px, 7.9189189189px + 1.6216216216vw, 17px);
  }
  .c-heading__image {
    -webkit-margin-before: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
            margin-block-start: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .c-heading__image img {
    border-radius: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .top .c-heading {
    -webkit-margin-after: clamp(35px, 22.8378378378px + 3.2432432432vw, 41px);
            margin-block-end: clamp(35px, 22.8378378378px + 3.2432432432vw, 41px);
  }
}
.c-secHeading {
  -webkit-margin-after: clamp(34px, 21.393442623px + 1.6393442623vw, 45px);
          margin-block-end: clamp(34px, 21.393442623px + 1.6393442623vw, 45px);
}
.c-secHeading__lead {
  -webkit-margin-after: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          margin-block-end: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.c-secHeading__lead span {
  font-family: "Oxanium", sans-serif;
  font-size: clamp(18px, 11.1236959762px + 0.8941877794vw, 24px);
}
.c-secHeading__title {
  font-size: clamp(27px, 16.6855439642px + 1.3412816692vw, 36px);
  font-weight: 700;
  line-height: 1.8;
}

@media screen and (max-width: 768px) {
  .c-secHeading {
    -webkit-margin-after: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
            margin-block-end: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
  }
  .c-secHeading__lead {
    -webkit-margin-after: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
            margin-block-end: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .c-secHeading__lead span {
    font-size: clamp(17px, 10.9189189189px + 1.6216216216vw, 20px);
  }
  .c-secHeading__title {
    font-size: clamp(24px, 15.8918918919px + 2.1621621622vw, 28px);
  }
}
.c-square-arrow {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: clamp(27px, 16.6855439642px + 1.3412816692vw, 36px);
  aspect-ratio: 1/1;
}
.c-square-arrow::before, .c-square-arrow::after {
  content: "";
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  inline-size: 100%;
  aspect-ratio: 1/1;
  -webkit-transition: opacity 0.3s ease, border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: opacity 0.3s ease, border-color 0.3s ease, -webkit-transform 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, border-color 0.3s ease;
  transition: transform 0.3s ease, opacity 0.3s ease, border-color 0.3s ease, -webkit-transform 0.3s ease;
}
.c-square-arrow::before {
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  background: rgba(255, 255, 255, 0.2);
  opacity: 0;
}
.c-square-arrow::after {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
  border: 1px solid #fff;
}
.c-square-arrow .c-arrow {
  position: relative;
  inline-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
  color: #fff;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}

@media (hover: hover) {
  .is-hoverable:hover .c-square-arrow::before {
    -webkit-transform: translate(-50%, -50%) scale(1);
            transform: translate(-50%, -50%) scale(1);
    opacity: 1;
  }
  .is-hoverable:hover .c-square-arrow::after {
    -webkit-transform: translate(-50%, -50%) scale(0);
            transform: translate(-50%, -50%) scale(0);
    opacity: 0;
  }
}
.is-hoverable:focus-visible .c-square-arrow::before {
  -webkit-transform: translate(-50%, -50%) scale(1);
          transform: translate(-50%, -50%) scale(1);
  opacity: 1;
}
.is-hoverable:focus-visible .c-square-arrow::after {
  -webkit-transform: translate(-50%, -50%) scale(0);
          transform: translate(-50%, -50%) scale(0);
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .c-square-arrow {
    inline-size: clamp(32px, 21.8648648649px + 2.7027027027vw, 37px);
  }
  .c-square-arrow .c-arrow {
    inline-size: clamp(14px, 7.9189189189px + 1.6216216216vw, 17px);
  }
}
.c-button {
  position: relative;
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  inline-size: clamp(165px, 101.9672131148px + 8.1967213115vw, 220px);
  padding: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
}
.c-button::before, .c-button::after {
  content: "";
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  -webkit-transition: opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s, border-color 0.3s;
  transition: transform 0.3s, opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
}
.c-button::before {
  -webkit-transform: scale(0);
          transform: scale(0);
  background: rgba(42, 66, 86, 0.2);
  opacity: 0;
}
.c-button::after {
  -webkit-transform: scale(1);
          transform: scale(1);
  border: 1px solid #2a4256;
}
.c-button-text {
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
}
.c-button-arrow {
  inline-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
}

@media (hover: hover) {
  .c-button:hover::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .c-button:hover::after {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
}
.c-button:focus-visible::before {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
.c-button:focus-visible::after {
  -webkit-transform: scale(0);
          transform: scale(0);
  opacity: 0;
}

.c-button--back .c-button-arrow {
  -webkit-transform: scale(-1, 1);
          transform: scale(-1, 1);
}

@media screen and (max-width: 768px) {
  .c-button {
    inline-size: clamp(185px, 128.2432432432px + 15.1351351351vw, 213px);
    padding: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
  .c-button-text {
    font-size: clamp(14px, 7.9189189189px + 1.6216216216vw, 17px);
  }
  .c-button-arrow {
    inline-size: clamp(14px, 7.9189189189px + 1.6216216216vw, 17px);
  }
}
.breadcrumb {
  -webkit-margin-after: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
          margin-block-end: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
}
.breadcrumb__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-wrap: wrap;
      flex-wrap: wrap;
  row-gap: clamp(9px, 5.5618479881px + 0.4470938897vw, 12px);
}
.breadcrumb__item {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-margin-end: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          margin-inline-end: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.breadcrumb__item:not(:last-child)::after {
  content: "";
  display: inline-block;
  width: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
  height: 1px;
  background-color: #9599a5;
  -webkit-margin-start: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          margin-inline-start: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.breadcrumb__link {
  font-size: clamp(9px, 5.5618479881px + 0.4470938897vw, 12px);
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
}
.breadcrumb__current {
  font-size: clamp(9px, 5.5618479881px + 0.4470938897vw, 12px);
  color: #9599a5;
}

@media (hover: hover) {
  .breadcrumb__link:hover {
    opacity: 0.6;
  }
}
.breadcrumb__link:focus-visible {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .breadcrumb {
    -webkit-margin-after: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
            margin-block-end: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .breadcrumb__list {
    row-gap: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
  .breadcrumb__item {
    -webkit-margin-end: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            margin-inline-end: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .breadcrumb__item:not(:last-child)::after {
    width: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
    -webkit-margin-start: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            margin-inline-start: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .breadcrumb__link {
    font-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
  .breadcrumb__current {
    font-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
}
.c-pagination {
  margin-inline: auto;
}
.c-pagination__list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  gap: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
}
.c-pagination__link, .c-pagination__ellipsis {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: center;
      -ms-flex-pack: center;
          justify-content: center;
  inline-size: clamp(30px, 18.5394932936px + 1.4903129657vw, 40px);
  aspect-ratio: 1/1;
  font-family: "Oxanium", sans-serif;
  font-size: clamp(14px, 9.4157973174px + 0.5961251863vw, 18px);
}
.c-pagination__link {
  -webkit-transition: opacity 0.3s ease;
  transition: opacity 0.3s ease;
  will-change: opacity;
}
.c-pagination__item.is-current .c-pagination__link {
  background-color: #2a4256;
  color: #fff;
}

@media (hover: hover) {
  .c-pagination__item:not(.is-current) > .c-pagination__link:hover {
    opacity: 0.6;
  }
}
.c-pagination__item:not(.is-current) > .c-pagination__link:focus-visible {
  opacity: 0.6;
}

@media screen and (max-width: 768px) {
  .c-pagination__list {
    gap: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .c-pagination__link, .c-pagination__ellipsis {
    inline-size: clamp(27px, 16.8648648649px + 2.7027027027vw, 32px);
    font-size: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
}
.mediaSolution__body {
  padding-block: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
  border-radius: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
  background-color: #fff;
  text-align: center;
}
.mediaSolution__title {
  -webkit-margin-after: clamp(23px, 14.9776453055px + 1.043219076vw, 30px);
          margin-block-end: clamp(23px, 14.9776453055px + 1.043219076vw, 30px);
  font-size: clamp(24px, 14.8315946349px + 1.1922503726vw, 32px);
  font-weight: 700;
  line-height: 1.8;
}
.mediaSolution__lead {
  -webkit-margin-after: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
          margin-block-end: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
  line-height: 2;
}
.mediaSolution__marquee {
  position: relative;
  -webkit-margin-after: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
          margin-block-end: clamp(45px, 27.8092399404px + 2.2354694486vw, 60px);
}
.mediaSolution__marquee-viewport {
  position: relative;
  overflow: hidden;
}
.mediaSolution__marquee-track {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(30px, 18.5394932936px + 1.4903129657vw, 40px);
  will-change: transform;
}
.mediaSolution__marquee-list {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -ms-flex-negative: 0;
      flex-shrink: 0;
  gap: clamp(30px, 18.5394932936px + 1.4903129657vw, 40px);
}
.mediaSolution__marquee-item {
  -webkit-box-flex: 0;
      -ms-flex: 0 0 auto;
          flex: 0 0 auto;
}
.mediaSolution__marquee-logo {
  inline-size: auto;
  max-block-size: clamp(23px, 14.9776453055px + 1.043219076vw, 30px);
  pointer-events: none;
}
.mediaSolution .c-button {
  margin-inline: auto;
}

@media screen and (max-width: 768px) {
  .mediaSolution__body {
    padding-block: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
    border-radius: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
    text-align: left;
  }
  .mediaSolution__title {
    -webkit-margin-after: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
            margin-block-end: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
    font-size: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
    text-align: center;
  }
  .mediaSolution__lead {
    inline-size: 90%;
    -webkit-margin-after: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
            margin-block-end: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
    margin-inline: auto;
    font-size: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
  .mediaSolution__marquee {
    -webkit-margin-after: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
            margin-block-end: clamp(25px, 16.8918918919px + 2.1621621622vw, 29px);
  }
  .mediaSolution__marquee-track {
    gap: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .mediaSolution__marquee-list {
    gap: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .mediaSolution__marquee-logo {
    inline-size: auto;
    max-block-size: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
  }
}
.top .mediaSolution {
  padding-block: clamp(75px, 46.348733234px + 3.7257824143vw, 100px) clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
  overflow: hidden;
}
.top .mediaSolution .bg-glow {
  inset-inline-start: 0;
  inline-size: 45%;
  aspect-ratio: 643/397;
}
.top .mediaSolution .bg-glow::before {
  -webkit-transform: scaleX(-1);
          transform: scaleX(-1);
  background-position: left top;
}

@media screen and (max-width: 768px) {
  .top .mediaSolution {
    padding-block: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px) clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
  .top .mediaSolution .bg-glow {
    inline-size: 70%;
    aspect-ratio: 537/400;
  }
}
.service .mediaSolution {
  padding-block: clamp(53px, 33.5171385991px + 2.5335320417vw, 70px);
}

@media screen and (max-width: 768px) {
  .service .mediaSolution {
    padding-block: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
}
.job-posting .mediaSolution,
.agency .mediaSolution,
.creative .mediaSolution,
.worry .mediaSolution {
  -webkit-padding-before: clamp(53px, 33.5171385991px + 2.5335320417vw, 70px);
          padding-block-start: clamp(53px, 33.5171385991px + 2.5335320417vw, 70px);
}
.job-posting .mediaSolution .l-container,
.agency .mediaSolution .l-container,
.creative .mediaSolution .l-container,
.worry .mediaSolution .l-container {
  inline-size: 100%;
}

@media screen and (max-width: 768px) {
  .job-posting .mediaSolution,
  .agency .mediaSolution,
  .creative .mediaSolution,
  .worry .mediaSolution {
    -webkit-padding-before: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
            padding-block-start: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
}
.cta-contact {
  position: relative;
  padding-block: clamp(60px, 37.0789865872px + 2.9806259314vw, 80px);
  background: -webkit-gradient(linear, left top, right top, from(#61ead4), color-stop(#7c91ff), to(#70bceb));
  background: linear-gradient(to right, #61ead4, #7c91ff, #70bceb);
  isolation: isolate;
}
.cta-contact::before {
  content: "";
  position: absolute;
  inset: 0;
  z-index: 0;
  background: url(../images/common/cta-contact_bg.png) center/cover no-repeat;
  mix-blend-mode: overlay;
  pointer-events: none;
}
.cta-contact > .l-container {
  position: relative;
  z-index: 1;
}
.cta-contact__link {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  -webkit-box-pack: justify;
      -ms-flex-pack: justify;
          justify-content: space-between;
  padding: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px) clamp(56px, 34.2250372578px + 2.8315946349vw, 75px);
  border-radius: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  background-color: rgba(255, 255, 255, 0.3);
  backdrop-filter: blur(5px) brightness(1);
  -webkit-transition: background-color 0.3s ease;
  transition: background-color 0.3s ease;
}
@supports not (backdrop-filter: blur(1px)) {
  .cta-contact__link {
    background-color: rgba(255, 255, 255, 0.45);
  }
}
.cta-contact__text {
  display: -webkit-box;
  display: -ms-flexbox;
  display: flex;
  -webkit-box-align: center;
      -ms-flex-align: center;
          align-items: center;
  gap: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
}
.cta-contact__title {
  font-family: "Oxanium", sans-serif;
  font-size: clamp(83px, 52.0566318927px + 4.0238450075vw, 110px);
  color: #fff;
  letter-spacing: 0;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.cta-contact__lead {
  font-size: clamp(14px, 9.4157973174px + 0.5961251863vw, 18px);
  color: #fff;
  -webkit-transition: color 0.3s ease;
  transition: color 0.3s ease;
}
.cta-contact__arrow::before {
  background: #d3d8dc;
}
@media (hover: hover) {
  .cta-contact__link:hover {
    background-color: #fff;
  }
  .cta-contact__link:hover .cta-contact__title,
  .cta-contact__link:hover .cta-contact__lead {
    color: #0097c2;
  }
  .cta-contact__link:hover .cta-contact__arrow::before {
    inline-size: 100%;
    opacity: 1;
  }
  .cta-contact__link:hover .cta-contact__arrow::after {
    inline-size: 0%;
    opacity: 0;
  }
  .cta-contact__link:hover .cta-contact__arrow .c-arrow {
    inline-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
    color: #2a4256;
  }
}
.cta-contact__link:focus-visible {
  background-color: #fff;
}
.cta-contact__link:focus-visible .cta-contact__title,
.cta-contact__link:focus-visible .cta-contact__lead {
  color: #0097c2;
}
.cta-contact__link:focus-visible .cta-contact__arrow::before {
  inline-size: 100%;
  opacity: 1;
}
.cta-contact__link:focus-visible .cta-contact__arrow::after {
  inline-size: 0%;
  opacity: 0;
}
.cta-contact__link:focus-visible .cta-contact__arrow .c-arrow {
  inline-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
  color: #2a4256;
}

@media screen and (max-width: 768px) {
  .cta-contact {
    padding-block: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .cta-contact__link {
    padding: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .cta-contact__text {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: start;
        -ms-flex-align: start;
            align-items: flex-start;
    -webkit-box-orient: vertical;
    -webkit-box-direction: normal;
        -ms-flex-direction: column;
            flex-direction: column;
    gap: 0;
  }
  .cta-contact__title {
    font-size: clamp(55px, 36.7567567568px + 4.8648648649vw, 64px);
  }
  .cta-contact__lead {
    font-size: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
}
strong {
  display: inline-block;
}

.c-single__content {
  max-inline-size: 900px;
  -webkit-margin-after: clamp(105px, 64.8882265276px + 5.21609538vw, 140px);
          margin-block-end: clamp(105px, 64.8882265276px + 5.21609538vw, 140px);
  margin-inline: auto;
}
.c-single__content > :not(.c-single__hd) + * {
  -webkit-margin-before: clamp(26px, 15.6855439642px + 1.3412816692vw, 35px);
          margin-block-start: clamp(26px, 15.6855439642px + 1.3412816692vw, 35px);
}
.c-single__hd {
  position: relative;
  -webkit-margin-after: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          margin-block-end: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  font-weight: 700;
  line-height: 1.8;
}
.c-single__hd:not(:first-child) {
  -webkit-margin-before: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
          margin-block-start: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
}
.c-single__hd--2 {
  -webkit-padding-after: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
          padding-block-end: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  font-size: clamp(24px, 14.8315946349px + 1.1922503726vw, 32px);
}
.c-single__hd--2::before {
  content: "";
  position: absolute;
  inset-block-start: 100%;
  inset-inline-start: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  inline-size: clamp(75px, 46.348733234px + 3.7257824143vw, 100px);
  block-size: 2px;
  background: -webkit-gradient(linear, left top, right top, from(#61ead4), color-stop(#7c91ff), to(#70bceb));
  background: linear-gradient(to right, #61ead4, #7c91ff, #70bceb);
  pointer-events: none;
}
.c-single__hd--3 {
  -webkit-padding-start: clamp(18px, 11.1236959762px + 0.8941877794vw, 24px);
          padding-inline-start: clamp(18px, 11.1236959762px + 0.8941877794vw, 24px);
  font-size: clamp(18px, 11.1236959762px + 0.8941877794vw, 24px);
}
.c-single__hd--3::before {
  content: "";
  position: absolute;
  inset-block-start: calc(clamp(18px, 11.1236959762px + 0.8941877794vw, 24px) * 1.8 / 2);
  inset-inline-start: 0;
  -webkit-transform: translateY(-50%);
          transform: translateY(-50%);
  inline-size: clamp(11px, 7.5618479881px + 0.4470938897vw, 14px);
  aspect-ratio: 1/1;
  border-radius: 100%;
  background: -webkit-gradient(linear, left top, right top, from(#61ead4), color-stop(#7c91ff), to(#70bceb));
  background: linear-gradient(to right, #61ead4, #7c91ff, #70bceb);
  pointer-events: none;
}
.c-single__hd--4 {
  font-size: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
}
.c-single__text {
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
  line-height: 2;
}
.c-single__ul, .c-single__ol {
  list-style-position: inside;
}
.c-single__ul {
  list-style: disc;
}
.c-single__ol {
  list-style: decimal;
}
.c-single__item {
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
  line-height: 2;
}
.c-single__link {
  display: inline-block;
  font-size: clamp(11px, 6.4157973174px + 0.5961251863vw, 15px);
  color: #0097c2;
  line-height: 2;
  text-decoration: underline;
}
.c-single__image {
  inline-size: 83%;
  margin-inline: auto;
  border-radius: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.c-single__image--vertical {
  max-inline-size: 480px;
  margin-inline: auto;
}
.c-single__image.alignleft {
  float: none;
  margin-block: 0;
  margin-inline: 0 auto;
}
.c-single__image.alignright {
  float: none;
  margin-block: 0;
  margin-inline: auto 0;
}
.c-single__slider .slick-prev,
.c-single__slider .slick-next {
  z-index: 10;
  inline-size: clamp(38px, 24.2473919523px + 1.7883755589vw, 50px);
}
.c-single__slider .slick-prev::before, .c-single__slider .slick-prev::after,
.c-single__slider .slick-next::before,
.c-single__slider .slick-next::after {
  content: "";
  position: absolute;
  inset: 0;
  inline-size: 100%;
  block-size: 100%;
  -webkit-box-sizing: border-box;
          box-sizing: border-box;
  -webkit-transition: opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
  transition: opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
  transition: transform 0.3s, opacity 0.3s, border-color 0.3s;
  transition: transform 0.3s, opacity 0.3s, border-color 0.3s, -webkit-transform 0.3s;
}
.c-single__slider .slick-prev::before,
.c-single__slider .slick-next::before {
  -webkit-transform: scale(0);
          transform: scale(0);
  background: rgba(42, 66, 86, 0.2);
  opacity: 0;
}
.c-single__slider .slick-prev::after,
.c-single__slider .slick-next::after {
  -webkit-transform: scale(1);
          transform: scale(1);
  border: 1px solid #2a4256;
}
.c-single__slider .slick-prev span,
.c-single__slider .slick-next span {
  position: absolute;
  inset-block-start: 50%;
  inset-inline-start: 50%;
  -webkit-transform: translate(-50%, -50%);
          transform: translate(-50%, -50%);
  inline-size: clamp(5px, 2.7078986587px + 0.2980625931vw, 7px);
  aspect-ratio: 1/1;
  -webkit-border-before: 1px solid #2a4256;
          border-block-start: 1px solid #2a4256;
  -webkit-border-start: 1px solid #2a4256;
          border-inline-start: 1px solid #2a4256;
}
.c-single__slider .slick-prev {
  inset-inline-start: 0;
}
.c-single__slider .slick-prev span {
  -webkit-transform: translate(-25%, -50%) rotate(-45deg);
          transform: translate(-25%, -50%) rotate(-45deg);
}
.c-single__slider .slick-next {
  inset-inline-end: 0;
}
.c-single__slider .slick-next span {
  -webkit-transform: translate(-75%, -50%) rotate(135deg);
          transform: translate(-75%, -50%) rotate(135deg);
}
.c-single__slider .slick-dots {
  inset-block-start: calc(100% + clamp(23px, 14.9776453055px + 1.043219076vw, 30px));
  gap: clamp(15px, 9.2697466468px + 0.7451564829vw, 20px);
}
.c-single__slider .slick-dots li {
  inline-size: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
}
.c-single__slider .slick-dots li:only-child {
  display: none;
}
.c-single__slider .slick-dots li button {
  background: #d1d2d9;
}
.c-single__slider .slick-dots li.slick-active button {
  background-color: #0097c2;
}
.c-single__slider-inner {
  inline-size: 83%;
  margin-inline: auto;
}
.c-single__slider-image {
  aspect-ratio: 16/9;
  border-radius: clamp(8px, 5.7078986587px + 0.2980625931vw, 10px);
  -o-object-fit: cover;
     object-fit: cover;
  -o-object-position: center;
     object-position: center;
}

@media (hover: hover) {
  .c-single__slider .slick-arrow:hover::before {
    -webkit-transform: scale(1);
            transform: scale(1);
    opacity: 1;
  }
  .c-single__slider .slick-arrow:hover::after {
    -webkit-transform: scale(0);
            transform: scale(0);
    opacity: 0;
  }
}
.c-single__slider .slick-arrow:focus-visible::before {
  -webkit-transform: scale(1);
          transform: scale(1);
  opacity: 1;
}
.c-single__slider .slick-arrow:focus-visible::after {
  -webkit-transform: scale(0);
          transform: scale(0);
  opacity: 0;
}

@media screen and (max-width: 768px) {
  .c-single__content {
    max-inline-size: none;
    -webkit-margin-after: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
            margin-block-end: clamp(80px, 55.6756756757px + 6.4864864865vw, 92px);
  }
  .c-single__content > :not(.c-single__hd) + * {
    -webkit-margin-before: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
            margin-block-start: clamp(30px, 19.8648648649px + 2.7027027027vw, 35px);
  }
  .c-single__hd {
    -webkit-margin-after: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            margin-block-end: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .c-single__hd:not(:first-child) {
    -webkit-margin-before: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
            margin-block-start: clamp(40px, 27.8378378378px + 3.2432432432vw, 46px);
  }
  .c-single__hd--2 {
    -webkit-padding-after: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
            padding-block-end: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
    font-size: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
  }
  .c-single__hd--2::before {
    inline-size: clamp(75px, 50.6756756757px + 6.4864864865vw, 87px);
  }
  .c-single__hd--3 {
    -webkit-padding-start: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
            padding-inline-start: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
    font-size: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
  }
  .c-single__hd--3::before {
    inset-block-start: calc(clamp(20px, 13.9189189189px + 1.6216216216vw, 23px) * 1.8 / 2);
    inline-size: clamp(12px, 7.9459459459px + 1.0810810811vw, 14px);
  }
  .c-single__hd--4 {
    font-size: clamp(17px, 10.9189189189px + 1.6216216216vw, 20px);
  }
  .c-single__text {
    font-size: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
  .c-single__ul, .c-single__ol {
    list-style-position: inside;
  }
  .c-single__item {
    font-size: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
  .c-single__link {
    font-size: clamp(15px, 8.9189189189px + 1.6216216216vw, 18px);
  }
  .c-single__image {
    inline-size: 100%;
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
  .c-single__image--vertical {
    max-inline-size: none;
  }
  .c-single__slider {
    position: relative;
    inline-size: 100vw;
    -webkit-transform: translateX(-50%);
            transform: translateX(-50%);
    inset-inline-start: 50%;
  }
  .c-single__slider .slick-prev,
  .c-single__slider .slick-next {
    display: none;
  }
  .c-single__slider .slick-dots {
    inset-block-start: calc(100% + clamp(30px, 19.8648648649px + 2.7027027027vw, 35px));
    gap: clamp(20px, 13.9189189189px + 1.6216216216vw, 23px);
  }
  .c-single__slider .slick-dots li {
    inline-size: clamp(10px, 5.9459459459px + 1.0810810811vw, 12px);
  }
  .c-single__slider-inner {
    inline-size: 93%;
  }
  .c-single__slider-image {
    border-radius: clamp(5px, 2.972972973px + 0.5405405405vw, 6px);
  }
}
/*# sourceMappingURL=style.css.map */
