:root {
    --h1-fs: 8rem;
    --h1-lh: 1.2em;
    --h2-fs: 6.2rem;
    --h2-lh: 1.2em;
    --h3-fs: 5.2rem;
    --h3-lh: 1.2em;
    --h4-fs: 4.2rem;
    --h4-lh: 1.2em;
    --h5-fs: 2.8rem;
    --h5-lh: 1.2em;
    --h6-fs: 1.8rem;
    --h6-lh: 1.2em;
    --fs-12: 1.2rem;
    --lh-12: 1.6em;
    --fs-14: 1.4rem;
    --lh-14: 1.5em;
    --fs-16: 1.6rem;
    --lh-16: 1.6em;
    --fs-18: 1.8rem;
    --lh-18: 1.6em;
    --fs-20: 2rem;
    --lh-20: 1.3em;
    --fs-24: 2.4rem;
    --lh-24: 1.3em;
    --fs-28: 2.8em;
    --lh-28: 1.35em;
    --fs-36: 3.6rem;
    --lh-36: 1.2em
}

@media only screen and (width<=991px

) {
    :root {
        --h1-fs: 3.2rem;
        --h2-fs: 5.2rem;
        --h3-fs: 3.4rem;
        --h4-fs: 2.6rem;
        --h4-lh: 1.5em;
        --h5-fs: 2rem;
        --h5-lh: 1.4em;
        --h6-fs: 1.2rem;
        --h6-lh: 1.4em;
        --fs-36: 2.4rem;
        --lh-36: 1.3em;
        --fs-24: 2rem;
        --fs-20: 1.8rem;
        --lh-20: 1.6em;
        --fs-18: 1.6rem
    }
}

@media only screen and (width<=767px

) {
    :root {
        --h1-fs: 6rem;
        --h2-fs: 2.6rem;
        --h3-fs: 2.2rem;
        --h4-fs: 2.4rem;
        --h5-fs: 1.6rem;
        --fs-24: 1.8rem;
        --fs-20: 1.6rem
    }
}

@media only screen and (width<=476px

) {
    :root {
        --h1-fs: 3.6rem;
        --h3-fs: 1.8rem
    }
}

* {
    box-sizing: border-box;
    margin: 0;
    padding: 0
}

html {
    scroll-behavior: unset;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    font-kerning: none;
    -webkit-text-rendering: optimizeSpeed;
    text-rendering: optimizespeed;
    color: #151515;
    font-family: i-1, 'microsoft yahei', simsun, sans-serif;
    font-size: .578704vw
}

@media only screen and (width>

=2160px

) {
    html {
        font-size: 12.5px
    }
}

@media only screen and (width<=991px

) {
    html {
        font-size: 1vw
    }
}

@media only screen and (width<=767px

) {
    html {
        font-size: 1.3vw
    }
}

@media only screen and (width<=476px

) {
    html {
        font-size: 2.667vw
    }
}

a {
    color: inherit;
    text-decoration: none;
    display: inline-block
}

button, input, textarea {
    appearance: none;
    border: none;
    outline: none;
    font-family: i-1, 'microsoft yahei', simsun, sans-serif
}

button {
    cursor: pointer
}

.lenis.lenis-smooth {
    scroll-behavior: auto
}

@media screen and (width<=767px

) {
    html, body {
        width: 100%;
        height: 100%;
        margin: 0;
        padding: 0;
        overflow: hidden
    }

    body {
        overscroll-behavior-y: none;
        overscroll-behavior-x: none;
        position: fixed
    }

    .wrapper {
        -ms-scroll-chaining: none;
        overscroll-behavior: contain;
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
        overflow-x: hidden;
        overflow-y: scroll
    }
}

.hover-un, .priv-hero__main-richtext a {
    --line-spacing: 4rem;
    --line-width: 100%;
    vertical-align: bottom;
    position: relative;
    overflow: hidden
}

.hover-un:before, .hover-un:after, .priv-hero__main-richtext a:before, .priv-hero__main-richtext a:after {
    content: "";
    width: var(--line-width);
    background-color: currentColor;
    height: 1px;
    transition: transform .6s cubic-bezier(.66, 0, .15, 1);
    display: block;
    position: absolute;
    bottom: 0
}

.hover-un:before, .priv-hero__main-richtext a:before {
    left: 0
}

.hover-un:after, .priv-hero__main-richtext a:after {
    left: calc(-1 * var(--line-spacing));
    transform: translate(-100%)
}

.hover-un:hover:before, .priv-hero__main-richtext a:hover:before {
    -webkit-transform: translateX(calc(100% + var(--line-spacing)));
    transform: translateX(calc(100% + var(--line-spacing)))
}

.hover-un:hover:after, .priv-hero__main-richtext a:hover:after {
    -webkit-transform: translateX(var(--line-spacing));
    transform: translateX(var(--line-spacing))
}

.tag-wrap {
    position: relative
}

.tag-link {
    color: #fff;
    text-wrap: nowrap;
    white-space: nowrap;
    background-color: #ff1717;
    border-radius: .2rem;
    margin-bottom: .05rem;
    margin-left: -1.7rem;
    padding: .5rem .6rem;
    font-size: 1rem;
    font-weight: 500;
    line-height: 1em;
    position: absolute;
    bottom: 100%;
    left: 100%
}

.tag-link:after {
    content: "";
    clip-path: polygon(0% 0%, 100% 0, 0% 100%);
    background-color: #ff1717;
    width: .8rem;
    height: .5rem;
    display: block;
    position: absolute;
    top: 100%;
    left: .5rem
}

.tag-link.hidden {
    display: none
}

.arr-wrap {
    flex: none;
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden
}

.arr-wrap-24 {
    width: 2.4rem;
    height: 2.4rem
}

.arr-wrap-32 {
    width: 3.2rem;
    height: 3.2rem
}

.arr-wrap-100 {
    width: 10rem;
    height: 10rem
}

.arr-wrap .arr-ic-main {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0% auto auto 0%
}

.arr-wrap .arr-ic-clone {
    width: 100%;
    height: 100%;
    position: absolute;
    inset: 0% auto auto 0%;
    transform: translate(-150%, 150%)
}

.arr-hover:hover .arr-ic-main {
    transition: transform .6s cubic-bezier(.4, 0, .1, 1);
    transform: translate(150%, -150%)
}

.arr-hover:hover .arr-ic-clone {
    transition: transform .6s cubic-bezier(.4, 0, .1, 1);
    transform: translate(0)
}

.grid {
    column-gap: 2rem;
    display: grid
}

.container {
    --grid-column: 16;
    --container-padding: 6rem;
    padding: 0 var(--container-padding);
    width: 100%;
    max-width: 192rem;
    margin: 0 auto
}

.container.fluid {
    max-width: none
}

.container.grid {
    grid-template-columns: repeat(var(--grid-column), 1fr)
}

@media screen and (width<=991px

) {
    .container {
        --grid-column: 12;
        --container-padding: 4rem
    }
}

@media screen and (width<=767px

) {
    .container {
        --grid-column: 2
    }
}

@media screen and (width<=476px

) {
    .container {
        --container-padding: 2rem
    }
}

.swiper, .swiper-wrapper, .swiper-slide {
    width: 100%
}

.swiper-slide {
    height: auto
}

@font-face {
    font-family: 'i-1';
    src: url('../fonts/Inter-Regular.ttf');
    font-weight: normal;
    font-style: normal;
}

.txt {
    font-family: i-1, 'microsoft yahei', simsun, sans-serif
}

.txt-12 {
    font-size: var(--fs-12);
    line-height: var(--lh-12)
}

.txt-14 {
    font-size: var(--fs-14);
    line-height: var(--lh-14)
}

.txt-16 {
    font-size: var(--fs-16);
    line-height: var(--lh-16)
}

.txt-18 {
    font-size: var(--fs-18);
    line-height: var(--lh-18)
}

.txt-20 {
    font-size: var(--fs-20);
    line-height: var(--lh-20)
}

.txt-24 {
    font-size: var(--fs-24);
    line-height: var(--lh-24)
}

.txt-28 {
    font-size: var(--fs-28);
    line-height: var(--lh-28)
}

.txt-36 {
    font-size: var(--fs-36);
    line-height: var(--lh-36)
}

.txt-med {
    font-weight: 500
}

.txt-bold {
    font-weight: 700
}

.txt-hl, .txt-link {
    color: #ff1717
}

.txt-subscript {
    vertical-align: sub
}

h1, .h1 {
    font-size: var(--h1-fs);
    line-height: var(--h1-lh)
}

h2, .h2 {
    font-size: var(--h2-fs);
    line-height: var(--h2-lh)
}

h3, .h3 {
    font-size: var(--h3-fs);
    line-height: var(--h3-lh)
}

h4, .h4 {
    font-size: var(--h4-fs);
    line-height: var(--h4-lh)
}

h5, .h5 {
    font-size: var(--h5-fs);
    line-height: var(--h5-lh)
}

h6, .h6 {
    font-size: var(--h6-fs);
    line-height: var(--h6-lh)
}

.icon {
    justify-content: center;
    align-items: center;
    display: flex
}

.icon svg {
    width: 100%;
    height: auto
}

.icon-12 {
    width: 1.2rem;
    height: 1.2rem
}

.icon-20 {
    width: 2rem;
    height: 2rem
}

.icon-24 {
    width: 2.4rem;
    height: 2.4rem
}

.icon-32 {
    width: 3.2rem;
    height: 3.2rem
}

.icon-80 {
    width: 8rem;
    height: 8rem
}

.icon-48 {
    width: 4.8rem;
    height: 4.8rem
}

.icon-100 {
    width: 10rem;
}

.btn {
    text-align: center;
    color: #fff;
    -webkit-backface-visibility: hidden;
    z-index: 1;
    background-color: #ff1717;
    border-radius: 3px;
    justify-content: center;
    align-items: center;
    padding: 1.6rem 2rem;
    transition: background-color .4s;
    display: flex;
    position: relative;
    overflow: hidden
}

.btn:before, .btn:after {
    content: "";
    z-index: -1;
    -o-transition: transform .3s cubic-bezier(.75, 0, .125, 1);
    width: 100%;
    height: 100%;
    transition: transform .3s cubic-bezier(.75, 0, .125, 1);
    position: absolute;
    top: 0;
    bottom: 100%;
    left: -100%
}

.btn:before {
    background-color: #ff633f
}

.btn:after {
    background-color: #ed300b
}

.btn:hover:before, .btn:hover:after {
    transform: translate(100%)
}

.btn:hover:after {
    -o-transition-delay: .175s;
    transition-delay: .175s
}

.btn-pri {
    font-weight: 500
}

.btn-lg {
    padding: 1.8rem 3.4rem
}

.heading {
    font-weight: 500
}

.heading-bold {
    font-weight: 400
}

.heading-reg {
    font-weight: 400
}

.heading .g-lines {
    overflow: hidden
}

.heading .g-lines:last-child {
    margin-bottom: 0
}

.heading-f-lh {
    line-height: 1em !important
}

@media screen and (width<=767px

) {
    .heading .g-lines {
        margin-bottom: 0
    }
}

.heading .g-lines span {
    font-size: var(--h5-fs);
    line-height: var(--h5-lh);
}

img {
    display: block;
    width: 100%;
    max-width: none;
    height: auto;
}

.img-wrap {
    position: relative
}

.img-wrap:after {
    content: "";
    padding-bottom: var(--aspect);
    width: 100%;
    height: 0;
    display: block
}

.img-height {
    width: auto;
    height: 100%
}

.img-fill {
    object-fit: cover;
    width: 100%;
    height: 100%
}

.img-abs {
    position: absolute;
    inset: 0
}

.block-bg-cover {
    position: absolute;
    left: 0;
    top: 0;
    z-index: -1;
    width: 100%;
    height: 100%;
    overflow: hidden;
}

.block-bg-cover .element-cover {
    position: relative;
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    overflow: hidden;
}

:root {
    --cc-font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, Helvetica, Arial, sans-serif, "Apple Color Emoji", "Segoe UI Emoji", "Segoe UI Symbol";
    --cc-font-size: 1.6rem;
    --cc-bg: #fff;
    --cc-z-index: 999;
    --cc-text: #1d1d1d;
    --cc-border-radius: 0;
    --cc-btn-primary-bg: #ff1717;
    --cc-btn-primary-text: var(--cc-bg);
    --cc-btn-primary-hover-bg: #eb2c00;
    --cc-btn-primary-hover-text: var(--cc-btn-primary-text);
    --cc-btn-secondary-bg: #eaeff2;
    --cc-btn-secondary-text: var(--cc-text);
    --cc-btn-secondary-hover-bg: #d8e0e6;
    --cc-btn-secondary-hover-text: var(--cc-btn-secondary-text);
    --cc-btn-border-radius: 0;
    --cc-toggle-bg-off: #919ea6;
    --cc-toggle-bg-on: var(--cc-btn-primary-bg);
    --cc-toggle-bg-readonly: #d5dee2;
    --cc-toggle-knob-bg: #fff;
    --cc-toggle-knob-icon-color: #ecf2fa;
    --cc-block-text: var(--cc-text);
    --cc-cookie-category-block-bg: #f0f4f7;
    --cc-cookie-category-block-bg-hover: #e9eff4;
    --cc-section-border: #f1f3f5;
    --cc-cookie-table-border: #e9edf2;
    --cc-overlay-bg: #040608;
    --cc-overlay-opacity: .85;
    --cc-consent-modal-box-shadow: 0 .625rem 1.875rem #02020347;
    --cc-webkit-scrollbar-bg: #cfd5db;
    --cc-webkit-scrollbar-bg-hover: #9199a0
}

.c_darkmode {
    --cc-bg: #181b1d;
    --cc-text: #d8e5ea;
    --cc-btn-primary-bg: #a6c4dd;
    --cc-btn-primary-text: #000;
    --cc-btn-primary-hover-bg: #c2dff7;
    --cc-btn-primary-hover-text: var(--cc-btn-primary-text);
    --cc-btn-secondary-bg: #33383c;
    --cc-btn-secondary-text: var(--cc-text);
    --cc-btn-secondary-hover-bg: #3e454a;
    --cc-btn-secondary-hover-text: var(--cc-btn-secondary-text);
    --cc-toggle-bg-off: #667481;
    --cc-toggle-bg-on: var(--cc-btn-primary-bg);
    --cc-toggle-bg-readonly: #454c54;
    --cc-toggle-knob-bg: var(--cc-cookie-category-block-bg);
    --cc-toggle-knob-icon-color: var(--cc-bg);
    --cc-block-text: #b3bfc5;
    --cc-cookie-category-block-bg: #23272a;
    --cc-cookie-category-block-bg-hover: #2b3035;
    --cc-section-border: #292d31;
    --cc-cookie-table-border: #2b3035;
    --cc-webkit-scrollbar-bg: #667481;
    --cc-webkit-scrollbar-bg-hover: #9199a0
}

#cc--main {
    z-index: var(--cc-z-index);
    display: none;
}

.show--consent .c--anim #cm {
    z-index: 2
}

.cc_div *, .cc_div :hover, .cc_div :before, .cc_div :after {
    box-sizing: border-box;
    float: none;
    font-style: inherit;
    font-variant: normal;
    font-weight: inherit;
    text-transform: none;
    letter-spacing: unset;
    color: inherit;
    border-radius: unset;
    box-shadow: none;
    text-align: left;
    visibility: unset;
    vertical-align: baseline;
    background: 0 0;
    border: none;
    height: auto;
    margin: 0;
    padding: 0;
    font-family: inherit;
    font-size: 1em;
    line-height: 1.2;
    text-decoration: none;
    transition: none;
    animation: none
}

.cc_div {
    font-size: var(--cc-font-size);
    font-weight: 400;
    font-family: var(--cc-font-family);
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
    text-rendering: optimizelegibility;
    color: var(--cc-text)
}

.cc_div .b-tl, #c-ttl, #s-bl td:before {
    font-weight: 600
}

#cm, #s-inr, .cc_div .c-bl, .cc_div .b-tl, #s-bl .act .b-acc {
    border-radius: var(--cc-border-radius)
}

#s-bl .act .b-acc {
    border-top-left-radius: 0;
    border-top-right-radius: 0
}

.cc_div input, .cc_div button, .cc_div a {
    appearance: none;
    overflow: hidden
}

.cc_div a {
    border-bottom: 1px solid
}

.cc_div a:hover {
    border-color: #0000;
    text-decoration: none
}

.cc_div .c-bn > span {
    pointer-events: none
}

.c--anim #cm, .c--anim #s-cnt, .c--anim #s-inr, #cs-ov, #cm-ov {
    transition: visibility .25s linear, opacity .25s, transform .25s !important
}

.c--anim .c-bn {
    transition: background-color .25s !important
}

.c--anim #cm.bar.slide, .c--anim .bar.slide #s-inr, .c--anim #cm.bar.slide + #cm-ov, .c--anim .bar.slide + #cs-ov {
    transition: visibility .5s, opacity .5s, transform .5s !important
}

#cm.bar.slide, .cc_div .bar.slide #s-inr {
    opacity: 1;
    transform: translate(100%)
}

#cm.bar.top.slide, .cc_div .bar.left.slide #s-inr {
    opacity: 1;
    transform: translate(-100%)
}

.cc_div .slide #s-inr {
    transform: translateY(1.6em)
}

#cm.top.slide {
    transform: translateY(-1.6em)
}

#cm.bar.slide {
    transform: translateY(100%)
}

#cm.bar.top.slide {
    transform: translateY(-100%)
}

.show--consent .c--anim #cm, .show--consent .c--anim #cm.bar, .show--settings .c--anim #s-inr, .show--settings .c--anim .bar.slide #s-inr {
    opacity: 1;
    transform: scale(1);
    visibility: visible !important
}

.show--consent .c--anim #cm.box.middle, .show--consent .c--anim #cm.cloud.middle {
    transform: scale(1) translateY(-50%)
}

.show--settings .c--anim #s-cnt {
    visibility: visible !important
}

.force--consent.show--consent .c--anim #cm-ov, .show--settings .c--anim #cs-ov {
    visibility: visible !important;
    opacity: var(--cc-overlay-opacity) !important
}

#cm {
    z-index: var(--cc-z-index);
    background: var(--cc-bg);
    box-shadow: 0 .625em 1.875em #000;
    box-shadow: var(--cc-consent-modal-box-shadow);
    opacity: 0;
    visibility: hidden;
    font-family: inherit;
    line-height: initial;
    width: 100%;
    max-width: 53rem;
    padding: 6rem;
    transition: opacity .4s;
    position: fixed;
    bottom: 2rem;
    right: 2rem
}

#cm[aria-hidden=true] {
    pointer-events: none;
    opacity: 0 !important
}

#cc_div #cm {
    opacity: 0;
    display: block !important
}

#c-ttl {
    margin-bottom: 2rem;
    font-size: 3.6rem;
    font-weight: 500
}

.cloud #c-ttl {
    margin-top: -.15em
}

#c-txt {
    font-size: .9em;
    line-height: 1.5em
}

.cc_div #c-bns {
    justify-content: space-between;
    margin-top: 3.2rem;
    display: flex
}

.cc_div .c-bn {
    color: var(--cc-btn-secondary-text);
    background: var(--cc-btn-secondary-bg);
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    -khtml-user-select: none;
    -o-user-select: none;
    text-align: center;
    border-radius: var(--cc-btn-border-radius);
    flex: 1;
    padding: 1.6rem 2rem;
    font-size: .9em;
    font-weight: 500;
    line-height: 1.6em;
    border-radius: 3px;
    display: inline-block
}

#c-bns button + button, #s-cnt button + button, #s-c-bn {
    float: right;
    margin-left: .8rem
}

#s-cnt #s-rall-bn {
    float: none
}

#cm .c_link:hover, #cm .c_link:active, #s-cnt button + button:hover, #s-cnt button + button:active, #s-c-bn:active, #s-c-bn:hover {
    background: var(--cc-btn-secondary-hover-bg);
    color: var(--cc-btn-secondary-hover-text)
}

#s-cnt {
    z-index: calc(var(--cc-z-index) + 1);
    visibility: hidden;
    width: 100%;
    height: 100%;
    display: table;
    position: fixed;
    top: 0;
    left: 0
}

#s-bl {
    scrollbar-width: thin;
    outline: none
}

#s-bl .title {
    margin-top: 1.4em
}

#s-bl .title:first-child, #s-bl .b-bn {
    margin-top: 0
}

#s-bl .b-acc .p {
    margin-top: 0;
    padding: 1em
}

#s-cnt .b-bn .b-tl {
    background: 0 0;
    width: 100%;
    padding: 1.3em 6.4em 1.3em 2.7em;
    font-family: inherit;
    font-size: .95em;
    transition: background-color .25s;
    display: block;
    position: relative
}

#s-cnt .b-bn .b-tl.exp {
    cursor: pointer
}

#s-cnt .act .b-bn .b-tl {
    border-bottom-right-radius: 0;
    border-bottom-left-radius: 0
}

#s-cnt .b-bn .b-tl:active, #s-cnt .b-bn .b-tl:hover {
    background: var(--cc-cookie-category-block-bg-hover)
}

#s-bl .b-bn {
    position: relative
}

#s-bl .c-bl {
    border: 1px solid var(--cc-section-border);
    margin-bottom: .4rem;
    padding: 1em;
    transition: background-color .25s
}

#s-bl .c-bl:hover {
    background: var(--cc-cookie-category-block-bg)
}

#s-bl .c-bl:last-child {
    margin-bottom: .5em
}

#s-bl .c-bl:first-child {
    border: none;
    margin-top: 0;
    margin-bottom: 2em;
    padding: 0;
    transition: none
}

#s-bl .c-bl:not(.b-ex):first-child:hover {
    background: 0 0;
    background: unset
}

#s-bl .c-bl.b-ex {
    background: var(--cc-cookie-category-block-bg);
    border: none;
    padding: 0;
    transition: none
}

#s-bl .c-bl.b-ex + .c-bl {
    margin-top: 2em
}

#s-bl .c-bl.b-ex + .c-bl.b-ex {
    margin-top: 0
}

#s-bl .c-bl.b-ex:first-child {
    margin-bottom: .5em
}

#s-bl .b-acc {
    max-height: 0;
    margin-bottom: 0;
    padding-top: 0;
    display: none;
    overflow: hidden
}

#s-bl .act .b-acc {
    max-height: 100%;
    display: block;
    overflow: hidden
}

#s-cnt .p {
    color: var(--cc-block-text);
    margin-top: .85em;
    font-size: .9em;
    line-height: 1.5em
}

.cc_div .b-tg .c-tgl:disabled {
    cursor: not-allowed
}

#c-vln {
    vertical-align: middle;
    display: table-cell;
    position: relative
}

#cs {
    width: 100%;
    height: 100%;
    padding: 0 1.7em;
    position: fixed;
    inset: 0
}

#s-inr {
    opacity: 0;
    visibility: hidden;
    max-width: 45em;
    height: 100%;
    margin: 0 auto;
    padding-top: 4.75em;
    padding-bottom: 4.75em;
    position: relative;
    overflow: hidden;
    transform: scale(.96);
    box-shadow: 0 13px 27px -5px #03060942
}

#s-inr, #s-hdr, #s-bns {
    background: var(--cc-bg)
}

#s-bl {
    overflow-y: auto;
    overflow-y: overlay;
    width: 100%;
    height: 100%;
    padding: 1.3em 1.6em;
    display: block;
    overflow-x: hidden
}

#s-bns {
    border-top: 1px solid var(--cc-section-border);
    padding: 1em 1.8em;
    position: absolute;
    bottom: 0;
    left: 0;
    right: 0
}

.cc_div .cc-link {
    color: var(--cc-btn-primary-bg);
    border-bottom: 1px solid var(--cc-btn-primary-bg);
    cursor: pointer;
    padding-bottom: 0;
    font-weight: 600;
    text-decoration: none;
    display: inline
}

.cc_div .cc-link:hover, .cc_div .cc-link:active {
    border-color: #0000
}

#c-bns button:first-child, #s-bns button:first-child {
    color: var(--cc-btn-primary-text);
    background: var(--cc-btn-primary-bg)
}

#c-bns.swap button:first-child {
    color: var(--cc-btn-secondary-text);
    background: var(--cc-btn-secondary-bg)
}

#c-bns.swap button:last-child {
    color: var(--cc-btn-primary-text);
    background: var(--cc-btn-primary-bg)
}

.cc_div .b-tg .c-tgl:checked ~ .c-tg {
    background: var(--cc-toggle-bg-on)
}

#c-bns button:first-child:active, #c-bns button:first-child:hover, #s-bns button:first-child:active, #s-bns button:first-child:hover, #c-bns.swap button:last-child:active, #c-bns.swap button:last-child:hover {
    background: var(--cc-btn-primary-hover-bg);
    color: var(--cc-btn-primary-hover-text)
}

#c-bns.swap button:first-child:active, #c-bns.swap button:first-child:hover {
    background: var(--cc-btn-secondary-hover-bg);
    color: var(--cc-btn-secondary-hover-text)
}

#s-hdr {
    vertical-align: middle;
    z-index: 2;
    border-bottom: 1px solid var(--cc-section-border);
    width: 100%;
    height: 4.75em;
    padding: 0 1.8em;
    display: table;
    position: absolute;
    top: 0
}

#s-ttl {
    vertical-align: middle;
    font-size: 1em;
    display: table-cell
}

#s-c-bn {
    font-size: 1.45em;
    font-weight: initial;
    background-color: #fff;
    border-radius: 0;
    justify-content: center;
    align-items: center;
    width: 6rem;
    height: 6rem;
    margin: 0;
    padding: 0;
    display: flex;
    position: relative;
    overflow: hidden
}

#s-c-bn:hover {
    background-color: #fff
}

#s-c-bn:hover:before, #s-c-bn:hover:after {
    background-color: var(--cc-btn-primary-bg)
}

#s-c-bnc {
    vertical-align: middle;
    display: table-cell
}

#s-c-bn:first-child {
    margin-right: -1.5rem
}

.cc_div span.t-lb {
    z-index: -1;
    opacity: 0;
    pointer-events: none;
    position: absolute;
    top: 0;
    overflow: hidden
}

#c_policy__text {
    height: 31.25em;
    margin-top: 1.25em;
    overflow-y: auto
}

#c-s-in {
    height: calc(100% - 2.5em);
    max-height: 37.5em;
    position: relative;
    top: 50%;
    transform: translateY(-50%)
}

@media screen and (width>

=688px

) {
    #s-bl::-webkit-scrollbar {
        background: 0 0;
        border-radius: 0 .25em .25em 0;
        width: .8em;
        height: 100%
    }

    #s-bl::-webkit-scrollbar-thumb {
        border: .25em solid var(--cc-bg);
        background: var(--cc-webkit-scrollbar-bg);
        border-radius: 100em
    }

    #s-bl::-webkit-scrollbar-thumb:hover {
        background: var(--cc-webkit-scrollbar-bg-hover)
    }

    #s-bl::-webkit-scrollbar-button {
        width: 10px;
        height: 5px
    }
}

.cc_div .b-tg {
    cursor: pointer;
    -webkit-user-select: none;
    user-select: none;
    vertical-align: middle;
    margin: auto;
    display: inline-block;
    position: absolute;
    top: 0;
    bottom: 0;
    right: 1.2em
}

.cc_div .b-tg .c-tgl {
    cursor: pointer;
    border: 0;
    margin: 0;
    display: block;
    position: absolute;
    top: 0;
    left: 0
}

.cc_div .b-tg .c-tg {
    background: var(--cc-toggle-bg-off);
    pointer-events: none;
    transition: background-color .25s, box-shadow .25s;
    position: absolute
}

.cc_div span.t-lb, .cc_div .b-tg, .cc_div .b-tg .c-tg, .cc_div .b-tg .c-tgl {
    border-radius: 4em;
    width: 3.4em;
    height: 1.5em
}

.cc_div .b-tg .c-tg.c-ro {
    cursor: not-allowed
}

.cc_div .b-tg .c-tgl ~ .c-tg.c-ro {
    background: var(--cc-toggle-bg-readonly)
}

.cc_div .b-tg .c-tgl ~ .c-tg.c-ro:after {
    box-shadow: none
}

.cc_div .b-tg .c-tg:after {
    content: "";
    box-sizing: content-box;
    background: var(--cc-toggle-knob-bg);
    border: none;
    border-radius: 100%;
    width: 1.25em;
    height: 1.25em;
    transition: transform .25s;
    display: block;
    position: relative;
    top: .125em;
    left: .125em;
    box-shadow: 0 1px 2px #1820235c
}

.cc_div .b-tg .c-tgl:checked ~ .c-tg:after {
    transform: translate(1.9em)
}

#s-bl table, #s-bl th, #s-bl td {
    border: none
}

#s-bl tbody tr {
    transition: background-color .25s
}

#s-bl tbody tr:hover {
    background: var(--cc-cookie-category-block-bg-hover)
}

#s-bl table {
    text-align: left;
    border-collapse: collapse;
    width: 100%;
    margin: 0;
    padding: 0;
    overflow: hidden
}

#s-bl caption {
    border-bottom: 1px solid var(--cc-cookie-table-border);
    padding: .5rem 1rem;
    font-size: .9em;
    font-weight: 600
}

#s-bl td, #s-bl th {
    text-align: left;
    vertical-align: top;
    padding: .8em .625em .8em 1.2em;
    font-size: .8em
}

#s-bl th {
    padding: 1em 1rem;
    font-family: inherit;
    font-weight: 600
}

#s-bl thead tr:first-child {
    border-bottom: 1px solid var(--cc-cookie-table-border)
}

.force--consent #s-cnt, .force--consent #cs {
    width: 100vw
}

#cm-ov, #cs-ov {
    visibility: hidden;
    opacity: 0;
    background: #070707;
    background: var(--cc-overlay-bg);
    transition: none;
    display: none;
    position: fixed;
    inset: 0
}

.show--settings #cs-ov, .c--anim #cs-ov, .force--consent .c--anim #cm-ov, .force--consent.show--consent #cm-ov {
    display: block
}

#cs-ov {
    z-index: 2
}

.force--consent .cc_div {
    visibility: hidden;
    width: 100vw;
    transition: visibility .25s linear;
    position: fixed;
    top: 0;
    bottom: 0;
    left: 0
}

.force--consent.show--consent .c--anim .cc_div, .force--consent.show--settings .c--anim .cc_div {
    visibility: visible
}

.force--consent #cm {
    position: absolute
}

.force--consent #cm.bar {
    width: 100vw;
    max-width: 100vw
}

html.force--consent.show--consent {
    overflow-y: hidden !important
}

html.force--consent.show--consent, html.force--consent.show--consent body {
    height: auto !important;
    overflow-x: hidden !important
}

.cc_div .b-bn .exp:before, .cc_div .act .b-bn .exp:before {
    border: solid var(--cc-btn-secondary-text);
    content: "";
    border-width: 0 2px 2px 0;
    margin-right: 15px;
    padding: .2em;
    display: inline-block;
    position: absolute;
    top: 50%;
    left: 1.2em;
    transform: translateY(-50%) rotate(45deg)
}

.cc_div .act .b-bn .b-tl:before {
    transform: translateY(-20%) rotate(225deg)
}

.cc_div .on-i:before {
    border: solid var(--cc-toggle-knob-icon-color);
    content: "";
    border-width: 0 2px 2px 0;
    margin: 0 auto;
    padding: .1em .1em .45em;
    display: inline-block;
    position: absolute;
    top: .37em;
    left: .75em;
    transform: rotate(45deg)
}

#s-c-bn:before, #s-c-bn:after {
    content: "";
    background: var(--cc-btn-secondary-text);
    border-radius: 1em;
    width: .15rem;
    height: 2.8rem;
    margin: 0 auto;
    transition: all .35s ease-out;
    position: absolute;
    transform: rotate(45deg)
}

#s-c-bn:after {
    transform: rotate(-45deg)
}

.cc_div .off-i, .cc_div .on-i {
    text-align: center;
    opacity: 0;
    width: 50%;
    height: 100%;
    transition: opacity .15s;
    display: block;
    position: absolute;
    right: 0
}

.cc_div .on-i {
    left: 0
}

.cc_div .off-i:before, .cc_div .off-i:after {
    content: " ";
    background: var(--cc-toggle-knob-icon-color);
    transform-origin: 50%;
    width: .09375em;
    height: .7em;
    margin: 0 auto;
    display: block;
    position: absolute;
    top: .42em;
    right: .8em
}

.cc_div .off-i:before {
    transform: rotate(45deg)
}

.cc_div .off-i:after {
    transform: rotate(-45deg)
}

#cm.box.middle, #cm.cloud.middle {
    top: 50%;
    bottom: auto;
    transform: translateY(-37%)
}

#cm.box.middle.zoom, #cm.cloud.middle.zoom {
    transform: scale(.95) translateY(-50%)
}

#cm.box.center {
    margin: 0 auto;
    left: 1em;
    right: 1em
}

#cm.cloud {
    text-align: center;
    width: unset;
    max-width: 50em;
    margin: 0 auto;
    padding: 1.2em 1.7em;
    left: 1em;
    right: 1em;
    overflow: hidden
}

.cc_div .cloud #c-inr {
    width: 100%;
    display: table
}

.cc_div .cloud #c-inr-i {
    vertical-align: top;
    width: 70%;
    padding-right: 2.4em;
    display: table-cell
}

.cc_div .cloud #c-txt {
    font-size: .85em
}

.cc_div .cloud #c-bns {
    vertical-align: middle;
    min-width: 170px;
    display: table-cell
}

#cm.cloud .c-bn {
    width: 100%;
    margin: .5rem 0 0
}

#cm.cloud .c-bn:first-child {
    margin: 0
}

#cm.cloud.left {
    margin-right: 1.25em
}

#cm.cloud.right {
    margin-left: 1.25em
}

#cm.bar {
    border-radius: 0;
    width: 100%;
    max-width: 100%;
    padding: 2em;
    position: fixed;
    bottom: 0;
    left: 0;
    right: 0
}

#cm.bar #c-inr {
    max-width: 32em;
    margin: 0 auto
}

#cm.bar #c-bns {
    max-width: 33.75em
}

#cm.bar #cs {
    padding: 0
}

.cc_div .bar #c-s-in {
    height: 100%;
    max-height: 100%;
    top: 0;
    transform: none
}

.cc_div .bar #s-hdr, .cc_div .bar #s-bl, .cc_div .bar #s-bns {
    padding-left: 1.4em;
    padding-right: 1.4em
}

.cc_div .bar #cs {
    padding: 0
}

.cc_div .bar #s-inr {
    border-radius: 0;
    max-width: 32em;
    margin: 0 0 0 auto
}

.cc_div .bar.left #s-inr {
    margin-left: 0;
    margin-right: auto
}

.cc_div .bar #s-bl table, .cc_div .bar #s-bl thead, .cc_div .bar #s-bl tbody, .cc_div .bar #s-bl th, .cc_div .bar #s-bl td, .cc_div .bar #s-bl tr, .cc_div .bar #s-cnt {
    display: block
}

.cc_div .bar #s-bl caption {
    border-top: 0;
    border-bottom: 1px solid var(--cc-cookie-table-border);
    display: block
}

.cc_div .bar #s-bl thead tr {
    position: absolute;
    top: -9999px;
    left: -9999px
}

.cc_div .bar #s-bl tr {
    border-top: 1px solid var(--cc-cookie-table-border)
}

.cc_div .bar #s-bl td {
    border: none;
    padding-left: 35%;
    position: relative
}

.cc_div .bar #s-bl td:before {
    white-space: nowrap;
    content: attr(data-column);
    color: var(--cc-text);
    text-overflow: ellipsis;
    padding-right: .625em;
    position: absolute;
    left: 1rem;
    overflow: hidden
}

#cm.top {
    top: 1.25em;
    bottom: auto
}

#cm.left {
    left: 1.25em;
    right: auto
}

#cm.right {
    left: auto;
    right: 1.25em
}

#cm.bar.left, #cm.bar.right {
    left: 0;
    right: 0
}

#cm.bar.top {
    top: 0
}

@media (prefers-reduced-motion) {
    #cc--main #cm, #cc--main #s-cnt, #cc--main #s-inr {
        transition: none !important
    }
}

@media screen and (width<=688px

) {
    #cm, #cm.cloud, #cm.left, #cm.right {
        width: auto;
        max-width: 100%;
        margin: 0;
        display: block;
        bottom: 1em;
        left: 1em;
        right: 1em;
        padding: 1.2em !important
    }

    #c-ttl {
        margin-bottom: 1.2rem;
        font-size: 2.4rem
    }

    .force--consent #cm, .force--consent #cm.cloud {
        width: auto;
        max-width: 100vw
    }

    #cm.top {
        top: 1em;
        bottom: auto
    }

    #cm.bottom {
        top: auto;
        bottom: 1em
    }

    #cm.bar.bottom {
        bottom: 0
    }

    #cm.cloud .c-bn {
        font-size: .85em
    }

    #s-bns, .cc_div .bar #s-bns {
        padding: 1em 1.3em
    }

    .cc_div .bar #s-inr {
        width: 100%;
        max-width: 100%
    }

    .cc_div .cloud #c-inr-i {
        padding-right: 0
    }

    #cs {
        border-radius: 0;
        padding: 0
    }

    #c-s-in {
        height: 100%;
        max-height: 100%;
        top: 0;
        transform: none
    }

    .cc_div .b-tg {
        right: 1.1em;
        transform: scale(1.1)
    }

    .cc_div #c-bns {
        margin-top: 2.8rem
    }

    #s-inr {
        border-radius: 0;
        margin: 0;
        padding-bottom: 7.9em
    }

    #s-bns {
        justify-content: space-between;
        height: 7.9em
    }

    #s-bl, .cc_div .bar #s-bl {
        padding: 1.2em
    }

    #s-hdr, .cc_div .bar #s-hdr {
        padding: 0 1.2em
    }

    #s-bl table {
        width: 100%
    }

    #s-inr.bns-t {
        padding-bottom: 10.5em
    }

    .bns-t #s-bns {
        height: auto
    }

    #s-all-bn, #s-rall-bn {
        width: calc(50% - .5rem) !important
    }

    .cc_div .bns-t .c-bn {
        padding: .9em 1.6em;
        font-size: .83em
    }

    #s-cnt .b-bn .b-tl {
        padding-top: 1.2em;
        padding-bottom: 1.2em
    }

    #s-bl table, #s-bl thead, #s-bl tbody, #s-bl th, #s-bl td, #s-bl tr, #s-cnt {
        display: block
    }

    #s-bl caption {
        border-bottom: 0;
        display: block
    }

    #s-bl thead tr {
        position: absolute;
        top: -9999px;
        left: -9999px
    }

    #s-bl tr {
        border-top: 1px solid var(--cc-cookie-table-border)
    }

    #s-bl td {
        border: none;
        padding-left: 35%;
        position: relative
    }

    #s-bl td:before {
        white-space: nowrap;
        content: attr(data-column);
        color: var(--cc-text);
        text-overflow: ellipsis;
        padding-right: .625em;
        position: absolute;
        left: 1rem;
        overflow: hidden
    }

    #cm .c-bn, .cc_div .c-bn {
        width: 100%;
        margin-right: 0
    }

    .cc_div .c-bn {
        padding: 1rem 2rem
    }

    #s-c-bn.c-bn {
        width: 4.2rem;
        height: 4.2rem;
        margin-right: .6rem
    }

    #s-c-bn:first-child {
        margin-right: -.8rem
    }

    #s-cnt #s-rall-bn {
        margin-left: 0
    }

    .cc_div #c-bns {
        justify-content: space-between
    }

    #c-p-bn {
        width: calc(50% - .5rem) !important;
        margin-top: 0 !important
    }

    #s-cnt button + button {
        float: unset;
        margin-top: .625em;
        margin-left: 0
    }

    #cm.cloud, #cm.box {
        width: auto;
        left: 1em;
        right: 1em
    }

    #cm.cloud.right, #cm.cloud.left {
        margin: 0
    }

    .cc_div .cloud #c-bns, .cc_div .cloud #c-inr, .cc_div .cloud #c-inr-i {
        min-width: unset;
        width: auto;
        display: block
    }

    .cc_div .cloud #c-txt {
        font-size: .9em
    }

    .cc_div .cloud #c-bns {
        margin-top: 1.625em
    }

    #s-c-bn:before, #s-c-bn:after {
        height: 2rem
    }

    #s-rall-bn {
        float: right !important;
        margin-top: 0 !important
    }
}

.trans__wrapper {
    z-index: 1000;
    pointer-events: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    display: flex;
    position: fixed;
    top: 0;
    left: 0;
    overflow: hidden
}

.trans__logo {
    z-index: 2;
    opacity: 0;
    width: 14.6rem;
    max-width: 148px;
    height: 14.6rem;
    max-height: 148px;
    position: absolute
}

.trans__logo.active {
    opacity: 1
}

.trans__inner {
    z-index: 1;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
}

.trans__item {
    background-color: #eaeef0;
    width: calc(100% + 2px);
    height: 100%;
    margin: 0 -1px;
    display: block
}

.trans__home {
    z-index: 3;
    opacity: 0;
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    bottom: 0
}

.trans__home.active {
    opacity: 1
}

.trans__home-inner {
    height: 100%;
    padding-bottom: max(8.5vh, 8.5rem)
}

@media screen and (width<=991px

) {
    .trans__home-inner {
        padding-bottom: 6rem
    }
}

.trans__home-inner .container {
    height: 100%
}

.trans__home-inner .fw-m0__title {
    grid-row: 1/2;
    transform: translateY(68vh);
    color: #ff1717;
}

.trans__home-inner .fw-m0__backer {
    transform: translateY(calc(6rem + 100%))
}

@media screen and (width<=991px

) {
    .trans__home-inner .fw-m0__title {
        transform: translateY(82vh)
    }

    .trans__home-inner .fw-m0__backer {
        grid-row: 1/3;
        align-self: start;
        margin-top: 100vh;
        transform: translateY(calc(6rem + 100%))
    }
}

@media screen and (width<=767px

) {
    .trans__home-inner .fw-m0__title {
        transform: translateY(84 svh)
    }
}

.trans__count {
    opacity: 0;
    flex-direction: column;
    grid-area: 1/1/3/17;
    justify-content: space-between;
    align-items: start;
    row-gap: calc(25vh - 20.5rem);
    height: 25vh;
    display: flex;
    transform: translateY(68vh)
}

@media screen and (width<=991px

) {
    .trans__count {
        grid-column: 1/13;
        row-gap: calc(14vh - 12.7rem);
        height: 14vh;
        transform: translateY(82vh)
    }
}

@media screen and (width<=767px

) {
    .trans__count {
        grid-column: 1/3;
        row-gap: calc(3svh - .2rem);
        height: 13 svh;
        transform: translateY(84 svh)
    }
}

.trans__count.active {
    opacity: 1
}

.trans__count-number {
    color: #ff1717;
    position: relative
}

.trans__count-value {
    font-kerning: none;
    font-variant-numeric: tabular-nums;
    font-size: 20rem;
    line-height: 14.2rem
}

@media screen and (width<=991px

) {
    .trans__count-value {
        font-size: 12rem;
        line-height: 12.2rem
    }
}

@media screen and (width<=767px

) {
    .trans__count-value {
        font-size: 10 svh;
        line-height: 10 svh
    }
}

.trans__count-percent {
    margin-left: .4rem;
    font-size: 8rem;
    line-height: 5.7rem;
    position: absolute;
    top: 0;
    left: 100%
}

@media screen and (width<=991px

) {
    .trans__count-percent {
        font-size: 4.7rem;
        line-height: 4.7rem
    }
}

@media screen and (width<=767px

) {
    .trans__count-percent {
        font-size: 4rem
    }
}

.trans__count-bar {
    background-color: #f3f3f31a;
    flex-shrink: 0;
    width: 100%;
    height: .5rem
}

@media screen and (width<=767px

) {
    .trans__count-bar {
        height: .2rem
    }
}

.trans__count-bar-inner {
    transform-origin: 0;
    background-color: #ff1717;
    width: 100%;
    height: 100%;
    transform: scaleX(0)
}

@media screen and (width<=991px

) {
    .trans__logo {
        width: 12rem;
        height: 12rem
    }
}

@media screen and (width<=767px

) {
    .trans__wrapper {
        height: 100 svh
    }

    .trans__logo {
        width: 8rem;
        height: 8rem
    }
}

.header {
    --header-txt: 0, 0, 0;
    --header-orange: 255, 23, 23;
    background-color: rgba(var(--header-bg), 0);
    z-index: 991;
    align-items: center;
    width: 100%;
    padding: 3.2rem 0;
    transition: all .4s;
    display: flex;
    position: fixed;
    top: 0;
    left: 0
}

.header.dark-mode {
    --header-txt: 255, 255, 255
}

.header .container {
    justify-content: space-between;
    align-items: center;
    display: flex;
}

.header__typo-1 {
    height: 1.8rem;
    -o-transition: all .4s linear;
    transition: all .4s linear;
    display: flex;
    position: absolute;
    left: 6.5rem;
    top: 46%;
    overflow: hidden
}

.header__logo {
    height: 5.2rem;
    margin-right: auto;
    transition: height .4s;
    display: flex;
    position: relative;
}

.header__logo-shape {
    z-index: 2;
    grid-template-columns: 1fr;
    display: grid;
    position: relative
}

.header__logo-shape-top {
    grid-area: 1/2/1/2;
    color: rgba(var(--header-orange), 1) !important
}

.header__logo-shape-bottom {
    grid-area: 1/2/1/2;
    color: rgba(var(--header-txt), 1) !important
}

.header__logo-letter {
    z-index: 1;
    -o-transition: all .4s ease;
    transition: all .4s;
    position: relative;
    margin: 0 2px;
    color: rgba(var(--header-txt), 1) !important
}

.header__logo svg {
    width: auto;
    height: 100%
}

.header__logo svg path {
    transition: color .4s
}

.header__links {
    --default-width: 63.9rem;
    -o-transition: all .4s ease;
    justify-items: end;
    margin-right: 4.8rem;
    transition: all .4s;
    display: grid
}

.header__links-inner {
    max-width: calc(var(--default-width) + 4.8rem);
    z-index: 2;
    -o-transition: all .4s ease;
    flex-wrap: nowrap;
    grid-area: 1/1/2/2;
    justify-content: end;
    align-items: center;
    column-gap: 7.2rem;
    padding: 0;
    transition: all .4s;
    display: flex;
    position: relative;
    overflow: hidden
}

.header__links-toggle {
    z-index: 1;
    pointer-events: none;
    transform-origin: 100%;
    grid-area: 1/1/2/2;
    width: 5rem;
    height: 5rem;
    position: relative
}

.header__links-toggle-icon {
    background-color: rgba(var(--header-txt), 1);
    transform-origin: 100%;
    -o-transition: transform .4s ease;
    width: 100%;
    height: 1px;
    transition: transform .4s;
    position: absolute;
    right: 1.3rem;
    transform: scaleX(0)
}

.header__links-toggle-icon-1 {
    width: 2.4rem;
    top: 1.7rem
}

.header__links-toggle-icon-2 {
    width: 2.4rem;
    top: calc(2.4rem + .5px)
}

.header__links-toggle-icon-3 {
    width: 1.2rem;
    top: 3.2rem
}

.header__link {
    color: rgba(var(--header-txt), .6);
    -o-transition: all .4s ease;
    white-space: nowrap;
    transition: all .4s;
    transition-delay: calc(.2s + 40ms * var(--link-delay-index));
    display: block
}

.header__link:first-child {
    --link-delay-index: 5
}

.header__link:nth-child(2) {
    --link-delay-index: 4
}

.header__link:nth-child(3) {
    --link-delay-index: 3
}

.header__link:nth-child(4) {
    --link-delay-index: 2
}

.header__link:nth-child(5) {
    --link-delay-index: 1
}

.header__link:hover, .header__link.active {
    color: rgba(var(--header-txt), 1)
}

.header__btn {
    padding: 1.6rem 1.6rem 1.6rem
}

.header__btn .txt-16 {
    line-height: 1.125em
}

.header__toggle, .header__nav {
    display: none
}

.header.on-scroll .header__typo-1 {
    transform: translate(-2rem)
}

.header.on-scroll .header__logo-letter {
    opacity: 0
}

.header.on-scroll .header__logo-letter.letter-g, .header.on-scroll .header__logo-letter.letter-d, .header.on-scroll .header__logo-letter.letter-t, .header.on-scroll .header__logo-letter.letter-c {
    transform: translate(-3rem)
}

.header.on-scroll .header__logo:hover .header__logo-letter {
    opacity: 1;
    transform: translate(0)
}

.header.on-scroll .header__logo:hover .header__typo-1 {
    transform: translate(0)
}

.header.on-scroll .header__links {
    background-color: #f6f6f6;
    margin-right: .8rem;
    border-radius: 3px;
}

.header.on-scroll .header__links-inner {
    column-gap: 5.2rem;
    max-width: 5rem;
    padding: 0;
    transition-delay: 0s
}

.header.on-scroll .header__links-toggle-icon {
    transform-origin: 0;
    opacity: 1;
    transition-delay: calc(.1s + 40ms * var(--link-delay-index));
    transform: scaleX(1)
}

.header.on-scroll .header__links-toggle-icon:first-child {
    --link-delay-index: 5
}

.header.on-scroll .header__links-toggle-icon:nth-child(2) {
    --link-delay-index: 4
}

.header.on-scroll .header__links-toggle-icon:nth-child(3) {
    --link-delay-index: 3
}

.header.on-scroll .header__links-toggle-icon:nth-child(4) {
    --link-delay-index: 2
}

.header.on-scroll .header__links-toggle-icon:nth-child(5) {
    --link-delay-index: 1
}

.header.on-scroll .header__links .header__link {
    opacity: 0;
    transition-delay: calc(.1s + 40ms * var(--link-delay-index));
    transform: translate(2rem)
}

.header.on-scroll .header__links:hover {
    width: auto;
    overflow: visible
}

.header.on-scroll .header__links:hover .header__links-inner {
    max-width: calc(var(--default-width) + 6.4rem - 3.2rem);
    padding: 0 3.2rem
}

.header.on-scroll .header__links:hover .header__links-toggle-icon {
    opacity: 1;
    transform-origin: 100%;
    transition-delay: calc(40ms * var(--ic-delay-index));
    transform: scaleX(0)
}

.header.on-scroll .header__links:hover .header__links-toggle-icon:first-child {
    --ic-delay-index: 3
}

.header.on-scroll .header__links:hover .header__links-toggle-icon:nth-child(2) {
    --ic-delay-index: 2
}

.header.on-scroll .header__links:hover .header__links-toggle-icon:nth-child(3) {
    --ic-delay-index: 1
}

.header.on-scroll .header__links:hover .header__link {
    opacity: 1;
    transition-delay: calc(.1s + 40ms * var(--link-delay-index));
    transform: translate(0)
}

.header.on-scroll .header__links:hover .header__link:first-child {
    --link-delay-index: 5
}

.header.on-scroll .header__links:hover .header__link:nth-child(2) {
    --link-delay-index: 4
}

.header.on-scroll .header__links:hover .header__link:nth-child(3) {
    --link-delay-index: 3
}

.header.on-scroll .header__links:hover .header__link:nth-child(4) {
    --link-delay-index: 2
}

.header.on-scroll .header__links:hover .header__link:nth-child(5) {
    --link-delay-index: 1
}

.header.on-scroll.dark-mode .header__links {
    background-color: #ffffff0d
}

.header.mix-mode .header__logo-shape-top, .header.mix-mode .header__logo-shape-bottom, .header.mix-mode .header__logo-letter, .header.invert-mode .header__logo-shape-top, .header.invert-mode .header__logo-shape-bottom, .header.invert-mode .header__logo-letter {
    color: #fff !important
}

.header.invert-mode .header__btn {
    background-color: #1d1d1d
}

.header.invert-mode .header__btn:before {
    background-color: #323232
}

.header.invert-mode .header__btn:after {
    background-color: #232323
}

@media screen and (width<=1366px

) {
    .header__links-inner {
        column-gap: 6.2rem;
    }
}

@media screen and (width<=1280px

) {
    .header__links-inner {
        column-gap: 5.2rem;
    }
}

@media screen and (width<=991px

) {
    .header {
        padding: 4rem 0
    }

    .header__logo {
        margin-right: .9rem
    }

    .header__typo-1 {
        height: 1.8rem;
    }

    .header_act {
        margin-left: auto
    }

    .header__btn {
        height: 5rem;
        padding: 1.1rem 2rem;
        font-size: 1.4rem
    }

    .header__links {
        display: none
    }

    .header__toggle {
        z-index: 4;
        -o-transition: all .4s ease-out;
        background-color: #f6f6f6;
        width: 5rem;
        height: 5rem;
        margin-left: .5rem;
        transition: all .4s ease-out;
        display: block;
        position: relative;
        top: 0;
        border-radius: 3px;
    }

    .header__toggle-icon {
        background-color: rgba(var(--header-txt), 1);
        -o-transition: .49s cubic-bezier(.7, .1, .1, 1.5);
        width: 100%;
        height: 2px;
        margin: auto;
        transition: all .49s cubic-bezier(.7, .1, .1, 1.5);
        position: absolute;
        left: 0;
        right: 0
    }

    .header__toggle-icon-1 {
        width: 45.45%;
        top: calc(50% - 8px)
    }

    .header__toggle-icon-2 {
        width: 45.45%;
        top: calc(50% - 1px)
    }

    .header__toggle-icon-3 {
        width: 28.97%;
        top: calc(50% + 5px);
        left: 16.03%
    }

    .header__nav {
        z-index: 3;
        pointer-events: none;
        color: #fff;
        opacity: 0;
        -o-transition: .4s ease-out 1s;
        background-color: #1d1d1d;
        padding: 2rem;
        transition: all .4s ease-out 1s;
        display: block;
        position: absolute;
        top: 2rem;
        right: 2rem
    }

    .header__nav ul {
        grid-template-columns: repeat(3, 1fr);
        display: grid
    }

    .header__nav-item {
        --nav-trans-dur: .2s;
        --nav-delay-stagger: 80ms;
        --nav-delay-index: 1;
        width: 15rem;
        list-style: none;
        position: relative
    }

    .header__nav-item:before {
        content: "";
        pointer-events: none;
        width: 0;
        height: 100%;
        padding-top: 100%;
        display: block
    }

    .header__nav-item:first-child {
        --nav-delay-index: 5;
        grid-column: 1/2
    }

    .header__nav-item:nth-child(2) {
        --nav-delay-index: 3;
        grid-area: 2/3/3/4
    }

    .header__nav-item:nth-child(3) {
        --nav-delay-index: 4;
        grid-area: 3/1/4/3
    }

    .header__nav-item:nth-child(4) {
        --nav-delay-index: 2;
        grid-area: 4/3/5/4
    }

    .header__nav-item:nth-child(5) {
        --nav-delay-index: 1;
        grid-area: 5/2/6/3
    }

    .header__nav-item:last-child, .header__nav-item:last-child:before {
        display: none
    }

    .header__nav-link {
        opacity: 0;
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
        transition: opacity .6s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index)), clip-path .4s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index));
        background-color: #ffffff0d;
        align-items: flex-end;
        padding: 14.28%;
        display: flex;
        position: absolute;
        inset: 0
    }

    .header__nav-link.active {
        background-color: #ff1717
    }

    .header.dark-mode .header__toggle {
        background: #ffffff0d
    }

    .header.open-nav .header__toggle {
        background-color: #fff0
    }

    .header.open-nav .header__toggle-icon {
        -o-transition: .3s ease-out;
        background-color: #fff;
        transition: all .3s ease-out
    }

    .header.open-nav .header__nav {
        opacity: 1;
        pointer-events: auto;
        -o-transition: .49s ease-out;
        transition: all .49s ease-out
    }

    .header.open-nav .header__nav-item:first-child {
        --nav-delay-index: 1
    }

    .header.open-nav .header__nav-item:nth-child(2) {
        --nav-delay-index: 3
    }

    .header.open-nav .header__nav-item:nth-child(3) {
        --nav-delay-index: 2
    }

    .header.open-nav .header__nav-item:nth-child(4) {
        --nav-delay-index: 4
    }

    .header.open-nav .header__nav-item:nth-child(5) {
        --nav-delay-index: 5
    }

    .header.open-nav .header__nav-link {
        opacity: 1;
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        transition: opacity .4s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index)), clip-path .4s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index))
    }

    .header.open-nav .header__toggle-icon-2 {
        opacity: 0;
        transform-origin: 100%;
        left: 50%;
        transform: scaleX(.5)
    }

    .header.open-nav .header__toggle-icon-1 {
        -o-transition-delay: 40ms;
        transition-delay: 40ms;
        top: 50%;
        transform: rotate(45deg)
    }

    .header.open-nav .header__toggle-icon-3 {
        -o-transition-delay: .1s;
        width: 45.45%;
        transition-delay: .1s;
        top: 50%;
        left: 0;
        transform: rotate(-45deg)
    }
}

@media screen and (width<=767px

) {
    .header {
        padding: 2rem 0
    }

    .header__logo {
        height: 4.2rem
    }

    .header__typo-1 {
        display: none
    }

    .header_act {
        margin-right: 1rem;
    }

    .header__btn {
        height: 4rem;
        padding: 0.8rem 1rem;
        font-size: 1rem;
    }

    .header__toggle {
        width: 4rem;
        height: 4rem;
        margin-left: 0;
        top: 0
    }

    .header__toggle-icon-1, .header__toggle-icon-2 {
        width: 1.8rem
    }

    .header__toggle-icon-3 {
        width: 1rem
    }

    .header.open-nav .header__toggle {
        background-color: #fff0
    }

    .header__nav {
        clip-path: polygon(0 0, 100% 0, 100% 0, 0 0);
        -o-transition: .4s ease-out .5s;
        opacity: 1;
        height: 100vh;
        padding: 2rem;
        transition: all .4s ease-out .5s;
        position: fixed;
        inset: 0;
        overflow-y: auto;
        transform: none
    }

    .header__nav-item {
        width: 100%
    }

    .header__nav-item .txt-16 {
        font-size: 1.4rem
    }

    .header__nav-item:last-child {
        grid-area: 6/3/7/4;
        display: block
    }

    .header__nav-link {
        padding: 1rem
    }

    .header__nav-cta {
        --nav-delay-index: 0;
        clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
        opacity: 0;
        transition: opacity .6s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index)), clip-path .4s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index));
        background-color: #ff1717;
        justify-content: space-between;
        align-items: center;
        padding: 2rem;
        font-size: 2.4rem;
        display: flex;
        position: relative
    }

    .header__nav-cta .arr-ic-main {
        width: 2rem;
        height: 2rem
    }

    .header.on-scroll {
        padding-top: 2rem;
        padding-bottom: 2rem
    }

    .header.open-nav.on-scroll .header__nav {
        top: 0
    }

    .header.open-nav.on-scroll .header__toggle {
        -o-transition: top .3s ease-out;
        transition: top .3s ease-out;
        top: 0
    }

    .header.open-nav .header__nav {
        clip-path: polygon(0 0, 100% 0, 100% 100%, 0 100%);
        -o-transition: .5s ease-out;
        transition: all .5s ease-out
    }

    .header.open-nav .header__nav-cta {
        --nav-delay-index: 6;
        opacity: 1;
        clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
        transition: opacity .4s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index)), clip-path .5s ease-out calc(var(--nav-trans-dur) + var(--nav-delay-stagger) * var(--nav-delay-index))
    }

    .header.mix-mb-mode .header__logo-shape-bottom, .header.mix-mb-mode .header__logo-letter {
        color: #fff !important
    }
}

.footer {
    z-index: 5;
    background-color: #eaeef0;
    position: relative
}

.footer__inner {
    z-index: 3;
    background-color: #eaeef0;
    padding-bottom: 6rem;
    position: relative
}

@media screen and (width<=767px

) {
    .footer__inner {
        padding-bottom: 2rem;
    }
}

.footer__form-wrap {
    background-color: #212121;
    grid-column: 2/7;
    margin-top: -13.6rem;
    padding: 3.2rem 6rem 6rem
}

.footer__form-icon {
    margin-bottom: 4rem
}

.footer__form-title {
    color: #fff;
    margin-bottom: 1.2rem
}

.footer__form-sub {
    color: #ffffff80;
    margin-bottom: 2.4rem
}

.footer__form-main {
    flex-direction: column;
    row-gap: .8rem;
    display: flex
}

.footer__form-caption {
    color: #7a7a7a;
    margin-top: 1.2rem
}

.footer__main {
    flex-direction: column;
    grid-column: 2/16;
    justify-content: space-between;
    display: flex
}

.footer__links {
    border-bottom: 1px solid #1515151a;
    justify-content: space-between;
    align-items: center;
    margin-bottom: 0;
    padding-top: 4rem;
    padding-bottom: 4rem;
    display: flex
}

.footer__link {
    transition: color .4s
}

.footer__link:hover, .footer__link.active {
    color: #ff1717
}

.footer__info {
    grid-template-columns: repeat(8, 1fr)
}

.footer__info-mid {
    padding-top: 3.2rem;
    padding-bottom: 3.2rem
}

.footer__info-addr {
    grid-column: 1/5;
    grid-template-columns: repeat(2, 1fr)
}

.footer__info-addr-label {
    margin-bottom: 1.6rem;
}

.footer__info-addr-txt {
    color: #4b4b4b
}

.footer__info-addr-txt img {
    width: 150px;
}

@media screen and (width<=767px

) {
    .footer__info-addr-txt img {
        width: 100px;
    }
}

.footer__info-contact {
    flex-direction: column;
    grid-column: 6/9;
    row-gap: .8rem;
    display: flex
}

.footer__info-contact-label {
    color: #4b4b4b
}

.footer__info-contact-link {
    transition: color .4s
}

.footer__info-contact-link:hover, .footer__info-contact-link.active {
    color: #ff1717
}

.footer__info-copy {
    color: #4b4b4b;
    grid-column: 1/5;
    margin-top: auto
}

.footer__info-legal {
    grid-column: 5/9;
    justify-content: space-between;
    align-items: center;
    margin-top: auto;
    display: flex
}

.footer__info-legal-link {
    color: #4b4b4b;
    transition: color .4s
}

.footer__info-legal-link:hover, .footer__info-legal-link.active {
    color: #ff1717
}

.footer__marquee {
    z-index: 1;
    color: #fff;
    background-color: #f2f2f2;
    transition: color .4s;
    display: block;
    position: sticky;
    bottom: 0;
    right: 0;
    overflow: hidden
}

.footer__marquee:hover {
    color: #fff3
}

.footer__marquee-wrap {
    flex-wrap: nowrap;
    justify-content: end;
    align-items: center;
    padding-top: 5rem;
    transition: transform 1.6s ease-out;
    display: flex;
    transform: translate(0)
}

.footer__marquee-item {
    white-space: nowrap;
    will-change: transform, width;
    width: max-content;
    animation-name: rtl;
    animation-duration: 20s;
    animation-timing-function: linear;
    animation-iteration-count: infinite;
    animation-play-state: running
}

.footer__marquee-item iframe {
    width: 70vw;
    height: 120px;
    border: 0;
    padding: 0;
    margin: 0;
}

.footer__cursor {
    z-index: 2;
    pointer-events: none;
    width: 100%;
    height: 100%;
    display: block;
    position: absolute;
    bottom: 0;
    left: 0;
    overflow: hidden
}

.footer__cursor-main {
    pointer-events: auto;
    color: #fff;
    opacity: 0;
    -o-transition: opacity .4s ease;
    background-color: #ff1717;
    flex-direction: column;
    justify-content: space-between;
    align-items: start;
    width: 12rem;
    height: 12rem;
    padding: 1rem;
    transition: opacity .4s;
    display: flex;
    position: absolute;
    top: 0;
    left: 0;
    transform: translate(-50%, -50%)
}

.footer__marquee:hover .footer__cursor-main {
    opacity: 1
}

@keyframes rtl {
    0% {
        visibility: visible;
        transform: translateZ(0)
    }
    to {
        transform: translate(-100%)
    }
}

.input-wrap {
    width: 100%
}

.input-field {
    appearance: none;
    border-radius: none;
    color: #fff;
    background-color: #0000;
    border: 1px solid #ffffff1a;
    border-radius: 0;
    outline: none;
    width: 100%;
    padding: 2rem 2.4rem;
    transition: all .4s
}

.input-field::placeholder {
    color: #7a7a7a
}

.input-field:not(:placeholder-shown) {
    border: 1px solid #fff3
}

.input-field:hover, .input-field:focus {
    border: 1px solid #ffffff4d
}

.input-submit {
    border: none;
    border-radius: 0;
    width: 100%
}

.input-submit-icon {
    opacity: 0;
    width: 0;
    transition: all .4s
}

.input-submit-icon .icon {
    margin-right: 1rem
}

.input-submit .input-submit-txt-tail {
    width: 0;
    transition: all .4s;
    overflow: hidden
}

.input-submit.on-complete .input-submit-icon {
    opacity: 1;
    width: 3rem
}

.input-submit.on-complete .input-submit-txt-tail {
    width: 1.2rem
}

@media screen and (width<=991px

) {
    .footer__form-wrap {
        grid-column: 1/7;
        margin-top: -11rem;
        padding: 3.2rem 4rem 4rem
    }

    .footer__form-icon {
        width: 6rem;
        height: 6rem;
        margin-bottom: 2.4rem
    }

    .footer__form-sub {
        margin-bottom: 3.2rem
    }

    .footer__form-caption {
        margin-top: 1.6rem
    }

    .footer__main {
        grid-column: 1/13
    }

    .footer__links {
        margin-bottom: 0
    }

    .footer__link {
        font-size: 2.2rem
    }

    .footer__info {
        grid-template-columns: repeat(12, 1fr);
        padding-top: 4rem
    }

    .footer__info-mid {
        padding-bottom: 0
    }

    .footer__info-addr {
        grid-column: 1/7
    }

    .footer__info-addr-label {
        margin-bottom: 1.2rem;
        font-weight: 500
    }

    .footer__info-contact {
        grid-column: 8/13;
        row-gap: 1.2rem;
        margin-left: 4rem
    }

    .footer__info-contact-label {
        margin-bottom: .2rem
    }

    .footer__info-contact-link {
        font-size: 2rem;
        font-weight: 500
    }

    .footer__info-copy {
        padding-top: 0
    }

    .footer__info-legal {
        grid-column: 8/13;
        margin-left: 2.5rem;
        padding-top: 0
    }

    .footer__marquee-wrap {
        padding: 3.2rem 0
    }

    .footer__marquee-item {
        font-size: 10rem;
        line-height: 1em
    }

    .footer__marquee-item iframe {
        width: 120vw;
        height: 60px;
    }

    .footer__cursor-main {
        width: 10rem;
        height: 10rem;
        padding: 1.4rem
    }

    .footer__cursor-main .arr-wrap-24 {
        width: 2rem;
        height: 2rem
    }
}

@media screen and (width<=767px

) {
    .footer .container {
        padding-bottom: 3.2rem
    }

    .footer__form-wrap {
        grid-column: 1/3;
        margin-top: -10.8rem;
        padding: 3rem 4rem 4rem
    }

    .footer__form-icon {
        width: 4.8rem;
        height: 4.8rem
    }

    .footer__form-main .input-field {
        padding: 1.2rem 2.4rem
    }

    .footer__form-main .input-submit {
        padding: 1.6rem 2rem
    }

    .footer__main {
        grid-column: 1/3
    }

    .footer__links {
        grid-template-columns: repeat(2, 1fr);
        gap: 3.2rem 2rem;
        padding: 5rem 0 4rem;
        display: grid
    }

    .footer__link {
        width: -moz-fit-content;
        width: fit-content;
        font-size: 2rem
    }

    .footer__link:nth-child(2) {
        grid-row: 2/3
    }

    .footer__link:nth-child(3) {
        grid-row: 3/4
    }

    .footer__info {
        flex-direction: column;
        display: flex;
        padding-top: 2rem;
    }

    .footer__info-addr {
        flex-direction: column;
        row-gap: 2rem;
        margin-bottom: 2rem;
        display: flex
    }

    .footer__info-addr-label {
        margin-bottom: .8rem
    }

    .footer__info-contact {
        flex-direction: column;
        column-gap: 2rem;
        margin-left: 0
    }

    .footer__info-contact-label {
        margin-bottom: .8rem
    }

    .footer__info-contact-link {
        font-size: 1.6rem
    }

    .footer__info-copy {
    }

    .footer__info-legal {
        justify-content: left;
        column-gap: 3.2rem;
        margin-left: 0
    }

    .footer__marquee-item {
        font-size: 6rem
    }

    .footer__cursor {
        display: none
    }
}

.popup {
    z-index: 999;
    pointer-events: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100vh;
    display: flex;
    position: fixed;
    top: 0;
    left: 0
}

.popup.active {
    pointer-events: auto
}

.popup.active .popup__overlay {
    opacity: 1
}

.popup.active .popup__main {
    opacity: 1;
    transform: translateY(0)
}

.popup.active .popup__main-head, .popup.active .popup__main-submit {
    clip-path: polygon(0% 0%, 100% 0%, 100% 100%, 0% 100%);
    transition-delay: .2s
}

.popup.active .popup__main-form-inner {
    pointer-events: auto
}

.popup.active .popup__main-form-inner.hidden {
    pointer-events: none
}

.popup.active .popup__main-form-success {
    pointer-events: auto
}

.popup.active .popup__main-form-success.hidden {
    pointer-events: none
}

.popup__overlay {
    opacity: 0;
    background-color: #151515f2;
    width: 100%;
    height: 100%;
    transition: opacity .4s;
    position: absolute;
    top: 0;
    left: 0
}

.popup__main {
    opacity: 0;
    background-color: #ff1717;
    width: 100%;
    max-width: 108rem;
    margin-top: 12rem;
    margin-bottom: 6rem;
    padding: 6rem 6rem 0;
    transition: all .4s;
    position: relative;
    transform: translateY(10%)
}

.popup__main-form {
    grid-template-columns: 4.1fr 5.9fr;
    display: grid
}

.popup__main-head {
    clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
    background-color: #fff;
    flex-direction: column;
    grid-column: 1/2;
    align-items: start;
    margin-top: -12rem;
    padding: 6rem;
    transition: all .4s;
    display: flex;
    overflow: hidden
}

.popup__main-head-title {
    margin-bottom: 4rem;
    margin-left: -1rem
}

.popup__main-head-txt {
    color: #4b4b4b
}

.popup__main-contact {
    flex-direction: column;
    grid-area: 2/1/3/2;
    justify-content: end;
    align-items: start;
    padding-bottom: 4.8rem;
    display: flex
}

.popup__main-contact-label, .popup__main-contact-link {
    color: #fff
}

.popup__main-form-inner {
    opacity: 1;
    flex-direction: column;
    grid-area: 1/2/2/3;
    transition: all .4s;
    display: flex;
    transform: none
}

.popup__main-form-inner.hidden {
    opacity: 0;
    transform: translateY(3.2rem)
}

.popup__main-form-inner .input-wrap {
    width: calc(100% - 6rem);
    margin-left: 6rem;
    position: relative
}

.popup__main-form-inner .input-wrap:hover .input-field::placeholder, .popup__main-form-inner .input-wrap:focus .input-field::placeholder {
    color: #ffffffb3
}

.popup__main-form-inner .input-wrap:hover .input-field-line, .popup__main-form-inner .input-wrap:focus .input-field-line {
    transform: scaleX(1)
}

.popup__main-form-inner .input-field {
    color: #fff;
    border: none;
    border-bottom: 1px solid #fff3;
    padding: 2.4rem 0
}

.popup__main-form-inner .input-field::placeholder {
    color: #ffffff80;
    transition: color .4s
}

.popup__main-form-inner .textarea-wrap {
    flex-grow: 1;
    max-height: 25rem
}

.popup__main-form-inner textarea.input-field {
    resize: vertical;
    height: 100%
}

.popup__main-form-inner .input-field-line {
    transform-origin: 0;
    background-color: #ffffff80;
    width: 100%;
    height: 1px;
    transition: transform .4s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0)
}

.popup__main-form-success {
    color: #fff;
    opacity: 1;
    grid-area: 1/2/2/3;
    padding-bottom: 4rem;
    padding-left: 6rem;
    transition: all .4s;
    transform: none
}

.popup__main-form-success.hidden {
    opacity: 0;
    transform: translateY(3.2rem)
}

.popup__main-submit {
    appearance: none;
    text-align: left;
    clip-path: polygon(0% 0%, 0% 0%, 0% 100%, 0% 100%);
    cursor: pointer;
    background-color: #fff;
    border: none;
    outline: none;
    width: 25rem;
    padding: 4rem;
    transition: all .4s;
    display: grid
}

.popup__main-submit :hover .popup__main-submit-inner-txt {
    color: #ff1717
}

.popup__main-submit-aspect {
    pointer-events: none;
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-bottom: 100%
}

.popup__main-submit-inner {
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: space-between;
    align-items: start;
    height: 100%;
    transition: all .4s;
    display: flex
}

.popup__main-submit-inner .heading {
    color: #151515;
    transition: color .4s
}

.popup__main-submit-inner .icon {
    color: #ff1717
}

.popup__main-submit-inner-success {
    pointer-events: none;
    opacity: 0;
    height: calc(100% + 8rem);
    margin: -4rem;
    padding: 4rem;
    transform: translateY(2.4rem)
}

.popup__main-submit.on-complete {
    pointer-events: none
}

.popup__main-submit.on-complete .popup__main-submit-inner-default {
    pointer-events: none;
    opacity: 0;
    transform: translateY(2.4rem)
}

.popup__main-submit.on-complete .popup__main-submit-inner-success {
    pointer-events: auto;
    opacity: 1;
    transform: translateY(0)
}

.popup__close {
    color: #ffffff80;
    padding: 1.4rem;
    transition: color .4s;
    position: absolute;
    top: 0;
    right: 0
}

.popup__close:hover {
    color: #fff
}

@media screen and (width<=991px

) {
    .popup__main {
        width: 100%;
        max-width: calc(100% - 8rem);
        margin-top: 6rem;
        margin-bottom: 6rem;
        padding: 6rem 6rem 0
    }

    .popup__main-form {
        grid-template-columns: 4.8fr 5.2fr
    }

    .popup__main-head {
        grid-area: 1/1/2/2;
        width: 33rem;
        min-height: 33rem;
        margin-top: -12rem;
        padding: 3.2rem
    }

    .popup__main-head-title {
        margin-bottom: 2.4rem;
        margin-left: 0;
        font-size: 3.2rem
    }

    .popup__main-head .txt-18 {
        font-size: 1.8rem
    }

    .popup__main-contact {
        grid-area: 3/1/4/2;
        padding-bottom: 4rem
    }

    .popup__main-contact-link {
        font-weight: 500
    }

    .popup__main-form-inner {
        grid-area: 2/1/3/3
    }

    .popup__main-form-inner .input-wrap {
        width: 100%;
        margin-left: 0
    }

    .popup__main-form-inner .input-field::placeholder {
        color: #fffc
    }

    .popup__main-form-success {
        grid-area: 2/1/3/3;
        padding-top: 5rem;
        padding-bottom: 5rem;
        padding-left: 0
    }

    .popup__main-submit {
        grid-area: 3/2/4/3;
        justify-self: end;
        width: 20rem;
        padding: 3.2rem
    }

    .popup__main-submit-inner-success {
        height: calc(100% + 6.4rem);
        margin: -3.2rem;
        padding: 3.2rem
    }

    .popup__close {
        color: #fff;
        padding: 1.2rem
    }

    .popup__close .icon {
        width: 2.4rem;
        height: 2.4rem
    }
}

@media screen and (width<=767px

) {
    .popup {
        height: 100 svh
    }

    .popup__main {
        max-width: calc(100% - 8rem);
        margin-top: 6rem;
        margin-bottom: 0;
        padding: 0 2.4rem 2.2rem
    }

    .popup__main-form {
        grid-template-columns: 1fr
    }

    .popup__main-head {
        grid-area: 1/1/2/2;
        width: auto;
        min-height: auto;
        margin: -4.8rem 0 1.2rem;
        padding: 3rem 3.2rem 2.8rem 2.4rem
    }

    .popup__main-head-title {
        margin-bottom: .8rem;
        font-size: 2.4rem
    }

    .popup__main-head .txt-18 {
        font-size: 1.4rem
    }

    .popup__main-contact {
        text-align: center;
        grid-area: 4/1/5/2;
        align-items: center;
        padding-bottom: 0
    }

    .popup__main-contact-label {
        font-size: 1.4rem
    }

    .popup__main-contact-link {
        font-size: 1.6rem
    }

    .popup__main-form-inner {
        grid-area: 2/1/3/2;
        margin-bottom: 2.4rem
    }

    .popup__main-form-inner .input-field {
        padding-top: 1.6rem;
        padding-bottom: 1.6rem
    }

    .popup__main-form-inner .textarea-wrap {
        max-height: 20rem
    }

    .popup__main-form-success {
        grid-area: 2/1/3/2;
        padding-top: 4rem;
        padding-bottom: 4rem;
        padding-left: 0
    }

    .popup__main-form-success-txt {
        font-size: 1.6rem
    }

    .popup__main-submit {
        grid-area: 3/1/4/2;
        justify-self: center;
        width: 100%;
        margin-bottom: 1.2rem;
        padding: 1.8rem 2.8rem
    }

    .popup__main-submit-aspect {
        display: none
    }

    .popup__main-submit-inner {
        flex-direction: row;
        align-items: center;
        column-gap: 3.2rem
    }

    .popup__main-submit-inner .arr-wrap, .popup__main-submit-inner .icon {
        width: 1.6rem;
        height: 1.6rem
    }

    .popup__main-submit-inner-success {
        height: calc(100% + 3.2rem);
        margin: -1.6rem -3.2rem;
        padding: 1.6rem 3.2rem
    }

    .popup__close {
        z-index: 3;
        color: #000;
        margin-top: -4.8rem;
        margin-right: 2.4rem;
        padding: 1.2rem
    }

    .popup__close .icon {
        width: 2.4rem;
        height: 2.4rem
    }

    .popup__main {
        max-width: calc(100% - 4rem)
    }

    .popup__main-head-title {
        font-size: 2.1rem
    }
}

.fw-m0 {
    z-index: 2;
    height: 100vh;
    padding-bottom: max(6vh, 6rem);
    position: sticky;
    top: 0
}

.fw-m0-ph {
    opacity: 0;
    pointer-events: none;
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0
}

.fw-m0__wrap {
    z-index: 1;
    height: 200vh;
    margin-bottom: -100vh;
    position: relative
}

.fw-m0__bg-wrap {
    z-index: 1;
    background-color: #000;
    width: 100%;
    height: 100vh;
    position: absolute;
    top: 0;
    left: 0
}

.fw-m0__bg-wrap-inner {
    width: 100%;
    height: 100%;
    display: grid;
    position: absolute;
    bottom: 0;
    left: 0;
    overflow: hidden;
}

.fw-m0__bg-wrap .fw-m0__swiper {
    grid-area: 1/1/1/1;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 50%;
    transform: translate3d(-50%, 0, 0);
}

.fw-m0__bg-wrap .fw-m0__swiper .swiper-slide.video-block {
    width: 100%;
    display: grid;
    overflow: hidden;
}

.fw-m0__bg-wrap .fw-m0__swiper .swiper-slide.video-block video {
    grid-area: 1/1/1/1;
    width: 100%;
    height: 100%;
    object-fit: cover;
    object-position: 50% 50%;
    position: absolute;
    top: 0;
    left: 0;
}

.fw-m0__bg-wrap .fw-m0__swiper .swiper-slide {
    width: 100%;
    height: 100%;
}

.fw-m0__bg-wrap .fw-m0__swiper .swiper-slide picture {
    display: block;
    width: 100%;
    height: 100%;
    object-fit: cover;
}

.fw-m0 .container.grid {
    height: 100%
}

.fw-m0__title {
    color: #fff;
    grid-column: 1/8;
    place-self: start;
    max-width: 68rem;
    margin-top: 40vh;
    position: absolute;
}

.fw-m0__title.force-hidden {
    opacity: 0
}

.fw-m0__backer {
    flex-direction: column;
    grid-area: 2/1/3/8;
    align-self: end;
    row-gap: 1rem;
    padding-bottom: .7rem;
    display: flex
}

.fw-m0__backer.force-hidden {
    opacity: 0
}

.fw-m0__backer-label {
    color: #ffffffb3
}

.fw-m0__backer-inner {
    column-gap: 2.4rem;
    display: flex
}

.fw-m0__backer-item.hidden {
    display: none
}

.fw-m0__backer-item:first-child {
    height: 2.5rem
}

.fw-m0__backer-item:nth-child(2) {
    height: 2.5rem
}

.fw-m0__backer-item:nth-child(3) {
    height: 2.5rem
}

.fw-m0__backer-item img {
    width: auto;
    height: 100%
}

.fw-m0__sub {
    color: #fff;
    flex-direction: column;
    grid-area: 1/13/3/17;
    place-self: end;
    row-gap: 4rem;
    display: flex
}

.fw-m0__sub-txt {
    max-width: 25rem
}

.fw-m0__sub-caption {
    color: #ffffffb3;
    flex-wrap: nowrap;
    width: 26.4rem;
    height: 2.56rem;
    display: flex;
    overflow: hidden
}

.fw-m0__sub-caption-item {
    white-space: nowrap
}

.fw-m0__sub-caption-item .txt-hl {
    text-align: center;
    border-radius: 50%;
    width: 1.4rem;
    padding: 0 .4rem;
    font-family: initial;
    display: inline-block
}

.fw-m0__sub-caption-item.anim {
    animation: 14s linear infinite rtl
}

.fw-m1 {
    z-index: 3;
    background-color: #fff;
    padding-top: 18.5rem;
    position: relative
}

.fw-m1__label {
    color: #9a9a9a;
    grid-area: 1/2/2/4;
    align-self: start;
    margin-top: 1.4rem
}

.fw-m1__title {
    grid-area: 1/5/2/12;
    margin-top: 1.2rem;
    margin-bottom: 21.2rem;
    position: relative;
}

.fw-m1__title div {
    position: relative;
    z-index: 2;
}

.fw-m1__title .line, .fw-m1__title span {
    display: inline !important;
}

.fw-m1__txt {
    position: relative;
    grid-area: 1/5/2/11;
    color: #c9c9c9;
    font-size: var(--h1-fs);
    fill: #ff1717;
    text-align: start;
}

.fw-m1__txt svg {
    max-width: 120px;
    margin: 2rem 0 0 -1rem;
    position: absolute;
    left: 0;
    transform: translate3d(-100%, 0, 0);
    transition: all 0.35s ease;
}

.fw-m1__txt span {
    position: absolute;
    left: 0;
    top: 19rem;
    text-align: left;
    letter-spacing: -2px;
    line-height: 1;
}

.fw-m1__img {
    grid-area: 2/5/3/9;
    margin-bottom: -13.8rem
}

.fw-m1__richtext {
    flex-direction: column;
    grid-area: 1/12/3/17;
    justify-content: start;
    align-items: start;
    margin-bottom: 14.6rem;
    display: flex
}

.fw-m1__richtext-img {
    width: 100%
}

.fw-m1__richtext-h3 {
    margin-top: 4rem
}

.fw-m1__richtext-p {
    color: #4b4b4b;
    margin-top: 2rem;
}

.fw-m1__richtext-link {
    margin-top: 2rem
}

.home-prob {
    z-index: 2;
    padding-top: 13.2rem;
    padding-bottom: 13.2rem;
    position: relative;
    overflow: hidden
}

.home-prob__label {
    color: #9a9a9a;
    grid-area: 1/2/2/4;
    align-self: start;
}

.home-prob__title {
    grid-area: 1/4/2/12;
    align-self: start;
}

.home-prob__main {
    pointer-events: none;
    grid-area: 1/1/2/17;
    grid-template-columns: repeat(16, 1fr)
}

.home-prob__main-item {
    pointer-events: auto;
    flex-direction: column;
    display: flex;
    margin-top: 2em;
}

.home-prob__main-item-img {
    width: 100%
}

.home-prob__main-item-title {
    margin-top: 4rem
}

.home-prob__main-item-txt {
    color: #4b4b4b;
    margin-top: 2rem
}

.home-prob__main-item-txt .line, .home-prob__main-item-txt span {
    display: inline !important
}

.home-prob__main-item:first-child {
    grid-area: 1/13/2/17;
    margin-top: 0
}

.home-prob__main-item:nth-child(2) {
    grid-area: 2/6/3/10;
    margin-top: -1.9rem
}

.home-prob__main-item:nth-child(3) {
    grid-area: 2/11/3/16;
    margin-top: 20.5rem
}

.home-prob__main-item:nth-child(4) {
    grid-area: 3/1/4/5;
    margin-top: -22.8rem
}

.home-prob__main-item:nth-child(5) {
    grid-area: 3/6/4/10;
}

.home-prob__main-item:nth-child(6) {
    grid-area: 4/10/5/14;
}

.home-solu {
    z-index: 3;
    position: relative;
    background-color: #fff;
}

.home-solu.margin {
    padding-bottom: 68rem;
}

.home-solu__head {
    z-index: 3;
    grid-area: 1/1/2/17;
    justify-self: center;
    margin: -16.2rem auto 0;
    display: grid;
    position: relative
}

.home-solu__head-txt-wrap {
    text-align: center;
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: start;
    align-items: center;
    padding-top: 76rem;
    display: flex;
    position: relative
}

.home-solu__head-img-wrap {
    grid-area: 1/1/2/2;
    width: 100%
}

.home-solu__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

.home-solu__title {
    max-width: 77.8rem;
    margin-bottom: 1em;
}

.home-solu__title .txt-hl {
    display: inline-block
}

.home-solu__body {
    text-align: center;
    z-index: 2;
    flex-direction: column;
    grid-column: 4/14;
    justify-self: center;
    align-items: center;
    max-width: 84.6rem;
    margin: 0 auto;
    display: flex;
    position: relative
}

.home-solu__body-txt p {
    margin-bottom: 2rem
}

.home-solu__body-txt p.last-p {
    margin-bottom: 0
}

.home-solu__body .p-line {
    background-color: #eaeaea;
    width: min(.2rem, 2px)
}

.home-solu__body .p-line-top {
    height: 14.9rem;
    margin-top: -.6rem;
    margin-bottom: 1.6rem
}

.home-solu__body .p-line-bottom {
    height: 14.9rem;
    margin-top: 2.2rem;
}

.home-solu__main {
    z-index: 1;
    grid-column: 3/15;
    grid-template-columns: repeat(12, 1fr);
    position: relative;
    padding-bottom: 16.2rem;
}

.home-solu__main-img-wrap {
    pointer-events: none;
    grid-area: 1/5/2/9
}

.home-solu__main-img-wrap video {
    width: 100%;
    height: auto;
}

.home-solu__main-inner {
    grid-area: 1/1/2/13;
    grid-template-columns: repeat(12, 1fr)
}

.home-solu__main-item {
    flex-direction: column;
    display: flex;
    border: solid 5px #eaeef0;
    border-radius: 5px;
    text-align: center;
    padding: 1em;
    transition: background-color .4s;
    position: relative;
}

.home-solu__main-item.max {
    border: none;
    max-width: 28.6rem;
    border-radius: 0;
    padding: 0;
    transition: none;
}

.home-solu__main-item-title {
    margin-bottom: 2rem
}

.home-solu__main-item-txt {
    color: #4b4b4b
}

.home-solu__main-item-txt .line, .home-solu__main-item-txt span {
    display: inline !important
}

.home-solu__main-item.max:nth-child(odd) {
    text-align: right;
    justify-self: end;
    align-items: end
}

.home-solu__main-item:first-child {
    grid-column: 1/7;
    margin-top: 13.2rem
}

.home-solu__main-item:nth-child(2) {
    grid-column: 7/13;
    margin-top: 13.2rem
}

.home-solu__main-item:nth-child(3) {
    grid-area: 2/1/3/4;
    margin-top: 9.5rem
}

.home-solu__main-item:nth-child(4) {
    grid-area: 2/10/3/13;
    margin-top: 9.5rem
}

.home-solu__main-item svg {
    display: none;
    position: absolute;
    top: 0;
    right: 1em;
}

.home-solu__main-item:hover {
    border: solid 5px #eaeef0;
    background-color: #eaeef0;
}

.home-solu__main-item:hover svg {
    display: block;
    fill: #4b4b4b;
}

.home-solu__tail-title {
    grid-column: 2/11;
    max-width: 81.4rem;
    margin-bottom: 12.8rem;
    padding-top: 11rem;
    display: none
}

.home-solu__tail-img {
    grid-column: 1/17;
    padding-bottom: 12.4rem;
    display: none
}

.fw-m5 {
    z-index: 4;
    position: relative
}

.fw-m5__head {
    z-index: 3;
    grid-area: 1/3/2/15;
    justify-self: center;
    max-width: 105rem;
    margin: -10.2rem auto 0;
    display: grid;
    position: relative
}

.fw-m5__head-txt-wrap {
    text-align: center;
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: start;
    align-items: center;
    padding-top: 13rem;
    display: flex;
    position: relative
}

.fw-m5__head-img-wrap {
    grid-area: 1/1/2/2;
    width: 100%
}

.fw-m5__label {
    margin-bottom: 2rem;
    text-align: left;
    line-height: 1;
}

.fw-m5__label span {
    font-size: var(--h3-fs);
    color: #9a9a9a;
}

.fw-m5__title {
    text-align: center;
    max-width: 77.8rem
}

.fw-m5__title .txt-hl {
    display: inline-block
}

.fw-m5__title svg {
    width: 120px;
    fill: #ff1717;
    position: absolute;
    left: -1.5rem;
    top: 4rem;
    z-index: 1;
    transform: translate3d(-100%, 0, 0);
    transition: all 0.35s ease;
}

.fw-m5__main {
    height: 735vh;
    position: relative
}

.fw-m5__main-inner {
    background-color: #fff;
    width: 100%;
    display: grid;
    position: sticky;
    top: 0
}

.fw-m5__main-part {
    grid-area: 1/1/2/2;
    height: 100vh
}

.fw-m5__main-part .container.grid {
    height: 100%
}

.fw-m5__main-part--big-txt {
    z-index: 1;
    position: relative
}

.fw-m5__main-part--big-txt .title-wrap {
    text-align: center;
    flex-direction: column;
    grid-column: 1/17;
    place-self: center;
    align-items: center;
    width: 100%;
    display: flex;
    color: #9a9a9a;
}

.fw-m5__main-part--big-txt .title-wrap .span:first-child {
    margin-bottom: -.5rem
}

.fw-m5__main-part--big-ship {
    pointer-events: none;
    z-index: 2;
    position: relative
}

.fw-m5__main-part--big-ship .container.fluid {
    justify-content: center;
    align-items: center;
    height: 100%;
    display: flex;
    position: relative;
    overflow: hidden
}

.fw-m5__main-part--big-ship .container.fluid .fw-m5__img-wrap {
    height: 37vh;
    position: absolute;
    left: 100%
}

.fw-m5__main-part--small-txt {
    z-index: 1;
    position: relative
}

.fw-m5__main-part--small-txt .title-wrap {
    text-align: center;
    grid-column: 1/17;
    place-self: center;
    width: 100%;
    color: #9a9a9a;
}

.fw-m5__main-part--small-txt .title-wrap .tite-inner {
    width: 100%
}

.fw-m5__main-part--small-ship {
    pointer-events: none;
    z-index: 2;
    position: relative
}

.fw-m5__main-part--small-ship .container.fluid {
    justify-content: center;
    align-items: center;
    height: 100%;
    display: flex;
    position: relative;
    overflow: hidden
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap {
    align-items: center;
    height: 111vh;
    display: flex;
    position: absolute;
    left: 100%
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap:after {
    content: "";
    pointer-events: none;
    z-index: -1;
    background-color: #fff;
    width: 400vw;
    display: block;
    position: absolute;
    top: -.2em;
    bottom: -.2em;
    left: 13.79%
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__img-inner {
    height: 100%;
    position: relative
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__img-inner .fw-m5__img-inner-ships {
    align-items: center;
    column-gap: 3rem;
    height: 100%;
    display: flex
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__img-inner .fw-m5__img-inner-ships .fw-m5__img-inner-fleat {
    flex-direction: column;
    justify-content: center;
    row-gap: 3rem;
    height: 100%;
    display: flex
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__img-inner .fw-m5__img-inner-ships .ship-small-svg {
    height: calc(14.2857% - 2.57143rem)
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__small-txt {
    white-space: nowrap;
    color: #9a9a9a;
    position: absolute;
    left: calc(100% + 3.2rem)
}

.fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap .fw-m5__small-txt:after {
    content: "";
    pointer-events: none;
    z-index: -1;
    background-color: #fff;
    display: block;
    position: absolute;
    inset: -.2em 0
}

.fw-m4__bg-img {
    z-index: 3;
    height: clamp(72rem, 72vh, 92rem);
    margin-bottom: -2px;
    position: relative
}

.fw-m4__bg-img img {
    display: block
}

.fw-m6 {
    z-index: 4;
    pointer-events: none;
    margin-top: -13rem;
    padding-top: 13rem;
    position: relative;
    overflow: hidden;
}

.fw-m6__top {
    pointer-events: auto;
    z-index: 2;
    background: #111112;
    position: relative;
    padding-bottom: 16.2rem;
}

.fw-m6.light .fw-m6__top {
    background: #eaeef0;
}

.fw-m6__inner {
    grid-column: 1/17;
    grid-template-columns: repeat(5, 1fr);
    column-gap: 0
}

.fw-m6__head {
    background-color: #ff1717;
    grid-column: 1/3;
    margin-top: -13rem;
    padding: 8rem 6rem;
    position: relative;
}

.fw-m6__label {
    color: #fff;
    margin-bottom: 2rem
}

.fw-m6__title {
    color: #fff;
    max-width: 51.6rem;
    margin-top: 5rem;
    margin-bottom: 2rem;
}

.fw-m6__title.inset .g-lines:nth-child(2n) {
    margin-bottom: 2rem;
}

.fw-m6__item {
    background-color: #ffffff0d;
    grid-column: 4/5;
    align-self: end;
    transition: background-color .4s;
    display: grid;
    position: relative;
    overflow: hidden;
}

.fw-m6__item:not(.fw-m6__link):hover {
    background-color: #ffffff1a
}

.fw-m6__item:not(.fw-m6__link):hover .fw-m6__item-icon {
    color: #fff6
}

.fw-m6__item:not(.fw-m6__link):hover .fw-m6__item-inner {
    background-color: #333;
}

.fw-m6__item.radius {
    border-radius: 13px 0 13px 0;
}

.fw-m6__item-inner {
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: end;
    align-items: start;
    padding: 4rem 3.2rem;
    display: flex;
    position: relative;
    z-index: 2;
    transition: background-color .4s;
}

.fw-m6__item-title {
    color: #fff
}

.fw-m6__item-icon {
    color: #fff;
    fill: #ffffff;
    transition: color .4s;
    position: absolute;
    top: 3.2rem;
    right: 3.2rem
}

.fw-m6__item:after {
    pointer-events: none;
    content: "";
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-top: 100%;
    display: block
}

.fw-m6__item:nth-child(2) {
    margin-top: 11.6vh
}

.fw-m6__item:nth-child(3) {
    grid-column: 3/4
}

.fw-m6__item:nth-child(4) {
    grid-column: 2/3
}

.fw-m6__item:nth-child(5) {
    grid-column: 4/5
}

.fw-m6__item:nth-child(6) {
    grid-column: 4/5
}

.fw-m6__item-sub {
    color: #fff;
    padding-top: 2rem;
    display: none
}

.fw-m6__item-sub span {
    display: block;
    background-color: #ff1717;
    border-radius: 3px;
    text-align: center;
    padding: 1.6rem 2rem;
    transition: background-color .4s;
    margin-top: 1em;
}

.fw-m6__link {
    background-color: #f00;
    grid-column: 3/4;
    transition: background-color .4s;
    display: grid;
    position: relative
}

.fw-m6__link-title {
    max-width: 24.2rem;
    color: #fff;
}

.fw-m6__link:hover {
    color: #fff;
    background-color: #f00;
}

.fw-m6__link-block {
    color: #fff;
}

.fw-m6__link-block iframe {
    width: 100%;
    height: 120px;
    border: 0;
    padding: 0;
    margin: 0;
}

.fw-m6__link-inner {
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: space-between;
    padding: 4rem;
    display: flex;
    transition: background-color .4s;
}

.fw-m6__link:after {
    pointer-events: none;
    content: "";
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-top: 100%;
    display: block
}

.fw-m6__main-item-bg {
    width: 100%;
    height: 100%;
    position: absolute;
    left: 0;
    top: 0;
    z-index: 1;
}

.fw-m6__main-item-bg img {
    display: block;
    width: 110%;
    height: auto;
}

.fw-m6__ship {
    pointer-events: none;
    z-index: 3;
    grid-area: 2/1/3/2;
    width: 100%;
    max-width: 80rem;
    margin: 10.4rem auto 0;
    position: relative
}

.fw-m6__bg-tri {
    z-index: 1;
    grid-area: 2/1/3/2;
    width: 100%;
    max-width: 192rem;
    margin: -9.4rem auto 0;
    display: grid;
    position: relative;
    background-color: #eaeef0;
}

.fw-m6.light .fw-m6__bg-tri {
    background-color: #fff;
}

.fw-m6__bg-tri:after {
    content: "";
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-top: 42.99%;
    display: block;
}

.fw-m6__bg-tri-inner {
    transform-origin: 50% 62.0457%;
    clip-path: polygon(0% 0%, 100% 0%, 100% 23.95%, 0% 100%);
    background-color: #111112;
    grid-area: 1/1/2/2;
    width: 101%;
    height: 100%;
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%)
}

.fw-m6.light .fw-m6__bg-tri-inner {
    background-color: #eaeef0;
}

.fw-m3 {
    z-index: 2;
    padding-top: 16.2rem;
    padding-bottom: 16.2rem;
    position: relative;
    background-color: #eaeef0;
}

.fw-m3__head {
    flex-direction: column;
    grid-column: 2/9;
    align-items: start;
    margin-top: 29rem;
    display: flex
}

.fw-m3__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

.fw-m3__title {
    position: relative;
    margin-bottom: 6.2rem;
}

.fw-m3__title.small {
    margin-left: 12rem;
    transition: all 0.35s ease;
}

.fw-m3__title div {
    position: relative;
    z-index: 2;
}

.fw-m3__txt {
    width: 100%;
    color: #c9c9c9;
    position: relative;
}

.fw-m3__txt svg {
    max-width: 120px;
    fill: #ff1717;
    transition: all 0.35s ease;
}

.fw-m3__txt span {
    font-size: var(--h3-fs);
    position: absolute;
    left: 12rem;
    bottom: 0;
    transition: all 0.35s ease;
}

.fw-m3__main {
    grid-column: 9/17;
}

.fw-m3__main-list {
    grid-template-columns: repeat(2, 1fr);
    column-gap: 0
}

.fw-m3__main-item {
    z-index: 1;
    grid-column: 1/2;
    align-self: start;
    transition: box-shadow .4s;
    display: grid;
    position: relative;
    overflow: hidden;
}

.fw-m3__main-item:after {
    pointer-events: none;
    content: "";
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-top: 100%;
    display: block
}

.fw-m3__main-item.radius {
    border-radius: 13px 0 13px 0;
}

.fw-m3__main-item-inner {
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: end;
    align-items: start;
    padding: 6rem 5rem;
    transition: background-color .4s;
    display: flex;
    position: relative;
    z-index: 2;
}

.fw-m3__main-item-inner .icon {
    transform-origin: 100% 0;
    transition: transform .4s;
    position: absolute;
    top: 4rem;
    right: 4rem
}

.fw-m3__main-item-bg {
    position: absolute;
    top: 0;
    z-index: 1;
}

.fw-m3__main-item-bg img {
    display: block;
    width: 100%;
    height: auto;
}

.fw-m3__main-item-sub {
    color: #fff;
    padding-top: 2rem;
    display: none
}

.fw-m3__main-item-sub span {
    display: block;
    background-color: #ff1717;
    border-radius: 3px;
    text-align: center;
    padding: 1.6rem 2rem;
    transition: background-color .4s;
    margin-top: 1em;
}

.fw-m3__main-item-title {
    color: #fff
}

.fw-m3__main-item-icon {
    fill: #fff
}

.fw-m3__main-item:nth-child(2) {
    grid-area: 2/2/3/3
}

.fw-m3__main-item:nth-child(3) {
    grid-area: 3/1/4/2
}

.fw-m3__main-item:nth-child(4) {
    grid-area: 4/2/5/3
}

.fw-m3__main-item:hover {
    z-index: 2;
    box-shadow: 0 50px 80px #8999a166
}

.fw-m3__main-item:hover .fw-m3__main-item-inner {
    background-color: #333
}

.fw-m3__main-item:hover .fw-m3__main-item-inner .icon {
    transform: scale(.4)
}

.fw-m2 {
    background-color: #eaeef0;
    padding-bottom: 13.2rem;
}

.fw-m2.padding {
    padding-top: 26.4rem;
}

.fw-m2__head {
    text-align: center;
    flex-direction: column;
    grid-column: 5/13;
    justify-self: center;
    align-items: center;
    max-width: 74rem;
    margin-bottom: 4rem;
    display: flex
}

.fw-m2__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

.fw-m2__btn {
    margin-top: 3.2rem
}

.fw-m2__main {
    flex-wrap: wrap;
    grid-column: 1/17;
    justify-content: center;
    display: flex
}

.fw-m2__main-item {
    background-color: #fff;
    border: 1px solid #cfd3d4;
    width: 25%;
    position: relative;
    overflow: hidden;
}

.fw-m2__main-item-inner {
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: end;
    align-items: start;
    padding: 18rem 5rem;
    transition: background-color .4s;
    display: flex;
    position: relative;
    z-index: 2;
}

.fw-m2__link-title {
    color: #fff;
}

.fw-m2__main-item-icon {
    color: #fff;
    transform-origin: 100% 0;
    transition: transform .4s;
    position: absolute;
    right: 5rem;
    top: 50%;
    margin-top: -50px;
}

.fw-m2__main-supporters {
    flex-wrap: nowrap;
    width: 100%;
    display: block
}

.fw-m2__main-supporters .fw-m2__marquee {
    width: 100%;
    display: block;
    overflow: hidden
}

.fw-m2__main-supporters .fw-m2__marquee-wrapper {
    will-change: transform;
    flex-wrap: nowrap;
    align-items: stretch;
    display: flex
}

.fw-m2__main-supporters .fw-m2__marquee-wrapper.--right {
    justify-content: start;
    margin-bottom: -1px
}

.fw-m2__main-supporters .fw-m2__marquee-wrapper.--left {
    justify-content: end
}

.fw-m2__main-supporters .fw-m2__marquee-item {
    flex-wrap: nowrap;
    justify-content: start;
    align-items: stretch;
    display: flex;
}

.fw-m2__main-supporters .fw-m2__marquee-item .fw-m2__main-item {
    width: 30rem;
    margin-bottom: 0
}

.fw-m2__investor {
    text-align: center;
    color: #151515;
    grid-column: 1/17;
    justify-self: center;
    margin-top: 10rem;
    margin-bottom: 6rem
}

.fw-m2__investor-title {
    margin-bottom: 1.2rem
}

.fw-m2__investor-sub {
    color: #9a9a9a
}

.home-faq {
    padding-top: 13.2rem;
    padding-bottom: 13.2rem
}

.home-faq__head {
    flex-direction: column;
    grid-column: 2/7;
    align-items: start;
    max-width: 44.8rem;
    display: flex
}

.home-faq__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

.home-faq__title {
    margin-bottom: 5rem
}

.home-faq__sub {
    margin-bottom: .4rem
}

.home-faq__main {
    flex-direction: column;
    grid-column: 9/16;
    display: flex
}

.home-faq .faq-item__head {
    justify-content: space-between;
    align-items: center;
    padding-top: 2.8rem;
    padding-bottom: 2.8rem;
    transition: padding-bottom .4s;
    display: flex;
    position: relative
}

.home-faq .faq-item__head .txt {
    padding-right: 2rem
}

.home-faq .faq-item__icon {
    flex-shrink: 0
}

.home-faq .faq-item__icon svg {
    width: 1.8rem;
    height: auto
}

.home-faq .faq-item__icon path {
    transform-origin: 50%;
    transition: all .4s
}

.home-faq .faq-item__body .txt {
    color: #4b4b4b;
    margin-top: -1.6rem;
    padding-bottom: 2.8rem;
    display: none
}

.home-faq .faq-item__line {
    background-color: #1515151a;
    width: 100%;
    height: 1px;
    position: absolute;
    top: 0;
    left: 0
}

.home-faq .faq-item__line-inner {
    transform-origin: 0;
    background-color: #15151533;
    height: 100%;
    transition: transform .4s, background-color .4s;
    transform: scaleX(0)
}

.home-faq .faq-item.active .faq-item__body {
    display: block
}

.home-faq .faq-item.active .faq-item__line-inner {
    transform: scaleX(1)
}

.home-faq .faq-item.active .faq-item__icon path:first-child {
    transform: rotate(90deg)
}

.home-faq .faq-item:hover .faq-item__line-inner {
    background-color: #ff1717;
    transform: scaleX(1)
}

.home-faq .faq-item:hover .faq-item__icon path {
    stroke: #ff1717
}

@media screen and (width<=1600px

) {
    .fw-m1__txt svg {
        max-width: 100px;
    }

    .fw-m3__txt svg {
        max-width: 100px;
    }

    .fw-m5__title svg {
        max-width: 100px;
    }
}

@media screen and (width<=1366px

) {
    .fw-m1__txt svg {
        max-width: 85px;
        margin: 2rem 0 0 -1rem;
    }

    .fw-m3__txt svg {
        max-width: 85px;
    }

    .fw-m5__title svg {
        max-width: 85px;
    }
}

@media screen and (width<=1280px

) {
    .fw-m1__txt svg {
        max-width: 78px;
        margin: 2rem 0 0 -1rem;
    }

    .fw-m3__txt svg {
        max-width: 78px;
    }

    .fw-m5__title svg {
        max-width: 78px;
    }
}

@media screen and (width<=1024px

) {
    .fw-m1__txt svg {
        max-width: 62px;
    }

    .fw-m3__txt svg {
        max-width: 62px;
    }

    .fw-m5__title svg {
        max-width: 62px;
    }
}

@media screen and (width<=991px

) {
    .fw-m0 {
        height: 65vh;
        min-height: 51.5rem;
        padding-bottom: max(4vh, 4rem)
    }

    .fw-m0-ph {
        height: 100%
    }

    .fw-m0__wrap {
        height: auto;
        margin-bottom: 0
    }

    .fw-m0__wrap:before {
        z-index: 2;
        content: "";
        pointer-events: none;
        background: linear-gradient(#00181f00 16.14%, #00181f99 74.32%);
        height: 46%;
        position: absolute;
        bottom: 0;
        left: 0;
        right: 0
    }

    .fw-m0__bg-wrap {
        z-index: 1;
        height: 100%;
        min-height: 100%
    }

    .fw-m0__bg-wrap-inner {
        height: 100%;
        overflow: hidden;
        transform: none !important
    }

    .fw-m0__bg-wrap .fw-m0__bg-vid {
        object-fit: cover;
        object-position: bottom;
        width: 100%;
        height: 100%;
        top: auto;
        bottom: 0
    }

    .fw-m0__bg-wrap .fw-m0__bg-ph {
        display: none
    }

    .fw-m0__bg-wrap .fw-m0__bg-ship {
        top: auto;
        bottom: 11.5%;
        left: 47.62%
    }

    .fw-m0__title {
        grid-column: 1/9;
        margin-top: 18vh;
        padding-bottom: 0
    }

    .fw-m0__sub {
        grid-column: 9/13;
        row-gap: 2.4rem
    }

    .fw-m0__backer-item:first-child {
        height: 1.345rem
    }

    .fw-m0__backer-item:nth-child(2) {
        height: 1.334rem
    }

    .fw-m0__backer-item:nth-child(3) {
        height: 1.622rem
    }

    .fw-m1 {
        padding-top: 6rem
    }

    .fw-m1__title {
        grid-column: 5/12;
        max-width: none;
        margin-bottom: 6rem;
        margin-top: 1.2rem;
    }

    .fw-m1__txt {
        grid-column: 5/12;
    }

    .fw-m1__txt svg {
        max-width: 68px;
        margin: 2rem 0 0 -1rem;
    }

    .fw-m1__txt span {
        top: 14rem;
        letter-spacing: 0;
    }

    .fw-m1__img {
        grid-area: 3/4/4/8;
        margin-bottom: -6.3rem
    }

    .fw-m1__richtext {
        grid-area: 2/5/3/12;
        margin-bottom: 7.6rem
    }

    .fw-m1__richtext-img {
        width: 48rem
    }

    .fw-m1__richtext-h3 {
        margin-top: 3.2rem
    }

    .fw-m1__richtext-p, .fw-m1__richtext-link {
        margin-top: 1.6rem
    }

    .home-prob {
        padding-top: 8rem;
        padding-bottom: 8rem
    }

    .home-prob__title {
        grid-column: 1/12
    }

    .home-prob__main {
        columns: 2;
        grid-area: 2/1/3/13;
        margin-top: 8rem;
        display: table-column
    }

    .home-prob__main-item {
        break-inside: avoid;
        margin-bottom: 4rem;
        margin-top: 0 !important
    }

    .home-prob__main-item-title {
        margin-top: 2.4rem
    }

    .home-prob__main-item-txt {
        margin-top: 1.2rem;
        font-size: 1.8rem
    }

    .home-prob__main-item:nth-child(4):before {
        content: "";
        width: 100%;
        height: 14.3rem
    }

    .home-solu__head {
        grid-column: 2/12;
        margin: -10rem auto 0
    }

    .home-solu__head-txt-wrap {
        padding-top: 44rem;
    }

    .home-solu__label {
        margin-bottom: 1.2rem
    }

    .home-solu__title {
        max-width: 32rem
    }

    .home-solu__body {
        grid-column: 2/12;
        margin: 0 -2rem
    }

    .home-solu__body-txt p {
        margin-bottom: .6rem
    }

    .home-solu__body-txt p.last-p {
        margin-bottom: 0
    }

    .home-solu__body .p-line-top {
        height: 8rem;
        margin-bottom: 2.4rem
    }

    .home-solu__body .p-line-bottom {
        height: 19.3rem;
        margin-top: 2.4rem;
        margin-bottom: -8rem
    }

    .home-solu__main {
        grid-column: 1/13
    }

    .home-solu__main-img-wrap {
        margin: 0 3rem
    }

    .home-solu__main-item-title {
        margin-bottom: 1.2rem
    }

    .home-solu__main-item-title br {
        display: none
    }

    .home-solu__main-item-txt {
        font-size: 1.8rem
    }

    .home-solu__main-item:nth-child(-n+2) {
        margin-top: 8rem
    }

    .home-solu__main-item:nth-child(odd) {
        grid-column: 1/7
    }

    .home-solu__main-item:nth-child(2n) {
        grid-column: 7/13
    }

    .home-solu__main-item:nth-child(3), .home-solu__main-item:nth-child(4) {
        margin-top: 9rem
    }

    .fw-m5 {
        margin-bottom: 02
    }

    .fw-m5__head {
        grid-column: 6/9;
        margin: -6rem 0 0
    }

    .fw-m5__head-txt-wrap {
        padding-top: 8rem
    }

    .fw-m5__label {
        margin-bottom: 0;
    }

    .fw-m5__title {
        max-width: 22.7rem
    }

    .fw-m5__title svg {
        width: 68px;
        top: 3.8rem;
    }

    .fw-m5__main {
        height: 525 svh
    }

    .fw-m5__main-part--big-txt .title-wrap {
        grid-column: 1/13;
        width: calc(100% + 8rem);
        margin-left: -4rem;
        margin-right: -4rem
    }

    .fw-m5__main-part--big-ship .container.fluid .fw-m5__img-wrap {
        height: 32vh
    }

    .fw-m5__main-part--small-txt .title-wrap {
        grid-column: 1/13
    }

    .fw-m5__main-part--small-txt .title-wrap .tite-inner {
        width: 100%
    }

    .fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap {
        height: 96vh
    }

    .fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap:after {
        width: 500vh
    }

    .fw-m4__bg-img {
        height: 52rem
    }

    .fw-m6 {
        margin-top: -7.8rem;
        padding-top: 7.8rem
    }

    .fw-m6__inner {
        grid-column: 1/13;
        grid-template-columns: repeat(4, 1fr)
    }

    .fw-m6__head {
        margin-top: -7.8rem;
        padding: 4rem 4rem 4rem 4rem;
        display: flex;
        position: relative
    }

    .fw-m6__head-inner {
        width: 100%
    }

    .fw-m6__label {
        margin-bottom: 1.2rem
    }

    .fw-m6__title {
        max-width: none
    }

    .fw-m6__title br {
        display: none
    }

    .fw-m6__item:nth-child(2) {
        margin-top: 0
    }

    .fw-m6__item-inner {
        padding: 2.4rem
    }

    .fw-m6__item-icon {
        top: 2.4rem;
        right: 2.4rem
    }

    .fw-m6__item-title {
        font-size: 1.6rem
    }

    .fw-m6__item-title br {
        display: none
    }

    .fw-m6__item:after {
        padding-top: 95.74%
    }

    .fw-m6__item:nth-child(2) {
        grid-area: 2/3/3/4
    }

    .fw-m6__item:nth-child(3) {
        grid-area: 3/2/4/3
    }

    .fw-m6__item:nth-child(4) {
        grid-area: 3/4/4/5
    }

    .fw-m6__item:nth-child(5) {
        grid-area: 4/1/5/2
    }

    .fw-m6__item:nth-child(6) {
        grid-area: 4/3/5/4
    }

    .fw-m6__item:nth-child(7) {
        grid-area: 5/2/6/3
    }

    .fw-m6__link-inner {
        padding: 2.4rem
    }

    .fw-m6__ship {
        max-width: 55rem;
    }

    .fw-m6__bg-tri {
        margin-top: 0
    }

    .fw-m3 {
        padding-bottom: 8rem;
        padding-top: 8rem;
    }

    .fw-m3__head {
        grid-column: 1/12;
        max-width: none;
        margin-top: 0
    }

    .fw-m3__label {
        margin-bottom: 1.2rem
    }

    .fw-m3__txt svg {
        max-width: 68px;
    }

    .fw-m3__txt span {
        left: 8rem;
        top: 4.8rem;
    }

    .fw-m3__title {
        margin-bottom: 2rem;
        margin-left: 8rem;
    }

    .fw-m3__title.small {
        margin-left: 8rem;
    }

    .fw-m3__main {
        grid-column: 1/13;
        padding-top: 4rem
    }

    .fw-m3__main-list {
        grid-template-columns: repeat(3, 1fr);
        column-gap: 2rem
    }

    .fw-m3__main-item {
        align-self: stretch
    }

    .fw-m3__main-item:nth-child(4) {
        margin-top: 2rem
    }

    .fw-m3__main-item-title {
        margin-top: 2.4rem
    }

    .fw-m3__main-item-title br {
        display: none
    }

    .fw-m3__main-item-inner {
        justify-content: start;
        padding: 3.2rem
    }

    .fw-m3__main-item-inner .icon {
        width: 4rem;
        height: 4rem;
        top: 2rem;
        right: 2rem;
        transform: none
    }

    .fw-m3__main-item-sub {
        margin-top: 1.2rem;
        padding-top: 0;
        display: inline-block !important
    }

    .fw-m3__main-item:nth-child(2) {
        grid-row: 1/2
    }

    .fw-m3__main-item:nth-child(3) {
        grid-area: 1/3/2/4
    }

    .fw-m3__main-item:hover {
        box-shadow: none
    }

    .fw-m3__main-item:hover .fw-m3__main-item-inner {
        background-color: #f5f5f5
    }

    .fw-m3__main-item:hover .fw-m3__main-item-inner .icon {
        transform: none
    }

    .fw-m2 {
        padding: 0
    }

    .fw-m2.padding {
        padding-top: 12rem;
    }

    .fw-m2__head {
        grid-column: 1/13;
        max-width: 42.5rem;
        margin-bottom: 5.8rem
    }

    .fw-m2__label {
        margin-bottom: 1.2rem
    }

    .fw-m2__btn {
        margin-top: 2.4rem
    }

    .fw-m2__main {
        grid-column: 1/13
    }

    .fw-m2__main-item {
        width: 25%;
        padding: 0 0
    }

    .fw-m2__main-item-inner {
        padding: 9.5rem 2rem;
    }

    .fw-m2__main-item-icon {
        right: 1rem;
        top: 50%;
        margin-top: -40px;
    }

    .fw-m2__investor {
        color: #151515;
        grid-column: 1/13;
        margin-top: 6rem;
        margin-bottom: 4rem
    }

    .fw-m2__investor-title {
        margin-bottom: .8rem
    }

    .fw-m2__investor-sub {
        font-size: 1.6rem
    }

    .home-faq {
        padding: 8rem 0 16.4rem
    }

    .home-faq__head {
        flex-direction: row;
        grid-column: 1/13;
        justify-content: space-between;
        align-items: center;
        max-width: none;
        margin-bottom: 4rem
    }

    .home-faq__label {
        margin-bottom: 1.2rem
    }

    .home-faq__title {
        max-width: 36.1rem;
        margin-bottom: 0
    }

    .home-faq__main {
        grid-column: 1/13
    }

    .home-faq .faq-item__head {
        padding: 2.5rem 0
    }
}

@media screen and (width<=767px

) {
    .fw-m0 {
        height: auto;
        padding-bottom: max(3 svh, 3rem);
        position: relative
    }

    .fw-m0__wrap:before {
        height: 68%
    }

    .fw-m0__title {
        grid-area: 1/1/2/3;
        margin-top: 40vh;
        margin-bottom: 3rem
    }

    .fw-m0__sub {
        grid-area: 2/1/3/3;
        place-self: start;
        row-gap: 1rem;
        margin-bottom: 6.7rem
    }

    .fw-m0__sub-txt {
        max-width: none
    }

    .fw-m0__sub-caption {
        display: none
    }

    .fw-m0__backer {
        grid-area: 3/1/4/3
    }

    .fw-m0__backer-item:first-child {
        height: 1.745rem
    }

    .fw-m0__backer-item:nth-child(2) {
        height: 1.734rem
    }

    .fw-m0__backer-item:nth-child(3) {
        height: 2.3rem
    }

    .fw-m1 {
        padding-top: 4rem
    }

    .fw-m1__label {
        grid-column: 1/3;
        margin-bottom: 1.2rem
    }

    .fw-m1__title {
        grid-area: 2/2/3/12;
        margin-bottom: 6rem;
        margin-top: 0.2rem;
    }

    .fw-m1__txt {
        grid-area: 2/2/3/12;
    }

    .fw-m1__txt svg {
        max-width: 40px;
        margin: 0.5rem 0 0 -0.5rem;
    }

    .fw-m1__txt span {
        top: 6rem;
        letter-spacing: 0;
    }

    .fw-m1__richtext {
        grid-area: 3/1/4/12;
        overflow: hidden
    }

    .fw-m1__richtext-h3 {
        font-size: 2rem
    }

    .fw-m1__richtext-img {
        width: 100%
    }

    .fw-m1__img {
        grid-area: 4/1/5/3;
        margin-bottom: -9.8rem;
        margin-right: -2rem
    }

    .home-prob {
        padding-top: 4rem;
        padding-bottom: 4rem
    }

    .home-prob__label {
        grid-column: 1/3
    }

    .home-prob__title {
        grid-area: 2/1/3/3
    }

    .home-prob__title .g-lines {
        display: inline !important
    }

    .home-prob__main {
        flex-direction: column;
        grid-area: 3/1/4/3;
        margin-top: 5rem;
        display: flex
    }

    .home-prob__main-item {
        margin-bottom: 2rem
    }

    .home-prob__main-item-txt {
        margin-top: 1.2rem;
        font-size: 1.6rem
    }

    .home-prob__main-item:nth-child(4):before {
        display: none
    }

    .home-solu__head {
        grid-column: 1/3;
        margin: 0 0 0
    }

    .home-solu.margin .home-solu__head {
        margin: -40rem auto 0;
    }

    .home-solu__head-txt-wrap {
        padding-top: 35rem
    }

    .home-solu__title {
        max-width: 22.7rem
    }

    .home-solu__body {
        grid-column: 1/3;
        margin: 0
    }

    .home-solu__body-txt br {
        display: none;
    }

    .home-solu__body .p-line-top {
        margin-bottom: 1.6rem
    }

    .home-solu__body .p-line-bottom {
        height: 14.9rem
    }

    .home-solu__main {
        flex-direction: column;
        grid-column: 1/3;
        align-items: center;
        display: flex
    }

    .home-solu__main-img-wrap {
        width: clamp(15rem, 50vw, 43.6rem);
        margin: 0 auto
    }

    .home-solu__main-inner {
        text-align: center;
        flex-direction: column;
        margin-top: 2.6rem;
        display: flex
    }

    .home-solu__main-item {
        max-width: none;
        text-align: center !important;
        align-items: center !important
    }

    .home-solu__main-item:nth-child(-n+2), .home-solu__main-item:nth-child(3), .home-solu__main-item:nth-child(4) {
        margin-top: 3.2rem
    }

    .home-solu__main-item-txt {
        font-size: 1.6rem
    }

    .fw-m5__main-part--big-txt .title-wrap {
        grid-column: 1/3
    }

    .fw-m5__main-part--big-txt .title-wrap .h1 {
        font-size: 5.2rem
    }

    .fw-m5__main-part--small-txt .title-wrap {
        grid-column: 1/3;
        font-size: 2.8rem
    }

    .fw-m5__main-part--big-ship .container.fluid .fw-m5__img-wrap {
        height: 28 svh
    }

    .fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap {
        height: 96 svh
    }

    .fw-m5__main-part--small-ship .container.fluid .fw-m5__img-wrap:after {
        width: 500 svh
    }

    .fw-m4__bg-img {
        height: 26.6rem
    }

    .fw-m6__top {
        padding-bottom: 2rem;
    }

    .fw-m6__head {
        padding-bottom: 4rem;
        margin-bottom: 2rem;
    }

    .fw-m6__inner {
        grid-column: 1/3;
        grid-template-columns: repeat(2, 1fr)
    }

    .fw-m6__item-title {
        font-size: 1.4rem
    }

    .fw-m6__item-icon {
        width: 3.2rem;
        height: 3.2rem
    }

    .fw-m6__item:after {
        padding-top: 100%
    }

    .fw-m6__item:nth-child(odd) {
        grid-column: 2/3
    }

    .fw-m6__item:nth-child(2n) {
        grid-column: 1/2
    }

    .fw-m6__item:nth-child(4) {
        grid-row: 4/5
    }

    .fw-m6__item:nth-child(5) {
        grid-row: 5/6;
        grid-column: 1/3;
        margin-top: 2rem;
    }

    .fw-m6__item:nth-child(6) {
        grid-row: 6/7
    }

    .fw-m6__item:nth-child(7) {
        grid-row: 7/8
    }

    .fw-m6__link-inner .arr-wrap-32 {
        width: 2.4rem;
        height: 2.4rem
    }

    .fw-m6__ship {
        max-width: 25rem;
    }

    .fw-m6__bg-tri-inner {
        transform-origin: 50% 235%;
        clip-path: polygon(0% 0%, 100% 0%, 100% 41.5%, 0% 100%)
    }

    .fw-m3 {
        padding-top: 4rem;
        padding-bottom: 4rem
    }

    .fw-m3__head {
        grid-area: 1/1/2/3;
        margin-bottom: 2rem
    }

    .fw-m3__title {
        margin-top: 0.5rem;
        margin-bottom: 2rem;
    }

    .fw-m3__title.small {
        margin-left: 5rem;
    }

    .fw-m3__txt svg {
        max-width: 40px;
    }

    .fw-m3__txt span {
        left: 5rem;
        top: 3rem;
    }

    .fw-m3__main {
        grid-area: 2/1/3/3;
        margin: 0 -4rem;
        padding: 0 4rem;
        overflow: hidden
    }

    .fw-m3__main-wrapper {
        width: 85%;
        overflow: visible !important
    }

    .fw-m3__main-wrapper.swiper {
        margin-left: 0
    }

    .fw-m3__main-list {
        align-items: stretch;
        column-gap: 0
    }

    .fw-m3__main-list.swiper-wrapper {
        display: grid
    }

    .fw-m3__main-item:nth-child(4) {
        margin-top: 0;
        grid-area: 1/4/2/5;
    }

    .fw-m3__main-item:after {
        display: none
    }

    .fw-m3__main-item-inner {
        padding: 16.2rem 2.4rem 2rem
    }

    .fw-m3__main-item-title br {
        display: none
    }

    .fw-m3__main-item-sub {
        font-size: 1.4rem
    }

    .fw-m3__btn {
        padding: 1.2rem 2.1rem
    }

    .fw-m2 {
        padding-bottom: 4rem;
        padding-top: 4rem;;
    }

    .fw-m2.padding {
        padding-top: 14rem;
    }

    .fw-m2__head {
        grid-column: 1/3;
        margin-bottom: 4.8rem
    }

    .fw-m2__label {
        margin-bottom: 1.2rem
    }

    .fw-m2__btn {
        padding: 1.2rem 2.1rem
    }

    .fw-m2__main {
        grid-column: 1/3
    }

    .fw-m2__main-item {
        width: 50%;
        padding: 1.6rem 1rem
    }

    .fw-m2__main-item-inner {
        padding: 7rem 2rem;
    }

    .fw-m2__main-item-icon {
        margin-top: -50px;
        width: 3.4rem;
    }

    .fw-m2__investor {
        color: #151515;
        grid-column: 1/3;
        margin-top: 0rem;
        margin-bottom: 4rem
    }

    .fw-m2__investor-title {
        margin-bottom: 0
    }

    .fw-m2__investor-sub {
        font-size: 1.4rem;
    }

    .home-faq {
        padding-top: 6rem
    }

    .home-faq__head {
        flex-direction: column;
        grid-column: 1/3;
        align-items: flex-start
    }

    .home-faq__title {
        margin-bottom: 2.4rem
    }

    .home-faq__main {
        grid-column: 1/3
    }

    .home-faq .faq-item__head {
        padding: 2rem 0
    }

    .home-faq .faq-item__icon {
        width: 2rem;
        height: 2rem
    }

    .home-faq .faq-item__body .txt {
        margin-top: -.6rem
    }
}

@media screen and (width<=476px

) {
    .fw-m1__richtext {
        overflow: hidden
    }

    .fw-m5__head {
        grid-column: 1/3;
        margin: -4rem 0 0;
    }

    .fw-m5__head-txt-wrap {
        padding-top: 6rem;
    }

    .fw-m5__title svg {
        width: 50px;
        top: 2rem;
        left: -1rem;
    }

    .fw-m5__main-part--big-txt .title-wrap {
        width: calc(100% + 4rem);
        margin-left: -2rem;
        margin-right: -2rem
    }

    .fw-m5__main-part--big-txt .title-wrap .h3 {
        font-size: 2.4rem
    }

    .fw-m5__main-part--big-txt .title-wrap .h1 {
        font-size: 3.6rem
    }

    .fw-m3__main {
        margin: 0 -2rem;
        padding: 0 2rem
    }

    .fw-m2__main-item {
        padding: 0 0
    }
}

.fw-m7 {
    padding-top: 28.2rem
}

.fw-m7.pt0 {
    padding-top: 0;
}

.fw-m7__label {
    color: #9a9a9a;
    grid-column: 3/5;
    align-self: start;
    margin-top: 1.8rem
}

.fw-m7__title {
    grid-column: 5/16;
    max-width: 102rem;
    padding-bottom: 15.7rem
}

.fw-m7__bg-wrap {
    background-color: #ff1717;
    height: 62.8rem
}

.fw-m8 {
    z-index: 2;
    background-color: #fff;
    position: relative
}

.fw-m8__quote {
    background-color: #ff1717;
    grid-column: 1/9;
    align-self: start;
    align-items: start;
    column-gap: 3.1rem;
    margin-top: -16.2rem;
    margin-right: -2rem;
    padding: 9rem 4.8rem 7.3rem 4.8rem;
    display: flex
}

.fw-m8__quote-icon {
    color: #fff
}

.fw-m8__quote-main {
    flex-direction: column;
    align-items: start;
    display: flex
}

.fw-m8__quote-txt {
    color: #ffffffb3;
    max-width: 45.5rem;
    margin-bottom: 4.5rem;
    font-weight: 400;
    line-height: 1.3em
}

.fw-m8__quote-author {
    color: #fff
}

.fw-m8__quote-job {
    color: #bcbcbc;
    margin-bottom: 4.5rem;
}

.fw-m8__richtext {
    flex-direction: column;
    grid-area: 2/9/4/16;
    justify-content: start;
    align-self: start;
    align-items: start;
    margin-bottom: 41.5rem;
    display: flex;
    position: relative
}

.fw-m8__richtext-img {
    width: 100%
}

.fw-m8__richtext-h3 {
    margin-top: 4rem
}

.fw-m8__richtext-p {
    color: #4b4b4b;
    margin-top: 2.4rem;
}

.fw-m8__richtext-decor {
    pointer-events: none;
    color: #ff1717;
    width: 7.2rem;
    position: absolute;
    bottom: 100%;
    left: 100%
}

.fw-m8__add {
    grid-area: 2/2/3/8;
    align-self: start;
    row-gap: 10rem;
    margin-top: 10rem;
    margin-bottom: 11rem;
    display: flex
}

.fw-m8__add-member {
    display: grid;
    width: 25%;
}

@media screen and (width<=767px

) {
    .fw-m8__add-member {
        width: 100%;
    }
}

.fw-m8__add-member-inner {
    background-color: #eaeef0;
    flex-direction: column;
    grid-area: 1/1/2/2;
    justify-content: space-between;
    padding: 1rem;
    display: flex
}

.fw-m8__add-member-amount {
    color: #1d1d1d;
    margin-bottom: 2rem;
    text-align: center;
}

.fw-m8__add-member-label {
    color: #1d1d1d;
    text-align: center;
}

.fw-m8__add-member:after {
    content: "";
    pointer-events: none;
    grid-area: 1/1/2/2;
    width: 100%;
    height: 0;
    padding-top: 100%;
    display: block
}

.fw-m8__swiper {
    grid-area: 3/2/4/8;
    align-self: start;
    width: 100%;
    margin-bottom: 20rem;
    position: relative
}

.fw-m8__swiper .swiper {
    aspect-ratio: 386/225;
    width: 100%
}

.fw-m8__swiper .swiper-slide {
    display: block
}

.fw-m8__swiper .swiper-nav {
    pointer-events: none;
    z-index: 5;
    opacity: 0;
    -o-transition: all .4s ease;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    transition: all .4s;
    display: flex;
    position: absolute;
    top: 1.2rem;
    right: 1.2rem;
    transform: translate(100%)
}

.fw-m8__swiper .swiper-nav-btn {
    pointer-events: auto;
    color: #212121;
    opacity: .8;
    -o-transition: opacity .4s ease;
    background-color: #fff;
    width: 3.2rem;
    height: 3.2rem;
    transition: opacity .4s
}

.fw-m8__swiper .swiper-nav-btn-left {
    border-bottom: 1px solid #cfd3d4
}

.fw-m8__swiper .swiper-nav-btn:hover {
    opacity: 1
}

.fw-m8__swiper .swiper:hover .swiper-nav {
    opacity: 1;
    transform: translate(0%)
}

.fw-m8__vis {
    grid-area: 2/14/4/17;
    place-self: end start;
    max-width: 28.5rem;
    margin-bottom: 20rem
}

.fw-m8__vis-title {
    color: #151515;
    margin-bottom: 1.6rem
}

.fw-m8__vis-txt {
    color: #4b4b4b
}

.fw-m9 {
    z-index: 2;
    margin-top: -1px;
    margin-bottom: -1px;
    position: relative
}

.fw-m9-pin-container {
    z-index: 2;
    position: relative
}

.fw-m9__ship {
    pointer-events: none;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex;
    position: absolute;
    top: 0;
    left: 0
}

.fw-m9__ship-img {
    justify-content: center;
    align-items: center;
    width: 100%;
    max-width: 14.2rem;
    height: 100%;
    margin: 0 auto;
    display: flex
}

.fw-m9__ship-behind {
    z-index: 1
}

.fw-m9__ship-front {
    z-index: 3;
    overflow: hidden
}

.fw-m9__wrap {
    z-index: 2;
    background-color: #212121;
    height: calc(100vh + 2px);
    position: relative
}

.fw-m9__wrap .container {
    height: 100%;
    overflow: hidden
}

.fw-m9__head {
    flex-direction: column;
    grid-column: 2/7;
    justify-content: center;
    align-self: center;
    align-items: start;
    max-width: 68.7rem;
    margin-top: 4%;
    display: flex
}

.fw-m9__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

.fw-m9__title {
    color: #fff
}

.fw-m9__progress {
    border: 1px solid #ffffff1a;
    border-radius: 9.9rem;
    width: 1.6rem;
    height: 25.5rem;
    position: absolute;
    top: 50%;
    left: 1.6rem;
    transform: translateY(-50%)
}

.fw-m9__progress-inner {
    justify-content: center;
    width: 100%;
    height: calc(100% - 1rem - 2px);
    margin-top: calc(.8rem - 1px);
    margin-bottom: calc(.8rem - 1px);
    display: flex;
    position: relative
}

.fw-m9__progress-dot {
    background-color: #ff1717;
    border-radius: 50%;
    width: 1rem;
    height: 1rem;
    margin-top: -.5rem;
    position: absolute;
    top: 0%
}

.fw-m9__main {
    grid-column: 11/16;
    height: 100vh;
    position: relative
}

.fw-m9__main:before, .fw-m9__main:after {
    content: "";
    z-index: 2;
    pointer-events: none;
    width: 100%;
    height: 25vh;
    display: block;
    position: absolute
}

.fw-m9__main:before {
    background: linear-gradient(#212121 0%, #212121cc 45%, #21212100 100%);
    top: -2px
}

.fw-m9__main:after {
    background: linear-gradient(#21212100 0%, #212121cc 55%, #212121 100%);
    bottom: -2px
}

.fw-m9__main-inner {
    z-index: 1;
    flex-direction: column;
    justify-content: start;
    row-gap: 5rem;
    max-width: 48.5rem;
    padding-top: 35vh;
    padding-bottom: 35vh;
    display: flex;
    position: relative
}

.fw-m9__main-item {
    flex-direction: column;
    justify-content: center;
    align-items: start;
    min-height: 10vh;
    padding-top: 4rem;
    padding-bottom: 4rem;
    display: flex
}

.fw-m9__main-item-label {
    color: #fff;
    margin-bottom: .4rem
}

.fw-m9__main-item-title {
    color: #fff;
    margin-bottom: 2rem
}

.fw-m9__main-item-richtext {
    flex-direction: column;
    row-gap: 2rem;
    display: flex
}

.fw-m9__main-item-richtext-p {
    color: #ffffffb3
}

.fw-m13 {
    z-index: 3;
    background-color: #eaeef0;
    padding-top: 15rem;
    position: relative
}

.fw-m13__title {
    grid-column: 2/10;
    max-width: 49.8rem
}

.fw-m13__richtext {
    flex-direction: column;
    grid-column: 12/16;
    align-items: start;
    display: flex
}

.fw-m13__richtext-p {
    color: #4b4b4b;
    margin-bottom: 4rem;
}

.fw-m13__richtext-link.hidden {
    visibility: hidden
}

.fw-m13 .p-line {
    background-color: #1515151a;
    grid-column: 2/16;
    width: 100%;
    height: 1px;
    margin-top: 8rem
}

.fw-m13__main {
    grid-column: 1/17;
    grid-template-columns: repeat(16, 1fr);
    column-gap: 2rem;
    margin-top: 8rem;
    display: grid
}

.fw-m13__main-img {
    transform-origin: 50%;
    z-index: 2;
    pointer-events: none;
    grid-column: 2/7;
    position: relative
}

.fw-m13__main-img-inner {
    width: 48.9rem;
    display: grid;
    position: absolute
}

.fw-m13__main-img-item {
    opacity: 0;
    background-color: #fff;
    grid-area: 1/1/2/2;
    transition: opacity .6s
}

.fw-m13__main-img-item.active {
    opacity: 1
}

.fw-m13__main-img-info, .fw-m13__main-img-close {
    display: none
}

.fw-m13__main-list {
    flex-direction: column;
    grid-column: 9/16;
    min-height: 112rem;
    padding-bottom: 20rem;
    display: flex
}

.fw-m13__main-item {
    grid-template-columns: repeat(7, 1fr);
    align-items: center;
    column-gap: 2rem;
    padding-top: 2.8rem;
    padding-bottom: 2.8rem;
    display: grid;
    position: relative
}

.fw-m13__main-item:hover .fw-m13__main-item-line-inner {
    transform: scaleX(1)
}

.fw-m13__main-item-line {
    background-color: #1515151a;
    width: 100%;
    height: 1px;
    position: absolute;
    bottom: 0;
    left: 0
}

.fw-m13__main-item-line-inner {
    transform-origin: 0;
    background-color: #ff1717;
    width: 100%;
    height: .3rem;
    transition: transform .4s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0)
}

.fw-m13__main-item-name {
    color: #151515;
    grid-column: 1/2
}

.fw-m13__main-item-job {
    color: #151515;
    grid-column: 2/7
}

.fw-m13__main-item-icon {
    color: #dbdbdb;
    grid-column: 7/8;
    justify-self: end;
    transition: color .4s
}

.fw-m13__main-item-icon:hover {
    color: #1d1d1d
}

.fw-m13__main-item-icon[href=\#] {
    visibility: hidden
}

.fw-m10 {
    position: relative;
    padding-top: 13.2rem;
    padding-bottom: 13.2rem;
    background-color: rgb(33, 33, 33);
    z-index: 2;
}

.fw-m10.report {
    background-color: #fff;
}

.fw-m10.hidden {
    display: none
}

.fw-m10__label {
    color: #9a9a9a;
    grid-column: 2/5;
    align-self: start;
    margin-top: 1.4rem
}

.fw-m10__title {
    color: #151515;
    grid-column: 6/14;
    max-width: 79.5rem
}

.fw-m10__title iframe {
    overflow: hidden;
    border: 0;
    padding: 0;
    margin: 0;
    width: 55vw;
    height: 55vh;
}

.fw-m10.report.h100 .fw-m10__title iframe {
    height: 100vh;
}

.fw-m10__main {
    grid-column: 2/16;
    grid-template-columns: repeat(7, 1fr);
    gap: 2rem;
    margin-top: 12rem;
    display: grid
}

.fw-m10__main:before {
    content: "";
    visibility: hidden;
    grid-column: span 2;
    display: block
}

.fw-m10__main-item {
    background-color: #f5f5f5;
    background-image: url(../image/bg.png);
    background-repeat: no-repeat;
    background-position: right center;
    flex-direction: column;
    grid-column: span 2;
    justify-content: space-between;
    height: 38.7rem;
    padding: 4.4rem;
    display: flex;
    position: relative
}

.fw-m10__main-item-head {
    justify-content: space-between;
    align-items: center;
    margin-bottom: 2.4rem;
    display: flex
}

.fw-m10__main-item-loca {
    color: #151515
}

.fw-m10__main-item-type {
    color: #9a9a9a;
    transition: opacity .4s
}

.fw-m10__main-item-soon {
    color: #b8b8b8;
    display: none
}

.fw-m10__main-item-title {
    color: #1d1d1d;
    margin-top: auto;
    transition: color .4s
}

.fw-m10__main-item-icon {
    color: #ff1717;
    opacity: 0;
    transition: all .4s;
    position: absolute;
    top: 4.4rem;
    right: 4.4rem;
    transform: translate(-100%, 100%)
}

.fw-m10__main-item:hover .fw-m10__main-item-type {
    opacity: 0
}

.fw-m10__main-item:hover .fw-m10__main-item-title {
    color: #ff1717
}

.fw-m10__main-item:hover .fw-m10__main-item-icon {
    opacity: 1;
    transform: translate(0)
}

.fw-m10__main-item.disable {
    pointer-events: none
}

.fw-m10__main-item.disable .fw-m10__main-item-loca {
    color: #b8b8b8
}

.fw-m10__main-item.disable .fw-m10__main-item-type {
    color: #b8b8b8;
    display: none
}

.fw-m10__main-item.disable .fw-m10__main-item-soon {
    display: block
}

.fw-m10__main-item.disable .fw-m10__main-item-title {
    color: #b8b8b8
}

.fw-m10__main-item:nth-child(2) {
    grid-column: span 3
}

.fw-m10__main-item:nth-child(6n+3) {
    grid-column: 3 span
}

.fw-m10__main-item:nth-child(6n+5) {
    grid-column: 2 span
}

.fw-m10__main-item:nth-child(6n+8) {
    grid-column: 3 span
}

@media screen and (width<=991px

) {
    .fw-m7 {
        padding-top: 16.4rem
    }

    .fw-m7__label {
        grid-column: 1/3;
        margin-top: 0;
    }

    .fw-m7__title {
        grid-column: 4/13;
        max-width: none;
        padding-bottom: 12rem
    }

    .fw-m7__bg-wrap {
        height: 51rem
    }

    .fw-m8__quote {
        column-gap: 2rem;
        margin-top: -23.2rem;
        margin-right: -2rem;
        padding: 5.2rem 4rem 4.8rem 3.2rem;
        grid-column: 1/7;
    }

    .fw-m8__quote-icon {
        width: 3.2rem;
        height: 3.2rem
    }

    .fw-m8__quote-txt {
        max-width: none;
        margin-bottom: 3.2rem;
        font-size: 2.6rem;
        line-height: 1.4em
    }

    .fw-m8__richtext {
        grid-column: 7/13;
        margin-bottom: auto
    }

    .fw-m8__richtext-decor {
        width: 3rem;
        left: auto;
        right: -3rem
    }

    .fw-m8__richtext-decor:after {
        display: none
    }

    .fw-m8__richtext-h3 {
        margin-top: 2rem
    }

    .fw-m8__richtext-p {
        margin-top: 1.6rem
    }

    .fw-m8__add {
        grid-area: 2/1/3/7;
        row-gap: 6rem;
        margin-bottom: 0;
        margin-top: 6rem;
    }

    .fw-m8__add-member-amount {
        margin-bottom: 1.2rem;
        font-size: 2.6rem
    }

    .fw-m8__swiper {
        grid-area: 3/1/5/7;
        margin-top: 6rem;
        margin-bottom: 12rem
    }

    .fw-m8__vis {
        grid-area: 4/7/5/13;
        margin-top: 4.4rem;
        margin-bottom: 22.6rem
    }

    .fw-m8__vis-title {
        margin-bottom: 1.2rem
    }

    .fw-m9__ship-img {
        margin-left: 28vw;
        margin-right: auto
    }

    .fw-m9__head {
        grid-column: 1/3
    }

    .fw-m9__title {
        font-size: 3.2rem
    }

    .fw-m9__label {
        margin-bottom: 1.2rem
    }

    .fw-m9__main {
        grid-column: 7/13
    }

    .fw-m9__main-item-title {
        font-size: 4rem
    }

    .fw-m9__progress {
        width: 1rem;
        left: 1.2rem
    }

    .fw-m13 {
        padding: 8rem 0
    }

    .fw-m13.open-popup {
        z-index: 100
    }

    .fw-m13__title {
        grid-column: 1/5;
        margin-right: -2rem
    }

    .fw-m13__richtext {
        grid-column: 7/13;
        margin-top: 0
    }

    .fw-m13__richtext-p {
        margin-bottom: 3.2rem
    }

    .fw-m13 .p-line {
        grid-column: 1/13;
        margin-top: 4rem
    }

    .fw-m13__main {
        grid-column: 1/13;
        margin-top: 3.2rem;
        display: block
    }

    .fw-m13__main-img {
        z-index: 3;
        opacity: 0;
        pointer-events: none;
        -o-transition: .3s ease;
        background-color: #000000f0;
        width: 100vw;
        height: 100vh;
        transition: all .3s;
        position: fixed;
        inset: 0
    }

    .fw-m13__main-img-inner {
        background-color: #fff;
        grid-template-columns: 1fr;
        width: 50%;
        height: auto;
        margin: 0 auto;
        padding: 6rem 2.4rem 3.2rem;
        display: grid;
        position: absolute;
        top: 50%;
        left: 50%;
        transform: translate(-50%, -50%)
    }

    .fw-m13__main-img-close {
        color: #4b4b4b;
        z-index: 3;
        width: 6rem;
        height: 6rem;
        margin: -2rem;
        padding: 2rem;
        display: flex;
        position: absolute;
        top: 2rem;
        right: 2rem
    }

    .fw-m13__main-img-item {
        z-index: 2;
        opacity: 1;
        aspect-ratio: .9;
        opacity: 0;
        grid-area: 1/1/2/2;
        width: auto;
        height: auto;
        margin: 0 -2.4rem;
        display: flex;
        position: relative;
        overflow: hidden
    }

    .fw-m13__main-img-item.selected {
        opacity: 1
    }

    .fw-m13__main-img-info {
        justify-content: space-between;
        margin-top: 2rem;
        display: flex
    }

    .fw-m13__main-img-icon {
        aspect-ratio: 1;
        background-color: #ff1717;
        justify-content: center;
        align-items: center;
        height: 100%;
        display: flex
    }

    .fw-m13__main-img-icon[href=\#] {
        visibility: hidden
    }

    .fw-m13__main-img.active {
        opacity: 1;
        pointer-events: auto;
        -o-transition: .3s ease;
        transition: all .3s
    }

    .fw-m13__main-list {
        min-height: auto;
        padding-bottom: 2rem
    }

    .fw-m13__main-item {
        grid-template-columns: 39.77fr 57.42fr 2.563fr;
        padding: 2.4rem 0
    }

    .fw-m13__main-item-name, .fw-m13__main-item-job, .fw-m13__main-item-icon {
        grid-column: span 1
    }

    .fw-m13__main-item-icon {
        width: 1.9rem;
        height: 1.9rem
    }

    .fw-m10 {
        padding: 4rem 0 4rem
    }

    .fw-m10__label {
        grid-column: 1/3
    }

    .fw-m10__title {
        grid-column: 4/13
    }

    .fw-m10__title iframe {
        width: 68vw;
        height: 55vh;
    }

    .fw-m10__main {
        grid-column: 1/13;
        grid-template-columns: repeat(12, 1fr);
        margin-top: 6rem
    }

    .fw-m10__main:before {
        content: "";
        visibility: hidden;
        grid-column: span 3;
        display: block
    }

    .fw-m10__main-item {
        grid-column: span 4;
        height: 31.17vw;
        padding: 3.2rem
    }

    .fw-m10__main-item-title {
        font-size: 2.2rem
    }

    .fw-m10__main-item:nth-child(2) {
        grid-column: span 5
    }

    .fw-m10__main-item:nth-child(6n+3), .fw-m10__main-item:nth-child(6n+5), .fw-m10__main-item:nth-child(6n+8) {
        grid-column: 4 span
    }
}

@media screen and (width<=767px

) {
    .fw-m7 {
        padding-top: 13.6rem
    }

    .fw-m7__label {
        grid-column: 1/3;
        margin-top: 0;
        margin-bottom: 1.2rem
    }

    .fw-m7__title {
        grid-column: 1/3;
        padding-bottom: 4rem
    }

    .fw-m7__bg-wrap {
        height: auto
    }

    .fw-m8__quote {
        flex-direction: column;
        grid-column: 1/4;
        margin-top: -4rem;
        margin-right: 0;
        padding: 0 2rem 2rem
    }

    .fw-m8__quote-txt {
        margin: 2rem 0 2.4rem;
        font-size: 2rem
    }

    .fw-m8__richtext {
        grid-area: 3/1/4/4
    }

    .fw-m8__richtext-decor {
        width: 2rem;
        right: 0
    }

    .fw-m8__richtext-img {
        width: 100%;
        margin-right: 6rem
    }

    .fw-m8__add {
        grid-area: 2/1/3/4;
        grid-template-columns: repeat(2, 1fr);
        gap: 2rem 2rem;
        margin: 2rem 0 4rem;
        display: grid
    }

    .fw-m8__add-member-label {
        font-size: 1.4rem
    }

    .fw-m8__swiper {
        grid-area: 5/1/6/4;
        margin-bottom: 4rem
    }

    .fw-m8__swiper .swiper-nav {
        opacity: 1;
        transform: translate(0%)
    }

    .fw-m8__swiper .swiper-nav-btn {
        opacity: 1
    }

    .fw-m8__vis {
        grid-area: 4/1/5/3;
        margin-bottom: 0
    }

    .fw-m8__vis-title {
        font-size: 1.8rem
    }

    .fw-m9__ship-img {
        max-width: 8.238rem;
        margin-left: 2rem
    }

    .fw-m9__head, .fw-m9__main {
        grid-column: 2/3;
        margin-left: -4rem
    }

    .fw-m9__head-inner, .fw-m9__main-inner {
        padding-top: 12 svh;
        padding-bottom: 12 svh;
        row-gap: 1rem;
    }

    .fw-m9__head {
        z-index: 2;
        background-color: #212121;
        grid-row: 1/2;
        margin-top: -.1rem;
        padding-top: 3rem
    }

    .fw-m9__main {
        z-index: 1;
        grid-row: 1/3
    }

    .fw-m9__main-item-label {
        font-size: 1.4rem
    }

    .fw-m9__main-item {
        min-height: 10vh;
        padding-top: 1rem;
        padding-bottom: 1rem;
    }

    .fw-m9__main-item-title {
        font-size: 3.2rem
    }

    .fw-m9__main-item-richtext-p {
        font-size: 1.4rem
    }

    .fw-m9__main:before {
        top: 6rem
    }

    .fw-m9__main:before, .fw-m9__main:after {
        height: 12 svh
    }

    .fw-m9__progress {
        display: none
    }

    .fw-m13 {
        padding-top: 6rem
    }

    .fw-m13__title {
        grid-column: 1/3;
        max-width: none;
        margin-bottom: 2.4rem;
        margin-right: 0
    }

    .fw-m13__richtext, .fw-m13 .p-line {
        grid-column: 1/3
    }

    .fw-m13__main {
        grid-column: 1/3;
        margin-top: 1rem
    }

    .fw-m13__main-item {
        flex-direction: column;
        align-items: flex-start;
        padding: 2rem 0;
        display: flex
    }

    .fw-m13__main-item-name {
        margin-bottom: .4rem
    }

    .fw-m13__main-item-job {
        font-size: 1.4rem;
        line-height: 1.5em
    }

    .fw-m13__main-item-icon {
        display: none
    }

    .fw-m13__main-img {
        background-color: #000000f2;
        height: 100 svh
    }

    .fw-m13__main-img-inner {
        width: calc(100% - 8rem);
        padding-top: 4.8rem
    }

    .fw-m13__main-img-close {
        width: 4.8rem;
        height: 4.8rem;
        padding: 1.4rem
    }

    .fw-m13__main-img-name {
        font-size: 1.8rem;
        line-height: 1.6em
    }

    .fw-m13__main-img-job {
        font-size: 1.4rem;
        line-height: 1.5em
    }

    .fw-m13__main-img-icon .icon {
        width: 2.2rem;
        height: 2.2rem
    }

    .fw-m10 {
        padding: 2rem 0 2rem
    }

    .fw-m10__title {
        grid-column: 1/3
    }

    .fw-m10__title iframe {
        width: 88vw;
        height: 55vh;
    }

    .fw-m10__title br {
        display: none
    }

    .fw-m10__main {
        flex-direction: column;
        grid-column: 1/3;
        margin-top: 4.8rem;
        display: flex
    }

    .fw-m10__main-item {
        height: 20rem
    }

    .fw-m10__main-item-title {
        margin-top: 0;
        font-size: 2rem
    }

    .fw-m10__main-item-head {
        margin-bottom: 0
    }

    .fw-m10__main-item-icon {
        display: none
    }
}

@media screen and (width<=476px

) {
    .fw-m13__main-img-inner {
        width: calc(100% - 4rem)
    }
}

.fw-m11 {
    padding-top: 26.4rem
}

@media screen and (width<=991px

) {
    .fw-m11 {
        padding-top: 16.4rem
    }
}

@media screen and (width<=767px

) {
    .fw-m11 {
        padding-top: 13.6rem
    }
}

.fw-m11__head {
    flex-direction: column;
    grid-column: 2/10;
    max-width: 79.4rem;
    display: flex
}

@media screen and (width<=991px

) {
    .fw-m11__head {
        grid-column: 1/7
    }
}

@media screen and (width<=767px

) {
    .fw-m11__head {
        grid-column: span 2;
        margin-bottom: 4rem
    }
}

.fw-m11__label {
    color: #9a9a9a;
    margin-bottom: 2rem
}

@media screen and (width<=991px

) {
    .fw-m11__label {
        margin-bottom: 1.2rem
    }
}

.fw-m11__title {
    color: #151515
}

@media screen and (width<=991px

) {
    .fw-m11__title {
        font-size: 6rem
    }
}

@media screen and (width<=767px

) {
    .fw-m11__title {
        font-size: 3.6rem;
        line-height: 1.2em
    }
}

.fw-m11__sub {
    color: #4b4b4b;
    grid-column: 12/17;
    align-self: end;
}

@media screen and (width<=991px

) {
    .fw-m11__sub {
        grid-column: 7/13;
        font-size: 1.8rem
    }
}

@media screen and (width<=767px

) {
    .fw-m11__sub {
        grid-column: span 2
    }
}

.fw-m11 .p-line {
    background-color: #1515151a;
    grid-column: 2/17;
    width: 100%;
    height: 1px;
    margin-top: 8rem
}

@media screen and (width<=991px

) {
    .fw-m11 .p-line {
        grid-column: 1/13;
        margin-top: 8.5rem
    }
}

@media screen and (width<=767px

) {
    .fw-m11 .p-line {
        grid-column: span 2;
        margin-top: 4rem
    }
}

.fw-m12 {
}

@media screen and (width<=767px

) {
    .fw-m12 {
        padding-bottom: 4rem;
    }
}

.fw-m12__label {
    flex-wrap: nowrap;
    grid-area: 1/2/2/7;
    align-self: start;
    margin-top: 4.2rem;
    display: flex;
    overflow: hidden
}

.fw-m12__label-item {
    white-space: nowrap
}

.fw-m12__label-item .txt-hl {
    text-align: center;
    border-radius: 50%;
    width: 2.2rem;
    padding: 0 .4rem;
    font-family: initial;
    display: inline-block
}

.fw-m12__label-item.anim {
    animation: 60s linear infinite rtl
}

@media screen and (width<=991px

) {
    .fw-m12__label {
        grid-column: 1/13;
        margin-top: 3rem
    }
}

@media screen and (width<=767px

) {
    .fw-m12__label {
        grid-column: 1/8;
        margin-top: 2rem
    }
}

.fw-m12__img {
    flex-wrap: nowrap;
    grid-area: 1/2/2/7;
    align-self: start;
    margin-top: 10.2rem;
}

@media screen and (width<=991px

) {
    .fw-m12__img {
        grid-area: 1/1/2/7;
        margin-top: 8.2rem;
    }
}

@media screen and (width<=767px

) {
    .fw-m12__img {
        grid-area: 1/1/2/8;
        margin-top: 6.2rem;
    }
}

.fw-m12__img p {
    margin-top: 1em;
    text-align: right;
}

.fw-m12__holder {
    opacity: 0;
    pointer-events: none;
    grid-area: 1/2/2/16;
    margin-top: 10.2rem
}

@media screen and (width<=991px

) {
    .fw-m12__holder {
        grid-area: 1/1/2/13;
    }
}

@media screen and (width<=767px

) {
    .fw-m12__holder {
        display: none
    }
}

.fw-m12__main {
    grid-area: 1/2/2/16;
    justify-content: end;
    align-items: start;
    margin-top: 10.2rem;
    display: flex
}

@media screen and (width<=991px

) {
    .fw-m12__main {
        grid-area: 1/1/2/13;
        margin-top: 8.2rem
    }
}

@media screen and (width<=767px

) {
    .fw-m12__main {
        grid-area: 2/1/3/8;
        margin-top: 2rem
    }
}

.fw-m12__main-inner {
    justify-content: center;
    align-items: center;
    width: calc(35.5714% - 1.42857rem);
    margin-right: calc(-7.14286% - .142857rem);
    display: flex;
    position: relative;
    overflow: hidden
}

.fw-m12__main-inner img {
    pointer-events: none;
    z-index: 2
}

.fw-m12__main-inner.clear-thumb .fw-m12__main-thumbnail {
    opacity: 0;
    -o-transition: .4s ease-out;
    transition: all .4s ease-out
}

@media screen and (width<=991px

) {
    .fw-m12__main-inner {
        width: 48.75%;
        margin-right: 0
    }
}

@media screen and (width<=767px

) {
    .fw-m12__main-inner {
        width: 100%
    }
}

.fw-m12__main-vid {
    object-fit: cover;
    z-index: 0;
    position: absolute;
    inset: 0
}

.fw-m12__main-thumbnail {
    z-index: 1;
    pointer-events: none
}

.fw-m12__play-btn {
    z-index: 3;
    pointer-events: auto;
    width: 8rem;
    height: 8rem;
    border-radius: 3px;
    overflow: hidden;
    position: absolute
}

@media screen and (width>

=768px

) {
    .fw-m12__play-btn {
        transition: opacity .4s
    }
}

@media screen and (width<=767px

) {
    .fw-m12__play-btn {
        width: 6.4rem;
        height: 6.4rem
    }
}

.fw-m12__play-btn-inner {
    color: #fff;
    -webkit-backdrop-filter: blur(3px);
    backdrop-filter: blur(3px);
    background-color: #ff1717;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    transition: all .4s;
    display: flex;
    opacity: 0
}

.fw-m12__play-btn-inner svg {
    -o-transition: transform .4s ease;
    width: auto;
    height: 3.6rem;
    transition: transform .4s;
    position: absolute
}

@media screen and (width<=767px

) {
    .fw-m12__play-btn-inner svg {
        width: 30%;
        height: 30%
    }
}

.fw-m12__play-btn-inner .ic-pause {
    opacity: 0
}

.fw-m12__main-inner:hover .fw-m12__play-btn-inner {
    opacity: 1
}

.fw-m12__play-btn.playing {
    pointer-events: none
}

@media screen and (width<=767px

) {
    .fw-m12__play-btn.playing {
        opacity: 0
    }
}

.fw-m12__play-btn.playing .ic-pause {
    opacity: 1
}

.fw-m12__play-btn.playing .ic-play {
    opacity: 0
}

.fw-m12.end-state .fw-m12__main-inner {
    width: 100%;
    margin-right: 0
}

.tech-demo {
}

.tech-demo__wrap {
    display: grid;
    position: relative
}

.tech-demo__popup {
    pointer-events: none;
    z-index: 2;
    display: none
}

@media screen and (width<=767px

) {
    .tech-demo__popup {
        grid-area: 1/1/2/3;
        width: 100%;
        height: 100 svh;
        display: block;
        position: sticky;
        top: 0
    }
}

.tech-demo__popup-inner {
    z-index: 3;
    align-items: end;
    width: 100%;
    height: 100%;
    display: grid;
    position: absolute;
    bottom: 0;
    left: 0
}

.tech-demo__popup-item {
    pointer-events: none;
    opacity: 0;
    -o-transition: all .4s ease;
    background-color: #fff;
    flex-direction: column;
    grid-area: 1/1/2/2;
    margin-bottom: 2rem;
    padding: 2.4rem;
    transition: all .4s;
    transform: translateY(20%)
}

.tech-demo__popup-item.active {
    opacity: 1;
    pointer-events: auto;
    display: flex;
    transform: translateY(0%)
}

.tech-demo__popup-item.active .tech-demo__popup-close {
    pointer-events: auto
}

.tech-demo__popup-item-title {
    margin-bottom: 1.6rem;
    font-size: 2rem;
    line-height: 1.4em
}

.tech-demo__popup-item-richtext {
    flex-direction: column;
    row-gap: 1rem;
    display: flex
}

.tech-demo__popup-item-richtext-p {
    font-size: 1.4rem;
    line-height: 1.5em
}

.tech-demo__popup-close {
    z-index: 2;
    color: #4b4b4b;
    pointer-events: none;
    align-items: center;
    column-gap: .4rem;
    margin-top: 1.6rem;
    margin-left: auto;
    display: flex
}

.tech-demo__main {
    z-index: 2;
    grid-area: 1/1/2/2
}

@media screen and (width<=767px

) {
    .tech-demo__main {
        margin-top: 40%;
    }
}

.tech-demo__main-outer {
    position: relative
}

.tech-demo__main-inner {
    z-index: 1;
    grid-column: 3/10;
}

@media screen and (width<=991px

) {
    .tech-demo__main-inner {
        grid-column: 8/13
    }
}

@media screen and (width<=767px

) {
    .tech-demo__main-inner {
        pointer-events: none;
        flex-direction: column;
        grid-area: 1/1/2/3;
        justify-content: end;
        align-items: start;
        width: auto;
        padding-bottom: 2.4rem;
        display: flex;
        -webkit-mask-image: none;
        mask-image: none
    }
}

.tech-demo__main-item {
    flex-direction: column;
    height: auto;
    display: flex;
    background-color: #111112;
    padding: 2.4rem;
}

@media screen and (width<=767px

) {
    .tech-demo__main-item {
        pointer-events: auto;
        justify-content: space-between;
        width: 100%;
        height: auto;
        min-height: auto
    }

    .tech-demo__main-item.active .tech-demo__main-item-title {
        color: #fff
    }

    .tech-demo__main-item.active .tech-demo__main-item-toggle {
        pointer-events: auto;
        opacity: 1
    }
}

.tech-demo__main-item-title {
    color: #fff;
    margin-bottom: 3.2rem
}

@media screen and (width<=991px

) {
    .tech-demo__main-item-title {
        font-size: 4rem
    }
}

@media screen and (width<=767px

) {
    .tech-demo__main-item-title {
        -o-transition: color .4s ease;
        margin-top: 1rem;
        margin-bottom: 1rem;
        margin-right: 2.4rem;
        font-size: 2rem;
        line-height: 1.4em;
        transition: color .4s
    }
}

.tech-demo__main-item-richtext {
    color: #fff;
    flex-direction: column;
    row-gap: 1rem;
    display: flex;
}

@media screen and (width<=991px

) {
    .tech-demo__main-item-richtext p {
        font-size: 1.8rem
    }
}

.tech-demo__main-item-toggle {
    display: none
}

@media screen and (width<=767px

) {
    .tech-demo__main-item-toggle {
        opacity: 0;
        pointer-events: none;
        z-index: 2;
        color: #ffffffb3;
        -o-transition: opacity .4s ease;
        flex-shrink: 0;
        align-items: center;
        column-gap: .4rem;
        transition: opacity .4s;
        display: flex
    }

    .tech-demo__main-item-toggle .txt-14 {
        white-space: nowrap
    }
}

.tech-demo__canvas {
    z-index: 1;
    pointer-events: none;
    grid-area: 1/1/2/2;
}

.tech-map {
    z-index: 2;
    padding-top: 14.8rem;
    position: relative
}

@media screen and (width<=991px

) {
    .tech-map {
        padding-top: 10rem
    }
}

.tech-map__main {
    grid-column: 1/17;
    grid-template-columns: repeat(14, 1fr);
    column-gap: 2rem;
    display: grid
}

@media screen and (width<=991px

) {
    .tech-map__main {
        grid-column: 1/13;
        grid-template-columns: repeat(2, 1fr)
    }
}

@media screen and (width<=767px

) {
    .tech-map__main {
        flex-direction: column-reverse;
        grid-column: span 2;
        display: flex
    }
}

.tech-map__map {
    z-index: 1;
    grid-column: 1/9;
    position: relative
}

@media screen and (width<=991px

) {
    .tech-map__map {
        grid-column: span 1
    }
}

@media screen and (width<=767px

) {
    .tech-map__map {
        margin: 0 -4rem
    }
}

@media screen and (width<=476px

) {
    .tech-map__map {
        margin: 0 -2rem
    }
}

.tech-map__map-inner {
    width: 100%;
    height: 100%;
    position: relative;
    overflow: hidden;
}

@media screen and (width<=767px

) {
    .tech-map__map-inner {
        padding-top: 0
    }
}

.tech-map__map-inner video {
    width: 100%;
}

.tech-map__head {
    background-color: #f5f5f5;
    flex-direction: column;
    grid-column: 9/15;
    padding: 5rem;
    display: flex
}

@media screen and (width<=991px

) {
    .tech-map__head {
        z-index: 2;
        grid-column: span 1;
        padding: 0;
        position: relative;
        background-color: #fff;
    }
}

.tech-map__title {
    color: #151515;
    margin-bottom: 4rem
}

@media screen and (width<=991px

) {
    .tech-map__title {
        margin-bottom: 2.8rem;
        font-size: 4rem
    }

    .tech-map__title br {
        display: none
    }
}

@media screen and (width<=767px

) {
    .tech-map__title {
        font-size: 3.2rem
    }
}

.tech-map__sub {
    color: #4b4b4b;
    margin-bottom: 4rem;
}

@media screen and (width<=991px

) {
    .tech-map__sub {
        margin-bottom: 2.8rem;
        font-size: 1.8rem
    }
}

@media screen and (width<=767px

) {
    .tech-map__sub {
        font-size: 1.6rem
    }
}

.tech-map__form {
    flex-direction: column;
    width: 100%;
    display: flex
}

.tech-map__form .input-wrap {
    align-items: center;
    display: flex;
    position: relative
}

.tech-map__form .input-wrap:hover .input-field-line, .tech-map__form .input-wrap:focus .input-field-line {
    transform: scaleX(1)
}

.tech-map__form .input-wrap:focus-within .icon {
    opacity: 1
}

.tech-map__form .input-hidden {
    display: none
}

.tech-map__form .input-field {
    color: #151515;
    border-bottom: 1px solid #1515151a;
    padding-left: 0;
    padding-right: 0
}

.tech-map__form .input-field::placeholder {
    color: #4b4b4b80
}

@media screen and (width<=991px

) {
    .tech-map__form .input-field {
        padding: 2.4rem 0
    }
}

.tech-map__form .input-icon {
    color: #4b4b4b80;
    opacity: 0;
    pointer-events: none;
    transition: opacity .4s;
    position: absolute;
    right: 0
}

.tech-map__form .input-drop {
    z-index: 2;
    color: #9a9a9a;
    background-color: #212121;
    width: 100%;
    max-height: 27.4rem;
    display: none;
    position: absolute;
    top: calc(100% - 1px);
    left: 0;
    overflow-x: hidden;
    overflow-y: auto
}

.tech-map__form .input-drop-inner {
    flex-direction: column;
    display: flex
}

.tech-map__form .input-drop-inner .port-item {
    opacity: 1;
    background-color: #fff0;
    width: 100%;
    padding: 1.6rem 2.4rem;
    transition: background-color .4s, opacity .4s;
    display: block
}

.tech-map__form .input-drop-inner .port-item-id {
    display: none
}

.tech-map__form .input-drop-inner .port-item.hidden-dup {
    display: none !important
}

.tech-map__form .input-drop-inner .port-item.hidden-srch {
    opacity: 0
}

.tech-map__form .input-drop-inner .port-item:hover {
    background-color: #ffffff0d
}

.tech-map__form .input-drop .port-item-empty-txt {
    width: 100%;
    padding: 1.6rem 2.4rem;
    display: none
}

.tech-map__form .input-field-line {
    transform-origin: 0;
    background-color: #15151566;
    width: 100%;
    height: 1px;
    transition: transform .4s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0)
}

.tech-map__form .tech-map__submit {
    width: 100%;
    margin-top: 3rem;
    position: relative
}

.tech-map__form .tech-map__submit-icon {
    opacity: 0;
    width: 0;
    transition: all .4s
}

.tech-map__form .tech-map__submit-icon .icon {
    margin-right: 1rem;
    animation: 1s linear infinite animRot
}

.tech-map__form .tech-map__submit.loading .tech-map__submit-icon {
    opacity: 1;
    width: 3rem
}

@keyframes animRot {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(360deg)
    }
}

.fw-m14 {
    z-index: 1;
    background-color: #fff;
    padding-top: 21rem;
    position: relative
}

@media screen and (width<=991px

) {
    .fw-m14 {
        padding-top: 12rem
    }
}

@media screen and (width<=767px

) {
    .fw-m14 {
        padding: 4rem 0 12rem
    }
}

.fw-m14__head {
    flex-direction: column;
    grid-column: 2/8;
    align-self: start;
    align-items: start;
    display: grid
}

@media screen and (width<=991px

) {
    .fw-m14__head {
        grid-area: 1/1/2/7
    }
}

@media screen and (width<=767px

) {
    .fw-m14__head {
        grid-column: 1/3;
        margin-bottom: -2rem
    }
}

.fw-m14__title {
    margin-bottom: 4rem
}

@media screen and (width<=991px

) {
    .fw-m14__title {
        font-size: 4rem
    }
}

@media screen and (width<=767px

) {
    .fw-m14__title {
        margin-bottom: 2.8rem;
        font-size: 3.2rem
    }
}

.fw-m14__richtext {
    flex-direction: column;
    row-gap: 1.2rem;
    display: flex
}

.fw-m14__richtext-p {
    color: #4b4b4b;
}

.fw-m14__img {
    flex-direction: column;
    grid-column: 8/17;
    justify-content: end;
    align-self: end;
    display: flex
}

@media screen and (width<=991px

) {
    .fw-m14__img {
        grid-area: 1/6/2/13;
        margin-right: -4rem;
        display: block
    }
}

@media screen and (width<=767px

) {
    .fw-m14__img {
        grid-area: 2/1/3/3;
        margin: 0 0 -10rem 0;
    }
}

.news-hero__logo {
    background-color: #ff1717;
    grid-column: 1/7;
    position: relative
}

.news-hero__logo:after {
    content: "";
    pointer-events: none;
    z-index: 1;
    background-color: #ff1717;
    width: 50vw;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

.news-hero__logo-inner {
    z-index: 2;
    pointer-events: none;
    width: 100%;
    height: 100vh;
    display: grid;
    position: sticky;
    top: 0
}

.news-hero__logo-default, .news-hero__logo-ex {
    grid-area: 1/1/2/2;
    justify-content: center;
    align-items: center;
    display: flex
}

.news-hero__logo-default-item, .news-hero__logo-ex-item {
    opacity: 0;
    z-index: 1;
    transition: opacity .4s;
    position: absolute
}

.news-hero__logo-default-item.active, .news-hero__logo-ex-item.active {
    opacity: 1;
    z-index: 2
}

.news-hero__content {
    grid-column: 9/16
}

.news-hero__title {
    color: #151515;
    margin-top: 23.2rem;
    margin-bottom: 16rem
}

.news-hero__main {
    flex-direction: column;
    display: flex
}

.news-hero__main-item {
    border-bottom: 1px solid #1515151a;
    flex-direction: column;
    align-items: start;
    padding-top: 4rem;
    padding-bottom: 4rem;
    display: flex;
    position: relative
}

.news-hero__main-item.hidden {
    display: none
}

.news-hero__main-item-label {
    color: #b8b8b8;
    margin-bottom: 3.2rem;
    transition: color .4s
}

.news-hero__main-item-title {
    color: #151515;
    margin-bottom: 3.2rem;
    transition: color .4s
}

.news-hero__main-item-info {
    justify-content: space-between;
    align-items: end;
    width: 100%;
    display: flex
}

.news-hero__main-item-site {
    color: #b8b8b8
}

.news-hero__main-item-year {
    opacity: .3;
    color: #b8b8b8
}

.news-hero__main-item-icon {
    color: #ff1717;
    opacity: 0;
    transition: all .4s;
    position: absolute;
    top: 4rem;
    right: 0;
    transform: translate(-100%, 100%)
}

.news-hero__main-item-line {
    transform-origin: 0;
    background-color: #ff1717;
    width: 100%;
    height: 1px;
    transition: transform .4s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0)
}

.news-hero__main-item:first-child {
    border-top: 1px solid #1515151a
}

.news-hero__main-item:hover .news-hero__main-item-label {
    color: #1d1d1d
}

.news-hero__main-item:hover .news-hero__main-item-title {
    color: #ff1717
}

.news-hero__main-item:hover .news-hero__main-item-site {
    color: #b8b8b8
}

.news-hero__main-item:hover .news-hero__main-item-year {
    opacity: .3;
    color: #b8b8b8
}

.news-hero__main-item:hover .news-hero__main-item-icon {
    opacity: 1;
    transform: translate(0%)
}

.news-hero__main-item:hover .news-hero__main-item-line {
    transform: scaleX(1)
}

.news-hero__load {
    margin-top: 10rem;
    margin-bottom: 11rem;
    display: inline-block
}

.news-hero__load .btn {
    transition: opacity .4s
}

.news-hero__load .btn.disable {
    pointer-events: none;
    opacity: 0
}

@media screen and (width<=991px

) {
    .news-hero__logo {
        grid-column: 1/5;
        margin-left: -4rem
    }

    .news-hero__logo-default, .news-hero__logo-ex {
        width: 100%;
        max-width: 21.2rem;
        margin: 0 auto
    }

    .news-hero__logo-default-item, .news-hero__logo-ex-item {
        width: 100%;
        max-width: 21.2rem
    }

    .news-hero__content {
        grid-column: 7/13;
        margin-left: -2rem
    }

    .news-hero__title {
        margin-top: 16.4rem;
        margin-bottom: 8rem;
        margin-right: -1rem
    }

    .news-hero__main-item {
        padding-top: 3.2rem;
        padding-bottom: 3.2rem
    }

    .news-hero__main-item-label {
        margin-bottom: 1.6rem
    }

    .news-hero__main-item-title {
        margin-bottom: 1.6rem;
        margin-right: 2.4rem
    }

    .news-hero__main-item-site {
        color: #b8b8b8
    }

    .news-hero__main-item-year {
        font-size: 3.2rem
    }

    .news-hero__main-item-icon {
        width: 2.4rem;
        height: 2.4rem;
        top: 3.2rem
    }

    .news-hero__load {
        margin-top: 6rem;
        margin-bottom: 21rem
    }

    .news-hero__load .btn {
        width: 17.3rem;
        padding-top: 1.2rem;
        padding-bottom: 1.2rem
    }
}

@media screen and (width<=767px

) {
    .news-hero__logo {
        grid-area: 1/1/2/3;
        margin-top: 9.6rem;
        margin-left: -4rem;
        margin-right: -4rem
    }

    .news-hero__logo:after {
        content: "";
        display: none
    }

    .news-hero__logo-inner {
        height: 16rem;
        position: relative;
        top: auto
    }

    .news-hero__logo-default, .news-hero__logo-ex, .news-hero__logo-default-item, .news-hero__logo-ex-item {
        max-width: 12.8rem
    }

    .news-hero__content {
        grid-area: 2/1/3/3;
        margin-left: 0
    }

    .news-hero__title {
        margin-top: 4.4rem;
        margin-bottom: 4.4rem;
        margin-right: 0
    }

    .news-hero__load {
        text-align: center;
        margin-top: 6rem;
        margin-bottom: 20.6rem
    }

    .news-hero__load .btn {
        width: 16rem
    }

    .news-hero__logo {
        margin-left: -2rem;
        margin-right: -2rem
    }

    .news-hero__load, .news-hero__load .btn {
        width: 100%
    }
}

.priv-hero__nav {
    background-color: #ff1717;
    grid-column: 1/7;
    position: relative
}

.priv-hero__nav:after {
    content: "";
    pointer-events: none;
    z-index: 1;
    background-color: #ff1717;
    width: 50vw;
    height: 100%;
    position: absolute;
    top: 0;
    right: 0
}

.priv-hero__nav-inner {
    z-index: 2;
    flex-direction: column;
    justify-content: center;
    max-width: 48.9rem;
    height: calc(100vh - 14.8rem);
    margin-top: 14.8rem;
    padding-bottom: 14.8rem;
    display: flex;
    position: sticky;
    top: 14.8rem
}

.priv-hero__nav-label {
    color: #fff;
    margin-bottom: 1.2rem
}

.priv-hero__nav-toc {
    flex-direction: column;
    margin-right: -1.4rem;
    padding-right: 1.4rem;
    display: flex;
    overflow-y: auto
}

.priv-hero__nav-toc::-webkit-scrollbar {
    width: .3rem
}

.priv-hero__nav-toc::-webkit-scrollbar-track {
    background: #ff1717
}

.priv-hero__nav-toc::-webkit-scrollbar-thumb {
    background: #fff9;
    border-radius: 2rem
}

.priv-hero__nav-toc-item {
    opacity: .8;
    border-bottom: 1px solid #fff3;
    justify-content: space-between;
    align-items: center;
    padding-top: 1.6rem;
    padding-bottom: 1.6rem;
    transition: opacity .4s;
    display: flex;
    position: relative
}

.priv-hero__nav-toc-item-txt {
    color: #ffffffb3;
    padding-right: 2.4rem;
    transition: color .4s
}

.priv-hero__nav-toc-item-num {
    color: #ffffffb3;
    transition: color .4s
}

.priv-hero__nav-toc-item-line {
    transform-origin: 0;
    background-color: #ffffffbf;
    width: 100%;
    height: 1px;
    transition: transform .4s;
    position: absolute;
    bottom: 0;
    left: 0;
    transform: scaleX(0)
}

.priv-hero__nav-toc-item.active, .priv-hero__nav-toc-item:hover {
    opacity: 1
}

.priv-hero__nav-toc-item.active .priv-hero__nav-toc-item-txt, .priv-hero__nav-toc-item:hover .priv-hero__nav-toc-item-txt, .priv-hero__nav-toc-item.active .priv-hero__nav-toc-item-num, .priv-hero__nav-toc-item:hover .priv-hero__nav-toc-item-num {
    color: #fff
}

.priv-hero__nav-toc-item.active .priv-hero__nav-toc-item-line, .priv-hero__nav-toc-item:hover .priv-hero__nav-toc-item-line {
    transform: scaleX(1)
}

.priv-hero__content {
    grid-column: 8/16;
    max-width: 79.4rem
}

.priv-hero__title {
    color: #151515;
    margin-top: 23.2rem;
    margin-bottom: 12rem
}

.priv-hero__main {
    flex-direction: column;
    margin-bottom: 28.4rem;
    display: flex
}

.priv-hero__main-richtext a {
    text-overflow: ellipsis;
    vertical-align: bottom;
    color: #ff1717;
    max-width: 100%;
    overflow: hidden
}

.priv-hero__main-richtext h2 {
    color: #151515;
    margin-bottom: 2.4rem;
    padding-top: 3.2rem
}

.priv-hero__main-richtext p {
    color: #4b4b4b;
    margin-top: 2.4rem;
    margin-bottom: 2.4rem
}

.priv-hero__main-richtext ul {
    margin-top: 2.4rem;
    margin-bottom: 2.4rem;
    margin-left: 0;
    padding-left: 2.6rem;
    list-style: none
}

.priv-hero__main-richtext ul li {
    color: #4b4b4b;
    position: relative
}

.priv-hero__main-richtext ul li:after {
    content: "";
    background-color: #4b4b4b;
    width: .4rem;
    height: .4rem;
    display: block;
    position: absolute;
    top: 1.2rem;
    left: -1.5rem
}

@media screen and (width<=991px

) {
    .priv-hero__nav {
        display: none
    }

    .priv-hero__content {
        grid-column: 1/13;
        max-width: none
    }

    .priv-hero__title {
        margin-top: 16.4rem;
        margin-bottom: 6rem
    }

    .priv-hero__main {
        margin-bottom: 23rem
    }

    .priv-hero__main-richtext h2 {
        margin-bottom: 1.6rem;
        padding-top: 2rem
    }

    .priv-hero__main-richtext p {
        margin-top: 1.6rem;
        margin-bottom: 1.6rem
    }

    .priv-hero__main-richtext ul {
        margin-top: 2rem;
        margin-bottom: 2rem
    }
}

@media screen and (width<=767px

) {
    .priv-hero__content {
        grid-column: 1/3
    }

    .priv-hero__title {
        margin-top: 13.6rem;
        margin-bottom: 3.2rem
    }

    .priv-hero__main {
        margin-bottom: 20.6rem
    }
}

@font-face {
    font-family: swiper-icons;
    src: url("data:application/font-woff;charset=utf-8;base64, d09GRgABAAAAAAZgABAAAAAADAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABGRlRNAAAGRAAAABoAAAAci6qHkUdERUYAAAWgAAAAIwAAACQAYABXR1BPUwAABhQAAAAuAAAANuAY7+xHU1VCAAAFxAAAAFAAAABm2fPczU9TLzIAAAHcAAAASgAAAGBP9V5RY21hcAAAAkQAAACIAAABYt6F0cBjdnQgAAACzAAAAAQAAAAEABEBRGdhc3AAAAWYAAAACAAAAAj//wADZ2x5ZgAAAywAAADMAAAD2MHtryVoZWFkAAABbAAAADAAAAA2E2+eoWhoZWEAAAGcAAAAHwAAACQC9gDzaG10eAAAAigAAAAZAAAArgJkABFsb2NhAAAC0AAAAFoAAABaFQAUGG1heHAAAAG8AAAAHwAAACAAcABAbmFtZQAAA/gAAAE5AAACXvFdBwlwb3N0AAAFNAAAAGIAAACE5s74hXjaY2BkYGAAYpf5Hu/j+W2+MnAzMYDAzaX6QjD6/4//Bxj5GA8AuRwMYGkAPywL13jaY2BkYGA88P8Agx4j+/8fQDYfA1AEBWgDAIB2BOoAeNpjYGRgYNBh4GdgYgABEMnIABJzYNADCQAACWgAsQB42mNgYfzCOIGBlYGB0YcxjYGBwR1Kf2WQZGhhYGBiYGVmgAFGBiQQkOaawtDAoMBQxXjg/wEGPcYDDA4wNUA2CCgwsAAAO4EL6gAAeNpj2M0gyAACqxgGNWBkZ2D4/wMA+xkDdgAAAHjaY2BgYGaAYBkGRgYQiAHyGMF8FgYHIM3DwMHABGQrMOgyWDLEM1T9/w8UBfEMgLzE////P/5//f/V/xv+r4eaAAeMbAxwIUYmIMHEgKYAYjUcsDAwsLKxc3BycfPw8jEQA/gZBASFhEVExcQlJKWkZWTl5BUUlZRVVNXUNTQZBgMAAMR+E+gAEQFEAAAAKgAqACoANAA+AEgAUgBcAGYAcAB6AIQAjgCYAKIArAC2AMAAygDUAN4A6ADyAPwBBgEQARoBJAEuATgBQgFMAVYBYAFqAXQBfgGIAZIBnAGmAbIBzgHsAAB42u2NMQ6CUAyGW568x9AneYYgm4MJbhKFaExIOAVX8ApewSt4Bic4AfeAid3VOBixDxfPYEza5O+Xfi04YADggiUIULCuEJK8VhO4bSvpdnktHI5QCYtdi2sl8ZnXaHlqUrNKzdKcT8cjlq+rwZSvIVczNiezsfnP/uznmfPFBNODM2K7MTQ45YEAZqGP81AmGGcF3iPqOop0r1SPTaTbVkfUe4HXj97wYE+yNwWYxwWu4v1ugWHgo3S1XdZEVqWM7ET0cfnLGxWfkgR42o2PvWrDMBSFj/IHLaF0zKjRgdiVMwScNRAoWUoH78Y2icB/yIY09An6AH2Bdu/UB+yxopYshQiEvnvu0dURgDt8QeC8PDw7Fpji3fEA4z/PEJ6YOB5hKh4dj3EvXhxPqH/SKUY3rJ7srZ4FZnh1PMAtPhwP6fl2PMJMPDgeQ4rY8YT6Gzao0eAEA409DuggmTnFnOcSCiEiLMgxCiTI6Cq5DZUd3Qmp10vO0LaLTd2cjN4fOumlc7lUYbSQcZFkutRG7g6JKZKy0RmdLY680CDnEJ+UMkpFFe1RN7nxdVpXrC4aTtnaurOnYercZg2YVmLN/d/gczfEimrE/fs/bOuq29Zmn8tloORaXgZgGa78yO9/cnXm2BpaGvq25Dv9S4E9+5SIc9PqupJKhYFSSl47+Qcr1mYNAAAAeNptw0cKwkAAAMDZJA8Q7OUJvkLsPfZ6zFVERPy8qHh2YER+3i/BP83vIBLLySsoKimrqKqpa2hp6+jq6RsYGhmbmJqZSy0sraxtbO3sHRydnEMU4uR6yx7JJXveP7WrDycAAAAAAAH//wACeNpjYGRgYOABYhkgZgJCZgZNBkYGLQZtIJsFLMYAAAw3ALgAeNolizEKgDAQBCchRbC2sFER0YD6qVQiBCv/H9ezGI6Z5XBAw8CBK/m5iQQVauVbXLnOrMZv2oLdKFa8Pjuru2hJzGabmOSLzNMzvutpB3N42mNgZGBg4GKQYzBhYMxJLMlj4GBgAYow/P/PAJJhLM6sSoWKfWCAAwDAjgbRAAB42mNgYGBkAIIbCZo5IPrmUn0hGA0AO8EFTQAA");
    font-weight: 400;
    font-style: normal
}

:root {
    --swiper-theme-color: #ff1717
}

.swiper {
    z-index: 1;
    margin-left: auto;
    margin-right: auto;
    padding: 0;
    list-style: none;
    position: relative;
    overflow: hidden
}

.swiper-vertical > .swiper-wrapper {
    flex-direction: column
}

.swiper-wrapper {
    z-index: 1;
    box-sizing: content-box;
    width: 100%;
    height: 100%;
    transition-property: transform;
    display: flex;
    position: relative
}

.swiper-android .swiper-slide, .swiper-wrapper {
    transform: translate(0, 0)
}

.swiper-pointer-events {
    touch-action: pan-y
}

.swiper-pointer-events.swiper-vertical {
    touch-action: pan-x
}

.swiper-slide {
    flex-shrink: 0;
    width: 100%;
    height: 100%;
    transition-property: transform;
    position: relative
}

.swiper-slide-invisible-blank {
    visibility: hidden
}

.swiper-autoheight, .swiper-autoheight .swiper-slide {
    height: auto
}

.swiper-autoheight .swiper-wrapper {
    align-items: flex-start;
    transition-property: transform, height
}

.swiper-backface-hidden .swiper-slide {
    backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-3d, .swiper-3d.swiper-css-mode .swiper-wrapper {
    perspective: 1200px
}

.swiper-3d .swiper-cube-shadow, .swiper-3d .swiper-slide, .swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top, .swiper-3d .swiper-wrapper {
    transform-style: preserve-3d
}

.swiper-3d .swiper-slide-shadow, .swiper-3d .swiper-slide-shadow-bottom, .swiper-3d .swiper-slide-shadow-left, .swiper-3d .swiper-slide-shadow-right, .swiper-3d .swiper-slide-shadow-top {
    pointer-events: none;
    z-index: 10;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-3d .swiper-slide-shadow {
    background: #00000026
}

.swiper-3d .swiper-slide-shadow-left {
    background-image: linear-gradient(270deg, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-right {
    background-image: linear-gradient(90deg, #00000080, #0000)
}

.swiper-3d .swiper-slide-shadow-top {
    background-image: linear-gradient(#0000, #00000080)
}

.swiper-3d .swiper-slide-shadow-bottom {
    background-image: linear-gradient(#00000080, #0000)
}

.swiper-css-mode > .swiper-wrapper {
    scrollbar-width: none;
    -ms-overflow-style: none;
    overflow: auto
}

.swiper-css-mode > .swiper-wrapper::-webkit-scrollbar {
    display: none
}

.swiper-css-mode > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: start start
}

.swiper-horizontal.swiper-css-mode > .swiper-wrapper {
    scroll-snap-type: x mandatory
}

.swiper-vertical.swiper-css-mode > .swiper-wrapper {
    scroll-snap-type: y mandatory
}

.swiper-centered > .swiper-wrapper:before {
    content: "";
    flex-shrink: 0;
    order: 9999
}

.swiper-centered.swiper-horizontal > .swiper-wrapper > .swiper-slide:first-child {
    margin-inline-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-horizontal > .swiper-wrapper:before {
    width: var(--swiper-centered-offset-after);
    height: 100%;
    min-height: 1px
}

.swiper-centered.swiper-vertical > .swiper-wrapper > .swiper-slide:first-child {
    margin-block-start: var(--swiper-centered-offset-before)
}

.swiper-centered.swiper-vertical > .swiper-wrapper:before {
    height: var(--swiper-centered-offset-after);
    width: 100%;
    min-width: 1px
}

.swiper-centered > .swiper-wrapper > .swiper-slide {
    scroll-snap-align: center center;
    scroll-snap-stop: always
}

.swiper-virtual .swiper-slide {
    -webkit-backface-visibility: hidden;
    transform: translateZ(0)
}

.swiper-virtual.swiper-css-mode .swiper-wrapper:after {
    content: "";
    pointer-events: none;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-virtual.swiper-css-mode.swiper-horizontal .swiper-wrapper:after {
    width: var(--swiper-virtual-size);
    height: 1px
}

.swiper-virtual.swiper-css-mode.swiper-vertical .swiper-wrapper:after {
    height: var(--swiper-virtual-size);
    width: 1px
}

:root {
    --swiper-navigation-size: 44px
}

.swiper-button-next, .swiper-button-prev {
    width: calc(var(--swiper-navigation-size) / 44 * 27);
    height: var(--swiper-navigation-size);
    margin-top: calc(0px - (var(--swiper-navigation-size) / 2));
    z-index: 10;
    cursor: pointer;
    color: var(--swiper-navigation-color, var(--swiper-theme-color));
    justify-content: center;
    align-items: center;
    display: flex;
    position: absolute;
    top: 50%
}

.swiper-button-next.swiper-button-disabled, .swiper-button-prev.swiper-button-disabled {
    opacity: .35;
    cursor: auto;
    pointer-events: none
}

.swiper-button-next.swiper-button-hidden, .swiper-button-prev.swiper-button-hidden {
    opacity: 0;
    cursor: auto;
    pointer-events: none
}

.swiper-navigation-disabled .swiper-button-next, .swiper-navigation-disabled .swiper-button-prev {
    display: none !important
}

.swiper-button-next:after, .swiper-button-prev:after {
    font-family: swiper-icons;
    font-size: var(--swiper-navigation-size);
    letter-spacing: 0;
    font-variant: initial;
    line-height: 1;
    text-transform: none !important
}

.swiper-button-prev, .swiper-rtl .swiper-button-next {
    left: 10px;
    right: auto
}

.swiper-button-prev:after, .swiper-rtl .swiper-button-next:after {
    content: "prev"
}

.swiper-button-next, .swiper-rtl .swiper-button-prev {
    left: auto;
    right: 10px
}

.swiper-button-next:after, .swiper-rtl .swiper-button-prev:after {
    content: "next"
}

.swiper-button-lock {
    display: none
}

.swiper-pagination {
    --container-padding: 6rem;
    padding: var(--container-padding);
    z-index: 10;
    transition: opacity .3s;
    position: absolute;
    transform: translate(0, 0)
}

@media screen and (width<=991px

) {
    .swiper-pagination {
        --container-padding: 4rem;
    }
}

@media screen and (width<=767px

) {
    .swiper-pagination {
        --container-padding: 2rem;
    }
}

.swiper-pagination.swiper-pagination-hidden {
    opacity: 0
}

.swiper-pagination-disabled > .swiper-pagination, .swiper-pagination.swiper-pagination-disabled {
    display: none !important
}

.swiper-horizontal > .swiper-pagination-bullets, .swiper-pagination-bullets.swiper-pagination-horizontal, .swiper-pagination-custom, .swiper-pagination-fraction {
    width: 100%;
    bottom: 10px;
    left: 0
}

.swiper-pagination-bullets-dynamic {
    font-size: 0;
    overflow: hidden
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    position: relative;
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active, .swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-main {
    transform: scale(1)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-prev-prev {
    transform: scale(.33)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next {
    transform: scale(.66)
}

.swiper-pagination-bullets-dynamic .swiper-pagination-bullet-active-next-next {
    transform: scale(.33)
}

.swiper-pagination-bullet {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 6px));
    height: var(--swiper-pagination-bullet-height, var(--swiper-pagination-bullet-size, 6px));
    background: var(--swiper-pagination-bullet-inactive-color, #fff);
    opacity: var(--swiper-pagination-bullet-inactive-opacity, .2);
    border-radius: 3px;
    display: inline-block
}

button.swiper-pagination-bullet {
    box-shadow: none;
    appearance: none;
    border: none;
    margin: 0;
    padding: 0
}

.swiper-pagination-clickable .swiper-pagination-bullet {
    cursor: pointer
}

.swiper-pagination-bullet:only-child {
    display: none !important
}

.swiper-pagination-bullet-active {
    width: var(--swiper-pagination-bullet-width, var(--swiper-pagination-bullet-size, 30px));
    opacity: var(--swiper-pagination-bullet-opacity, 1);
    background: var(--swiper-pagination-color, var(--swiper-theme-color))
}

.swiper-pagination-vertical.swiper-pagination-bullets, .swiper-vertical > .swiper-pagination-bullets {
    top: 20%;
    right: 10px;
    transform: translateY(-50%)
}

.swiper-pagination-vertical.swiper-pagination-bullets .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets .swiper-pagination-bullet {
    margin: var(--swiper-pagination-bullet-vertical-gap, 6px) 0;
    display: block
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    width: 6px;
    top: 50%;
    transform: translateY(-50%)
}

.swiper-pagination-vertical.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-vertical > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, top .2s;
    display: inline-block
}

.swiper-horizontal > .swiper-pagination-bullets .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets .swiper-pagination-bullet {
    margin: 0 var(--swiper-pagination-bullet-horizontal-gap, 3px)
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic {
    white-space: nowrap;
    left: 50%;
    transform: translate(-50%)
}

.swiper-horizontal > .swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet, .swiper-pagination-horizontal.swiper-pagination-bullets.swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, left .2s
}

.swiper-horizontal.swiper-rtl > .swiper-pagination-bullets-dynamic .swiper-pagination-bullet {
    transition: transform .2s, right .2s
}

.swiper-pagination-progressbar {
    background: #00000040;
    position: absolute
}

.swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    background: var(--swiper-pagination-color, var(--swiper-theme-color));
    transform-origin: 0 0;
    width: 100%;
    height: 100%;
    position: absolute;
    top: 0;
    left: 0;
    transform: scale(0)
}

.swiper-rtl .swiper-pagination-progressbar .swiper-pagination-progressbar-fill {
    transform-origin: 100% 0
}

.swiper-horizontal > .swiper-pagination-progressbar, .swiper-pagination-progressbar.swiper-pagination-horizontal, .swiper-pagination-progressbar.swiper-pagination-vertical.swiper-pagination-progressbar-opposite, .swiper-vertical > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite {
    width: 100%;
    height: 4px;
    top: 0;
    left: 0
}

.swiper-horizontal > .swiper-pagination-progressbar.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-horizontal.swiper-pagination-progressbar-opposite, .swiper-pagination-progressbar.swiper-pagination-vertical, .swiper-vertical > .swiper-pagination-progressbar {
    width: 4px;
    height: 100%;
    top: 0;
    left: 0
}

.swiper-pagination-lock {
    display: none
}

.swiper-scrollbar {
    -ms-touch-action: none;
    background: #0000001a;
    border-radius: 10px;
    position: relative
}

.swiper-scrollbar-disabled > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-disabled {
    display: none !important
}

.swiper-horizontal > .swiper-scrollbar, .swiper-scrollbar.swiper-scrollbar-horizontal {
    z-index: 50;
    width: 98%;
    height: 5px;
    position: absolute;
    bottom: 3px;
    left: 1%
}

.swiper-scrollbar.swiper-scrollbar-vertical, .swiper-vertical > .swiper-scrollbar {
    z-index: 50;
    width: 5px;
    height: 98%;
    position: absolute;
    top: 1%;
    right: 3px
}

.swiper-scrollbar-drag {
    background: #00000080;
    border-radius: 10px;
    width: 100%;
    height: 100%;
    position: relative;
    top: 0;
    left: 0
}

.swiper-scrollbar-cursor-drag {
    cursor: move
}

.swiper-scrollbar-lock {
    display: none
}

.swiper-zoom-container {
    text-align: center;
    justify-content: center;
    align-items: center;
    width: 100%;
    height: 100%;
    display: flex
}

.swiper-zoom-container > canvas, .swiper-zoom-container > img, .swiper-zoom-container > svg {
    object-fit: contain;
    max-width: 100%;
    max-height: 100%
}

.swiper-slide-zoomed {
    cursor: move
}

.swiper-lazy-preloader {
    z-index: 10;
    transform-origin: 50%;
    box-sizing: border-box;
    border: 4px solid var(--swiper-preloader-color, var(--swiper-theme-color));
    border-top-color: #0000;
    border-radius: 50%;
    width: 42px;
    height: 42px;
    margin-top: -21px;
    margin-left: -21px;
    position: absolute;
    top: 50%;
    left: 50%
}

.swiper-watch-progress .swiper-slide-visible .swiper-lazy-preloader, .swiper:not(.swiper-watch-progress) .swiper-lazy-preloader {
    animation: 1s linear infinite swiper-preloader-spin
}

.swiper-lazy-preloader-white {
    --swiper-preloader-color: #fff
}

.swiper-lazy-preloader-black {
    --swiper-preloader-color: #000
}

@keyframes swiper-preloader-spin {
    0% {
        transform: rotate(0)
    }
    to {
        transform: rotate(360deg)
    }
}

.swiper .swiper-notification {
    pointer-events: none;
    opacity: 0;
    z-index: -1000;
    position: absolute;
    top: 0;
    left: 0
}

.swiper-free-mode > .swiper-wrapper {
    margin: 0 auto;
    transition-timing-function: ease-out
}

.swiper-grid > .swiper-wrapper {
    flex-wrap: wrap
}

.swiper-grid-column > .swiper-wrapper {
    flex-flow: column wrap
}

.swiper-fade.swiper-free-mode .swiper-slide {
    transition-timing-function: ease-out
}

.swiper-fade .swiper-slide {
    pointer-events: none;
    transition-property: opacity
}

.swiper-fade .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-fade .swiper-slide-active, .swiper-fade .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube {
    overflow: visible
}

.swiper-cube .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1;
    visibility: hidden;
    transform-origin: 0 0;
    width: 100%;
    height: 100%
}

.swiper-cube .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-cube.swiper-rtl .swiper-slide {
    transform-origin: 100% 0
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-cube .swiper-slide-active, .swiper-cube .swiper-slide-next, .swiper-cube .swiper-slide-next + .swiper-slide, .swiper-cube .swiper-slide-prev {
    pointer-events: auto;
    visibility: visible
}

.swiper-cube .swiper-slide-shadow-bottom, .swiper-cube .swiper-slide-shadow-left, .swiper-cube .swiper-slide-shadow-right, .swiper-cube .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-cube .swiper-cube-shadow {
    opacity: .6;
    z-index: 0;
    width: 100%;
    height: 100%;
    position: absolute;
    bottom: 0;
    left: 0
}

.swiper-cube .swiper-cube-shadow:before {
    content: "";
    filter: blur(50px);
    background: #000;
    position: absolute;
    inset: 0
}

.swiper-flip {
    overflow: visible
}

.swiper-flip .swiper-slide {
    pointer-events: none;
    backface-visibility: hidden;
    z-index: 1
}

.swiper-flip .swiper-slide .swiper-slide {
    pointer-events: none
}

.swiper-flip .swiper-slide-active, .swiper-flip .swiper-slide-active .swiper-slide-active {
    pointer-events: auto
}

.swiper-flip .swiper-slide-shadow-bottom, .swiper-flip .swiper-slide-shadow-left, .swiper-flip .swiper-slide-shadow-right, .swiper-flip .swiper-slide-shadow-top {
    z-index: 0;
    backface-visibility: hidden
}

.swiper-creative .swiper-slide {
    backface-visibility: hidden;
    transition-property: transform, opacity, height;
    overflow: hidden
}

.swiper-cards {
    overflow: visible
}

.swiper-cards .swiper-slide {
    transform-origin: bottom;
    backface-visibility: hidden;
    overflow: hidden
}

.leaflet-pane, .leaflet-tile, .leaflet-marker-icon, .leaflet-marker-shadow, .leaflet-tile-container, .leaflet-pane > svg, .leaflet-pane > canvas, .leaflet-zoom-box, .leaflet-image-layer, .leaflet-layer {
    position: absolute;
    top: 0;
    left: 0
}

.leaflet-container {
    overflow: hidden
}

.leaflet-tile, .leaflet-marker-icon, .leaflet-marker-shadow {
    -webkit-user-select: none;
    user-select: none;
    -webkit-user-drag: none
}

.leaflet-tile::selection {
    background: 0 0
}

.leaflet-safari .leaflet-tile {
    image-rendering: -webkit-optimize-contrast
}

.leaflet-safari .leaflet-tile-container {
    -webkit-transform-origin: 0 0;
    width: 1600px;
    height: 1600px
}

.leaflet-marker-icon, .leaflet-marker-shadow {
    display: block
}

.leaflet-container .leaflet-overlay-pane svg {
    max-width: none !important;
    max-height: none !important
}

.leaflet-container .leaflet-marker-pane img, .leaflet-container .leaflet-shadow-pane img, .leaflet-container .leaflet-tile-pane img, .leaflet-container img.leaflet-image-layer, .leaflet-container .leaflet-tile {
    width: auto;
    padding: 0;
    max-width: none !important;
    max-height: none !important
}

.leaflet-container img.leaflet-tile {
    mix-blend-mode: plus-lighter
}

.leaflet-container.leaflet-touch-zoom {
    -ms-touch-action: pan-x pan-y;
    touch-action: pan-x pan-y
}

.leaflet-container.leaflet-touch-drag {
    -ms-touch-action: pinch-zoom;
    touch-action: none;
    touch-action: pinch-zoom
}

.leaflet-container.leaflet-touch-drag.leaflet-touch-zoom {
    -ms-touch-action: none;
    touch-action: none
}

.leaflet-container {
    -webkit-tap-highlight-color: transparent
}

.leaflet-container a {
    -webkit-tap-highlight-color: #33b5e566
}

.leaflet-tile {
    filter: inherit;
    visibility: hidden
}

.leaflet-tile-loaded {
    visibility: inherit
}

.leaflet-zoom-box {
    box-sizing: border-box;
    z-index: 800;
    width: 0;
    height: 0
}

.leaflet-overlay-pane svg {
    -moz-user-select: none
}

.leaflet-pane {
    z-index: 400
}

.leaflet-tile-pane {
    z-index: 200
}

.leaflet-overlay-pane {
    z-index: 400
}

.leaflet-shadow-pane {
    z-index: 500
}

.leaflet-marker-pane {
    z-index: 600
}

.leaflet-tooltip-pane {
    z-index: 650
}

.leaflet-popup-pane {
    z-index: 700
}

.leaflet-map-pane canvas {
    z-index: 100
}

.leaflet-map-pane svg {
    z-index: 200
}

.leaflet-vml-shape {
    width: 1px;
    height: 1px
}

.lvml {
    behavior: url(#default#VML);
    display: inline-block;
    position: absolute
}

.leaflet-control {
    z-index: 800;
    pointer-events: visiblePainted;
    pointer-events: auto;
    position: relative
}

.leaflet-top, .leaflet-bottom {
    z-index: 1000;
    pointer-events: none;
    position: absolute
}

.leaflet-top {
    top: 0
}

.leaflet-right {
    right: 0
}

.leaflet-bottom {
    bottom: 0
}

.leaflet-left {
    left: 0
}

.leaflet-control {
    float: left;
    clear: both
}

.leaflet-right .leaflet-control {
    float: right
}

.leaflet-top .leaflet-control {
    margin-top: 10px
}

.leaflet-bottom .leaflet-control {
    margin-bottom: 10px
}

.leaflet-left .leaflet-control {
    margin-left: 10px
}

.leaflet-right .leaflet-control {
    margin-right: 10px
}

.leaflet-fade-anim .leaflet-popup {
    opacity: 0;
    transition: opacity .2s linear
}

.leaflet-fade-anim .leaflet-map-pane .leaflet-popup {
    opacity: 1
}

.leaflet-zoom-animated {
    transform-origin: 0 0
}

svg.leaflet-zoom-animated {
    will-change: transform
}

.leaflet-zoom-anim .leaflet-zoom-animated {
    -webkit-transition: -webkit-transform .25s cubic-bezier(0, 0, .25, 1);
    -moz-transition: -moz-transform .25s cubic-bezier(0, 0, .25, 1);
    transition: transform .25s cubic-bezier(0, 0, .25, 1)
}

.leaflet-zoom-anim .leaflet-tile, .leaflet-pan-anim .leaflet-tile {
    transition: none
}

.leaflet-zoom-anim .leaflet-zoom-hide {
    visibility: hidden
}

.leaflet-interactive {
    cursor: pointer
}

.leaflet-grab {
    cursor: -webkit-grab;
    cursor: -moz-grab;
    cursor: grab
}

.leaflet-crosshair, .leaflet-crosshair .leaflet-interactive {
    cursor: crosshair
}

.leaflet-popup-pane, .leaflet-control {
    cursor: auto
}

.leaflet-dragging .leaflet-grab, .leaflet-dragging .leaflet-grab .leaflet-interactive, .leaflet-dragging .leaflet-marker-draggable {
    cursor: move;
    cursor: -webkit-grabbing;
    cursor: -moz-grabbing;
    cursor: grabbing
}

.leaflet-marker-icon, .leaflet-marker-shadow, .leaflet-image-layer, .leaflet-pane > svg path, .leaflet-tile-container {
    pointer-events: none
}

.leaflet-marker-icon.leaflet-interactive, .leaflet-image-layer.leaflet-interactive, .leaflet-pane > svg path.leaflet-interactive, svg.leaflet-image-layer.leaflet-interactive path {
    pointer-events: visiblePainted;
    pointer-events: auto
}

.leaflet-container {
    outline-offset: 1px;
    background: #ddd
}

.leaflet-container a {
    color: #0078a8
}

.leaflet-zoom-box {
    background: #ffffff80;
    border: 2px dotted #38f
}

.leaflet-container {
    font-family: Helvetica Neue, Arial, Helvetica, sans-serif;
    font-size: .75rem;
    line-height: 1.5
}

.leaflet-bar {
    border-radius: 4px;
    box-shadow: 0 1px 5px #000000a6
}

.leaflet-bar a {
    text-align: center;
    color: #000;
    background-color: #fff;
    border-bottom: 1px solid #ccc;
    width: 26px;
    height: 26px;
    line-height: 26px;
    text-decoration: none;
    display: block
}

.leaflet-bar a, .leaflet-control-layers-toggle {
    background-position: 50%;
    background-repeat: no-repeat;
    display: block
}

.leaflet-bar a:hover, .leaflet-bar a:focus {
    background-color: #f4f4f4
}

.leaflet-bar a:first-child {
    border-top-left-radius: 4px;
    border-top-right-radius: 4px
}

.leaflet-bar a:last-child {
    border-bottom: none;
    border-bottom-right-radius: 4px;
    border-bottom-left-radius: 4px
}

.leaflet-bar a.leaflet-disabled {
    cursor: default;
    color: #bbb;
    background-color: #f4f4f4
}

.leaflet-touch .leaflet-bar a {
    width: 30px;
    height: 30px;
    line-height: 30px
}

.leaflet-touch .leaflet-bar a:first-child {
    border-top-left-radius: 2px;
    border-top-right-radius: 2px
}

.leaflet-touch .leaflet-bar a:last-child {
    border-bottom-right-radius: 2px;
    border-bottom-left-radius: 2px
}

.leaflet-control-zoom-in, .leaflet-control-zoom-out {
    text-indent: 1px;
    font: 700 18px Lucida Console, Monaco, monospace
}

.leaflet-touch .leaflet-control-zoom-in, .leaflet-touch .leaflet-control-zoom-out {
    font-size: 22px
}

.leaflet-control-layers {
    background: #fff;
    border-radius: 3px;
    box-shadow: 0 1px 5px #0006
}

.leaflet-control-layers-toggle {
    background-image: url(layers.321f6d19.png);
    width: 36px;
    height: 36px
}

.leaflet-retina .leaflet-control-layers-toggle {
    background-image: url(layers-2x.d0e539d4.png);
    background-size: 26px 26px
}

.leaflet-touch .leaflet-control-layers-toggle {
    width: 44px;
    height: 44px
}

.leaflet-control-layers .leaflet-control-layers-list, .leaflet-control-layers-expanded .leaflet-control-layers-toggle {
    display: none
}

.leaflet-control-layers-expanded .leaflet-control-layers-list {
    display: block;
    position: relative
}

.leaflet-control-layers-expanded {
    color: #333;
    background: #fff;
    padding: 6px 10px 6px 6px
}

.leaflet-control-layers-scrollbar {
    padding-right: 5px;
    overflow-x: hidden;
    overflow-y: scroll
}

.leaflet-control-layers-selector {
    margin-top: 2px;
    position: relative;
    top: 1px
}

.leaflet-control-layers label {
    font-size: 1.08333em;
    display: block
}

.leaflet-control-layers-separator {
    border-top: 1px solid #ddd;
    height: 0;
    margin: 5px -10px 5px -6px
}

.leaflet-default-icon-path {
    background-image: url(marker-icon.449cd47b.png)
}

.leaflet-container .leaflet-control-attribution {
    background: #fffc;
    margin: 0
}

.leaflet-control-attribution, .leaflet-control-scale-line {
    color: #333;
    padding: 0 5px;
    line-height: 1.4
}

.leaflet-control-attribution a {
    text-decoration: none
}

.leaflet-control-attribution a:hover, .leaflet-control-attribution a:focus {
    text-decoration: underline
}

.leaflet-attribution-flag {
    width: 1em;
    height: .6669em;
    vertical-align: baseline !important;
    display: inline !important
}

.leaflet-left .leaflet-control-scale {
    margin-left: 5px
}

.leaflet-bottom .leaflet-control-scale {
    margin-bottom: 5px
}

.leaflet-control-scale-line {
    white-space: nowrap;
    box-sizing: border-box;
    text-shadow: 1px 1px #fff;
    background: #fffc;
    border: 2px solid #777;
    border-top: none;
    padding: 2px 5px 1px;
    line-height: 1.1
}

.leaflet-control-scale-line:not(:first-child) {
    border-top: 2px solid #777;
    border-bottom: none;
    margin-top: -2px
}

.leaflet-control-scale-line:not(:first-child):not(:last-child) {
    border-bottom: 2px solid #777
}

.leaflet-touch .leaflet-control-attribution, .leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
    box-shadow: none
}

.leaflet-touch .leaflet-control-layers, .leaflet-touch .leaflet-bar {
    background-clip: padding-box;
    border: 2px solid #0003
}

.leaflet-popup {
    text-align: center;
    margin-bottom: 20px;
    position: absolute
}

.leaflet-popup-content-wrapper {
    text-align: left;
    border-radius: 12px;
    padding: 1px
}

.leaflet-popup-content {
    min-height: 1px;
    margin: 13px 24px 13px 20px;
    font-size: 1.08333em;
    line-height: 1.3
}

.leaflet-popup-content p {
    margin: 1.3em 0
}

.leaflet-popup-tip-container {
    pointer-events: none;
    width: 40px;
    height: 20px;
    margin-top: -1px;
    margin-left: -20px;
    position: absolute;
    left: 50%;
    overflow: hidden
}

.leaflet-popup-tip {
    pointer-events: auto;
    width: 17px;
    height: 17px;
    margin: -10px auto 0;
    padding: 1px;
    transform: rotate(45deg)
}

.leaflet-popup-content-wrapper, .leaflet-popup-tip {
    color: #333;
    background: #fff;
    box-shadow: 0 3px 14px #0006
}

.leaflet-container a.leaflet-popup-close-button {
    text-align: center;
    color: #757575;
    background: 0 0;
    border: none;
    width: 24px;
    height: 24px;
    font: 16px/24px Tahoma, Verdana, sans-serif;
    text-decoration: none;
    position: absolute;
    top: 0;
    right: 0
}

.leaflet-container a.leaflet-popup-close-button:hover, .leaflet-container a.leaflet-popup-close-button:focus {
    color: #585858
}

.leaflet-popup-scrolled {
    overflow: auto
}

.leaflet-oldie .leaflet-popup-content-wrapper {
    -ms-zoom: 1
}

.leaflet-oldie .leaflet-popup-tip {
    -ms-filter: "progid:DXImageTransform.Microsoft.Matrix(M11=0.70710678, M12=0.70710678, M21=-0.70710678, M22=0.70710678)";
    filter: progid:DXImageTransform.Microsoft.Matrix(M11=.707107, M12=.707107, M21=-.707107, M22=.707107);
    width: 24px;
    margin: 0 auto
}

.leaflet-oldie .leaflet-control-zoom, .leaflet-oldie .leaflet-control-layers, .leaflet-oldie .leaflet-popup-content-wrapper, .leaflet-oldie .leaflet-popup-tip {
    border: 1px solid #999
}

.leaflet-div-icon {
    background: #fff;
    border: 1px solid #666
}

.leaflet-tooltip {
    color: #222;
    white-space: nowrap;
    -webkit-user-select: none;
    user-select: none;
    pointer-events: none;
    background-color: #fff;
    border: 1px solid #fff;
    border-radius: 3px;
    padding: 6px;
    position: absolute;
    box-shadow: 0 1px 3px #0006
}

.leaflet-tooltip.leaflet-interactive {
    cursor: pointer;
    pointer-events: auto
}

.leaflet-tooltip-top:before, .leaflet-tooltip-bottom:before, .leaflet-tooltip-left:before, .leaflet-tooltip-right:before {
    pointer-events: none;
    content: "";
    background: 0 0;
    border: 6px solid #0000;
    position: absolute
}

.leaflet-tooltip-bottom {
    margin-top: 6px
}

.leaflet-tooltip-top {
    margin-top: -6px
}

.leaflet-tooltip-bottom:before, .leaflet-tooltip-top:before {
    margin-left: -6px;
    left: 50%
}

.leaflet-tooltip-top:before {
    border-top-color: #fff;
    margin-bottom: -12px;
    bottom: 0
}

.leaflet-tooltip-bottom:before {
    border-bottom-color: #fff;
    margin-top: -12px;
    margin-left: -6px;
    top: 0
}

.leaflet-tooltip-left {
    margin-left: -6px
}

.leaflet-tooltip-right {
    margin-left: 6px
}

.leaflet-tooltip-left:before, .leaflet-tooltip-right:before {
    margin-top: -6px;
    top: 50%
}

.leaflet-tooltip-left:before {
    border-left-color: #fff;
    margin-right: -12px;
    right: 0
}

.leaflet-tooltip-right:before {
    border-right-color: #fff;
    margin-left: -12px;
    left: 0
}

@media print {
    .leaflet-control {
        -webkit-print-color-adjust: exact;
        print-color-adjust: exact
    }
}

.module-next-page {
    left: 0;
    bottom: 0;
    z-index: 99;
    width: 100%;
    height: 180px;
    display: block;
    overflow: hidden;
    position: fixed;
    -moz-transform: translateY(125px);
    -webkit-transform: translateY(125px);
    -o-transform: translateY(125px);
    -ms-transform: translateY(125px);
    transform: translateY(125px);
    -webkit-transition: -webkit-transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
    transition: transform 0.75s cubic-bezier(0.19, 1, 0.22, 1);
}

.module-next-page .page-inner {
    top: 55px;
    left: 50%;
    width: 450px;
    height: 180px;
    overflow: hidden;
    position: absolute;
    margin-left: -225px;
    z-index: 1;
    display: flex;
}

.module-next-page .page-indicator {
    top: 0;
    left: 50%;
    width: 55px;
    height: 55px;
    display: block;
    position: absolute;
    margin-left: -25.5px;
    background: #ff1717;
    border-radius: 5px 5px 0px 0px;
    -moz-border-radius: 5px 5px 0px 0px;
    -webkit-border-radius: 5px 5px 0px 0px;
    background-size: 15px;
    background-repeat: no-repeat;
    background-position: center center;
    background-image: url('../image/arrow.svg');
    z-index: 2;
}

.module-next-page-visible .module-next-page {
    -moz-transform: translateY(0);
    -webkit-transform: translateY(0);
    -o-transform: translateY(0);
    -ms-transform: translateY(0);
    transform: translateY(0);
}

.module-next-page a {
    display: flex;
    width: 150px;
    height: 100%;
    overflow: hidden;
    position: relative;
    -webkit-align-items: center;
    align-items: center;
    -webkit-justify-content: center;
    justify-content: center;
}

.item-icon {
    color: #fff;
    fill: #ffffff;
    transition: color .4s;
}
