/*
 * This is a globally available SCSS project file.
 * It contains project specific utilities (variables, mixins, functions) that don't! output CSS by default.
 * We use it to be imported in a webpack loader to avoid having to import these in each separate file.
 *
 * This file is used next to "seng-scss" which is imported globally as well and contain the default mixins/vars/functions
 */


/**
 * Asset URL builder
 *
 * @param {String} $type - Asset type, matching folder name
 * @param {String} $file - Asset file name, including extension
 *
 * @return {URL} - A `url()` function leading to the asset
 */


/*
 * Font asset helper
 * @access public
 * @param {String} $file - Asset file name, including extension
 * @return {URL} - A `url()` function leading to the font
 * @require {function} asset
 */


/*
 * Get Font weight
 *
 * @param {String} $weight - The name of the weight you need
 *
 * @return {Number} - The CSS based font weight on the name
 */


/**
 * Z-Index function
 *
 * @param {string} $list (Array) - The list to find the current z-index in
 * @param {string} $element (String) - The name of the current element, must be in the $list
 *
 * @returns {number}
 */


/**
 * Get EM size of a value based on a base size
 *
 * @param {Number} $value - The value you need the EM value from
 * @param {Number} $base - The base value where the $value is calculated upon
 *
 * @return {EM Value} - The EM value based on $value and $base
 */


/**
 * Font Face
 *
 * @param {string} $fontName - Name of the font
 * @param {string} $folderName - Subfolder inside the fonts folder
 * @param {string} $fileName - Name of the font-file
 * @param {string} $fontWeight (normal) - Font weight value
 * @param {string} $fontStyle (normal) - Font style value
 */


/**
 * Respond To (Breakpoint)
 *
 * @param {string} $name - Name of the breakpoint used in $breakpoints
 */


/**
 * Aspect ratio, create a :before pseudo element for setting an aspect ratio on an element
 *
 * @param {number} $width (1) - Percentage width
 * @param {number} $height ($width) - Percentage height
 * @param {boolean} $relative (true) - Add relative position to element
 */


/**
 * Hover Mixin for applying :hover pseudo styles
 *
 * Add your own implementation for showing hovers
 * Example using Modernizr touch check: html.no-touch &:hover { @content; }
 * Leaving it to just :hover by default. But best practice to always use the mixin
 *
 * @param $extraSelector:string (optional) = an extra selector that can have the same styles as a hover (for mobile/active state)
 */


/**
 * Offset
 *
 * @param {number} $top (0) - Top Offset
 * @param {number} $left (0) - Left Offset
 */


/**
 * Position mixin for setting absolute position values
 *
 * The mixin can have multiple arguments providing a number
 * @param {number} $top (0) - Top Position
 * @param {number} $right ($top) - Right Position
 * @param {number} $bottom ($top) - Bottom Position
 * @param {number} $left ($right) - Left Position
 *
 * Or a map of multiple positions
 * @param {map} $args... - A map containing multiple positions (top: 1px, left: 1px)
 */


/**
 * Set pseudo elements styles that are used mostly (content, display, position)
 *
 * @param {display} $display (block)
 * @param {position} $position (absolute)
 * @param {string} $content ('')
 */


/**
 * Size an Element
 *
 * @param {number} $width (1em) - Width of the element
 * @param {number} $height ($width) - Height of the element
 */

.n01-main-navigation {
    height: 72px;
    color: #171717;
}

.n01-main-navigation__nav {
    height: 72px;
    width: 100vw;
    background-color: #fff;
    border-bottom: 1px solid #f3f4f8;
    position: fixed;
    top: 0;
    left: 0;
    z-index: 4;
}

.n01-main-navigation .container,
.n01-main-navigation .row {
    height: 100%;
}

.n01-main-navigation .col-12 {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    margin-bottom: 0;
}

.n01-main-navigation .logo {
    height: 24px;
    width: 118px;
}

.n01-main-navigation .menu-items {
    top: 71px;
    right: 0;
    bottom: 0;
    left: 0;
    position: fixed;
    white-space: nowrap;
    opacity: 0;
    pointer-events: none;
    -webkit-transition: opacity 0.3s ease;
    transition: opacity 0.3s ease;
    background-color: #fff;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 56px;
    padding: 0 24px;
    border-bottom: 1px solid #f3f4f8;
    overflow-x: scroll;
    overflow-y: hidden;
}

.n01-main-navigation .menu-items::-webkit-scrollbar {
    -ms-overflow-style: none;
    display: none;
}

.n01-main-navigation .menu-items.is-active {
    opacity: 1;
    pointer-events: all;
    z-index: 5;
}

.n01-main-navigation .menu-items.is-active .menu-items__item.is-active .menu-items__content {
    pointer-events: all;
}

.n01-main-navigation .menu-items .trigger {
    height: 100%;
    white-space: nowrap;
    color: #231815;
}

.n01-main-navigation .menu-items__item {
    height: 56px;
    padding: 0 12px;
}

@media (min-width:1024px) {
    html[lang="en"] .n01-main-navigation .menu-items__content-text-block-item:last-child .ul-list li a {
        min-width: 120px;
    }
}

@media (min-width:1900px) {
    .n01-main-navigation .menu-items__item:first-child .menu-items__content .menu-items__content-text-block {
        margin-left: 15vw;
    }
    html[lang="en"] .n01-main-navigation .menu-items__item:first-child .menu-items__content .menu-items__content-text-block {
        margin-left: 19.5vw;
    }
}

@media (min-width:1900px) and (-ms-high-contrast: active),
(-ms-high-contrast: none) {
    .n01-main-navigation .menu-items__item:first-child .menu-items__content .menu-items__content-text-block {
        margin-left: 0vw;
    }
}

.n01-main-navigation .menu-items__item.is-active .menu-items__content {
    /* opacity: 1;
    visibility: visible; */
    display: block;
}

.n01-main-navigation .menu-items__item.is-active .trigger {
    position: relative;
    color: #E50012;
}

.n01-main-navigation .menu-items__item.is-active .trigger::after {
    content: "";
    display: "";
    position: absolute;
    height: 1px;
    width: 100%;
    left: 0;
    bottom: 1px;
    background-color: #d9261c;
}

.n01-main-navigation .menu-items__content {
    /* top: 127px; */
    right: 0px;
    /* bottom: 0; */
    left: 0;
    position: fixed;
    pointer-events: none;
    padding: 8px 24px 0;
    overflow-y: hidden;
    overflow-x: hidden;
    /* opacity: 0; */
    /* visibility: hidden; */
    display: none;
    background-color: #fff;
    width: 100%;
    max-width: 100vw;
    z-index: 5;
}

.n01-main-navigation .menu-items__content-image-block {
    position: relative;
    min-height: 100%;
    padding: 40px 0 80px;
}

.n01-main-navigation .menu-items__content-image-block::before {
    content: "";
    display: "";
    position: absolute;
    height: calc(100% - 20px);
    width: 100vw;
    left: -24px;
    bottom: 0;
    background: url("https://www.hisilicon.com/component/block/n01-main-navigation/images/background-shape-small.svg") left top no-repeat;
    background-size: cover;
}

.n01-main-navigation .menu-items__content-image-block-items {
    margin: 0 -8px;
}

.n01-main-navigation .menu-items__content-image-block>.heading-04 {
    position: relative;
    text-align: center;
    max-width: 210px;
    margin: 0 auto 32px;
}

.n01-main-navigation .menu-items__content-image-block-card-wrapper {
    padding: 8px 0;
    width: 100%;
}

.n01-main-navigation .menu-items__content-image-block-card-wrapper picture {
    position: relative;
    padding-top: 0;
}

.n01-main-navigation .menu-items__content-image-block-card-wrapper picture::before {
    content: '';
    display: block;
    padding-top: 65.625%;
}

.n01-main-navigation .menu-items__content-image-block-card-wrapper .card__copy .copy-01 {
    padding-top: 8px;
}

.n01-main-navigation .menu-items__content-image-block--has-heading::before {
    height: calc(100% - 120px);
}

.n01-main-navigation .menu-items__content-image-block--has-heading picture {
    position: relative;
    padding-top: 0;
}

.n01-main-navigation .menu-items__content-image-block--has-heading picture::before {
    content: '';
    display: block;
    padding-top: 75.60976%;
}

.n01-main-navigation .menu-items__content-text-block {
    position: relative;
    padding-bottom: 120px;
    min-height: 100%;
    z-index: 8;
    -webkit-transform: translateZ(1px);
    -moz-transform: translateZ(1px);
    -o-transform: translateZ(1px);
    transform: translateZ(1px);
}

.n01-main-navigation .menu-items__content-text-block::after {
    content: "";
    display: "";
    position: absolute;
    height: 80px;
    width: 100vw;
    left: -24px;
    bottom: 0;
    background: url("https://www.hisilicon.com/component/block/n01-main-navigation/images/background-shape-text-small.svg") left top no-repeat;
    background-size: cover;
}

.n01-main-navigation .menu-items__content-text-block-item:first-child {
    padding-top: 20px;
}

.n01-main-navigation .menu-items__content-text-block-item.is-active .toggle-icon::after {
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

.n01-main-navigation .menu-items__content-text-links {
    height: 0;
    width: 100%;
    overflow: hidden;
}

.n01-main-navigation .menu-items__content-text-links-anchor {
    display: block;
    padding: 12px 0;
    color: #737070;
    -webkit-transition: 0.3s color ease;
    transition: 0.3s color ease;
}

.n01-main-navigation .menu-items__content-text-links-anchor:hover {
    color: #231815;
}


/*.n01-main-navigation .menu-items__content-text-links-item  {
	padding-bottom: 15px;
}*/


/*.n01-main-navigation .menu-items__content-text-links-item:last-child .menu-items__content-text-links-anchor {
	padding-bottom: 24px;
}*/

.n01-main-navigation .close-button {
    display: none;
}

.n01-main-navigation .toggle-icon {
    height: 16px;
    width: 16px;
    position: absolute;
    top: calc(50% - 2px);
    right: 0;
}

.n01-main-navigation .toggle-icon::before {
    content: "";
    display: "";
    position: absolute;
    height: 2px;
    width: 16px;
    -webkit-transition: background-color 0.3s ease;
    transition: background-color 0.3s ease;
    background-color: #858587;
}

.n01-main-navigation .toggle-icon::after {
    content: "";
    display: "";
    position: absolute;
    height: 2px;
    width: 16px;
    -webkit-transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: background-color 0.3s ease, -webkit-transform 0.3s ease;
    transition: transform 0.3s ease, background-color 0.3s ease;
    transition: transform 0.3s ease, background-color 0.3s ease, -webkit-transform 0.3s ease;
    -webkit-transform: rotate(90deg);
    transform: rotate(90deg);
    background-color: #858587;
}

.n01-main-navigation .submenu-trigger {
    position: relative;
    width: 100%;
    padding: 20px 0 28px;
    text-align: left;
    border-bottom: 1px solid #f3f4f8;
}

.n01-main-navigation .menu-buttons {
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    height: 18px;
}

.n01-main-navigation .menu-buttons>button,
.n01-main-navigation .menu-buttons>a {
    height: 18px;
    width: 18px;
    position: relative;
    display: inline-block;
    color: #858587;
    font-size: 16px;
    margin-left: 25px;
    -webkit-transition: color 0.3s ease;
    transition: color 0.3s ease;
}

.n01-main-navigation .menu-buttons>button:hover,
.n01-main-navigation .menu-buttons>a:hover {
    color: #d9261c;
}

.n01-main-navigation [class*='font-ico']::before {
    font-weight: 900;
}

@-webkit-keyframes topLineAnimation {
    0% {
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px);
    }
    50% {
        -webkit-transform: translateY(-1px);
        transform: translateY(-1px);
    }
    100% {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

@keyframes topLineAnimation {
    0% {
        -webkit-transform: translateY(-4px);
        transform: translateY(-4px);
    }
    50% {
        -webkit-transform: translateY(-1px);
        transform: translateY(-1px);
    }
    100% {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
}

@-webkit-keyframes bottomLineAnimation {
    0% {
        -webkit-transform: translateY(2px);
        transform: translateY(2px);
    }
    50% {
        -webkit-transform: translateY(-1px);
        transform: translateY(-1px);
    }
    100% {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

@keyframes bottomLineAnimation {
    0% {
        -webkit-transform: translateY(2px);
        transform: translateY(2px);
    }
    50% {
        -webkit-transform: translateY(-1px);
        transform: translateY(-1px);
    }
    100% {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
}

.n01-main-navigation .hamburger-toggler::before {
    content: "";
    display: "";
    position: absolute;
    height: 2px;
    width: 16px;
    top: 50%;
    left: 0;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    -webkit-transform: translateY(-4px);
    transform: translateY(-4px);
    background-color: #858587;
    border-radius: 1px;
}

.n01-main-navigation .hamburger-toggler::after {
    content: "";
    display: "";
    position: absolute;
    height: 2px;
    width: 16px;
    top: 50%;
    left: 0;
    -webkit-transition: -webkit-transform 0.3s ease;
    transition: -webkit-transform 0.3s ease;
    transition: transform 0.3s ease;
    transition: transform 0.3s ease, -webkit-transform 0.3s ease;
    -webkit-transform: translateY(2px);
    transform: translateY(2px);
    background-color: #858587;
    border-radius: 1px;
}

.n01-main-navigation .hamburger-toggler.is-active::before {
    -webkit-animation-name: topLineAnimation;
    animation-name: topLineAnimation;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

.n01-main-navigation .hamburger-toggler.is-active::after {
    -webkit-animation-name: bottomLineAnimation;
    animation-name: bottomLineAnimation;
    -webkit-animation-duration: 0.5s;
    animation-duration: 0.5s;
    -webkit-transition: none;
    transition: none;
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

@media (min-width: 480px) {
    .n01-main-navigation .menu-items {
        padding-left: 2%;
        padding-right: 2%;
    }
    .n01-main-navigation .menu-items__content {
        padding-left: 3.495%;
        padding-right: 3.495%;
    }
    .n01-main-navigation .menu-items__content-image-block::before {
        left: calc(-1vw * 3.495);
        background: url("https://www.hisilicon.com/component/block/n01-main-navigation/images/background-shape.svg") left top no-repeat;
        background-size: cover;
    }
    .n01-main-navigation .menu-items__content-text-block::after {
        left: calc(-1vw * 3.495);
        background: url("https://www.hisilicon.com/component/block/n01-main-navigation/images/background-shape.svg") left top no-repeat;
        background-size: cover;
    }
}

@media (min-width: 768px) {
    .n01-main-navigation .menu-items {
        overflow-x: hidden;
    }
    .n01-main-navigation .menu-items__content-image-block>.heading-04 {
        max-width: none;
        margin-bottom: 80px;
    }
    .n01-main-navigation .menu-items__content-image-block--has-heading::before {
        height: calc(100% - 140px);
    }
    .n01-main-navigation .menu-items__content-image-block-items {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-flex-wrap: wrap;
        -ms-flex-wrap: wrap;
        flex-wrap: wrap;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper {
        min-width: calc(50% - 16px);
        max-width: calc(50% - 16px);
        padding: 16px 0;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(even) {
        -webkit-transform: translateY(32px);
        transform: translateY(32px);
    }
}

@media (min-width: 1024px) {
    .n01-main-navigation {
        height: 101px;
    }
    .n01-main-navigation__nav {
        height: 101px;
    }
    .n01-main-navigation .container>.row {
        padding-left: 3.75%;
    }
    .n01-main-navigation .col-12 {
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .n01-main-navigation .logo {
        height: 32px;
        width: 158px;
        position: absolute;
        left: calc(1vw * 0.625);
        top: 50%;
        transform: translateY(-50%);
    }
    .n01-main-navigation .menu-items {
        height: 100px;
        position: static;
        opacity: 1;
        pointer-events: all;
        background-color: transparent;
        border: 0;
    }
    .n01-main-navigation .menu-items__content {
        /* top: 101px; */
        padding: 0px 5.155% 0 3.495%;
        -webkit-transition: opacity 0.3s ease, -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        transition: opacity 0.3s ease, -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        transition: opacity 0.3s ease, transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        transition: opacity 0.3s ease, transform 0.6s cubic-bezier(0.19, 1, 0.22, 1), -webkit-transform 0.6s cubic-bezier(0.19, 1, 0.22, 1);
        -webkit-transform: translateY(-30px);
        transform: translateY(-30px);
    }
    .n01-main-navigation .menu-items__content-image-block::before {
        -webkit-transform: translateY(60px);
        transform: translateY(60px);
        -webkit-transition: -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s, -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper picture {
        position: relative;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper picture::before {
        content: '';
        display: block;
        padding-top: 148.14815%;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(even) {
        -webkit-transform: translateY(80px);
        transform: translateY(80px);
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper.ie-fixable-size {
        width: 25%;
        max-width: 25%;
    }
    .n01-main-navigation .menu-items__content-image-block--has-heading .menu-items__content-image-block-card-wrapper picture {
        position: relative;
    }
    .n01-main-navigation .menu-items__content-image-block--has-heading .menu-items__content-image-block-card-wrapper picture::before {
        content: '';
        display: block;
        padding-top: 132.43243%;
    }
    .n01-main-navigation .menu-items__content-text-block .menu-items__content-text-block-item {
        padding-right: 79px;
    }
    .n01-main-navigation .menu-items__content-text-block>div:last-child {
        padding-right: 0px !important;
    }
    .n01-main-navigation .menu-items__content-text-block .menu-items__content-text-block-item#btn+div+div {
        margin-left: 51.4px;
        margin-top: 12px;
    }
    .n01-main-navigation #haisitalk {
        padding-right: 0;
        margin-left: 51.4px;
    }
}

@media (min-width: 1024px) and (max-height: 900px) {
    .n01-main-navigation .menu-items__content-image-block--has-heading .menu-items__content-image-block-card-wrapper picture {
        position: relative;
    }
    .n01-main-navigation .menu-items__content-image-block--has-heading .menu-items__content-image-block-card-wrapper picture::before {
        content: '';
        display: block;
        padding-top: 100%;
    }
}

@media (min-width: 1024px) {
    .n01-main-navigation .menu-items__content-text-block {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        padding-bottom: calc(29vh + 35px);
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
    }
    .n01-main-navigation .menu-items__content-text-block::after {
        height: 29vh;
        -webkit-transform: translateY(60px);
        transform: translateY(60px);
        -webkit-transition: -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
        transition: transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s, -webkit-transform cubic-bezier(0.19, 1, 0.22, 1) 0.6s;
    }
    .n01-main-navigation .menu-items__content-text-block-item:first-child {
        padding-top: 0;
    }
    .n01-main-navigation .menu-items__content-text-block-item:last-child {
        padding-bottom: 0;
    }
    .n01-main-navigation .menu-items__content-text-links {
        height: auto;
        overflow: visible;
    }
    .n01-main-navigation .menu-items__content-text-links-anchor {
        padding: 4px 0;
        font-size: 18px;
    }
    .n01-main-navigation .menu-items__content .submenu-trigger {
        padding-top: 0;
        padding-bottom: 10px;
        border-bottom: 0;
        font-size: 18px;
        line-height: 34pt;
    }
    .n01-main-navigation .menu-items__content .submenu-trigger a {
        color: #231815
    }
    .n01-main-navigation .menu-items__item {
        height: 100px;
        padding: 0 40px;
    }
    .n01-main-navigation .menu-items__item.is-active .menu-items__content {
        pointer-events: all;
        -webkit-transform: translateY(0);
        transform: translateY(0);
        min-height: 220px;
    }
    .n01-main-navigation .menu-items__item.is-active .menu-items__content-text-block::after {
        -webkit-transition-delay: 0.15s;
        transition-delay: 0.15s;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
    .n01-main-navigation .menu-items__item.is-active .menu-items__content-image-block::before {
        -webkit-transform: translateY(0);
        transform: translateY(0);
        -webkit-transition-delay: 0.15s;
        transition-delay: 0.15s;
    }
    .n01-main-navigation .close-button {
        position: absolute;
        display: block;
        top: 16px;
        right: calc(.75vw * (3.495 + 0.625));
        color: #858587;
        z-index: 1;
    }
}

@media (min-width: 1024px) and (max-height: 900px) {
    .n01-main-navigation .close-button {
        top: 10px;
    }
}

@media (min-width:1024px) and (max-width:1300px) {
    .n01-main-navigation .menu-items__item {
        padding: 0 35px;
    }
}

@media (min-width: 1024px) {
    .n01-main-navigation .toggle-icon {
        display: none;
    }
    .n01-main-navigation .menu-buttons {
        height: 24px;
        position: absolute;
        right: calc(1vw * 0.625);
    }
    .n01-main-navigation .menu-buttons>button,
    .n01-main-navigation .menu-buttons>a {
        height: 24px;
        width: 24px;
        font-size: 24px;
        margin: 0;
    }
    .n01-main-navigation .menu-buttons .hamburger-toggler {
        display: none;
    }
}

@media (min-width: 1280px) {
    .n01-main-navigation .menu-items__content-image-block {
        padding-top: 0;
    }
    .n01-main-navigation .menu-items__content-image-block::before {
        height: 55vh;
    }
}

@media (min-width: 1280px) and (max-height: 900px) {
    .n01-main-navigation .menu-items__content-image-block::before {
        height: 440px;
    }
}

@media (min-width: 1280px) {
    .n01-main-navigation .menu-items__content-image-block>.heading-04 {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
    }
    .n01-main-navigation .menu-items__content-image-block-items {
        -webkit-flex-wrap: nowrap;
        -ms-flex-wrap: nowrap;
        flex-wrap: nowrap;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        max-width: 1250px;
        margin: 0 auto;
        padding-top: 48px;
        padding-bottom: 80px;
    }
    .n01-main-navigation .menu-items__content-image-block--has-heading::before {
        height: 45vh;
    }
}

@media (min-width: 1280px) and (max-height: 900px) {
    .n01-main-navigation .menu-items__content-image-block--has-heading::before {
        height: 380px;
    }
}

@media (min-width: 1280px) {
    .n01-main-navigation .menu-items__content-image-block--has-heading .menu-items__content-image-block-items {
        padding-top: 120px;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper {
        min-width: auto;
        max-width: 397px;
        padding: 12px;
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(1) {
        -webkit-transform: translateY(8px);
        transform: translateY(8px);
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(2) {
        -webkit-transform: translateY(120px);
        transform: translateY(120px);
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(3) {
        -webkit-transform: translateY(-32px);
        transform: translateY(-32px);
    }
    .n01-main-navigation .menu-items__content-image-block-card-wrapper:nth-child(4) {
        -webkit-transform: translateY(48px);
        transform: translateY(48px);
    }
    .n01-main-navigation .menu-items__item:last-child .menu-items__content-image-block-card-wrapper:nth-child(1) {
        -webkit-transform: translateY(32px);
        transform: translateY(32px);
    }
    .n01-main-navigation .menu-items__item:last-child .menu-items__content-image-block-card-wrapper:nth-child(2) {
        -webkit-transform: translateY(-16px);
        transform: translateY(-16px);
    }
    .n01-main-navigation .menu-items__item:last-child .menu-items__content-image-block-card-wrapper:nth-child(3) {
        -webkit-transform: translateY(32px);
        transform: translateY(32px);
    }
    .n01-main-navigation .menu-items__item:last-child .menu-items__content-image-block-card-wrapper:nth-child(4) {
        -webkit-transform: translateY(-80px);
        transform: translateY(-80px);
    }
}

@media (min-width: 1920px) {
    .n01-main-navigation .close-button {
        right: calc((15.2px * (3.495 + 0.625)) + (50vw - 960px));
    }
}

.n01-main-navigation img {
    max-width: 200% !important;
}

.js-sub-menu-content .ul-list {
    display: flex;
}

.n01-main-navigation #haisitalk {
    position: relative !important;
}

#haisitalk {
    margin-top: 12px;
}

#haisitalk img {
    width: 18vw;
}


/* #haisitalk p{
	color: #fff!important;
} */

#haisitalk .title {
    position: absolute;
    top: 1vw;
    left: 7vw;
}

#haisitalk .title p {
    font-size: 1.67vw;
    color: #fff;
}

#haisitalk .btn {
    width: 10vw;
    height: 2vw;
    background-color: rgba(255, 255, 255, 0.5);
    position: absolute;
    top: 4.2vw;
    left: 4.6vw;
    border-radius: .4vw;
}

#haisitalk .btn:hover {
    background-color: #bd1e0f;
}

#haisitalk .btn p {
    font-size: 0.83vw;
    text-align: center;
    line-height: 2vw;
    color: #fff;
}

#haisitalk .text {
    position: absolute;
    bottom: 10px;
    left: 0;
    font-size: 0.9375vw;
    width: 100%;
    height: auto;
    letter-spacing: -0.32em;
    word-break: break-all;
    padding: 0 11px;
    white-space: normal;
}

#haisitalk .text .dr p {
    border-bottom: solid 1px;
}

#haisitalk .text .dr a {
    color: #fff;
}

#haisitalk .text .dr a:hover {
    color: #D9261C;
    font-weight: bold;
}

#haisitalk .text .dr {
    font-size: 1vw;
    letter-spacing: normal;
    display: inline-block;
    margin: 10px 15px;
}

@media (max-width:1845px) {
    #haisitalk .text .dr {
        font-size: .8vw;
    }
}

@media(min-width:1024px) and (max-width:1470px) {
    #haisitalk .text .dr {
        margin: 10px 12px;
    }
}

@media (min-width:1024px) and (max-width:1340px) {
    #haisitalk .text .dr {
        margin: 5px 7px;
    }
    #haisitalk img {
        height: 100%;
    }
}

@media (max-width: 640px),
(max-aspect-ratio: 1/1) and (max-width: 1000px) {
    .n01-main-navigation #haisitalk {
        margin-top: 4vw;
    }
    #haisitalk img {
        max-width: 100%;
        width: 100%;
    }
    #haisitalk .title {
        top: 5vw;
        left: 32vw;
    }
    #haisitalk .title p {
        font-size: 8.533vw;
    }
    #haisitalk .btn {
        top: 20vw;
        left: 20vw;
        width: 48.8vw;
        height: 9.6vw;
        border-radius: 2vw;
    }
    #haisitalk .btn p {
        font-size: 4.26vw;
        line-height: 9.6vw;
    }
    /*#haisitalk .text {
		top: 34vw;
		left: 7vw;
		width: 74vw;
		height: 16vw;
		font-size: 4.8vw;
	}*/
    #haisitalk .text .dr {
        font-size: 4vw;
    }
}

@media screen and (width:768px) {
    #haisitalk .title {
        left: 35vw;
    }
    #haisitalk .btn {
        top: 20vw;
        left: 24vw;
    }
    #haisitalk .text {
        top: 35vw;
        left: 11vw;
        height: 17vw;
    }
}

@media screen and (min-width:1024px) and (max-width:1366px) {
    #haisitalk img {
        width: 20vw;
    }
    #haisitalk .btn {
        width: auto;
    }
    /*#haisitalk .title {
		top: 1.4vw;
		left: 8vw;
	}

	#haisitalk .btn {
		top: 4.2vw;
		left: 5.6vw;
	}

	#haisitalk .text {
		top: 7.2vw;
		left: 3.4vw;
		height: 3.6vw;
	}*/
}

@media (max-width:767px) {
    #haisitalk .text .dr {
        margin: 10px 10px;
    }
    /* 20231229 开始 */
    .header-mask {
        position: fixed;
        width: 100%;
        overflow: inherit !important;
        overflow-y: scroll !important;
    }
    /* .header-mask::before {
        background-color: #fff;
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 3;
    } */
    .n01-main-navigation {
        position: relative;
        z-index: 3;
    }
    /* 20231229 结束 */
}

@media (min-width: 1024px) {
    .header-mask {
        position: fixed;
        width: 100%;
        overflow: inherit !important;
        overflow-y: scroll !important;
    }
    .header-mask::before {
        background-color: rgba(0, 0, 0, 0.3);
        content: "";
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        z-index: 3;
    }
    .n01-main-navigation {
        position: relative;
        z-index: 3;
    }
}