@charset "UTF-8";

/* placeholder */

:placeholder-shown {
    color: #a0a0a0;
}

::-webkit-input-placeholder {
    color: #a0a0a0;
}

::-moz-placeholder {
    color: #a0a0a0;
    opacity: 1;
}

:-ms-input-placeholder {
    color: #a0a0a0;
}

.gheader-search__i-txt[type='text'] {
    display: block;
    width: 100%;
    background-color: transparent;
    border: none;
    border-radius: 0;
    outline: 0;
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;
    resize: none;
}

@media all and (min-width: 769px),
print {
    .gheader {
        position: fixed;
        z-index: 9999;
        min-width: 980px;
        background: #fff;
        box-shadow: 0px 0px 1px 0px rgba(170, 170, 170, 1);
    }
    .gheader__body {
        display: flex;
        /*    align-items: flex-end;*/
    }
    .gheader-bar {
        display: flex;
        width: 17.5rem;
        align-items: center;
    }
    .gheader-drawer {
        width: calc(100% - 17.5rem);
    }
    .gheader-tag {
        font-size: 0.6875rem;
        position: absolute;
        left: 17.1rem;
        line-height: 1.6;
    }
    .gheader-logo {
        width: 12.5rem;
        margin: 2.3rem;
    }
    .gheader-logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gheader-logo__btn {}
    .gheader-hamburger {
        display: none;
    }
    .gheader-drawer__bg {
        display: none;
    }
    .gheader-drawer__body {}
    .gheader-content {
        position: relative;
        height: 10.375rem;
    }
    .gheader-main {
        position: absolute;
        right: 0;
        bottom: 0;
    }
    .gheader-main__body {
        display: flex;
    }
    .gheader-main__item {}
    .gheader-main__item+.gheader-main__item {}
    .gheader-main__btn {
        position: relative;
        display: flex;
        height: 4.375rem;
        color: #494446;
    }
    .no-touchevents .gheader-main__btn {
        transition: all 0.15s ease-out;
    }
    .gheader-main__btn-in {
        display: flex;
        align-items: center;
        justify-content: center;
        height: 2.75rem;
        padding: 0 1.4rem;
        border-left: 1px solid #aaaaaa;
    }
    .gheader-main__label {
        display: block;
        font-weight: bold;
        font-size: 0.9375rem;
        line-height: 1.466666667;
        text-align: center;
    }
    .gheader-main__btn::after {
        position: absolute;
        bottom: 0;
        left: 0;
        display: block;
        width: 100%;
        height: 5px;
        background: #b1081f;
        transform: scale(1, 0);
        transform-origin: 50% 100%;
        content: '';
    }
    .is-current-top .gheader-main__item--top .gheader-main__btn,
    .is-current-about .gheader-main__item--about .gheader-main__btn,
    .is-current-procedure .gheader-main__item--procedure .gheader-main__btn,
    .is-current-interview .gheader-main__item--interview .gheader-main__btn,
    .is-current-course .gheader-main__item--course .gheader-main__btn,
    .is-current-support .gheader-main__item--support .gheader-main__btn {
        color: #b1081f;
    }
    .is-current-top .gheader-main__item--top .gheader-main__btn::after,
    .is-current-about .gheader-main__item--about .gheader-main__btn::after,
    .is-current-procedure .gheader-main__item--procedure .gheader-main__btn::after,
    .is-current-interview .gheader-main__item--interview .gheader-main__btn::after,
    .is-current-course .gheader-main__item--course .gheader-main__btn::after,
    .is-current-support .gheader-main__item--support .gheader-main__btn::after {
        transform: scale(1, 1);
    }
    .no-touchevents .gheader-main__btn,
    .no-touchevents .gheader-main__btn::after {
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gheader-main__btn:hover {
        color: #b1081f;
    }
    .no-touchevents .gheader-main__btn:hover::after {
        transform: scale(1, 1);
    }
    .gheader-main__btn-ico {
        display: none;
    }
    .gheader-main__dropdown-ico {
        display: none;
    }
    .gheader-dropdown {
        display: none;
    }
    .gheader-secondary {
        position: absolute;
        top: 1.25rem;
        right: 1.25rem;
        display: flex;
        justify-content: flex-end;
        width: 100%;
    }
    .gheader-search {
        order: 2;
    }
    .gheader-search__body {
        width: 18.3125rem;
        height: 2.875rem;
    }
    .gheader-search__body .table.gsc-search-box {}
    .gheader-search__body table {
        display: block;
    }
    .gheader-search__body tbody {
        display: block;
    }
    .gheader-search__body tr {
        position: relative;
        display: block;
        height: 2.875rem;
        background: #f5f5f5;
        border-radius: 6px;
    }
    .gheader-search__body td {
        display: block;
    }
    .gheader-search__body .gsib_a {
        padding: 0 4rem 0 0.75rem;
    }
    .gheader-search__body td input {
        height: 2.875rem !important;
        padding: 0 3.85rem 0 0;
        background-color: transparent !important;
    }
    .gheader-search__body .gsc-input-box {
        border: none;
    }
    .gheader-search__body td.gsc-search-button {
        width: 2.875rem;
        margin-left: 0;
    }
    .gheader-search__body .gsc-search-button-v2 {
        position: absolute;
        top: 0;
        right: 0;
        display: flex;
        align-items: center;
        justify-content: center;
        width: 2.875rem;
        height: 2.875rem;
        margin-left: 0;
        padding: 0;
        background: #b1081f;
        border-color: #b1081f;
        border-width: 2px;
        border-radius: 0 6px 6px 0;
        cursor: pointer;
    }
    .no-touchevents .gheader-search__body .gsc-search-button-v2 {
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gheader-search__body .gsc-search-button-v2:hover {
        background: #fff;
        border-color: #b1081f;
    }
    .gheader-search__body .gsc-search-button-v2::before,
    .gheader-search__body .gsc-search-button-v2::after {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 1.1875rem;
        height: 1.1875rem;
        margin: auto;
        background: url(../img/common/search.svg) 50% 50% no-repeat;
        background-size: cover;
        transition: all 0.15s ease-out;
        content: '';
    }
    .gheader-search__body .gsc-search-button-v2::before {
        background: url(../img/common/search.svg) 50% 50% no-repeat;
    }
    .gheader-search__body .gsc-search-button-v2::after {
        background: url(../img/common/search_ov.svg) 50% 50% no-repeat;
        opacity: 0;
    }
    .no-touchevents .gheader-search__body .gsc-search-button-v2:hover::after {
        opacity: 1;
    }
    .gheader-search__body .gsc-search-button-v2 svg {
        display: none;
    }
    .gheader-search__body .gsib_b {
        position: absolute;
        top: 50%;
        right: 2.5875rem;
        width: 20px;
        height: 20px;
        margin-top: -10px;
    }
    .gheader-search__body .gsst_b {
        position: static;
    }
    .gheader-search__body .gsst_a {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 1rem;
        height: 1rem;
        margin: auto;
        padding: 0;
        font-size: 1rem;
    }
    .gheader-search__body .gsst_a .gscb_a {
        width: 1rem;
        height: 1rem;
        color: #000;
        line-height: 1rem;
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gheader-search__body .gsst_a:hover .gscb_a {
        color: #b1081f;
    }
    .gheader-sub {
        order: 3;
    }
    .gheader-sub__body {
        display: flex;
    }
    .gheader-sub__item {
        margin-left: 1.25rem;
    }
    .gheader-sub__btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 11.25rem;
        height: 2.875rem;
        color: #b1081f;
        border: #b1081f solid 2px;
        border-radius: 6px;
    }
    .gheader-sub__btn {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 11.25rem;
        height: 2.875rem;
        color: #b1081f;
        border: #b1081f solid 2px;
        border-radius: 6px;
    }
    .no-touchevents .gheader-sub__btn {
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gheader-sub__btn:hover {
        color: #fff;
        background: #b1081f;
    }
    .gheader-sub__btn--user {
        color: #fff;
        background: #b1081f;
    }
    .no-touchevents .gheader-sub__btn--user:hover {
        color: #b1081f;
        background: #fff;
    }
    .gheader-sub__label {
        display: block;
        font-weight: bold;
        font-size: 0.875rem;
    }
    .gheader-sub__ico {
        display: none;
    }
    .gheader-util {
        order: 1;
    }
    .gheader-util__body {
        display: flex;
    }
    .gheader-util__item {
        display: block;
        display: flex;
        align-items: center;
        height: 2.5rem;
        margin-right: 1.5rem;
    }
    .gheader-util__btn {
        display: flex;
        align-items: center;
        line-height: 1;
    }
    .no-touchevents .gheader-util__btn {
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gheader-util__btn:hover {
        color: #b1081f;
    }
    .gheader-util__ico {
        position: relative;
        display: block;
        width: 0.75rem;
        height: 0.75rem;
        margin-right: 0.25rem;
        background: #b1081f;
        border-radius: 99px;
    }
    .gheader-util__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 45%;
        height: 45%;
        margin: auto;
        fill: #fff;
    }
    .gheader-util__label {
        display: block;
        font-size: 0.9rem;
    }
    .gheader-sp-sub {
        display: none;
    }
    .gheader-close {
        display: none;
    }
}

@media all and (min-width: 769px) and (-ms-high-contrast: none) {
    .gheader-tag {
        left: 17.1rem;
        line-height: 1.6;
        margin-top: -1.6rem;
    }
}

@media all and (min-width: 769px) and (-ms-high-contrast: none) {
    .gheader-tag {
        font-size: 1rem;
    }
}

@media all and (min-width: 1280px),
print {
    .gheader-main__btn-in {
        padding: 0 2.015rem;
    }
    .gheader-tag {
        font-size: 0.8875rem;

    }
    .gheader-tag {
        left: 17.1rem;
    }
}

@media all and (min-width: 1366px),
print {

}

@media all and (min-width: 1440px),
print {
}

@media all and (max-width: 768px) {
    html.is-drawer-opened {
        overflow: hidden;
    }
    .gheader {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        z-index: 10;
    }
    .gheader__body {}
    .gheader-bar {
        position: relative;
        z-index: 10;
        display: flex;
        align-items: center;
        background: #fff;
        box-shadow: 0px 0px 1px 0px rgba(170, 170, 170, 1);
    }
    .gheader-logo {
        order: -1;
        margin: 1.49283rem;
    }
    .gheader-logo a {
        display: block;
        width: 7.857142857rem;
    }
    .gheader-logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gheader-logo__btn {}
    .gheader-tag {
        color: #494446;
        font-size: 0.714285714rem;
        line-height: 1.5;
    }
    .gheader-hamburger {
        position: absolute;
        top: 0;
        right: 0;
        width: 5rem;
        height: 5rem;
        padding: 0 0 0 0;
    }
    .gheader-hamburger__bg {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 5.357142857rem;
        height: 5.357142857rem;
    }
    .gheader-hamburger__ico {
        position: absolute;
        top: 50%;
        right: 0;
        left: 0;
        display: block;
        width: 2.2rem;
        height: 1.2rem;
        margin: auto;
        margin-top: -0.9rem;
    }
    .gheader-hamburger__ico i {
        position: absolute;
        left: 0;
        display: block;
        width: 2.2rem;
        height: 0.15rem;
        background: #000;
        transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
        transition-duration: 0.5s;
        transition-property: transform;
    }
    .gheader-hamburger__ico i:nth-child(1) {
        top: 50%;
        transform: translateY(0.5rem);
    }
    .gheader-hamburger__ico i:nth-child(2) {
        top: 50%;
        margin-top: -0.13em;
        transition-duration: 0.25s;
    }
    .gheader-hamburger__ico i:nth-child(3) {
        top: 50%;
        transform: translateY(-0.75rem);
    }
    .is-drawer-active .gheader-hamburger__ico i:nth-child(1) {
        transform: translateY(0) rotate(225deg);
    }
    .is-drawer-active .gheader-hamburger__ico i:nth-child(2) {
        transform: scale(0, 1);
    }
    .is-drawer-active .gheader-hamburger__ico i:nth-child(3) {
        transform: translateY(0) rotate(-225deg);
    }
    .gheader-hamburger__label {
        position: absolute;
        right: 0;
        bottom: 0;
        left: 0;
        margin-bottom: 0.75rem;
        font-weight: 700;
        font-size: 0.6875em;
        line-height: 1;
        transform: scale(0.8);
    }
    .gheader-hamburger__label--menu {
        visibility: visible;
    }
    .gheader-hamburger__label--close {
        visibility: hidden;
    }
    .is-drawer-active .gheader-hamburger__label--menu {
        visibility: hidden;
    }
    .is-drawer-active .gheader-hamburger__label--close {
        visibility: visible;
    }
    .gheader-drawer {
        position: fixed;
        top: 0;
        right: 0;
        left: 0;
        height: 100%;
        visibility: hidden;
        transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
        transition-duration: 1s;
        transition-property: visibility;
    }
    .gheader-drawer.is-drawer-active {
        visibility: visible;
    }
    .gheader-drawer__bg {
        position: absolute;
        top: 0;
        left: 0;
        z-index: -1;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.5);
        opacity: 0;
        transition-delay: 0.25s;
        transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
        transition-duration: 0.75s;
        transition-property: opacity;
    }
    .is-drawer-active .gheader-drawer__bg {
        opacity: 1;
        transition-delay: 0;
    }
    .gheader-drawer__body {
        position: absolute;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        overflow: auto;
        background: #fff;
        transform: translate3d(0, -100%, 0);
        transition-delay: 0s;
        transition-timing-function: cubic-bezier(0.19, 1, 0.22, 1);
        transition-duration: 0.9s;
        transition-property: transform;
        -webkit-overflow-scrolling: touch;
    }
    .is-drawer-active .gheader-drawer__body {
        transform: translate3d(0, 0, 0);
        transition-delay: 0.1s;
    }
    .gheader-main {
        /* padding: 6rem 1rem 1rem 1rem; */
    }
    .gheader-content {
        display: flex;
        flex-direction: column;
        padding-top: 5.357142857rem;
    }
    .gheader-main__item {}
    .gheader-main__btn {
        position: relative;
        display: block;
        padding: 1.322rem 1.428571429rem;
        background: #f7f6ec;
    }
    .gheader-main__btn-in {}
    .gheader-main__label {
        font-size: 1.142857143rem;
    }
    .gheader-main__label br {
        display: none;
    }
    .gheader-main__btn-ico {
        position: absolute;
        top: 50%;
        right: 1.428571429rem;
        display: block;
        width: 1rem;
        height: 1rem;
        transform: translateY(-50%);
    }
    .gheader-main__btn-ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 65%;
        height: 65%;
        margin: auto;
        fill: #494446;
    }
    .gheader-main__dropdown-ico {
        position: absolute;
        top: 50%;
        right: 1.428571429rem;
        display: block;
        width: 1rem;
        height: 1rem;
        transform: translateY(-50%);
    }
    .gheader-main__dropdown-ico::before {
        position: absolute;
        top: 50%;
        left: 0;
        display: block;
        width: 100%;
        height: 1px;
        background: #494446;
        transform: translateY(-50%);
        transition: all 0.15s ease-out;
        content: '';
    }
    .gheader-main__dropdown-ico::after {
        position: absolute;
        top: 0;
        left: 50%;
        display: block;
        width: 1px;
        height: 100%;
        background: #494446;
        transform: translateX(-50%);
        transition: all 0.15s ease-out;
        content: '';
    }
    .is-dropdown-active .gheader-main__btn {
        background: #e7e6d2;
    }
    .is-dropdown-active .gheader-main__label {
        color: #b1081f;
    }
    .is-dropdown-active .gheader-main__dropdown-ico::before {
        transform: translateY(-50%) rotate(180deg);
    }
    .is-dropdown-active .gheader-main__dropdown-ico::after {
        transform: translateX(-50%) rotate(90deg);
    }
    .gheader-dropdown {
        display: none;
    }
    .gheader-dropdown__body {
        background: #f7f6ec;
    }
    .gheader-dropdown__btn {
        position: relative;
        display: block;
        display: block;
        padding: 1.322rem 1.428571429rem;
        background: #f7f6ec;
    }
    .gheader-dropdown__label {}
    .gheader-dropdown__ico {
        position: absolute;
        top: 50%;
        right: 2.828571429rem;
        display: block;
        width: 1rem;
        height: 1rem;
        transform: translateY(-50%);
    }
    .gheader-dropdown__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 65%;
        height: 65%;
        margin: auto;
        fill: #494446;
    }
    .is-dropdown-active .gheader-dropdown__btn {
        background: #e7e6d2;
    }
    .gheader-secondary {
        display: flex;
        flex-direction: column;
        order: -1;
    }
    .gheader-search {
        order: -1;
        padding: 0.714285714rem 1.428571429rem;
        background: #f5f5f5;
    }
    .gsc-search-button-v2,
    .gsc-search-button-v2:hover,
    .gsc-search-button-v2:focus {
        background-color: #b1081f !important;
        border-color: #b1081f !important;
    }
    .cse .gsc-search-button-v2:focus,
    .gsc-search-button-v2:focus {
        box-shadow: none !important;
    }
    .gheader-sub {}
    .gheader-sub__body {}
    .gheader-sub__item:nth-child(2) {
        display: none;
    }
    .gheader-sub__btn {}
    .gheader-sub__btn--user {
        position: relative;
        display: block;
        padding: 1.322rem 1.428571429rem;
        color: #fff;
        background: #b1081f;
    }
    .gheader-sub__label {
        font-size: 1.142857143rem;
    }
    .gheader-sub__ico {
        position: absolute;
        top: 50%;
        right: 1.428571429rem;
        display: block;
        width: 1rem;
        height: 1rem;
        background: #fff;
        border-radius: 99px;
        transform: translateY(-50%);
    }
    .gheader-sub__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 45%;
        height: 45%;
        margin: auto;
        fill: #b1081f;
    }
    .gheader-sp-sub__btn {
        position: relative;
        display: block;
        padding: 1.322rem 1.428571429rem;
        color: #b1081f;
        background: #fff;
    }
    .gheader-sp-sub__label {
        font-size: 1.142857143rem;
    }
    .gheader-sp-sub__ico {
        position: absolute;
        top: 50%;
        right: 1.428571429rem;
        display: block;
        width: 1rem;
        height: 1rem;
        background: #b1081f;
        border-radius: 999px;
        transform: translateY(-50%);
    }
    .gheader-sp-sub__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        display: block;
        width: 45%;
        height: 45%;
        margin: .275rem;
        fill: #fff;
    }
    .gheader-util {
        display: none;
    }
    .gheader-close {}
    .gheader-close__btn {
        position: relative;
        display: block;
        padding: 1.322rem 0;
        text-align: center;
        background: #f5f5f5;
    }
    .gheader-close__btn span {
        display: inline-block;
        margin-bottom: 1px;
        line-height: 1rem;
        vertical-align: middle;
    }
    .gheader-close__btn i {
        display: inline-block;
        width: 1rem;
        height: 1rem;
    }
    .gheader-close__ico {
        position: relative;
        display: inline-block;
        margin-right: 5px;
        vertical-align: middle;
    }
    .gheader-close__ico i {
        transform: rotate(45deg);
    }
    .gheader-close__ico i::before {
        position: absolute;
        top: 50%;
        left: 0;
        display: block;
        width: 100%;
        height: 1px;
        background: #494446;
        transform: translateY(-50%);
        transition: all 0.15s ease-out;
        content: '';
    }
    .gheader-close__ico i::after {
        position: absolute;
        top: 0;
        left: 50%;
        display: block;
        width: 1px;
        height: 100%;
        background: #494446;
        transform: translateX(-50%);
        transition: all 0.15s ease-out;
        content: '';
    }
}


/* ==========================================================================
  FOOTER
========================================================================== */

@media all and (min-width: 769px) {
    .gfooter {}
    .gfooter-main {}
    .gfooter-main__inner {
        max-width: 78.75rem;
        margin: 0 auto;
        padding: 0 1.5rem;
    }
    .gfooter-main__body {
        display: flex;
        justify-content: space-between;
        margin: 3.75rem 0;
    }
    .gfooter-sitemap {
        width: calc((100% / 12) * 8);
    }
    .gfooter-sitemap__primary {
        padding-bottom: 1.75rem;
    }
    .gfooter-grid {
        display: flex;
        flex-wrap: wrap;
    }
    .gfooter-grid__col {
        width: calc((100% - 2rem * 3) / 4);
    }
    .gfooter-grid__col:not(:nth-child(4n)) {
        margin-right: 1.975rem;
    }
    .gfooter-nav {}
    .gfooter-nav__body {}
    .gfooter-nav-lv1 {
        padding-bottom: 0.375rem;
        border-bottom: 1px solid #c8c8c8;
    }
    .gfooter-nav-lv1__btn {
        color: #494446;
    }
    .gfooter-nav-lv1__label {
        font-weight: bold;
        font-size: 0.9375rem;
    }
    .gfooter-nav-lv2 {}
    .gfooter-nav-lv2__body {}
    .gfooter-nav-lv2__item:first-child {
        margin-top: 1.5rem;
    }
    .gfooter-nav-lv2__item:not(:first-child) {
        margin-top: 1rem;
    }
    .gfooter-nav-lv2__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.8125rem;
        line-height: 1.4;
    }
    .gfooter-nav-lv2__ico {
        position: absolute;
        top: 0;
        left: 0;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-nav-lv2__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-nav-lv2__ico {}
    .gfooter-nav-lv2__label {}
    .gfooter-sitemap__secondary {
        padding-top: 1.75rem;
        border-top: 1px solid #c8c8c8;
    }
    .gfooter-sub {}
    .gfooter-sub-lv1 {
        display: flex;
        flex-wrap: wrap;
    }
    .gfooter-sub-lv1__item {
        width: calc((100% - 1rem * 4) / 5);
    }
    .gfooter-sub-lv1__item:not(:nth-child(5n)) {
        margin-right: 1rem;
    }
    .gfooter-sub-lv1__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.8125rem;
        line-height: 1.4;
    }
    .gfooter-sub-lv1__ico {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-sub-lv1__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-sub-lv1__label {
        font-weight: bold;
    }
    .gfooter-sub-lv2 {
        display: flex;
        flex-wrap: wrap;
        margin-top: 1.5rem;
    }
    .gfooter-sub-lv2__item {
        width: calc((100% - 1rem * 4) / 5);
    }
    .gfooter-sub-lv2__item:nth-child(2) {
        width: calc(((100% - 1rem * 4) / 5) + 3rem);
    }
    .gfooter-sub-lv2__item:not(:nth-child(5n)) {
        margin-right: 1rem;
    }
    .gfooter-sub-lv2__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.8125rem;
        line-height: 1.4;
    }
    .gfooter-sub-lv2__ico {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-sub-lv2__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-sub-lv2__label {}
    .gfooter-info {
        order: -1;
        width: calc((100% / 12) * 3.5);
    }
    .gfooter-info__logo {
        width: 15.625rem;
        margin-bottom: 6.25rem;
    }
    .gfooter-info__logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gheader-logo__btn {}
    .gfooter-info__title {
        margin-bottom: 0.9375rem;
        color: #5e5457;
        font-weight: bold;
        line-height: 1.5;
    }
    .gfooter-info__address {
        color: #5e5457;
        font-size: 0.75rem;
        line-height: 1.5;
    }
    .gfooter-info__address dt {}
    .gfooter-info__address dd {}
    .gfooter-bottom {
        background: #f0f0e6;
    }
    .gfooter-bottom__inner {
        max-width: 78.75rem;
        margin: 0 auto;
        padding: 0 1.5rem;
    }
    .gfooter-bottom__body {
        position: relative;
        padding: 1.25rem 0;
    }
    .gfooter-bottom__logo a {
        display: block;
        width: 11.625rem;
        padding: 0.625rem 1.25rem;
        background: #fff;
    }
    .gfooter-bottom__logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gfooter-bnr {
        position: absolute;
        top: 0;
        right: 0;
        width: calc(100% - 11.625rem - 2.5rem);
        max-width: 52.5rem;
        margin-top: 1.25rem;
    }
    .gfooter-bnr__body {
        display: flex;
    }
    .gfooter-bnr__item {
        width: calc((100% - 1rem * 3) / 4);
    }
    .gfooter-bnr__item:not(:nth-child(4n)) {
        margin-right: 1rem;
    }
    .gfooter-bnr__item img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gfooter-bnr__copyright {
        position: absolute;
        right: 0;
        bottom: 0;
        margin-bottom: 1rem;
        color: #5e5457;
        font-size: 0.6875rem;
    }
    .no-touchevents .gfooter-nav-lv1__btn,
    .no-touchevents .gfooter-nav-lv2__btn,
    .no-touchevents .gfooter-sub-lv1__btn,
    .no-touchevents .gfooter-sub-lv2__btn {
        transition: all 0.15s ease-out;
    }
    .no-touchevents .gfooter-nav-lv1__btn:hover,
    .no-touchevents .gfooter-nav-lv2__btn:hover,
    .no-touchevents .gfooter-sub-lv1__btn:hover,
    .no-touchevents .gfooter-sub-lv2__btn:hover {
        color: #b1081f;
    }
}

@media all and (max-width: 768px) {
    .gfooter {}
    .gfooter-main {}
    .gfooter-main__inner {
        margin: 0 2.05rem;
    }
    .gfooter-main__body {}
    .gfooter-sitemap {
        padding-top: calc(40 / 335 * 100%);
    }
    .gfooter-sitemap__primary {}
    .gfooter-grid {
        display: flex;
        flex-wrap: wrap;
    }
    .gfooter-grid__col {
        flex-grow: 0;
        flex-shrink: 1;
        width: calc((100% - 1.142857143rem) / 2);
    }
    .gfooter-grid__col:not(:nth-child(2n)) {
        margin-right: 1.142857143rem;
    }
    .gfooter-grid__col:nth-child(n + 3) {
        margin-top: 1.142857143rem;
    }
    .gfooter-nav {}
    .gfooter-nav__body {}
    .gfooter-sub-lv1 {
        flex-grow: 0;
        flex-shrink: 1;
        width: calc((100% - 1.142857143rem) / 2);
        margin-right: 1.142857143rem;
    }
    .gfooter-sub-lv1__item+.gfooter-sub-lv1__item {
        margin-top: 1.3rem;
    }
    .gfooter-sub-lv1__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.928571429rem;
        line-height: 1.4;
    }
    .gfooter-sub-lv1__ico {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-sub-lv1__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-sub-lv1__label {
        font-weight: bold;
        font-size: 0.928571429rem;
    }
    .gfooter-nav-lv2 {
        margin-top: 1.428571429rem;
    }
    .gfooter-nav-lv2__body {}
    .gfooter-nav-lv2__item {
        margin-top: .7rem;
    }
    .gfooter-nav-lv2__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.8125rem;
        line-height: 1.4;
    }
    .gfooter-nav-lv2__ico {
        position: absolute;
        top: 0;
        left: 0;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-nav-lv2__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-sitemap__secondary {
        display: flex;
        flex-wrap: wrap;
        margin-top: 2rem;
        padding-top: 2rem;
        border-top: 1px solid #c8c8c8;
    }
    .gfooter-sitemap__secondary .gfooter-sub-lv2__item+.gfooter-sub-lv2__item {
        margin-top: .7rem;
    }
    .gfooter-sub {}
    .gfooter-sub-lv2__btn {
        position: relative;
        display: block;
        padding-left: 0.8125rem;
        color: #494446;
        font-size: 0.8125rem;
        line-height: 1.4;
    }
    .gfooter-sub-lv2__ico {
        position: absolute;
        top: 0;
        left: 0;
        display: block;
        width: 0.75rem;
        height: 0.75rem;
        margin-top: calc(((0.8125rem * 1.4) - 0.75rem) / 2);
    }
    .gfooter-sub-lv2__ico svg {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 70%;
        height: 70%;
        margin: auto;
    }
    .gfooter-sub-lv2__label {}
    .gfooter-info {
        margin-top: calc(40 / 335 * 100%);
        margin-bottom: calc(30 / 335 * 100%);
    }
    .gfooter-info__logo {
        width: 10.7rem;
        margin-bottom: 2.05rem;
    }
    .gfooter-info__logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gheader-logo__btn {}
    .gfooter-info__title {
        margin-bottom: calc(10 / 335 * 100%);
        font-weight: bold;
        line-height: 1.785714286;
    }
    .gfooter-info__address {
        font-size: 0.714285714rem;
        line-height: 1.5;
    }
    .gfooter-info__address dt {}
    .gfooter-info__address dd {}
    .gfooter-bottom {
        padding: 8% 0 1.25rem;
        background: #f0f0e6;
    }
    .gfooter-bottom__inner {
        margin: 0 1.428571429rem;
    }
    .gfooter-bottom__body {
        display: flex;
        flex-direction: column;
    }
    .gfooter-bottom__logo {
        width: 43%;
        margin: 8.962% auto;
    }
    .gfooter-bottom__logo a {
        display: block;
        padding: 0.625rem 1.25rem;
        background: #fff;
    }
    .gfooter-bottom__logo img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gfooter-bnr {
        order: -1;
    }
    .gfooter-bnr__body {
        display: flex;
        flex-wrap: wrap;
        margin: 0 1.142857143rem;
    }
    .gfooter-bnr__item {
        flex-grow: 0;
        flex-shrink: 1;
        width: calc((100% - 1rem) / 2);
    }
    .gfooter-bnr__item:not(:nth-child(2n)) {
        margin-right: 1rem;
    }
    .gfooter-bnr__item:nth-child(n + 3) {
        margin-top: 1rem;
    }
    .gfooter-bnr__item img {
        width: 100%;
        height: auto;
        vertical-align: bottom;
    }
    .gfooter-bnr__copyright {
        color: #494446;
        font-size: 0.714285714rem;
        line-height: 1.5;
        text-align: center;
    }
}
