/*!
 * jquery-drawer v3.2.1
 * Flexible drawer menu using jQuery, iScroll and CSS.
 * http://git.blivesta.com/drawer
 * License : MIT
 * Author : blivesta <design@blivesta.com> (http://blivesta.com/)
 */
/*!------------------------------------*\
    Base
\*!------------------------------------*/
.drawer-nav {
    position: fixed;
    top: 0;
    z-index: 101;
    overflow: hidden;
    width: 16.25rem;
    height: 100%;
    background-color: #fff;
    color: #222;
}

.drawer-brand {
    display: block;
    padding-right: 0.75rem;
    padding-left: 0.75rem;
    color: #222;
    text-decoration: none;
    font-weight: 600;
    font-size: 1.5rem;
    line-height: 3.75rem;
}

.drawer-menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.drawer-menu-item {
    display: block;
    padding: 0.75rem;
    color: #222;
    text-decoration: none;
    font-size: 1rem;
}

.drawer-menu-item:hover {
    background-color: transparent;
    color: #555;
    text-decoration: underline;
}

/*! overlay */
.drawer-overlay {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 101;
    visibility: hidden;
    width: 100%;
    height: 100%;
    background-color: rgba(0, 0, 0, 0.5);
    opacity: 0;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
}

.drawer-open .drawer-overlay {
    visibility: visible;
    opacity: 1;
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.3s ease-out;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

/*!------------------------------------*\
    Top
\*!------------------------------------*/
.drawer--top .drawer-nav {
    top: -100%;
    left: 0;
    max-height: 100%;
    width: 100%;
    height: auto;
    -webkit-transition: top 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
    transition: top 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.6s cubic-bezier(0.19, 1, 0.22, 1);
}

.drawer--top.drawer-open .drawer-nav {
    top: 0;
}

.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
    right: 0;
}

/*!------------------------------------*\
    Left
\*!------------------------------------*/
.drawer--left .drawer-nav {
    left: -16.25rem;
    -webkit-transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 0.3s ease-out;
    transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.3s ease-out;
}

.drawer--left.drawer-open .drawer-nav,
.drawer--left .drawer-hamburger,
.drawer--left.drawer-open .drawer-navbar .drawer-hamburger {
    left: 0;
}

.drawer--left.drawer-open .drawer-hamburger {
    left: 16.25rem;
}

/*!------------------------------------*\
    Right
\*!------------------------------------*/
.drawer--right .drawer-nav {
    right: -16.25rem;
    -webkit-transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 0.3s ease-out;
    transition: right 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.3s ease-out;
}

.drawer--right.drawer-open .drawer-nav,
.drawer--right .drawer-hamburger,
.drawer--right.drawer-open .drawer-navbar .drawer-hamburger {
    right: 0;
}

.drawer--right.drawer-open .drawer-hamburger {
    right: 16.25rem;
}

/*!------------------------------------*\
    Hamburger
\*!------------------------------------*/
.drawer-hamburger {
    position: fixed;
    top: 0;
    z-index: 104;
    display: block;
    -webkit-box-sizing: content-box;
    box-sizing: content-box;
    padding: 0;
    padding: 18px 10px 29px;
    width: 26px;
    outline: 0;
    border: 0;
    background-color: transparent;
    -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.3s ease-out;
    -webkit-transform: translate3d(0, 0, 0);
    transform: translate3d(0, 0, 0);
}

.drawer-hamburger:hover {
    background-color: transparent;
    cursor: pointer;
}

.drawer-hamburger-icon {
    position: relative;
    display: block;
    margin-top: 10px;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    display: block;
    width: 100%;
    height: 3px;
    background-color: #4c4c4c;
    -webkit-transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    -webkit-transition: all 0.3s ease-out;
    transition: all 0.5s cubic-bezier(0.19, 1, 0.22, 1);
    transition: all 0.3s ease-out;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    position: absolute;
    top: -9px;
    left: 0;
    content: '';
    -webkit-transform-origin: center center;
    transform-origin: center center;
}

.drawer-hamburger-icon:after {
    top: 9px;
}

.drawer-open .drawer-hamburger {
    width: 20px;
}

.drawer-open .drawer-hamburger-icon {
    background-color: transparent;
}

.drawer-open .drawer-hamburger-icon:before,
.drawer-open .drawer-hamburger-icon:after {
    top: 0;
    width: 20px;
    height: 2px;
    background: #444;
}

.drawer-open .drawer-hamburger-icon:before {
    -webkit-transform: rotate(-45deg);
    transform: rotate(-45deg);
}

.drawer-open .drawer-hamburger-icon:after {
    -webkit-transform: rotate(45deg);
    transform: rotate(45deg);
}

/*!------------------------------------*\
    accessibility
\*!------------------------------------*/
/*!
 * Only display content to screen readers
 * See: http://a11yproject.com/posts/how-to-hide-content
 */
.sr-only {
    position: absolute;
    overflow: hidden;
    clip: rect(0, 0, 0, 0);
    margin: -1px;
    padding: 0;
    width: 1px;
    height: 1px;
    border: 0;
}

/*!
 * Use in conjunction with .sr-only to only display content when it's focused.
 * Useful for "Skip to main content" links; see http://www.w3.org/TR/2013/NOTE-WCAG20-TECHS-20130905/G1
 * Credit: HTML5 Boilerplate
 */
.sr-only-focusable:active,
.sr-only-focusable:focus {
    position: static;
    overflow: visible;
    clip: auto;
    margin: 0;
    width: auto;
    height: auto;
}

/*!------------------------------------*\
    Sidebar
\*!------------------------------------*/
.drawer--sidebar {
    background-color: #fff;
}

.drawer--sidebar .drawer-contents {
    background-color: #fff;
}

@media (min-width: 64em) {
    .drawer--sidebar .drawer-hamburger {
        display: none;
        visibility: hidden;
    }

    .drawer--sidebar .drawer-nav {
        position: fixed;
        display: block;
        width: 12.5rem;
        height: 100%;
        -webkit-transform: none;
        transform: none;
    }

    /*! Left */
    .drawer--sidebar.drawer--left .drawer-nav {
        left: 0;
        border-right: 1px solid #ddd;
    }

    .drawer--sidebar.drawer--left .drawer-contents {
        margin-left: 12.5rem;
    }

    /*! Right */
    .drawer--sidebar.drawer--right .drawer-nav {
        right: 0;
        border-left: 1px solid #ddd;
    }

    .drawer--sidebar.drawer--right .drawer-contents {
        margin-right: 12.5rem;
    }

    /*! container */
    .drawer--sidebar .drawer-container {
        max-width: 48rem;
    }
}

@media (min-width: 75em) {
    .drawer--sidebar .drawer-nav {
        width: 16.25rem;
    }

    .drawer--sidebar.drawer--left .drawer-contents {
        margin-left: 16.25rem;
    }

    .drawer--sidebar.drawer--right .drawer-contents {
        margin-right: 16.25rem;
    }

    /*! container */
    .drawer--sidebar .drawer-container {
        max-width: 60rem;
    }
}

/*!------------------------------------*\
    Navbar
\*!------------------------------------*/
.drawer--navbarTopGutter {
    padding-top: 3.75rem;
}

.drawer-navbar .drawer-navbar-header {
    border-bottom: 1px solid #ddd;
    background-color: #fff;
}

.drawer-navbar {
    top: 0;
    z-index: 102;
    width: 100%;
}

/*! .drawer-navbar modifier */
.drawer-navbar--fixed {
    position: fixed;
}

.drawer-navbar-header {
    position: relative;
    z-index: 102;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    padding: 0 0.75rem;
    width: 100%;
    height: 3.75rem;
    text-align: center;
}

.drawer-navbar .drawer-brand {
    display: inline-block;
    padding-top: 0;
    padding-bottom: 0;
    text-decoration: none;
    line-height: 3.75rem;
}

.drawer-navbar .drawer-brand:hover {
    background-color: transparent;
}

.drawer-navbar .drawer-nav {
    padding-top: 3.75rem;
}

.drawer-navbar .drawer-menu {
    padding-bottom: 7.5rem;
}

@media (min-width: 64em) {
    .drawer-navbar {
        height: 3.75rem;
        border-bottom: 1px solid #ddd;
        background-color: #fff;
    }

    .drawer-navbar .drawer-navbar-header {
        position: relative;
        display: block;
        float: left;
        padding: 0;
        width: auto;
        border: 0;
    }

    .drawer-navbar .drawer-menu--right {
        float: right;
    }

    .drawer-navbar .drawer-menu li {
        float: left;
    }

    .drawer-navbar .drawer-menu-item {
        padding-top: 0;
        padding-bottom: 0;
        line-height: 3.75rem;
    }

    .drawer-navbar .drawer-hamburger {
        display: none;
    }

    .drawer-navbar .drawer-nav {
        position: relative;
        left: 0;
        overflow: visible;
        padding-top: 0;
        width: auto;
        height: 3.75rem;
        -webkit-transform: translate3d(0, 0, 0);
        transform: translate3d(0, 0, 0);
    }

    .drawer-navbar .drawer-menu {
        padding: 0;
    }

    /*! dropdown */
    .drawer-navbar .drawer-dropdown-menu {
        position: absolute;
        width: 16.25rem;
        border: 1px solid #ddd;
    }

    .drawer-navbar .drawer-dropdown-menu-item {
        padding-left: 0.75rem;
    }
}

/*!------------------------------------*\
    Dropdown
\*!------------------------------------*/
.drawer-dropdown-menu {
    display: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    margin: 0;
    padding: 0;
    width: 100%;
    background-color: #fff;
}

.drawer-dropdown-menu > li {
    width: 100%;
    list-style: none;
}

.drawer-dropdown-menu-item {
    display: block;
    padding: 0;
    padding-right: 0.75rem;
    padding-left: 1.5rem;
    color: #222;
    text-decoration: none;
    line-height: 3.75rem;
}

.drawer-dropdown-menu-item:hover {
    background-color: transparent;
    color: #555;
    text-decoration: underline;
}

/*! open */
.drawer-dropdown.open > .drawer-dropdown-menu {
    display: block;
}

/*! drawer-caret */
.drawer-dropdown .drawer-caret {
    display: inline-block;
    margin-left: 4px;
    width: 0;
    height: 0;
    border-top: 4px solid;
    border-right: 4px solid transparent;
    border-left: 4px solid transparent;
    vertical-align: middle;
    -webkit-transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
    transition: opacity 0.2s ease, -webkit-transform 0.2s ease;
    transition: transform 0.2s ease, opacity 0.2s ease;
    transition: transform 0.2s ease, opacity 0.2s ease, -webkit-transform 0.2s ease;
    -webkit-transform: rotate(0deg);
    transform: rotate(0deg);
}

/*! open */
.drawer-dropdown.open .drawer-caret {
    -webkit-transform: rotate(180deg);
    transform: rotate(180deg);
}

/*!------------------------------------*\
    Container
\*!------------------------------------*/
.drawer-container {
    margin-right: auto;
    margin-left: auto;
}

@media (min-width: 64em) {
    .drawer-container {
        max-width: 60rem;
    }
}

@media (min-width: 75em) {
    .drawer-container {
        max-width: 70rem;
    }
}

.drawer-nav {
    z-index: 10001;
    background-color: transparent;
}

.drawer-menu {
    margin: 0;
    padding: 0;
    list-style: none;
}

.drawer-menu-item {
    display: block;
    padding: 0.75rem;
    color: #222;
    text-decoration: none;
    font-size: 1rem;
}

.drawer-menu-item:hover {
    color: #555;
}

.drawer-toggle {
    z-index: 998;
}

.drawer-overlay {
    background: rgba(0, 0, 0, 0.4);
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.drawer--top .drawer-nav {
    top: 0;
    visibility: hidden;
    opacity: 0;
    -webkit-transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
    transition: opacity 0.3s ease-out, visibility 0.3s ease-out;
}

@media screen and (max-width: 1023px) {
    .drawer--top .drawer-nav {
        top: 0;
        width: 100%;
        -webkit-transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
        transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
    }
}

.drawer--top.drawer-open .drawer-nav {
    top: 0;
    visibility: visible;
    opacity: 1;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.drawer--top .drawer-hamburger,
.drawer--top.drawer-open .drawer-hamburger {
    right: 0;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    width: 1.25em;
    height: 0.125em;
}

.drawer-hamburger {
    margin: 0;
    padding: 0;
    border-radius: 0;
    -webkit-transition: background 0s ease;
    transition: background 0s ease;

    -ms-border-radius: 0;
}

@media screen and (max-width: 1023px) {
    .drawer--top .drawer-hamburger {
        right: 0;
    }
}

.drawer-open .drawer-hamburger {
    background: transparent;
}

.drawer-hamburger-icon,
.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
}

.drawer-hamburger-icon:before,
.drawer-hamburger-icon:after {
    background: #3088ce;
}

.drawer-hamburger-icon {
    margin: 0 auto;
    background: transparent;
}

.drawer-hamburger-icon:before {
    top: -0.1875em;
}

.drawer-hamburger-icon:after {
    top: 0.1875em;
}

@media screen and (max-width: 1023px) {
    .drawer--top.drawer-open .drawer-hamburger {
        right: 0;
    }
}

.drawer--top.drawer-open .drawer-hamburger-icon {
    width: 2em;
    height: 0.0625em;
}

@media screen and (max-width: 1023px) {
    .drawer--top.drawer-open .drawer-hamburger-icon {
        width: 1.25em;
        height: 0.125em;
    }
}

.drawer--top.drawer-open .drawer-hamburger-icon:before,
.drawer--top.drawer-open .drawer-hamburger-icon:after {
    top: 0;
    width: 2em;
    height: 1px;
    background: #3088ce;
}

.scrolledPage .drawer-open .drawer-hamburger-icon:before,
.scrolledPage .drawer-open .drawer-hamburger-icon:after {
    top: 0;
}

@media screen and (max-width: 1023px) {
    .drawer-hamburger {
        top: 0;
        z-index: 10003;
        margin: 0;
        padding: 0;
        width: 2.125em;
        height: 2.125em;
        background: transparent;
        -webkit-transition: all 0.1s linear;
        transition: all 0.1s linear;
    }

    .drawer-hamburger .drawer-hamburger-icon,
    .drawer-hamburger .drawer-hamburger-icon:before,
    .drawer-hamburger .drawer-hamburger-icon:after,
    .drawer-hamburger .drawer--top.drawer-open .drawer-hamburger-icon:before,
    .drawer--top.drawer-open .drawer-hamburger .drawer-hamburger-icon:before,
    .drawer-hamburger .drawer--top.drawer-open .drawer-hamburger-icon:after,
    .drawer--top.drawer-open .drawer-hamburger .drawer-hamburger-icon:after {
        width: 1.25em;
        height: 0.125em;
    }

    .drawer-hamburger.-cloned {
        position: absolute;
    }

    .drawer-hamburger.-primary {
        top: 0;
        right: 0;
        visibility: hidden;
        width: 2.125em;
        height: 2.125em;
        background: #3088ce;
        background: #000;
        opacity: 0;
    }

    .scrolledPage .drawer-hamburger.-primary {
        visibility: visible;
        height: 2.125em;
        opacity: 1;
    }

    .-menu-open .drawer-hamburger {
        opacity: 0.2;
    }

    .-menu-open .drawer-open .drawer-hamburger {
        background: transparent;
        opacity: 1;
    }

    .drawer-hamburger-icon {
        margin: 0 auto;
        margin-top: -0.0625em;
    }

    .drawer-hamburger-icon,
    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
        border-radius: 10px;

        -ms-border-radius: 10px;
    }

    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
        top: -0.15625em;
        background: #000;
    }

    .scrolledPage .drawer-hamburger-icon:before,
    .scrolledPage .drawer-hamburger-icon:after {
        background: #fff;
    }

    .drawer-hamburger-icon:after {
        top: 0.15625em;
    }

    .drawer--top.drawer-open .drawer-hamburger {
        width: 2.125em;
        height: 2.125em;
        border-left: 0;
        background: transparent;
    }

    .drawer--top.drawer-open .drawer-hamburger-icon:before,
    .drawer--top.drawer-open .drawer-hamburger-icon:after {
        background: #3088ce;
    }

    .scrolledPage .drawer--top.drawer-open .drawer-hamburger {
        top: 0;
        right: 0;
        width: 2.125em;
    }

    .scrolledPage .drawer--top.drawer-open .drawer-hamburger-icon {
        background: transparent;
    }
}

@media screen and (max-width: 767px) {
    .drawer-hamburger {
        top: 0;
        z-index: 10003;
        margin: 0;
        padding: 0;
        width: 3.57143em;
        height: 3.57143em;
        background: transparent;
        -webkit-transition: all 0.1s linear;
        transition: all 0.1s linear;
    }

    .drawer-hamburger .drawer-hamburger-icon,
    .drawer-hamburger .drawer-hamburger-icon:before,
    .drawer-hamburger .drawer-hamburger-icon:after,
    .drawer-hamburger .drawer--top.drawer-open .drawer-hamburger-icon:before,
    .drawer--top.drawer-open .drawer-hamburger .drawer-hamburger-icon:before,
    .drawer-hamburger .drawer--top.drawer-open .drawer-hamburger-icon:after,
    .drawer--top.drawer-open .drawer-hamburger .drawer-hamburger-icon:after {
        width: 1.42857em;
        height: 0.14286em;
    }

    .drawer-hamburger.-cloned {
        position: absolute;
    }

    .drawer-hamburger.-primary {
        top: 0;
        right: 0;
        visibility: hidden;
        width: 3.57143em;
        height: 2.5em;
        opacity: 0;
    }

    .scrolledPage .drawer-hamburger.-primary {
        visibility: visible;
        height: 2.1875em;
        opacity: 1;
    }

    .-menu-open .drawer-hamburger {
        background: transparent;
    }

    .drawer-hamburger-icon {
        margin: 0 auto;
        margin-top: -0.07143em;
    }

    .drawer-hamburger-icon,
    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
        border-radius: 10px;

        -ms-border-radius: 10px;
    }

    .drawer-hamburger-icon:before,
    .drawer-hamburger-icon:after {
        top: -0.17857em;
        background: #000;
    }

    .scrolledPage .drawer-hamburger-icon:before,
    .scrolledPage .drawer-hamburger-icon:after {
        background: #fff;
    }

    .drawer-hamburger-icon:after {
        top: 0.17857em;
    }

    .drawer--top.drawer-open .drawer-hamburger {
        width: 3.57143em;
        height: 3.57143em;
        border-left: 0;
        background: transparent;
    }

    .drawer--top.drawer-open .drawer-hamburger-icon:before,
    .drawer--top.drawer-open .drawer-hamburger-icon:after {
        background: #3088ce;
    }

    .scrolledPage .drawer--top.drawer-open .drawer-hamburger {
        top: 0;
        right: 0;
        width: 3.57143em;
    }

    .scrolledPage .drawer--top.drawer-open .drawer-hamburger-icon {
        background: transparent;
    }
}

.gb-common-2019_header {
    z-index: 998;
    background: #fff;
}

@media screen and (min-width: 768px) {
    .gb-common-2019_header {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 2.125em;
        -webkit-transition: height 0.2s ease-out;
        transition: height 0.2s ease-out;
    }

    .gb-common-2019_header.-ishHeader {
        position: absolute;
    }

    .gb-common-2019_header:after {
        position: absolute;
        right: 0;
        bottom: -1px;
        display: block;
        visibility: hidden;
        width: calc(100% - 7.8125em);
        height: 1px;
        background: #ebebeb;
        content: '';
        opacity: 0;
        -webkit-transition: visibility 0.5s ease-out, opacity 0.5s ease-out, background 0.2s ease-out;
        transition: visibility 0.5s ease-out, opacity 0.5s ease-out, background 0.2s ease-out;
    }

    .scrolledPage .gb-common-2019_header:after {
        visibility: visible;
        opacity: 1;
    }

    .-menu-open .gb-common-2019_header:after {
        background: #5c5f61;
    }
}

@media screen and (max-width: 1023px) {
    .gb-common-2019_header {
        width: 100%;
    }
}

.gb-common-2019_header__inner {
    position: relative;
    z-index: 11;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: start;
    align-items: flex-start;
    height: 100%;
    background: #fff;
    -webkit-transition: background 0.2s ease-out;
    transition: background 0.2s ease-out;

    -webkit-box-align: start;
}

@media screen and (min-width: 768px) {
    .gb-common-2019_header__inner {
        -ms-flex-pack: justify;
        justify-content: space-between;

        -webkit-box-pack: justify;
    }
}

@media screen and (max-width: 1023px) {
    .gb-common-2019_header__inner {
        height: 2.125em;
    }
}

@media screen and (max-width: 767px) {
    .gb-common-2019_header__inner {
        height: 3.57143em;
    }
}

@media screen and (min-width: 768px) {
    .-menu-open .gb-common-2019_header__inner {
        background: rgba(0, 0, 0, 0.3);
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open .gb-common-2019_header__inner {
        background: #bbb;
    }
}

@media screen and (max-width: 1023px) {
    .scrolledPage .gb-common-2019_header__inner {
        height: 2.125em;
    }
}

.gb-common-2019_header__logo {
    position: relative;
    background: #000;
}

@media screen and (min-width: 768px) {
    .gb-common-2019_header__logo {
        width: 7.8125em;
        height: 2.125em;
        font-size: 1.6rem;
        -webkit-transition: all 0.2s ease-out;
        transition: all 0.2s ease-out;
        -webkit-transition-property: width, height;
        transition-property: width, height;
    }
}

@media screen and (max-width: 767px) {
    .gb-common-2019_header__logo {
        width: 7.71429em;
        height: 3.57143em;
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open.scrolledPage .gb-common-2019_header__logo {
        height: calc(2.125em + 1px);
    }
}

@media screen and (max-width: 767px) {
    .-menu-open.scrolledPage .gb-common-2019_header__logo {
        height: 3.57143em;
    }
}

.gb-common-2019_header__logo .siteLogo_l {
    position: absolute;
    top: 0;
    left: 0;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: center;
    -ms-flex-align: center;
    justify-content: center;
    align-items: center;
    background: #000;

    -webkit-box-align: center;
    -webkit-box-pack: center;
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

@media screen and (min-width: 768px) {
    .gb-common-2019_header__logo .siteLogo_l {
        width: 7.8125em;
        height: calc(2.125em + 1px);
        -webkit-transition: all 0.2s ease-out;
        transition: all 0.2s ease-out;
        -webkit-transition-property: width, height;
        transition-property: width, height;
    }
}

@media screen and (max-width: 767px) {
    .gb-common-2019_header__logo .siteLogo_l {
        width: 7.71429em;
        height: 3.57143em;
    }
}

.gb-common-2019_header__logo .siteLogo_l img {
    backface-visibility: hidden;
    -webkit-backface-visibility: hidden;
}

@media screen and (min-width: 768px) {
    .gb-common-2019_header__logo .siteLogo_l img {
        width: auto;
        height: 18px;
        -webkit-transition: all 0.2s ease-out;
        transition: all 0.2s ease-out;
        -webkit-transition-property: width, height;
        transition-property: width, height;
    }
}

@media screen and (max-width: 767px) {
    .gb-common-2019_header__logo .siteLogo_l img {
        width: 3.14286em;
    }
}

.gb-common-2019_header__menu {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    width: calc(100% - 7.8125em);
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    -webkit-transition-property: width;
    transition-property: width;

    -webkit-box-pack: justify;
}

.-teaserHeader .gb-common-2019_header__menu,
.ish-teaser .gb-common-2019_header__menu {
    -ms-flex-direction: row-reverse;
    flex-direction: row-reverse;

    -webkit-box-orient: horizontal;
    -webkit-box-direction: reverse;
}

.scrolledPage .gb-common-2019_header__menu {
    width: calc(100% - 7.8125em);
}

@media screen and (min-width: 768px) {
    .menuGnav {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-pack: end;
        justify-content: flex-end;

        -webkit-box-pack: end;
    }
}

@media screen and (max-width: 1200px) {
    .menuGnav {
        width: 90%;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav {
        width: 100%;
    }
}

.ish-teaser .menuFunc {
    display: none;
}

.menu__list {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
}

@media screen and (min-width: 1024px) {
    .menuFunc .menu__list {
        border-right: 1px solid rgba(0, 0, 0, 0.08);
    }
}

@media screen and (min-width: 1024px) {
    .menuGnav .menu__list {
        display: table;
        height: 2.125em;
        border-left: 1px solid rgba(0, 0, 0, 0.08);
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__list {
        -ms-flex-pack: justify;
        justify-content: space-between;
        flex-wrap: wrap;
        padding: 2.1875em 0;

        -ms-flex-wrap: wrap;
        -webkit-box-pack: justify;
    }

    .-ish .menuGnav .menu__list {
        padding: 1.25em;
        background-color: #fff;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__list {
        padding: 2.5em 0;
    }
}

@media screen and (max-width: 1023px) {
    .gb-common-2019_header .menuGnav .menu__list {
        display: none;
    }
}

.menu__item {
    text-align: center;
    line-height: 1.15;
}

@media screen and (min-width: 768px) {
    .menu__item:hover {
        z-index: 101;
    }
}

@media screen and (max-width: 1023px) {
    .menu__item {
        min-width: inherit;
    }
}

@media screen and (min-width: 768px) {
    .menuGnav .menu__item {
        display: table-cell;
        vertical-align: top;
        word-wrap: break-word;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__item {
        margin-bottom: 1.625em;
        width: calc((100% - 0.71429em) / 2);
        text-align: left;
    }

    .-ish .menuGnav .menu__item {
        margin-bottom: 0;
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__item {
        margin-bottom: 1.85714em;
    }

    .-ish .menuGnav .menu__item {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 1023px) {

    .menuGnav .menu__item.-gnav,
    .menuGnav .menu__item.search {
        width: 100%;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__item:first-child {
        display: none;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__item:first-child.-visible {
        display: block;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__item:last-child {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 1023px) {
    .menu__item.-panel-open {
        z-index: 101;
    }
}

@media screen and (min-width: 768px) {
    .menuGnav .menu__item.-current:after {
        position: absolute;
        top: 0;
        left: -1px;
        z-index: 100;
        display: block;
        width: calc(100% + 2px);
        height: 0.1875em;
        background: #000;
        content: '';
    }
}

.menu__link {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;
    background: #fff;
    font-size: 1.4rem;
    cursor: pointer;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    -webkit-transition-property: height, color, background;
    transition-property: height, color, background;

    -webkit-box-align: center;
}

@media screen and (min-width: 768px) {
    .menu__link {
        padding: 0 1.28571em;
        height: 2.42857em;
    }
}

@media screen and (max-width: 1200px) {
    .menu__link {
        padding: 0 0.85714em;
    }

    .-ishHeader .menu__link {
        padding: 0 1.28571em;
    }
}

@media screen and (min-width: 1024px) {
    .menu__link {
        -ms-flex-pack: center;
        justify-content: center;

        -webkit-box-pack: center;
    }
}

@media screen and (max-width: 1023px) {
    .menu__link {
        background: transparent;
    }
}

@media screen and (max-width: 767px) {
    .menu__link {
        min-width: inherit;
    }
}

@media screen and (max-width: 1023px) {

    .menu__link:before,
    .menu__link:after {
        position: absolute;
        top: 50%;
        right: 0;
        width: 1px;
        height: 1.42857em;
        background: rgba(0, 0, 0, 0.08);
        content: '';
        -webkit-transform: translateY(-50%);
        transform: translateY(-50%);
    }
}

@media screen and (max-width: 767px) {

    .menu__link:before,
    .menu__link:after {
        height: 1.42857em;
    }
}

@media screen and (max-width: 1023px) {

    .menuGnav .menu__link:before,
    .menuGnav .menu__link:after {
        display: none;
    }
}

@media screen and (max-width: 1023px) {

    .-panel-open .menu__link:before,
    .-panel-open .menu__link:after {
        visibility: hidden;
        opacity: 0;
    }
}

@media screen and (max-width: 1023px) {

    .-global .menu__link:before,
    .-global .menu__link:after {
        position: absolute;
        top: inherit;
        bottom: 0.75em;
        left: 0;
        display: block;
        margin-top: 0.35714em;
        margin-right: 0;
        width: 100%;
        height: 0.85714em;
        background-color: transparent;
        background-image: url('../svg/ico-global-2.svg');
        background-position: center center;
        background-size: contain;
        background-repeat: no-repeat;
        content: '';
        /*opacity: 0.3;*/
        opacity: 0.6;
        -webkit-transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
        transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
        -webkit-transform: translateY(0);
        transform: translateY(0);
    }
}

@media screen and (max-width: 767px) {

    .-global .menu__link:before,
    .-global .menu__link:after {
        bottom: 1em;
        margin-top: 0.35714em;
        height: 0.71429em;
    }
}

@media screen and (max-width: 1023px) {

    .scrolledPage .-global .menu__link:before,
    .scrolledPage .-global .menu__link:after {
        bottom: 0.5em;
        height: 0.71429em;
    }
}

@media screen and (max-width: 767px) {

    .scrolledPage .-global .menu__link:before,
    .scrolledPage .-global .menu__link:after {
        bottom: 1em;
    }
}

@media screen and (max-width: 1023px) {
    .menu__link:before {
        left: 0;
    }
}

.-global .menu__link:before {
    display: block;
    background-image: url('../svg/ico-global-2.svg');
    background-position: center center;
    background-size: contain;
    background-repeat: no-repeat;
    content: '';
}

@media screen and (min-width: 1024px) {
    .-global .menu__link:before {
        margin-right: 0.35714em;
        width: 1.14286em;
        height: 1.14286em;
    }
}

@media screen and (min-width: 1024px) {
    .-menu-open .-panel-open .menu__link:before {
        background-image: url('../svg/ico-global-w-2.svg');
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open .-panel-open .menu__link:before {
        opacity: 0;
    }
}

.menu__link:after {
    content: '';
}

@media screen and (min-width: 1024px) {
    .menu__link:after {
        position: absolute;
        top: 0;
        left: 0;
        width: 1px;
        height: 100%;
        background: rgba(0, 0, 0, 0.08);
    }
}

@media screen and (min-width: 1024px) {
    .menu__item:first-child .menu__link:after {
        display: none;
    }
}

@media screen and (min-width: 768px) {
    .-current .menu__link:after {
        background-color: rgba(0, 0, 0, 0.03);
    }
}

@media screen and (max-width: 1023px) {
    .-global .menu__link:after {
        visibility: hidden;
        margin-top: 0.42857em;
        background-image: url('../svg/ico-global-w-2.svg');
        opacity: 0;
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open .-panel-open .menu__link:after {
        visibility: visible;
        opacity: 1;
    }
}

@media screen and (min-width: 768px) {
    .-panel-open .menu__link:after {
        visibility: hidden;
        opacity: 0;
    }
}

.menuFunc .menu__link {
    white-space: nowrap;
}

@media screen and (max-width: 1023px) {
    .menuFunc .menu__link {
        -ms-flex-direction: column;
        flex-direction: column;
        padding: 0.21429em 0.57143em;
        /*color: rgba(0, 0, 0, 0.3);*/
        color: #6C6E6F;

        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
    }
}

@media screen and (max-width: 767px) {
    .menuFunc .menu__link {
        padding: 1em 1.14286em;
        height: 3.57143em;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__link {
        padding: 0 0 0.85714em;
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
        text-align: left;
        font-weight: 600;
        font-size: 1.6rem;
    }

    .-ish .menuGnav .menu__link {
        padding: 0.71429em 0;
        border-bottom: 0;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__link {
        border-bottom: 1px solid rgba(0, 0, 0, 0.08);
    }

    .-ish .menuGnav .menu__link {
        border-bottom: 0;
    }
}

@media screen and (min-width: 1024px) {
    .member .menu__link {
        background: #f0f0f0;
    }
}

@media screen and (min-width: 1024px) {
    .search .menu__link {
        background: #d6d6d6;
    }
}

@media screen and (min-width: 1024px) {
    .menu__link:hover {
        background: rgba(0, 0, 0, 0.06);
    }

    .member .menu__link:hover {
        background: #e3e3e3;
    }

    .search .menu__link:hover {
        background: #c8c8c8;
    }
}

@media screen and (min-width: 1024px) {
    .-current .menu__link {
        background: rgba(0, 0, 0, 0.06);
    }
}

@media screen and (min-width: 768px) {
    .-menu-open .-current .menu__link {
        background: rgba(0, 0, 0, 0.06);
    }
}

@media screen and (min-width: 768px) {
    .menuGnav .-current .menu__link {
        font-weight: 700;
    }
}

@media screen and (min-width: 768px) {
    .-menu-open .menu__link {
        background: rgba(255, 255, 255, 0.06);
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open .menu__link {
        background: transparent;
    }
}

.-global .menu__link {
    -webkit-transition-property: all;
    transition-property: all;
}

.-menu-open .-panel-open .menu__link {
    background: #1e1e1e;
    color: #fff;
}

.-menu-open .-panel-open.-gnav .menu__link {
    background: #fff;
    color: #000;
}

@media screen and (max-width: 1023px) {
    .menuFunc .menu__link span:first-child {
        font-size: 1rem;
    }
}

@media screen and (max-width: 767px) {
    .menuFunc .menu__link span:first-child {
        font-size: 0.8rem;
    }
}

@media screen and (min-width: 1024px) {
    .menu__linkIcn {
        visibility: visible;
        opacity: 1;
        -webkit-transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
        transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
    }
}

@media screen and (max-width: 1023px) {
    .menu__linkIcn {
        margin-right: 0.28571em;
        height: 0.78571em;
        vertical-align: middle;
    }
}

@media screen and (min-width: 1024px) {
    .menu__linkIcn.-member {
        margin-right: 0.28571em;
        width: 0.71429em;
    }
}

@media screen and (min-width: 1024px) {
    .menu__linkIcn.-search {
        width: 1.14286em;
    }

    .-panel-open .menu__linkIcn.-search {
        visibility: hidden;
        opacity: 0;
    }
}

.menu__panel {
    position: fixed;
    left: 0;
    z-index: -1;
    visibility: hidden;
    width: 100%;
    background: #1e1e1e;
    /*background: #5c5f61;*/
    color: #fff;
    text-align: left;
    opacity: 0;
    -webkit-transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
    transition: opacity 0.2s ease-out, visibility 0.2s ease-out;
}

@media screen and (max-width: 1023px) {
    .menu__panel {
        top: 2.125em;
    }
}

@media screen and (max-width: 767px) {
    .menu__panel {
        top: 3.57143em;
    }
}

.-gnav .menu__panel {
    background: #fff;
    color: #000;
}

@media screen and (min-width: 1024px) {

    .menu__item.-panel-open .menu__panel,
    .menu__link:focus .menu__panel {
        visibility: visible;
        opacity: 0.9;
    }
}

@media screen and (max-width: 1023px) {
    .menu__item.-panel-open .menu__panel {
        visibility: visible;
        opacity: 0.9;
    }
}

@media screen and (max-width: 1023px) {
    .modalMenu .menuFunc .menu__panel {
        z-index: 999;
    }
}

@media screen and (max-width: 1023px) {
    .modalMenu .menuGnav .menu__panel {
        z-index: 90;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__panel {
        position: relative;
        top: inherit;
        background: transparent;
    }
}

@media screen and (max-width: 1023px) {
    .drawer-open .menuGnav .menu__panel {
        visibility: visible;
        opacity: 1;
    }
}

.menu__panel a {
    color: #fff;
}

.-gnav .menu__panel a {
    color: #000;
}

@media screen and (min-width: 768px) {
    .menu__panelInner {
        padding: 1.25em 0;
    }
}

@media screen and (max-width: 1023px) {
    .menu__panelInner {
        padding: 1.25em 1.5625em 1.25em;
    }
}

@media screen and (max-width: 767px) {
    .menu__panelInner {
        padding: 2.5em 1.78571em;
    }
}

.menuGnav .menu__panelInner {
    padding-bottom: 1.875em;
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__panelInner {
        padding: 0;
        height: auto !important;
    }
}

@media screen and (min-width: 1024px) {
    .menu__child {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        /*height: 60px;*/
        flex-wrap: wrap;
        margin-bottom: 1.375em;

        -ms-flex-wrap: wrap;
    }
}

@media screen and (max-width: 1023px) {
    .menu__child {
        margin-bottom: 2em;
    }
}

@media screen and (max-width: 767px) {
    .menu__child {
        margin-bottom: 2.28571em;
    }
}

.menu__child:last-child {
    margin-bottom: 0;
}

@media screen and (min-width: 1024px) {
    .menu__childTitle {
        display: -webkit-box;
        display: -ms-flexbox;
        display: flex;
        -ms-flex-align: center;
        align-items: center;
        padding: 0.3125em 0;
        width: 17.5em;
        font-weight: 600;

        -webkit-box-align: center;
    }

    .menu__childTitle.-flex-start {
        -ms-flex-align: start;
        align-items: flex-start;
        padding-top: 0.625em;

        -webkit-box-align: start;
    }
}

@media screen and (max-width: 1023px) {
    .menu__childTitle {
        margin-bottom: 0.625em;
        padding: 0 0 0.5em;
        border-bottom: 1px solid rgba(255, 255, 255, 0.1);
    }
}

@media screen and (max-width: 767px) {
    .menu__childTitle {
        margin-bottom: 0.71429em;
        padding: 0 0 0.57143em;
    }
}

@media screen and (min-width: 1024px) {
    .menuGnav .menu__childTitle {
        padding: 0.625em 0;
        width: 13.75em;
    }
}

@media screen and (max-width: 1023px) {

    .-lang .menu__childTitle,
    .menuGnav .menu__childTitle {
        display: none;
    }
}

.menu__childTitle span {
    font-weight: 600;
    font-size: 1.4rem;
}

@media screen and (min-width: 768px) {
    .menu__childTitle > span {
        padding: 2px 0;
    }
}

@media screen and (min-width: 1024px) {
    .menu__childContent {
        padding-left: 1.875em;
        width: calc(100% - 2.25em - 17.5em - 1px);
        border-left: 1px solid rgba(255, 255, 255, 0.1);
    }
}

.menuGnav .menu__childContent {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    justify-content: space-between;
    flex-wrap: wrap;

    -ms-flex-wrap: wrap;
    -webkit-box-pack: justify;
}

@media screen and (min-width: 1024px) {
    .menuGnav .menu__childContent.ref {
        margin-bottom: 1.5em;
        padding-top: 0.75em;
        padding-left: 0;
        width: calc(100% - 13.75em - 1px);
        border: 0px;
    }

    .menuGnav .menu__childContent.ref {
        width: auto;
    }

    .menuGnav .menu__childContent:last-child {
        margin-bottom: 0;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childContent {
        padding-top: 1.125em;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__childContent {
        padding-top: 1.14286em;
    }
}

@media screen and (min-width: 768px) {
    .menu__childPanel {
        -webkit-box-sizing: border-box;
        box-sizing: border-box;
        padding-left: 1.875em;
        border-left: 1px solid rgba(0, 0, 0, 0.08);
    }

    .menu__childPanel:first-child:nth-last-child(1),
    .menu__childPanel:first-child:nth-last-child(1) ~ .menu__childPanel {
        width: 100%;
    }

    .menu__childPanel:first-child:nth-last-child(2),
    .menu__childPanel:first-child:nth-last-child(2) ~ .menu__childPanel {
        width: 50%;
    }

    .menu__childPanel:first-child:nth-last-child(3),
    .menu__childPanel:first-child:nth-last-child(3) ~ .menu__childPanel {
        width: 33.33333%;
    }

    .menu__childPanel:first-child:nth-last-child(4),
    .menu__childPanel:first-child:nth-last-child(4) ~ .menu__childPanel {
        width: 25%;
    }
}

@media screen and (max-width: 1023px) {
    .menu__childPanel {
        width: calc((100% - 0.71429em) / 2);
    }
}

@media screen and (max-width: 767px) {
    .menu__childPanel.-full-sp {
        margin-bottom: 0.57143em;
        width: 100%;
    }
}

.search .menu__childPanel {
    padding-left: 0;
    border-left: 0;
}

@media screen and (max-width: 767px) {
    .search .menu__childPanel {
        width: 100%;
    }
}

.menu__childSubTitle {
    margin-bottom: 0.625em;
    font-weight: 600;
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childSubTitle {
        margin-bottom: 0.75em;
        font-weight: 400;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__childSubTitle {
        margin-bottom: 0.85714em;
    }
}

@media screen and (min-width: 768px) {
    .menu__childSubTitle strong {
        font-size: 1.4rem;
    }
}

.menu__childList {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    flex-wrap: wrap;
    -ms-flex-wrap: wrap;
}

.menuFunc .menu__childList {
    /* height: 60px; 20210728*/
    /* justify-content: center; */
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childList {
        display: block;
    }
}

@media screen and (min-width: 768px) {
    .menu__childItem {
        margin: 0.25em 0;
        width: 18%;
    }
}

@media screen and (max-width: 1023px) {
    .menuFunc .menu__childItem {
        margin: 0.5em 0;
        width: 20%;
    }

    .menuFunc .menu__childItem:only-child {
        width: 100%;
    }
}

@media screen and (max-width: 767px) {
    .menuFunc .menu__childItem {
        width: 33.3%;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childItem {
        width: 100%;
    }
}

@media screen and (min-width: 768px) {
    .-lang .menu__childItem {
        margin-right: 0.625em;
    }
}

@media screen and (max-width: 1023px) {
    .-lang .menu__childItem {
        margin-bottom: 1.25em;
        width: 100%;
        text-align: center;
    }
}

@media screen and (max-width: 767px) {
    .-lang .menu__childItem {
        margin-bottom: 1.42857em;
        width: 100%;
    }
}

.menuGnav .menu__childItem {
    margin: 0;
}

@media screen and (min-width: 1024px) {
    .menuGnav .menu__childItem {
        margin-top: 0.75em;
        margin-right: 1.25em;
        width: 100%;
    }
}

.menu__childItem a {
    display: inline-block;
    max-width: 100%;
}

.menuFunc .menu__childItem a {
    border-radius: 20px;
    line-height: 1;

    -ms-border-radius: 20px;
}

@media screen and (min-width: 768px) {
    .menuFunc .menu__childItem a {
        padding: 0.25em 0.625em;
        -webkit-transition: background 0.2s ease-out;
        transition: background 0.2s ease-out;
    }
}

.menuFunc .menu__childItem a.-current {
    background: #000;
    font-weight: 600;
}

@media screen and (max-width: 1023px) {
    .menuFunc .menu__childItem a.-current {
        padding: 0.125em 0.625em 0.25em;
    }
}

@media screen and (max-width: 767px) {
    .menuFunc .menu__childItem a.-current {
        padding: 0.14286em 0.71429em 0.28571em;
    }
}

@media screen and (min-width: 768px) {

    .menuFunc .menu__childItem a:hover,
    .menuFunc .menu__childItem a:active {
        background: rgba(0, 0, 0, 0.4);
    }
}

@media screen and (max-width: 1023px) {
    .menuFunc .-lang .menu__childItem a {
        padding: 0.375em 0.875em;
    }
}

@media screen and (max-width: 767px) {
    .menuFunc .-lang .menu__childItem a {
        padding: 0.42857em 1em;
    }
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childItem a {
        display: block;
        padding: 0.35714em 0;
        opacity: 0.7;
    }
}

@media screen and (max-width: 767px) {
    .menuGnav .menu__childItem a {
        padding: 0.35714em 0;
    }
}

@media screen and (min-width: 768px) {
    .menu__childItem a span {
        font-size: 1.4rem;
    }
}

@media screen and (max-width: 767px) {
    .menu__childItem a span {
        font-size: 1.2rem;
    }
}

@media screen and (max-width: 767px) {
    .-lang .menu__childItem a span {
        font-weight: 700;
        font-size: 1.5rem;
    }
}

.menu__childImg {
    margin-bottom: 0.625em;
}

@media screen and (max-width: 1023px) {
    .menuGnav .menu__childImg {
        display: none;
    }
}

.menu__childCaption {
    padding-bottom: 0.28571em;
    font-size: 1.4rem;
}

.activeLang {
    display: inline-block;
    border-radius: 20px;
    background: #000;
    color: #fff;
    line-height: 1;
    -webkit-transition: all 0.2s ease-out;
    transition: all 0.2s ease-out;
    -webkit-transition-property: color, background, bottom;
    transition-property: color, background, bottom;

    -ms-border-radius: 20px;
}

@media screen and (min-width: 768px) {
    .activeLang {
        margin-left: 0.375em;
        padding: 0.1875em 0.5em;
    }
}

@media screen and (max-width: 1023px) {
    .activeLang {
        position: absolute;
        bottom: 1.1em;
        left: 50%;
        margin-left: 0;
        margin-left: 0.25em;
        padding: 0.2em 1em 0.1em;
        font-weight: 600;
        font-size: 1rem;
        -webkit-transform: translateX(-50%);
        transform: translateX(-50%);
    }
}

@media screen and (max-width: 767px) {
    .activeLang {
        bottom: 2em;
        padding: 0.14286em 0.71429em 0.21429em;
        font-size: 0.7rem;
    }
}

@media screen and (max-width: 1023px) {
    .scrolledPage .activeLang {
        bottom: 0.5em;
    }
}

@media screen and (max-width: 767px) {
    .scrolledPage .activeLang {
        bottom: 2em;
    }
}

@media screen and (min-width: 768px) {
    .-menu-open .activeLang {
        color: rgba(255, 255, 255, 0.8);
    }
}

@media screen and (max-width: 1023px) {
    .-menu-open .activeLang {
        color: rgba(255, 255, 255, 0.6);
    }
}

.-panel-open .activeLang {
    background: #fff;
    color: #000;
}

.search__btn {
    background: url('../icn-search-w-2.html') center center no-repeat;
    background-size: contain;
}

@media screen and (min-width: 1024px) {
    .search__btnText {
        display: none;
    }
}

.search form {
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-pack: justify;
    -ms-flex-align: center;
    justify-content: space-between;
    align-items: center;
    border-left: 1px solid rgba(255, 255, 255, 0.1);
    color: #222;
    font-size: 1.4rem;

    -webkit-box-pack: justify;
    -webkit-box-align: center;
}

@media screen and (min-width: 1024px) {
    .search form {
        padding-left: 2.57143em;
    }
}

.search input,
.search button {
    height: 2.85714em;
}

.search input {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    background: #fff;
}

@media screen and (min-width: 768px) {
    .search input {
        padding: 0.71429em;
        width: calc(100% - 10.71429em);
    }
}

@media screen and (max-width: 767px) {
    .search input {
        padding: 0.625em;
        width: calc(100% - 5em);
        height: 2.5em;
        font-size: 1.6rem;
        line-height: 40px;
    }
}

.search button {
    background: #353535;
    color: #fff;
    font-weight: 600;
}

@media screen and (min-width: 768px) {
    .search button {
        width: 10.71429em;
    }
}

@media screen and (max-width: 767px) {
    .search button {
        width: 5.71429em;
    }
}

@media screen and (min-width: 1024px) {
    .modalMenu {
        display: none;
    }
}

.modalMenu__gnavInner {
    min-height: 100vh;
}

.modalMenu__header {
    position: fixed;
    top: 0;
    left: 0;
    z-index: 998;
    width: 100%;
}

@media screen and (max-width: 1023px) {
    .modalMenu__header {
        height: 2.125em;
    }

    .scrolledPage .modalMenu__header {
        height: 2.125em;
    }
}

@media screen and (max-width: 767px) {
    .modalMenu__header {
        height: 3.57143em;
    }

    .scrolledPage .modalMenu__header {
        height: 3.57143em;
    }
}

.modalMenu__header:before {
    position: absolute;
    top: 0;
    left: 0;
    z-index: 10;
    display: block;
    width: 100%;
    height: 100vh;
    background: yellow;
}

.modalMenu__header-inner {
    position: relative;
    display: -webkit-box;
    display: -ms-flexbox;
    display: flex;
    -ms-flex-align: center;
    align-items: center;

    -webkit-box-align: center;
}

@media screen and (max-width: 1023px) {
    .modalMenu__header-inner {
        height: 2.125em;
    }

    .scrolledPage .modalMenu__header-inner {
        height: 2.125em;
    }
}

@media screen and (max-width: 767px) {
    .modalMenu__header-inner {
        height: 3.57143em;
    }

    .scrolledPage .modalMenu__header-inner {
        height: 3.57143em;
    }
}

.modalMenu__logo {
    position: relative;
    letter-spacing: 0;
}

@media screen and (max-width: 1023px) {
    .modalMenu__logo {
        padding-left: 0.9375em;
        font-size: 1.6rem;
    }
}

@media screen and (max-width: 767px) {
    .modalMenu__logo {
        padding-left: 1.07143em;
        font-size: 1.4rem;
    }
}

.modalMenu__logo a {
    display: flex;
    display: -webkit-box;
    display: -ms-flexbox;
    display: -webkit-flex;
    -ms-flex-align: center;
    align-items: center;

    -moz-align-items: center;
    -ms-align-items: center;
    -webkit-box-align: center;
}

.modalMenu__content {
    padding-right: 0.9375em;
    padding-left: 0.9375em;
    background-color: #f0f4f7;
    -webkit-transition: background 0.2s ease-out;
    transition: background 0.2s ease-out;
}

@media screen and (max-width: 1023px) {
    .modalMenu__content {
        padding-top: 2.125em;
    }

    .scrolledPage .modalMenu__content {
        padding-top: 2.125em;
    }

    .modalMenu__content.-ish {
        padding-bottom: 2.1875em;
    }
}

@media screen and (max-width: 767px) {
    .modalMenu__content {
        padding-top: 3.57143em;
    }

    .scrolledPage .modalMenu__content {
        padding-top: 3.57143em;
    }
}

.-menu-open .modalMenu__content {
    background-color: #bbb;
}

/* [START] add 2019.11.29 */
/* For Debug */
/**
@media(min-width: 768px) {
  .-global .menu__panel {
      opacity: 1!important;
      visibility: visible!important;
      z-index: 2000!important;
  }
}
@media(max-width: 767px) {
  .menu__item.-global .menu__panel {
    visibility: visible;
    opacity: 1;
    z-index: 2000;
  }
}
*/
/* PC / TB */
@media screen and (min-width: 1024px) {
    .-global .menu__childTitle {
        width: 10.5em;
    }

    .-global .menu__childContent {
        width: calc(100% - 2.25em - 10.5em - 1px);
    }
}

.menu__innerContent dt,
.menu__childItem .menu__nolink {
    display: inline-block;
    max-width: 100%;
}

.menu__childItem .menu__nolink {
    opacity: 0.5;
}

.menuFunc .menu__innerContent dt,
.menuFunc .menu__childItem .menu__nolink {
    line-height: 1;
}

@media screen and (min-width: 768px) {

    .menuFunc .menu__innerContent dt,
    .menuFunc .menu__childItem .menu__nolink {
        padding: 0.25em 0.625em;
    }

    .menu__innerContent dt span,
    .menu__childItem .menu__nolink span {
        font-size: 1.4rem;
    }

    /*
  .menu__childItem .menu__explain {
    font-size: 1.0rem;
  }
*/
}

@media screen and (max-width: 767px) {

    .menu__innerContent dt span,
    .menu__childItem .menu__nolink span {
        font-size: 0.8rem;
    }

    /*
  .menu__childItem .menu__explain {
    font-size: 0.6rem;
  }
*/
}

.-global .menu__childList.is-verticalBox {
    display: block;
}

.-global .menu__childList.is-columnBox {
    display: block;
    overflow: hidden;
}

.-global .menu__childItem.is-column-full {
    width: 100%;
}

.-global .menu__childItem.is-column-auto {
    width: auto;
}

.-global .menu__childItem.is-column-left {
    width: 55%;
    float: left;
}

.-global .menu__childItem.is-column-right {
    width: 45%;
    float: left;
}

/* ASIA / Oseania */
.menu__innerContent dd {
    padding-left: 0.5em;
}

.menu__innerContent .menu__childItem {
    position: relative;
}

@media screen and (min-width: 768px) {
    .menu__innerContent .menu__childItem:nth-of-type(n + 2):before {
        content: '/';
        position: absolute;
        left: -0.2em;
        font-size: 1.4rem;
        padding: 0.25em 0;
    }
}

@media screen and (max-width: 767px) {
    .-global .menu__childList {
        display: block;
    }

    .-global .menu__childItem {
        width: 100%;
    }

    .-global .menu__childItem.has_child {
        margin-bottom: 0;
    }

    .-global .menu__childItem.has_child .menu__childList {
        padding: 0.5em;
    }

    .-global .menu__childItem.has_child .menu__childItem {
        width: 50%;
    }

    .-global .menu__childItem.is-column-left {
        width: auto;
        float: none;
    }

    .-global .menu__childItem.is-column-right {
        width: auto;
        float: none;
    }

    /* ASIA / Oseania */
    .menu__innerContent .menu__childItem:nth-of-type(n + 2):before {
        font-size: 0.8rem;
        padding: 0.5em 0;
    }
}

/* [END] add 2019.11.29 */

@media screen and (min-width: 768px) {
    .innerEl-tight.ref {
        max-width: 98%;
    }
}

@media screen and (min-width: 1024px) {
    .ref .menu__child {
        -webkit-box-pack: end;
        -ms-flex-pack: end;
        justify-content: flex-end;
    }
    .ref .menu__childContent {
        width: 20.8em;
    }
}

@media screen and (min-width: 1500px) {
    .ref .menu__childContent {
        width: 20.87em;
    }
}
