@charset "UTF-8";

@font-face {
    font-family: Jokker;
    font-style: normal;
    font-weight: 600;
    font-display: block;
    src: url(/assets/font/Jokker-Semibold.woff2) format("woff2")
}

*,
:after,
:before {
    box-sizing: border-box
}

blockquote,
body,
button,
dd,
dl,
fieldset,
h1,
h2,
h3,
h4,
h5,
h6,
hr,
iframe,
input,
legend,
ol,
option,
p,
pre,
select,
td,
textarea,
th,
ul {
    margin: 0;
    padding: 0;
    border: none
}

h1,
h2,
h3,
h4,
h5,
h6,
small,
strong,
sub,
sup,
th {
    font-size: inherit;
    font-weight: inherit
}

address,
cite,
dfn,
em,
var {
    font-style: normal
}

caption,
th {
    text-align: left
}

a,
abbr[title],
ins {
    text-decoration: none
}

html {
    -webkit-tap-highlight-color: rgba(0, 0, 0, 0)
}

body,
html {
    text-size-adjust: 100%;
    -webkit-text-size-adjust: 100%
}

body {
    line-height: 1
}

ol,
ul {
    list-style-type: none
}

table {
    border-collapse: collapse;
    border-spacing: 0
}

a {
    color: inherit
}

q:after,
q:before {
    content: none
}

sub,
sup {
    vertical-align: initial
}

mark {
    background: none;
    color: inherit
}

svg {
    overflow: visible
}

button,
input,
select,
textarea {
    background: none;
    color: inherit;
    font-family: inherit;
    font-size: inherit
}

select {
    border-radius: 0;
    -webkit-appearance: none;
    appearance: none
}

select::-ms-expand {
    display: none
}

a,
button,
input[type=checkbox],
input[type=radio],
label,
select {
    cursor: pointer
}

button {
    outline: none
}

[data-whatinput=keyboard] button:focus {
    outline: auto
}

@keyframes animationGradient {
    0% {
        background-position: 0 0
    }

    50% {
        background-position: 100% 100%
    }

    to {
        background-position: 0 0
    }
}

@keyframes moveLight {
    0% {
        transform: translate(0) scale(1.2) rotate(0deg)
    }

    20% {
        transform: translate(-5%, -14%) scale(1.4) rotate(15deg)
    }

    40% {
        transform: translate(-10%, -28%) scale(1.3) rotate(25deg)
    }

    60% {
        transform: translate(-15%, -14%) scale(1.6) rotate(15deg)
    }

    80% {
        transform: translate(-5%, 5%) scale(1.25) rotate(8deg)
    }

    to {
        transform: translate(0) scale(1.2) rotate(0deg)
    }
}

@keyframes moveBackground {
    0% {
        transform: translateX(0)
    }

    50% {
        transform: translateX(-10%)
    }

    to {
        transform: translateX(0)
    }
}

@keyframes downloop {
    0% {
        opacity: 1;
        transform: translateY(0) rotate(90deg)
    }

    12% {
        opacity: 0;
        transform: translateY(120%) rotate(90deg)
    }

    20% {
        opacity: 0;
        transform: translateY(-100%) rotate(90deg)
    }

    34% {
        opacity: 1;
        transform: translateY(0) rotate(90deg)
    }

    to {
        opacity: 1;
        transform: translateY(0) rotate(90deg)
    }
}

@keyframes loadingIcon {
    0% {
        opacity: .2
    }

    50% {
        opacity: 1
    }

    to {
        opacity: .2
    }
}

@keyframes rotation {
    0% {
        transform: rotate(0deg)
    }

    to {
        transform: rotate(1turn)
    }
}

@keyframes noiseAnimation {
    0% {
        transform: translate(0)
    }

    10% {
        transform: translate(-5%, -5%)
    }

    20% {
        transform: translate(-10%, 5%)
    }

    30% {
        transform: translate(5%, -10%)
    }

    40% {
        transform: translate(-5%, 15%)
    }

    50% {
        transform: translate(-10%, 5%)
    }

    60% {
        transform: translate(15%)
    }

    70% {
        transform: translateY(10%)
    }

    80% {
        transform: translate(-15%)
    }

    90% {
        transform: translate(10%, 5%)
    }

    to {
        transform: translate(5%)
    }
}

html {
    overflow-y: scroll;
    min-height: 100%;
    -webkit-font-smoothing: antialiased
}

html.bMobile {
    overflow-y: visible
}

html.sWait {
    cursor: wait
}

html.-full {
    overflow: hidden;
    height: 100%
}

html.lenis {
    height: auto
}

.lenis.lenis-smooth {
    scroll-behavior: auto
}

.lenis.lenis-smooth [data-lenis-prevent] {
    overscroll-behavior: contain
}

.lenis.lenis-scrolling iframe {
    pointer-events: none
}

body {
    font-family: 游ゴシック体 Pr6N B, Yu Gothic Pr6N B, Yu Gothic Bold, 游ゴシック Bold, YuGothic, 游ゴシック体, sans-serif;
    font-weight: 600;
    min-height: 100%;
    color: #083151;
    font-feature-settings: "palt"
}

.bAndroid body {
    font-weight: 700
}

html.-full body {
    height: 100%
}

body .cScroll {
    opacity: 0
}

body .cBackground,
body .cNoise,
body .cScreen {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    pointer-events: none
}

body .cBackground {
    z-index: -2
}

body .cNoise {
    z-index: -1
}

body .cNoise:after {
    content: "";
    display: block;
    position: absolute;
    top: -50%;
    left: -50%;
    will-change: transform;
    animation: noiseAnimation 2s steps(4) infinite;
    background-image: url(../img/common/noise.png);
    width: 200%;
    height: 200%;
    opacity: .032
}

body .cScreen {
    background: linear-gradient(180deg, rgba(8, 49, 81, 0), rgba(8, 49, 81, .7));
    opacity: 0
}

.cAfterImageText-inner {
    position: relative;
    display: block
}

.cAfterImageText-text {
    will-change: transform
}

.cAfterImageText-text:not(:first-of-type) {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    width: 100%;
    pointer-events: none
}

.cButton {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    overflow: hidden;
    isolation: isolate;
    background: #38a1db;
    flex-shrink: 0
}

[data-whatintent=mouse] .cButton:hover {
    background: #56afe0
}

[data-whatintent=mouse] .cButton:hover .cButton-iconBg {
    transform: scale(1.25)
}

.cButton-text {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    letter-spacing: .025em
}

.cButton-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center
}

.cButton-icon,
.cButton-iconBg {
    transition: transform .3s cubic-bezier(.23, 1, .32, 1)
}

.cButton-iconBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: inline-block;
    background: #e8f0f7
}

.cButton-arrowWrap {
    width: 80%;
    height: 80%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate
}

.cButton-arrow {
    fill: #083151
}

.-blank .cButton-arrow {
    transform: rotate(-45deg)
}

.cCatchTitle {
    display: flex;
    flex-direction: column;
    align-items: flex-start
}

.cCatchTitle-text {
    position: relative;
    overflow: hidden
}

.cCatchTitle-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    transform: scale(0, 100%);
    background: #083151;
    transform-origin: left bottom
}

.cCatchTitle-line {
    display: inline-block;
    position: relative;
    color: #fff;
    line-height: 1
}

.cCatchTitle.-white .cCatchTitle-line {
    color: #083151
}

.cCatchTitle.-white .cCatchTitle-bg {
    background: #fff
}

.cFooter {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    overflow: hidden
}

.cFooter-mask {
    will-change: transform
}

.cFooter-inner {
    letter-spacing: .025em;
    color: #fff
}

.cFooter-head {
    position: relative
}

.cFooter-logoLink {
    display: inline-block
}

.cFooter-logo {
    color: #fff
}

.cFooter-snsItem {
    opacity: .5
}

.cFooter .snsItem a {
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cFooter .snsItem a:hover {
    opacity: .6;
    transition: opacity 0s
}

.cFooter-pageTop {
    display: inline-flex;
    align-items: center;
    justify-content: flex-end;
    width: max-content;
    margin-left: auto;
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cFooter-pageTop:hover {
    opacity: .6;
    transition: opacity 0s
}

[data-whatintent=mouse] .cFooter-pageTop:hover .arrow {
    transform: translateY(-5px) rotate(-90deg)
}

.cFooter-content {
    display: flex
}

.cFooter-content-item .list {
    position: relative
}

.cFooter-content-item .list:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background: hsla(0, 0%, 100%, .1)
}

.cFooter-content-item .list .item {
    line-height: 1
}

.cFooter-content-item .list .item a {
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cFooter-content-item .list .item a:hover {
    opacity: .6;
    transition: opacity 0s
}

.cFooter-content-link {
    position: relative;
    width: max-content;
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cFooter-content-link:hover {
    opacity: .6;
    transition: opacity 0s
}

[data-whatintent=mouse] .cFooter-content-link:hover .dot {
    scale: 1.5
}

.cFooter-content-link .dot {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transform-origin: top;
    display: inline-block;
    background: #fff;
    border-radius: 50%;
    transition: scale .3s cubic-bezier(.23, 1, .32, 1)
}

.cFooter-serviceLink {
    overflow: hidden;
    isolation: isolate;
    background-color: #f4f7f9
}

[data-whatintent=mouse] .cFooter-serviceLink:hover .cFooter-serviceLink-arrow {
    transform: translate(5px)
}

[data-whatintent=mouse] .cFooter-serviceLink:hover .cFooter-serviceLink-img.-current,
[data-whatintent=mouse] .cFooter-serviceLink:hover .cFooter-video.-current {
    scale: 1.1
}

.cFooter-serviceLink-thumb {
    overflow: hidden
}

.cFooter-serviceLink-img {
    width: 100%;
    height: 100%;
    object-fit: cover;
    display: none
}

.cFooter-serviceLink-img.-current {
    display: block
}

.cFooter-serviceLink .award,
.cFooter-serviceLink .band {
    display: flex;
    align-items: center
}

.cFooter-serviceLink .band {
    justify-content: space-between;
    color: #083151
}

.cFooter-serviceLink-arrow {
    rotate: -45deg
}

.cFooter-serviceLink .award {
    position: relative;
    justify-content: center
}

.cFooter-serviceLink .award:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    background-color: rgba(8, 49, 81, .05);
    border-radius: 2px
}

.cFooter-serviceLink .award-mark {
    height: auto
}
.award img{
    width: 45%;
}

.cFooter-video {
    width: 100.2%;
    height: 100.2%;
    object-fit: cover;
    display: none
}

.cFooter-video.-current {
    display: block
}

.cFooter-lineArea {
    width: 100%
}

.cFooter-line {
    background: hsla(0, 0%, 100%, .1)
}

.cFooter-bottom {
    position: relative
}

.cFooter-bottom .copyright {
    opacity: .5
}

.cFooter-privacy {
    display: flex;
    align-items: center
}

.cFooter-privacy-icon {
    background-color: #fff
}

.cFooter-privacy-icon img {
    display: block;
    width: 100%;
    height: 100%
}

.cFooter-privacy-link {
    transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cFooter-privacy-link:hover {
    opacity: .6;
    transition: opacity 0s
}

.cGradientButton {
    position: relative;
    display: inline-flex;
    align-items: center;
    justify-content: space-between;
    color: #fff;
    overflow: hidden;
    isolation: isolate
}

[data-whatintent=mouse] .cGradientButton:hover .cGradientButton-circle img {
    opacity: 1
}

[data-whatintent=mouse] .cGradientButton:hover .cGradientButton-iconBg {
    background: #38a1db;
    scale: 1.25
}

[data-whatintent=mouse] .cGradientButton:hover .cGradientButton-arrow {
    fill: #fff
}

.cGradientButton-icon,
.cGradientButton-text {
    z-index: 2
}

.cGradientButton-text {
    font-family: Jokker, sans-serif;
    font-weight: 600
}

.cGradientButton-icon {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    isolation: isolate
}

.cGradientButton-iconBg {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    border-radius: 50%;
    display: block;
    background-color: #e8f0f7;
    transition: scale .3s cubic-bezier(.23, 1, .32, 1), background-color .3s cubic-bezier(.23, 1, .32, 1)
}

.cGradientButton-arrowWrap {
    width: 80%;
    height: 80%;
    display: flex;
    align-items: center;
    justify-content: center;
    overflow: hidden;
    isolation: isolate
}

.cGradientButton-arrow {
    fill: #083151
}

.-blank .cGradientButton-arrow {
    transform: rotate(-45deg)
}

.cGradientButton-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: block;
    pointer-events: none
}

.cGradientButton-circle {
    position: absolute;
    top: -30%;
    left: -20%;
    border-radius: 50%;
    display: block;
    background: #083151
}

.cGradientButton-circle img {
    position: absolute;
    top: -20%;
    left: 0;
    display: block;
    width: 110%;
    height: auto;
    opacity: .6;
    animation: moveLight 20s linear infinite;
    transition: opacity .6s cubic-bezier(.23, 1, .32, 1)
}

.cGradientText {
    display: inline-block;
    color: transparent;
    background-image: url(../img/common/pattern01.png.webp);
    background-repeat: no-repeat;
    background-size: 300% 300%;
    background-clip: text;
    -webkit-background-clip: text;
    animation: animationGradient 5s linear infinite
}

.cGradientText.-ptn2 {
    background-image: url(../img/common/pattern02.png.webp)
}

.cGrid .lg-space {
    pointer-events: none;
    visibility: hidden
}

.cGuide {
    z-index: 1500;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    display: flex;
    opacity: 0;
    pointer-events: none;
    font-size: 10px
}

.cGuide-inner {
    position: relative;
    width: 100%;
    margin: 0 auto;
    display: grid;
    grid-template-columns: repeat(12, 1fr);
    justify-content: space-between;
    padding: 0 76px 0 20px
}

.cGuide-guide {
    position: absolute;
    bottom: 160px;
    left: 0;
    width: 100%;
    height: 32px;
    padding-top: 8px;
    border-top: 1px solid red;
    color: red;
    text-align: center
}

.cGuide-line {
    position: relative;
    width: 100%;
    height: 100%;
    padding-left: 56px;
    list-style: none
}

.cGuide-line:before {
    content: "56px";
    position: absolute;
    left: 0;
    bottom: 240px;
    width: 56px;
    height: 16px;
    padding-top: 8px;
    border-top: 1px solid #a2ff00;
    text-align: center;
    color: #a2ff00
}

.cGuide-line div {
    width: 100%;
    height: 100%;
    background: #a2ff00;
    opacity: .3
}

.cGuide-line:first-of-type:before {
    display: none
}

.cHeader {
    z-index: 1100;
    font-family: Jokker, sans-serif;
    font-weight: 600;
    position: fixed;
    top: 0;
    left: 0;
    right: 0;
    bottom: 0;
    width: 100%;
    height: 100%;
    pointer-events: none;
    transition: background .3s cubic-bezier(.23, 1, .32, 1);
    opacity: 0
}

.cHeader.-current .cHeader-menu,
.cHeader.-show .cHeader-menu {
    background: #f4f7f9
}

/* .cHeader.-current .cHeader-inner,
.cHeader.-current .cHeader-nav,
.cHeader.-show .cHeader-inner,
.cHeader.-show .cHeader-nav {
    pointer-events: auto
} */

.cHeader.-show {
    background: rgba(56, 161, 219, .5)
}

.-open .cHeader {
    transform: translateY(0)
}

.-open .cHeader.-current .cHeader-menu {
    background: #fff
}

.cHeader-inner {
    transition: transform .5s cubic-bezier(.23, 1, .32, 1), background .3s cubic-bezier(.23, 1, .32, 1), opacity .1s cubic-bezier(.23, 1, .32, 1), height .2s cubic-bezier(.25, 1, .5, 1), margin .3s cubic-bezier(.23, 1, .32, 1), padding .3s cubic-bezier(.23, 1, .32, 1)
}

.-current .cHeader-inner,
.-show .cHeader-inner {
    background: #fff
}

.cHeader-nav {
    display: flex;
    align-items: center;
    pointer-events: none
}

.cHeader-logo {
    display: block;
    pointer-events: auto
}

.cHeader-logoInner {
    display: block;
    width: 100%;
    height: 100%
}

.cHeader-logoImage {
    width: 80%;
    height: auto;
    transform: translateY(-20px);
}

.cHeader-item {
    pointer-events: none
}

.cHeader-item.-current {
    color: #38a1db
}

.cHeader-link {
    position: relative;
    transition: color .3s cubic-bezier(.23, 1, .32, 1);
    pointer-events: auto
}

[data-whatintent=mouse] .cHeader-link:hover {
    color: #38a1db;
    transition: color 0s
}

.cHeader-link .dot {
    position: absolute;
    top: 50%;
    left: 0;
    transform: translateY(-50%);
    transform-origin: top;
    display: inline-block;
    background: #083151;
    border-radius: 50%;
    transition: scale .3s cubic-bezier(.23, 1, .32, 1)
}

.cHeader-contactButton {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: center;
    pointer-events: auto;
    transition: color .3s cubic-bezier(.23, 1, .32, 1)
}

.cHeader-contactButton.-current {
    color: #38a1db
}

.cHeader-contactButton .dot {
    position: absolute;
    display: inline-block;
    background: linear-gradient(45deg, #4d4398, #5cc4e5);
    border-radius: 50%;
    transition: scale .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cHeader-contactButton:hover {
    color: #38a1db;
    transition: color 0s
}

.cHeader-menu {
    display: flex;
    align-items: center;
    justify-content: center;
    flex-direction: column;
    width: 4rem;
    height: 4rem;
    margin-left: auto;
    border-radius: 50%;
    background-color: #fff;
    border: 3px solid hsla(0, 0%, 100%, .05);
    pointer-events: auto;
    transition: border .3s cubic-bezier(.23, 1, .32, 1)
}

.-open .cHeader-menu {
    border: 3px solid rgba(8, 49, 81, .05);
    background-color: #fff
}

.cHeader-menu .line {
    display: inline-block;
    height: 3px;
    width: 6px;
    border-radius: 3px
}

.cHeader-menu .line:not(:first-of-type) {
    margin-top: 3px
}

.cHeader-menu .line:first-of-type {
    background: #70d3e9
}

.cHeader-menu .line:nth-of-type(2) {
    background: #6cbbe0;
    transition: width .4s cubic-bezier(.23, 1, .32, 1)
}

.cHeader-menu .line:nth-of-type(3) {
    background: #6ab7de
}

.cHeader-menu .line:first-of-type,
.cHeader-menu .line:nth-of-type(3) {
    transition: scale .3s cubic-bezier(.23, 1, .32, 1)
}

.-open .cHeader-menu .line:nth-of-type(2) {
    width: 18px;
    background: linear-gradient(90deg, #38a1db, #61a0d5)
}

.-open .cHeader-menu .line:first-of-type,
.-open .cHeader-menu .line:nth-of-type(3) {
    scale: 0;
    transition: scale .6s cubic-bezier(.23, 1, .32, 1) .08s
}

.-open .cHeader-menu .line:nth-of-type(3) {
    transition-delay: .16s
}

.cHeader-subNav {
    display: none;
    opacity: 0;
    margin: 0 -12px
}

.-show .cHeader-subNav {
    display: flex
}

.cHeader-subNav .list {
    position: relative
}

.cHeader-subNav .list:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    bottom: 0;
    background: #f4f7f9
}

.cHeader-subNav .list .item a {
    transition: color .3s cubic-bezier(.23, 1, .32, 1);
    line-height: 1
}

[data-whatintent=mouse] .cHeader-subNav .list .item a:hover {
    color: #38a1db;
    transition: color 0s
}

.cHeader-serviceLink {
    overflow: hidden;
    background-color: #f4f7f9
}

.cHeader-serviceLink-thumb {
    overflow: hidden;
    isolation: isolate;
    width: 11.25rem;
    height: 100%
}

.cHeader-serviceLink-text {
    font-size: 16px;
    line-height: 1.2;
    transition: color .3s cubic-bezier(.23, 1, .32, 1)
}

.cHeader-serviceLink .band {
    display: flex;
    justify-content: space-between;
    align-items: center
}

.cHeader-serviceLink-arrow {
    rotate: -45deg;
    transition: transform .3s cubic-bezier(.23, 1, .32, 1)
}

[data-whatintent=mouse] .cHeader-serviceLink:hover .cHeader-image.-current,
[data-whatintent=mouse] .cHeader-serviceLink:hover .cHeader-video.-current {
    scale: 1.1
}

[data-whatintent=mouse] .cHeader-serviceLink:hover .cHeader-serviceLink-text {
    color: #38a1db;
    transition: color 0s
}

[data-whatintent=mouse] .cHeader-serviceLink:hover .cHeader-serviceLink-arrow {
    transform: translate(5px)
}

.cHeader-image,
.cHeader-video {
    display: none;
    width: 100%;
    height: 100%;
    object-fit: cover
}

.cHeader-image.-current,
.cHeader-video.-current {
    display: block
}

.cLink {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    position: relative;
    width: 100%
}

.cLink-bg {
    position: absolute;
    top: 0;
    left: 0;
    height: 100%;
    background-color: hsla(0, 0%, 100%, .9);
    pointer-events: none;
    transform-origin: center center;
    will-change: transform
}

.cLink-bg,
.cLink-content {
    width: 100%
}

.cLink-title {
    position: relative;
    color: transparent;
    background-image: url(../img/common/background.png.webp);
    background-repeat: no-repeat;
    background-size: cover;
    background-clip: text;
    -webkit-background-clip: text;
    animation: animationGradient 6s linear infinite
}

.cLink-title:before {
    content: "";
    position: absolute;
    top: 50%;
    left: 0;
    background-color: rgba(8, 49, 81, .05);
    border-radius: 2px;
    transform: translateY(-50%)
}

.cLink-item {
    color: #e8f0f7;
    overflow: hidden;
    isolation: isolate;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden
}

[data-whatintent=mouse] .cLink-item:hover .cLink-background {
    transform: scale(.95)
}

.cLink-item .cLink-background {
    background: #38a1db
}

.cLink-item+.cLink-item .cLink-background {
    background: #4d4398
}

.cLink-itemInner {
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    width: 100%;
    height: 100%;
    position: relative
}

.cLink-itemInner:focus .cLink-background {
    transform: scale(.95)
}

.cLink-head {
    display: flex;
    justify-content: space-between
}

.cLink-slider {
    position: absolute;
    overflow: hidden;
    isolation: isolate;
    z-index: 1
}

.cLink-slider-item {
    position: absolute;
    inset: 0;
    z-index: 2
}

.cLink-slider-mask {
    position: absolute;
    inset: 0;
    -webkit-mask-image: url(../img/common/mask.png);
    mask-image: url(../img/common/mask.png);
    mask-mode: alpha;
    -webkit-mask-repeat: no-repeat;
    mask-repeat: no-repeat;
    -webkit-mask-size: 250% 250%;
    mask-size: 250% 250%;
    -webkit-mask-position: -100% -100%;
    mask-position: -100% -100%;
    visibility: hidden;
    z-index: 0
}

.cLink-slider-mask:first-of-type {
    z-index: 1;
    -webkit-mask-position: 100% 100%;
    mask-position: 100% 100%;
    visibility: visible
}

.cLink-slider-image {
    position: absolute;
    inset: 0
}

.cLink-slider-image img {
    width: 100%;
    height: 100%;
    object-fit: cover
}

.cLink-bottom {
    display: flex;
    align-items: center
}

.cLink-itemTitle .subTitle {
    font-weight: 600;
    display: inline-block;
    opacity: .5
}

.bAndroid .cLink-itemTitle .subTitle {
    font-weight: 700
}

.cLink-line {
    display: block;
    background-color: hsla(0, 0%, 100%, .2);
    margin-left: auto
}

.cLink-icon {
    overflow: hidden;
    isolation: isolate
}

.cLinkCareer-item:nth-of-type(2) .subTitle {
    color: #4d4398
}

.cLinkCareer-item:nth-of-type(2) .cLinkCareer-arrow {
    fill: #4d4398
}

.cLinkCareer-itemInner {
    position: relative;
    display: flex;
    align-items: center;
    justify-content: space-between;
    width: 100%;
    height: 100%
}

[data-whatintent=mouse] .cLinkCareer-itemInner:hover .cLinkCareer-background {
    scale: .95
}

.cLinkCareer-background {
    position: absolute;
    background: #fff;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.cLinkCareer-itemTitle {
    position: relative
}

.cLinkCareer-itemTitle .subTitle {
    font-weight: 600;
    display: inline-block;
    color: #38a1db
}

.bAndroid .cLinkCareer-itemTitle .subTitle {
    font-weight: 700
}

.cLinkCareer-entry-line,
.cLinkCareer-line {
    display: block;
    margin-left: auto
}

.cLinkCareer-line {
    position: relative;
    background-color: rgba(8, 49, 81, .1)
}

.cLinkCareer-entry-icon,
.cLinkCareer-icon {
    overflow: hidden;
    isolation: isolate
}

.cLinkCareer-arrow {
    fill: #38a1db
}

.-blank .cLinkCareer-arrow {
    transform: rotate(-45deg)
}

.cLinkCareer-entry {
    position: relative;
    width: 100%;
    display: flex;
    align-items: center;
    justify-content: space-between
}

[data-whatintent=mouse] .cLinkCareer-entry:hover .cLinkCareer-entry-background {
    scale: .97
}

.cLinkCareer-entry-background {
    position: absolute;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    isolation: isolate
}

.cLinkCareer-entry-itemTitle {
    position: relative
}

.cLinkCareer-entry-itemTitle .title {
    color: #fff
}

.cLinkCareer-entry-itemTitle .subTitle {
    font-weight: 600;
    color: #fff;
    opacity: .5;
    display: inline-block
}

.bAndroid .cLinkCareer-entry-itemTitle .subTitle {
    font-weight: 700
}

.cLinkCareer-entry-line {
    position: relative;
    background-color: hsla(0, 0%, 100%, .2)
}

.cLinkCareer-entry-arrow {
    fill: #fff;
    transform: rotate(-45deg)
}

.cLink-background {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    overflow: hidden;
    -webkit-backface-visibility: hidden;
    backface-visibility: hidden;
    z-index: -1;
    transition: transform .6s cubic-bezier(.25, 1, .5, 1)
}

.cLink-stalker {
    position: absolute;
    top: 0;
    left: 0;
    width: 300%;
    height: 300%;
    opacity: .7
}

.cLink-stalker img {
    position: absolute;
    top: -40%;
    left: -25%;
    width: 100%;
    height: auto
}

.cLink-canvas {
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.cLoading {
    z-index: 1400;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    display: flex;
    flex-direction: column;
    align-items: center;
    justify-content: center;
    pointer-events: none
}

.cLoading-content {
    position: relative
}

.cLoading-logo path {
    fill: #fff;
    transform:translateX(40px);
}

.cLoading-progress {
    position: absolute;
    left: 50%;
    transform: translateX(-50%)
}

.cLoading-progress .-no01,
.cLoading-progress .-no02,
.cLoading-progress .-no03 {
    color: #fff;
    animation: loadingIcon 2.25s infinite
}

.cLoading-progress .-no02 {
    animation-delay: -1.5s
}

.cLoading-progress .-no03 {
    animation-delay: -.75s
}

.cLoading-progressIcon {
    width: 100%;
    height: 100%;
    display: inline-flex;
    flex-wrap: wrap;
    justify-content: space-between;
    animation: rotation 1.8s linear infinite
}

.cMenu {
    z-index: 900;
    font-family: Jokker, sans-serif;
    font-weight: 600
}

.cMenu-content {
    position: relative;
    height: -moz-fit-content;
    height: fit-content;
    margin: .5rem;
    padding: 10rem 1.5rem 2rem;
    border-radius: 1.5rem;
    background-color: #fff;
    overflow: hidden
}

.bPortraitTablet .cMenu-content {
    padding: 7.75rem 1.5rem 2rem
}

.cMenu-list {
    pointer-events: auto
}

.cMenu-item+.cMenu-item {
    margin-top: 1rem
}

.bPortraitTablet .cMenu-item+.cMenu-item {
    margin-top: .5rem
}

.cMenu-item.-current {
    color: #38a1db
}

.cMenu-link {
    display: inline-block;
    overflow: hidden
}

.cMenu-text {
    font-size: 1.5rem;
    position: relative;
    display: flex;
    align-items: center;
    padding-left: .75rem
}

.cMenu-text:before {
    content: "";
    position: absolute;
    left: 0;
    display: inline-block;
    background: #083151;
    width: 3px;
    height: 3px;
    border-radius: 3px
}

.cMenu-serviceLink {
    display: flex;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 7.5rem;
    border-radius: .5rem;
    margin-top: 4rem;
    overflow: hidden;
    isolation: isolate;
    background-color: #f4f7f9
}

.bPortraitTablet .cMenu-serviceLink {
    margin-top: 2.5rem
}

.cMenu-serviceLink .band {
    font-size: .875rem;
    width: 9.125rem;
    padding-inline: 1.5rem;
    line-height: 1.2;
    display: flex;
    justify-content: space-between;
    align-items: center;
    color: #083151;
    transition: .3s
}

.cMenu-serviceLink-arrow {
    width: .75rem;
    rotate: -45deg
}

.cMenu-image,
.cMenu-video {
    display: none;
    width: 11.25rem;
    height: 100%;
    object-fit: cover
}

.cMenu-image.-current,
.cMenu-video.-current {
    display: block
}

.cMenu-background {
    position: absolute;
    background-color: #38a1db;
    opacity: 0
}

.cMenu-background,
.cModal {
    top: 0;
    left: 0;
    width: 100%;
    height: 100%
}

.cModal {
    z-index: 1000;
    display: none;
    overflow: hidden;
    justify-content: center;
    align-items: center;
    position: fixed;
    right: 0;
    bottom: 0
}

.cModal-content {
    z-index: 1
}

.cModal.-open {
    display: block;
    pointer-events: auto
}

.cModal.-open.cStickyAnchorLink {
    display: flex
}

body.-open {
    pointer-events: none
}

.cPager {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    color: #fff;
    background-color: rgba(8, 49, 81, .8)
}

.cPager-inner {
    position: relative;
    justify-content: center
}

.cPager-inner,
.cPager-list {
    display: flex;
    align-items: center
}

.cPager-item {
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.cPager-item .line {
    display: inline-block;
    background-color: hsla(0, 0%, 100%, .1)
}

.cPager-item.-current {
    background-color: #fff;
    color: #38a1db
}

[data-whatintent=mouse] .cPager-item:not(.-current, .-omit):hover {
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color 0s
}

.cPager-link {
    display: flex;
    align-items: center;
    justify-content: center;
    width: 100%;
    height: 100%
}

.cPager-item .cPager-link:focus {
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color 0s
}

.cPager-next,
.cPager-prev {
    position: absolute;
    display: flex;
    align-items: center;
    overflow: hidden;
    opacity: .5;
    pointer-events: none
}

.cPager-next.-current,
.cPager-prev.-current {
    opacity: 1;
    pointer-events: auto
}

.cPager-next.-hide,
.cPager-prev.-hide {
    opacity: 0;
    visibility: hidden
}

.cPager-next:before,
.cPager-prev:before {
    content: "";
    position: absolute;
    top: 0;
    height: 100%;
    background-color: hsla(0, 0%, 100%, .1)
}

[data-whatintent=mouse] .cPager-next:hover.-current,
[data-whatintent=mouse] .cPager-prev:hover.-current {
    color: #38a1db;
    transition: color 0s
}

.cPager-prev {
    left: 0
}

.cPager-prev:before {
    right: 0
}

.cPager-prev .arrow {
    transform: rotate(180deg)
}

.cPager-next {
    right: 0;
    justify-content: flex-end
}

.cPager-next:before {
    left: 0
}

.cPager-icon {
    overflow: hidden
}

.cPageTitle {
    position: relative;
    display: flex;
    background: hsla(0, 0%, 100%, .9);
    -webkit-backdrop-filter: blur(5px);
    backdrop-filter: blur(5px);
    mix-blend-mode: screen
}

.cPageTitle-cover {
    position: absolute;
    top: 0;
    left: 0;
    pointer-events: none
}

.cPageTitle-title {
    display: flex;
    flex-direction: column;
    width: 100%
}

.cPageTitle-titleCover {
    display: inline-flex;
    align-items: center;
    height: -moz-fit-content;
    height: fit-content
}

.cPageTitle-dots {
    position: absolute;
    display: inline-flex;
    flex-direction: column;
    justify-content: space-between
}

.cPageTitle-sub {
    position: relative;
    pointer-events: auto
}

.cPageTitle-main {
    font-family: Jokker, sans-serif;
    font-weight: 600
}

.cPageTitle-image {
    pointer-events: auto
}

.cPageTitle-imageInner {
    overflow: hidden;
    isolation: isolate;
    aspect-ratio: 4/5
}

.cPageTitle-photo,
.cPageTitle-video {
    width: 100%;
    height: auto;
    display: none
}

.cPageTitle-photo.-current,
.cPageTitle-video.-current {
    display: block
}

.cPageTitle-scrollDown {
    pointer-events: auto
}

.cScrollDown {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    display: inline-flex;
    align-items: center;
    justify-content: center
}

.cScrollDown-arrow {
    display: inline-block;
    overflow: hidden
}

.cScrollDown-arrow-item {
    transform: rotate(90deg);
    animation: downloop 4s infinite
}

.cSectionTitle {
    position: relative;
    display: flex;
    flex-direction: column
}

.cSectionTitle-title {
    display: inline-flex
}

.cSectionTitle-dots {
    position: absolute;
    left: 0;
    display: inline-flex;
    flex-direction: column;
    justify-content: space-between;
    margin-top: .5rem
}

.cSectionTitle-main,
.cSectionTitle-sub {
    display: block
}

.cSectionTitle-main {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    position: relative;
    display: block;
    overflow: hidden
}

.cSectionTitle-mainLine {
    display: inline-flex
}

.cSectionTitle-mainText {
    position: absolute;
    top: 0;
    left: 0;
    clip: rect(0, 0, 0, 0)
}

.cSectionTitle-mainChar {
    display: inline-block;
    pointer-events: none
}

.cSectionTitle-sub.-blue {
    color: #38a1db
}

.cSortList {
    font-family: Jokker, sans-serif;
    font-weight: 600;
    color: #fff;
    background-color: rgba(8, 49, 81, .8)
}

.cSortList-option {
    position: relative;
    display: flex
}

.cSortList-option+.cSortList-option:before {
    content: "";
    position: absolute;
    top: 0;
    left: 0;
    background-color: hsla(0, 0%, 100%, .1)
}

.cSortList-item {
    opacity: .5
}

.cSortList-desc {
    display: flex
}

.cSortList-checkbox {
    border: 0;
    clip: rect(0 0 0 0);
    clip-path: inset(50%);
    height: 1px;
    margin: -1px;
    overflow: hidden;
    padding: 0;
    white-space: nowrap;
    width: 1px
}

.cSortList-checkbox.-disable {
    pointer-events: none
}

.cSortList-checkbox:focus+.cSortList-label {
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color 0s
}

.cSortList-label {
    display: inline-flex;
    align-items: center;
    justify-content: center;
    white-space: nowrap
}

[data-whatintent=mouse] .cSortList-label:hover {
    background-color: hsla(0, 0%, 100%, .2);
    transition: background-color 0s
}

.cSortList .cSortList-checkbox:checked+.cSortList-label {
    background-color: #fff;
    color: #38a1db
}

.cSortList .cSortList-checkbox.-disable+.cSortList-label {
    pointer-events: none;
    color: rgba(56, 161, 219, .2)
}

.cStickyAnchorLink {
    z-index: 700;
    position: fixed;
    right: 0;
    left: 0;
    display: flex;
    justify-content: center;
    align-items: center;
    pointer-events: none;
    opacity: 0
}

.cStickyAnchorLink-bg {
    position: absolute;
    width: 100%;
    height: 100%;
    background-color: #083151;
    opacity: 0;
    z-index: -1;
    display: none
}

.cStickyAnchorLink-inner {
    position: relative
}

.cStickyAnchorLink-inner,
.cStickyAnchorLink-menu {
    display: flex;
    justify-content: center;
    align-items: center
}

.cStickyAnchorLink-menu {
    background: #fff;
    box-shadow: 0 0 8px rgba(8, 49, 81, .05);
    pointer-events: auto
}

.cStickyAnchorLink-item.-current {
    position: relative
}

.cStickyAnchorLink-item.-current .cStickyAnchorLink-link {
    color: #38a1db
}

.cStickyAnchorLink-link {
    position: relative;
    display: block;
    font-family: Jokker, sans-serif;
    font-weight: 600;
    transition: .3s cubic-bezier(.23, 1, .32, 1);
    transition-property: color;
    letter-spacing: .025em;
    z-index: 1
}

[data-whatintent=mouse] .cStickyAnchorLink-link:hover {
    color: #38a1db;
    transition: color 0s
}

.cStickyAnchorLink-current-bg {
    position: absolute;
    border-radius: .5rem;
    background: #e8f0f7
}

.cStickyAnchorLink-current-dot {
    position: absolute;
    border-radius: 50%;
    width: 4px;
    height: 4px;
    background: #fff;
    top: -.5625rem
}

.cStickyLinkEntry {
    background: #fff;
    pointer-events: auto;
    box-shadow: 0 0 8px rgba(8, 49, 81, .05)
}

.cStickyLinkEntry-link {
    display: block;
    background: linear-gradient(233.56deg, #38a1db -.44%, #4d4397 71.24%);
    font-family: Jokker, sans-serif;
    font-weight: 600;
    color: #fff
}

[data-whatintent=mouse] .cStickyLinkEntry-link:hover:before {
    opacity: 1
}

[data-whatintent=mouse] .cStickyLinkEntry-link:hover .cStickyLinkEntry-text:before {
    scale: 1.5
}

.cStickyLinkEntry-text {
    display: flex;
    align-items: center;
    position: relative;
    padding-left: .6875rem;
    letter-spacing: .025em
}

.cStickyLinkEntry-text:before {
    content: "";
    position: absolute;
    left: 0;
    width: .25rem;
    height: .25rem;
    background: #fff;
    border-radius: 50%;
    transition: scale .3s cubic-bezier(.23, 1, .32, 1)
}

.cTitleIcon-dotsSvg {
    width: 100%;
    height: auto
}

@media screen and (min-width:1024px) {
    html {
        font-size: 1.1111111111vw
    }

    body {
        font-size: 14px
    }

    ._sp {
        display: none !important
    }

    .cAfterImageText-text:nth-of-type(2) {
        opacity: .25
    }

    .cAfterImageText-text:nth-of-type(3) {
        opacity: .13
    }

    .cAfterImageText-text:nth-of-type(4) {
        opacity: .07
    }

    .cAfterImageText-text:nth-of-type(5) {
        opacity: .03
    }

    .cButton {
        height: 64px;
        padding: 16px 16px 16px 32px;
        border-radius: 40px;
        transition: background .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cButton-text {
        font-size: 16px
    }

    .cButton-icon {
        width: 32px;
        height: 32px;
        margin-left: 32px
    }

    .cButton-arrow {
        width: 10px;
        height: 10px
    }

    .cCatchTitle-text {
        border-radius: .75rem
    }

    .cCatchTitle-text+.cCatchTitle-text {
        margin-top: 4px
    }

    .cCatchTitle-line {
        font-size: 56px;
        padding: .625rem 1rem
    }

    .cCatchTitle.-small .cCatchTitle-line {
        font-size: 40px;
        padding: .6875rem 1rem
    }

    .cFooter-inner {
        width: calc(100% - 16px);
        margin-left: 8px;
        margin-right: 8px;
        padding-left: 12px;
        padding-right: 68px;
        padding-block: 14.9375rem 4.875rem
    }

    .cFooter-head {
        display: flex
    }

    .cFooter-logo {
        width: 193px;
        height: 25px
    }

    .cFooter-sns {
        display: flex;
        align-items: center
    }

    .cFooter-snsDesc {
        margin-left: 1.5rem
    }

    .cFooter .snsList {
        font-size: 14px;
        display: flex;
        align-items: center
    }

    .cFooter .snsItem+.snsItem {
        margin-left: 1.5rem
    }

    .cFooter-pageTopArea {
        display: flex;
        justify-content: flex-end
    }

    .cFooter-pageTop {
        font-size: 14px
    }

    .cFooter-pageTop .arrow {
        width: 10px;
        height: 10px;
        transform: rotate(-90deg);
        margin-left: 16px;
        transition: transform .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cFooter-center {
        display: flex;
        margin-block: 7.1875rem 10rem
    }

    .cFooter-content-item {
        display: flex;
        flex-direction: column;
        width: 14rem
    }

    .cFooter-content-item .list {
        height: 17.1875rem;
        min-height: 200px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding-left: .8125rem;
        margin-top: .625rem
    }
   

    .cFooter-content-item .list:before {
        width: 4px;
        border-radius: 4px
    }

    .cFooter-content-item .list .item+.item {
        margin-top: .75rem
    }

    .cFooter-content-item .list:last-of-type {
        width: 9.25rem
    }

    .cFooter-content-link {
        font-size: 24px;
        padding-left: .75rem
    }

    .cFooter-content-link .dot {
        width: 4px;
        height: 4px
    }

    .cFooter-serviceLink {
        display: block;
        width: 100%;
        height: -moz-fit-content;
        height: fit-content;
        border-radius: .75rem;
        margin-top: .25rem
    }

    .cFooter-serviceLink-thumb {
        height: 11.5rem
    }

    .cFooter-serviceLink-img.-current {
        transition: scale .8s cubic-bezier(.25, 1, .5, 1);
        will-change: scale
    }

    .cFooter-serviceLink-contents {
        height: -moz-fit-content;
        height: fit-content
    }

    .cFooter-serviceLink .band {
        height: 4rem;
        padding-inline: 2rem
    }

    .cFooter-serviceLink-arrow {
        width: .75rem;
        transition: transform .3s cubic-bezier(.23, 1, .32, 1);
        will-change: transform
    }

    .cFooter-serviceLink .award:before {
        height: 4px
    }

    .cFooter-serviceLink .award {
        height: 3.625rem;
        padding-inline: .5rem
    }

    .cFooter-serviceLink .award:before {
        left: .5rem;
        right: .5rem;
        width: calc(100% - 1rem);
        height: 2px
    }

    .cFooter-serviceLink .award-mark {
        width: 5.9375rem
    }

    .cFooter-video.-current {
        transition: scale .8s cubic-bezier(.25, 1, .5, 1);
        will-change: scale
    }

    .cFooter-lineArea {
        display: flex
    }

    .cFooter-line {
        width: 100%;
        height: 4px;
        border-radius: 4px
    }

    .cFooter-bottom {
        display: flex;
        align-items: center;
        padding-top: 1.5rem
    }

    .cFooter-bottom .copyright,
    .cFooter-bottom .link {
        font-size: 12px;
        line-height: 1.3333333333
    }

    .cFooter-privacy-icon {
        width: 4.5rem;
        height: 4.5rem;
        margin-right: 1.5rem;
        padding: .75rem;
        border-radius: .75rem
    }

    .cFooter-privacy-text {
        font-size: 12px
    }

    .cFooter-copyright {
        display: flex;
        justify-content: flex-end
    }

    .cGradientButton {
        width: 240px;
        height: 80px;
        padding: 0 24px 0 40px;
        border-radius: 40px;
        box-shadow: 0 16px 32px 0 rgba(8, 49, 81, .3)
    }

    .cGradientButton-text {
        font-size: 16px
    }

    .cGradientButton-icon {
        width: 32px;
        height: 32px
    }

    .cGradientButton-arrow {
        width: 10px;
        height: 10px;
        transition: fill .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cGradientButton-circle {
        width: 340px;
        height: 200px
    }

    .cGrid {
        position: relative;
        width: 100%
    }

    .cGrid-col {
        padding-left: 56px;
        flex: 0 0 auto
    }

    .cGrid-col.lg-1 {
        width: 8.3333333333%
    }

    .cGrid-col.lg-2 {
        width: 16.6666666667%
    }

    .cGrid-col.lg-3 {
        width: 25%
    }

    .cGrid-col.lg-4 {
        width: 33.3333333333%
    }

    .cGrid-col.lg-5 {
        width: 41.6666666667%
    }

    .cGrid-col.lg-6 {
        width: 50%
    }

    .cGrid-col.lg-7 {
        width: 58.3430571762%
    }

    .cGrid-col.lg-8 {
        width: 66.6666666667%
    }

    .cGrid-col.lg-9 {
        width: 75.0187546887%
    }

    .cGrid-col.lg-10 {
        width: 83.3333333333%
    }

    .cGrid-col.lg-11 {
        width: 91.7431192661%
    }

    .cGrid .lgm-1 {
        margin-left: 8.3333333333%
    }

    .cGrid .lgmr-1 {
        margin-right: 8.3333333333%
    }

    .cGrid .lgm-2 {
        margin-left: 16.6666666667%
    }

    .cGrid .lgm-3 {
        margin-left: 25%
    }

    .cGrid .lgm-4 {
        margin-left: 33.3333333333%
    }

    .cGrid .lgm-5 {
        margin-left: 41.6666666667%
    }

    .cGrid .lgm-6 {
        margin-left: 50%
    }

    .cHeader.-disable .cHeader-contactButton,
    .cHeader.-disable .cHeader-inner,
    .cHeader.-disable .cHeader-item,
    .cHeader.-disable .cHeader-logo,
    .cHeader.-disable .cHeader-menu,
    .cHeader.-isLoading .cHeader-contactButton,
    .cHeader.-isLoading .cHeader-inner,
    .cHeader.-isLoading .cHeader-item,
    .cHeader.-isLoading .cHeader-logo,
    .cHeader.-isLoading .cHeader-menu {
        pointer-events: none
    }

    .cHeader-inner {
        width: calc(100% - 16px);
        margin-left: 8px;
        margin-right: 8px;
        padding-left: 12px;
        padding-right: 68px;
        width: calc(100% - 40px);
        margin-block: 20px 0;
        margin-inline: 20px 20px;
        padding-block: 36px 36px;
        border-radius: 1.5rem;
        pointer-events: none
    }

    .-current .cHeader-inner {
        padding-block: 8px 8px
    }

    .-show .cHeader-inner {
        padding-block: 36px 36px
    }

    .-disable .cHeader-inner {
        opacity: 0;
        transform: translateY(-180%)
    }

    .cHeader-nav {
        width: calc(100% + 24px);
        height: 64px;
        margin: 0 -12px
    }

    .cHeader-logo {
        width: 127px;
        height: 16px
    }

    .cHeader-link {
        font-size: 16px;
        letter-spacing: .025em;
        padding-left: .75rem
    }

    [data-whatintent=mouse] .cHeader-link:hover .dot {
        scale: 1.5
    }

    .cHeader-link .dot {
        width: 4px;
        height: 4px
    }

    .cHeader-contactButton {
        width: 168px;
        height: 64px;
        border-radius: 32px;
        padding: 0 1.875rem;
        border: 2px solid rgba(8, 49, 81, .05);
        margin-left: auto
    }

    .cHeader-contactButton .dot {
        left: 18px;
        width: 8px;
        height: 8px
    }

    .cHeader-contactButton .text {
        font-size: 16px;
        letter-spacing: .025em
    }

    [data-whatintent=mouse] .cHeader-contactButton:hover .dot {
        scale: 1.5
    }

    .cHeader-subNav {
        align-items: flex-end
    }

    .cHeader-subNav .list {
        height: 12.5rem;
        min-height: 200px;
        display: flex;
        flex-direction: column;
        justify-content: flex-end;
        padding-left: .8125rem;
        margin-top: -.5rem
    }

    .cHeader-subNav .list:before {
        width: 4px;
        border-radius: 4px
    }

    .cHeader-subNav .list .item+.item {
        margin-top: .75rem
    }

    .cHeader-serviceLink {
        display: flex;
        align-items: center;
        width: 100%;
        height: 7.75rem;
        border-radius: .75rem
    }

    .cHeader-serviceLink .band {
        width: 13.25rem;
        padding-inline: 1.5rem
    }

    .cHeader-serviceLink-arrow {
        width: 12px;
        height: 12px
    }

    .cHeader-image.-current,
    .cHeader-video.-current {
        transition: scale .8s cubic-bezier(.25, 1, .5, 1);
        will-change: scale
    }

    .cLink {
        padding-left: 20px;
        padding-right: 76px
    }

    .cLink-content {
        padding-top: 9.25rem;
        padding-bottom: 6.5rem
    }

    .-career .cLink-content {
        padding-top: 10rem;
        padding-bottom: 10rem
    }

    .cLink-title {
        font-size: 48px;
        line-height: 1.2;
        padding-left: 6.5rem
    }

    .cLink-title:before {
        width: 5rem;
        height: 4px
    }

    .cLink-list {
        display: flex;
        width: 100%;
        margin-top: 6.75rem
    }

    .cLink-item {
        width: 50%;
        height: 30rem;
        border-radius: .75rem
    }

    .cLink-item+.cLink-item {
        margin-top: 5.125rem;
        margin-left: 4px
    }

    .cLink-itemInner {
        padding: 4rem 4rem 3.75rem
    }

    .cLink-text {
        font-size: 16px;
        line-height: 1.25;
        margin-top: -.25rem
    }

    .cLink-slider {
        top: 4rem;
        right: 4rem;
        width: 15rem;
        height: 10rem;
        border-radius: .75rem
    }

    .cLink-itemTitle .title {
        font-size: 56px
    }

    .cLink-itemTitle .subTitle {
        font-size: 24px;
        margin-top: .375rem
    }

    .cLink-line {
        width: 4px;
        height: 5rem;
        border-radius: 2px
    }

    .cLink-icon {
        width: 2.125rem;
        margin-inline: 3rem -.125rem
    }

    .cLink-arrow {
        width: 2rem;
        height: 2rem
    }

    .cLinkCareer-list {
        width: 100%;
        display: flex;
        justify-content: space-between
    }

    .cLinkCareer-item {
        width: 50%;
        height: 13rem
    }

    .cLinkCareer-item:nth-of-type(2) {
        margin-left: 4px
    }

    .cLinkCareer-item:nth-of-type(2) .cLinkCareer-background {
        border-top: 4px solid #4d4398
    }

    .cLinkCareer-itemInner {
        padding: 4rem 3.875rem 4rem 4rem
    }

    .cLinkCareer-background {
        border-top: 4px solid #38a1db;
        border-radius: .75rem;
        transition: scale .6s cubic-bezier(.25, 1, .5, 1)
    }

    .cLinkCareer-itemTitle {
        width: calc(100% - 6rem + 4px);
        padding-right: 3rem
    }

    .cLinkCareer-itemTitle .title {
        font-size: 32px
    }

    .cLinkCareer-itemTitle .subTitle {
        font-size: 20px;
        margin-top: 1rem
    }

    .cLinkCareer-entry-line,
    .cLinkCareer-line {
        width: 4px;
        height: 5rem
    }

    .cLinkCareer-entry-icon,
    .cLinkCareer-icon {
        width: 2.125rem;
        height: 2.125rem;
        margin-left: 3rem
    }

    .cLinkCareer-arrow,
    .cLinkCareer-entry-arrow {
        width: 2rem;
        height: 2rem
    }

    .cLinkCareer-entry {
        height: 20rem;
        padding: 7.5rem 3.875rem 7.5rem 4rem;
        margin-top: 2.5rem
    }

    .cLinkCareer-entry-background {
        border-radius: .75rem;
        transition: scale .6s cubic-bezier(.25, 1, .5, 1)
    }

    .cLinkCareer-entry-itemTitle {
        margin-bottom: .375rem
    }

    .cLinkCareer-entry-itemTitle .title {
        font-size: 56px;
        height: 2.4375rem
    }

    .cLinkCareer-entry-itemTitle .subTitle {
        font-size: 20px;
        margin-top: 2rem
    }

    .cLink-background {
        border-radius: .75rem
    }

    .cLoading-logo {
        width: 160px;
        height: 20px
    }

    .cLoading-progress {
        width: 32px;
        height: 32px;
        top: 68px
    }

    .cLoading-progress .-no01,
    .cLoading-progress .-no02 {
        width: 14px;
        height: 22px
    }

    .cLoading-progress .-no03 {
        width: 26px;
        height: 9px;
        margin-top: 3px;
        margin-left: 3px
    }

    .cPager {
        width: calc(100% - 16px);
        margin-left: 8px;
        margin-right: 8px;
        padding-left: 12px;
        padding-right: 68px;
        font-size: 14px;
        margin-block: 11.875rem 20rem;
        padding: 40px 68px;
        border-radius: 32px
    }

    .cPager-inner {
        padding-right: 56px
    }

    .cPager-item {
        height: 34px;
        border-radius: 12px
    }

    .cPager-item .line {
        width: 24px;
        height: 4px
    }

    .cPager-item.-omit {
        height: 4px
    }

    .cPager-item:not(.-current, .-omit) {
        transition: background-color .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cPager-item+.cPager-item {
        margin-left: .25rem
    }

    .cPager-link {
        padding-inline: 16px 16px
    }

    .cPager-next,
    .cPager-prev {
        width: 102px;
        height: 40px;
        transition: color .3s cubic-bezier(.23, 1, .32, 1), opacity .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cPager-next:before,
    .cPager-prev:before {
        width: 4px;
        border-radius: 12px
    }

    .cPager-next .arrow,
    .cPager-prev .arrow {
        width: 10px;
        height: 10px
    }

    .cPager-prev .cPager-icon {
        margin-right: 16px
    }

    .cPager-next .cPager-icon {
        margin-left: 16px
    }

    .cPager-icon {
        width: 12px;
        height: auto
    }

    .cPageTitle {
        padding-bottom: 4rem
    }

    .cPageTitle,
    .cPageTitle-cover {
        width: calc(100% - 16px);
        margin-left: 8px;
        margin-right: 8px;
        padding-left: 12px;
        padding-right: 68px;
        align-items: flex-end;
        justify-content: space-between;
        height: 35rem;
        margin-top: 8px;
        border-radius: 2rem
    }

    .cPageTitle-cover {
        display: flex;
        padding-bottom: 2.875rem
    }

    .cPageTitle-titleCover {
        margin-bottom: calc(96px + 3.375rem)
    }

    .cPageTitle-dots {
        width: 8px;
        height: 12px
    }

    .cPageTitle-sub {
        font-size: 16px;
        padding-left: 2rem;
        height: -moz-fit-content;
        height: fit-content
    }

    .cPageTitle-main {
        font-size: 96px;
        margin-top: 3.75rem
    }

    .cPageTitle-imageInner {
        width: 100%;
        height: -moz-fit-content;
        height: fit-content;
        margin-bottom: -6rem;
        border-radius: .75rem
    }

    .cPageTitle-scrollDown {
        display: flex;
        justify-content: flex-end
    }

    .cScrollDown {
        font-size: 14px
    }

    .cScrollDown-arrow-item {
        width: 10px;
        height: 10px;
        margin-left: 16px
    }

    .cSectionTitle-dots {
        width: 8px;
        height: 12px;
        margin-bottom: 4px
    }

    .cSectionTitle-main,
    .cSectionTitle-sub {
        padding-left: 2rem
    }

    .cSectionTitle-main {
        font-size: 40px;
        padding-bottom: .25rem
    }

    .cSectionTitle-mainLine {
        flex-direction: row
    }

    .cSectionTitle-mainText {
        padding-left: 2rem
    }

    .cSectionTitle-mainChar.-space {
        width: 10px
    }

    .cSectionTitle-sub {
        font-size: 12px;
        margin-top: .25rem
    }

    .cSortList {
        display: flex;
        align-items: center;
        justify-content: center;
        width: calc(100% - 16px);
        margin: 8px 8px 0;
        padding: 40px 68px;
        border-radius: 32px
    }

    .cSortList-option {
        align-items: center;
        flex-shrink: 0;
        height: 40px
    }

    .cSortList-option+.cSortList-option {
        margin-left: 28px;
        padding-left: 44px
    }

    .cSortList-option+.cSortList-option:before {
        width: 4px;
        height: 100%;
        border-radius: 12px
    }

    .cSortList-item {
        font-size: 14px
    }

    .cSortList-desc {
        margin-left: 1.5rem
    }

    .cSortList-label {
        height: 34px;
        padding: 0 12px;
        border-radius: 12px;
        transition: background-color .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cSortList-label:not(:last-child) {
        margin-right: .25rem
    }

    .cStickyAnchorLink {
        bottom: 2rem
    }

    .cStickyAnchorLink-menu {
        padding: 4px;
        border-radius: .6875rem
    }

    .cStickyAnchorLink-item:not(:last-child) {
        margin-right: .25rem
    }

    .cStickyAnchorLink-link {
        font-size: 12px;
        border-radius: .5rem;
        padding: 1.25rem 1rem
    }

    .cStickyLinkEntry {
        margin-left: 8px;
        padding: 4px;
        border-radius: .6875rem
    }

    .cStickyLinkEntry-link {
        font-size: 12px;
        border-radius: .5rem;
        padding: 1.25rem 1.125rem 1.25rem 1rem;
        position: relative
    }

    .cStickyLinkEntry-link:before {
        content: "";
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        border-radius: .5rem;
        background: linear-gradient(233.56deg, #38a1db -100%, #4d4397 71.24%);
        opacity: 0;
        transition: opacity .5s cubic-bezier(.25, 1, .5, 1)
    }
}

@media screen and (max-width:1023px) {
    html {
        font-size: 4.1025641026vw;
        min-height: 100vh
    }

    body {
        font-size: .875rem
    }

    body .cBackground,
    body .cNoise {
        height: 100vh
    }

    ._pc {
        display: none !important
    }

    .cAfterImageText-text:nth-of-type(2) {
        top: 3.75%;
        opacity: .7
    }

    .cAfterImageText-text:nth-of-type(3) {
        top: 7.5%;
        opacity: .35
    }

    .cAfterImageText-text:nth-of-type(4) {
        top: 11.25%;
        opacity: .175
    }

    .cAfterImageText-text:nth-of-type(5) {
        top: 15%;
        opacity: .085
    }

    .cButton {
        min-width: 12.5rem;
        height: 4rem;
        padding: 0 1rem 0 2rem;
        border-radius: 2.5rem
    }

    .cButton-text {
        font-size: .875rem
    }

    .cButton-icon {
        width: 2rem;
        height: 2rem;
        margin-left: 2rem
    }

    .cButton-arrow {
        width: .625rem;
        height: .625rem
    }

    .cButton.-spSmall {
        min-width: 7.875rem;
        height: 3rem;
        padding: 0 .5rem 0 1.5rem;
        border-radius: 3rem
    }

    .cButton.-spSmall .cButton-icon {
        margin-left: 24px
    }

    .cCatchTitle-text {
        border-radius: .5rem
    }

    .cCatchTitle-text+.cCatchTitle-text {
        margin-top: 2px
    }

    .cCatchTitle-line {
        font-size: 2rem;
        padding: .625rem .75rem
    }

    .cCatchTitle.-small .cCatchTitle-line,
    .cCatchTitle.-white .cCatchTitle-line {
        font-size: 1.5rem
    }

    .cFooter-inner {
        margin-left: .5rem;
        margin-right: .5rem;
        padding: 10rem 1.5rem 2.75rem
    }

    .cFooter-logo {
        width: 10rem;
        height: 1.25rem
    }

    .cFooter-sns {
        position: absolute;
        top: 5.75rem;
        right: 0;
        width: 5.75rem
    }

    .cFooter-snsItem {
        font-size: .875rem
    }

    .cFooter-snsDesc {
        margin-top: .75rem
    }

    .cFooter .snsList {
        font-size: .875rem
    }

    .cFooter .snsItem+.snsItem {
        margin-top: .75rem
    }

    .cFooter-center {
        margin-top: 4.25rem
    }

    .cFooter-content-item:not(:last-child) {
        margin-bottom: 1.125rem
    }

    .cFooter-content-item .list:before {
        width: 3px;
        border-radius: 3px
    }

    .cFooter-content-link {
        font-size: 1.5rem;
        padding-left: .8125rem
    }

    .cFooter-content-link .dot {
        width: 3px;
        height: 3px
    }

    .cFooter-serviceLink {
        display: flex;
        justify-content: center;
        align-items: center;
        height: 7.5rem;
        border-radius: .5rem;
        margin-top: 3.5rem
    }

    .cFooter-serviceLink-thumb {
        width: 11.25rem;
        height: 100%
    }

    .cFooter-serviceLink-contents {
        height: 100%
    }

    .cFooter-serviceLink .band {
        font-size: .875rem;
        line-height: 1.2;
        width: 9.125rem;
        height: calc(100% - 2.75rem);
        padding-inline: 1.5rem 1.3125rem
    }

    .cFooter-serviceLink-arrow {
        width: .75rem
    }

    .cFooter-serviceLink .award:before {
        height: 3px
    }

    .cFooter-serviceLink .award {
        height: 2.75rem;
        padding-inline: .5rem
    }

    .cFooter-serviceLink .award:before {
        left: .5rem;
        right: .5rem;
        width: calc(100% - 1rem);
        height: 2px
    }

    .cFooter-serviceLink .award-mark {
        width: 6.125rem
    }

    .cFooter-lineArea {
        margin-top: 3rem
    }

    .cFooter-line {
        width: 100%;
        height: 3px;
        border-radius: 3px
    }

    .cFooter-bottom {
        padding-top: 1.4375rem
    }

    .cFooter-bottom .copyright {
        line-height: 1.2;
        font-size: .6875rem
    }

    .cFooter-privacy {
        margin-bottom: 1rem
    }

    .cFooter-privacy-icon {
        width: 4rem;
        height: 4rem;
        position: absolute;
        top: 1rem;
        right: 0;
        padding: .75rem;
        border-radius: .5rem
    }

    .cFooter-privacy-icon img {
        width: 2.5rem;
        height: 2.5rem
    }

    .cFooter-privacy-text {
        font-size: .6875rem
    }

    .cGradientButton {
        min-width: 12.5rem;
        height: 4rem;
        padding: 0 1rem 0 2rem;
        border-radius: 2.5rem;
        box-shadow: 0 .75rem 1.5rem 0 rgba(8, 49, 81, .3)
    }

    .cGradientButton-text {
        font-size: .875rem
    }

    .cGradientButton-icon {
        width: 2rem;
        height: 2rem
    }

    .cGradientButton-arrow {
        width: .625rem;
        height: .625rem
    }

    .cGradientButton-circle {
        left: -30%;
        width: 21.25rem;
        height: 12.5rem
    }

    .cGradientButton-circle img {
        opacity: .75
    }

    .cGuide {
        display: none
    }

    .cHeader.-disable .cHeader-logo,
    .cHeader.-isLoading .cHeader-logo {
        opacity: 0;
        pointer-events: none
    }

    .-open .cHeader .cHeader-logo {
        opacity: 1
    }

    .cHeader-inner {
        margin-left: .5rem;
        margin-right: .5rem;
        justify-content: space-between;
        margin: 2rem .5rem 0;
        padding: .5rem 1.5rem;
        border-radius: 1.5rem
    }

    .-current .cHeader-inner {
        margin: .5rem .5rem 0
    }

    .-open .cHeader-inner {
        margin: 2rem .5rem 0
    }

    .cHeader-logo {
        width: 8.25rem;
        height: 1rem;
        transition: opacity .3s cubic-bezier(.23, 1, .32, 1)
    }

    .cHeader-item {
        display: none
    }

    .cLink-content {
        padding: 7.25rem 2rem 7.5rem
    }

    .-career .cLink-content {
        padding: 7.5rem 2rem
    }

    .cLink-title {
        font-size: 2rem;
        line-height: 1;
        padding-left: 2.5rem
    }

    .cLink-title:before {
        top: .875rem;
        width: 2rem;
        height: 3px
    }

    .cLink-list {
        margin-top: 2.625rem
    }

    .cLink-item {
        width: 100%;
        height: 15rem;
        border-radius: .5rem
    }

    .cLink-item+.cLink-item {
        margin-top: .5rem
    }

    .cLink-itemInner {
        padding: 2rem
    }

    .cLink-text {
        font-size: .625rem;
        line-height: 1.2
    }

    .cLink-slider {
        top: 2rem;
        right: 2rem;
        width: 7.5rem;
        height: 5rem;
        border-radius: .5rem
    }

    .cLink-bottom {
        justify-content: space-between
    }

    .cLink-itemTitle .title {
        font-size: 2rem
    }

    .cLink-itemTitle .subTitle {
        margin-top: .375rem
    }

    .cLink-line {
        width: 3px;
        height: 3rem;
        border-radius: 3px;
        margin-right: 1.5rem
    }

    .cLink-icon {
        margin-right: -.5rem
    }

    .cLink-arrow {
        width: 1.5rem;
        height: 1.5rem
    }

    .cLinkCareer-item {
        width: 100%;
        height: 10rem
    }

    .cLinkCareer-item:nth-of-type(2) {
        margin-top: .5rem
    }

    .cLinkCareer-item:nth-of-type(2) .cLinkCareer-background {
        border-top: 3px solid #4d4398
    }

    .cLinkCareer-itemInner {
        padding: 2.5rem 1rem 2.5rem 2.5rem
    }

    .cLinkCareer-background {
        border-top: 3px solid #38a1db;
        border-radius: .5rem
    }

    .cLinkCareer-itemTitle .title {
        font-size: 1.5rem
    }

    .cLinkCareer-itemTitle .subTitle {
        font-size: 1rem;
        margin-top: 1.25rem
    }

    .cLinkCareer-entry-line,
    .cLinkCareer-line {
        width: 3px;
        height: 5rem
    }

    .cLinkCareer-arrow,
    .cLinkCareer-entry-arrow {
        width: 1.5rem;
        height: 1.5rem;
        margin-left: 1rem
    }

    .cLinkCareer-entry {
        height: 12.5rem;
        padding: 3.75rem 1rem 3.75rem 2.5rem;
        margin-top: 2rem
    }

    .cLinkCareer-entry-background {
        border-radius: .75rem
    }

    .cLinkCareer-entry-itemTitle .title {
        font-size: 2rem;
        height: 2rem
    }

    .cLinkCareer-entry-itemTitle .subTitle {
        font-size: 1rem;
        margin-top: .75rem
    }

    .cLink-background {
        border-radius: .5rem
    }

    .cLoading-logo {
        width: 10rem;
        height: 1.25rem
    }

    .cLoading-progress {
        width: 2rem;
        height: 2rem;
        top: 4.25rem
    }

    .cLoading-progress .-no01,
    .cLoading-progress .-no02 {
        width: .875rem;
        height: 1.375rem
    }

    .cLoading-progress .-no03 {
        width: 1.625rem;
        height: .5625rem;
        margin-top: .1875rem;
        margin-left: .1875rem
    }

    .cPager {
        margin-left: .5rem;
        margin-right: .5rem;
        font-size: 1rem;
        margin-block: 5rem 17.625rem;
        margin-inline: .5rem;
        padding-block: 2.5rem;
        padding-inline: 1.5rem;
        border-radius: 1.5rem
    }

    .cPager-item {
        width: 3rem;
        height: 2rem;
        border-radius: .5rem
    }

    .cPager-item.-omit,
    .cPager-item .line {
        width: .75rem;
        height: 3px
    }

    .cPager-item+.cPager-item {
        margin-left: .5rem
    }

    .cPager-link {
        padding-inline: 1rem 1rem
    }

    .cPageTitle {
        margin-left: .5rem;
        margin-right: .5rem;
        border-radius: 1.5rem
    }

    .cPageTitle,
    .cPageTitle-cover {
        width: calc(100% - 1rem);
        height: 25rem;
        margin: .5rem .5rem 0
    }

    .cPageTitle-cover {
        border-radius: 1rem
    }

    .cPageTitle-title {
        margin-top: 10.75rem;
        margin-left: 1.5rem
    }

    .cPageTitle-titleCover {
        margin-top: 11rem;
        margin-left: 1.5rem
    }

    .cPageTitle-dots {
        width: 6px;
        height: 9px;
        margin-bottom: .125rem
    }

    .cPageTitle-sub {
        font-size: .875rem;
        padding-left: 1.125rem
    }

    .cPageTitle-main {
        font-size: 3rem;
        margin-top: 1.625rem
    }

    .cPageTitle-imageInner {
        position: absolute;
        bottom: -5.1875rem;
        left: 50%;
        translate: -50% 0;
        width: 9.5rem;
        height: -moz-fit-content;
        height: fit-content;
        border-radius: .75rem
    }

    .cPageTitle-scrollDown {
        position: absolute;
        width: .75rem;
        right: 1.4375rem;
        bottom: 2.8125rem
    }

    .cScrollDown {
        font-size: .75rem;
        writing-mode: vertical-rl
    }

    .cScrollDown-arrow-item {
        width: .625rem;
        height: .625rem;
        margin-top: 1rem
    }

    .cSectionTitle-dots {
        width: 6px;
        height: 9px;
        margin-bottom: .5rem
    }

    .cSectionTitle-main,
    .cSectionTitle-sub {
        padding-left: 1.375rem
    }

    .cSectionTitle-main {
        font-size: 2rem;
        padding-bottom: .25rem
    }

    .cSectionTitle-mainText {
        padding-left: 1.5rem
    }

    .cSectionTitle-mainChar.-space {
        width: .1rem
    }

    .cSectionTitle-sub {
        font-size: .625rem;
        margin-top: .125rem
    }

    .cSortList {
        margin-top: .5rem;
        margin-inline: .5rem;
        border-radius: 1.5rem;
        padding-block: 2.5rem 2.625rem;
        padding-inline: 1.5rem;
        overflow: hidden
    }

    .cSortList-option {
        flex-direction: column
    }

    .cSortList-option+.cSortList-option {
        margin-top: 1rem;
        padding-top: calc(1.75rem - 3px)
    }

    .cSortList-option+.cSortList-option:before {
        width: 100%;
        height: 3px;
        border-radius: 2px
    }

    .cSortList-item {
        font-size: .625rem
    }

    .cSortList-desc {
        overflow-x: scroll;
        margin-top: .8125rem;
        padding-inline: 2rem 1rem;
        margin-inline: calc(50% - 50vw);
        width: 100vw
    }

    .cSortList-desc::-webkit-scrollbar {
        display: none
    }

    .cSortList-label {
        height: 2.125rem;
        padding: 0 1rem;
        border-radius: .5rem
    }

    .cSortList-label:not(:last-child) {
        margin-right: .25rem
    }

    .cStickyAnchorLink {
        align-items: end
    }

    .cStickyAnchorLink.-open .cStickyAnchorLink-item {
        width: 16.375rem;
        height: auto
    }

    .cStickyAnchorLink.-open .cStickyAnchorLink-link {
        padding: 1.625rem 1rem
    }

    .cStickyAnchorLink-inner {
        overflow: hidden;
        margin-bottom: 2rem
    }

    .cStickyAnchorLink-menu {
        flex-direction: column;
        overflow: hidden;
        padding: .1875rem;
        border-radius: .5rem
    }

    .cStickyAnchorLink-item {
        text-align: center
    }

    .cStickyAnchorLink-item:not(:first-child) {
        margin-top: .1875rem
    }

    .cStickyAnchorLink-item.-current {
        margin-top: 0
    }

    .cStickyAnchorLink-item:not(.-current) {
        width: 0;
        height: 0;
        margin-top: 0
    }

    .cStickyAnchorLink-link {
        font-size: .75rem;
        border-radius: .5rem;
        padding: 1rem 1.25rem;
        white-space: nowrap
    }

    .cStickyAnchorLink-current-bg {
        width: -webkit-fill-available;
        max-height: 4rem;
        height: 2.875rem;
        margin: .1875rem
    }

    .cStickyLinkEntry {
        margin-left: .25rem;
        padding: .1875rem;
        border-radius: .5rem;
        align-self: end;
        margin-bottom: 2rem
    }

    .cStickyLinkEntry-link {
        font-size: .75rem;
        border-radius: .5rem;
        padding: 1rem 1.25rem
    }
}

@media screen and (min-width:1024px) and (max-width:1215px) {
    .cSortList {
        flex-direction: column;
        gap: 2.5rem
    }

    .cSortList .cSortList-option {
        padding-inline: 0;
        margin-inline: 0
    }

    .cSortList .cSortList-option:before {
        display: none
    }
}
@media (max-width: 768px) {
  .cLoading img {
    width: 400px; 
  }
}

@media (max-width: 480px) {
  .cLoading img {
    width: 200px;
  }
}
.footer-contact {
  display: grid;
  grid-template-columns: 1fr 1.2fr;
  gap: 40px;
}

/* TITLE */
.footer-contact .full-title {
  grid-column: 1 / 3;
  margin-bottom: 20px;
  margin-top: 40px;
  font-size: 40px;
  font-weight: 700;
  display: flex;
  align-items: center;


  transform: translateY(40px);
}

/* ITEMS */
.footer-contact .item {
  display: block;
  margin-bottom: 16px;
  line-height: 1.5;
}

/* FONT SIZE LEFT/RIGHT */
.footer-contact .left .item,
.footer-contact .right .item {
  font-size: 18px;
  font-weight: 500;
  line-height: 1.6;
}

