@charset "utf-8";

/* ======================================================
 * layout_sp.css
 * ------------------------------------------------------
 * @media only screen and (max-width: 767px)
 * - Common
 * - Header
 * - Gnav
 * - Main
 * - Assist
 * - Footer
 * - Other
 * - Clearfix
 * Media Queries
====================================================== */

@media only screen and (max-width: 767px) {
    /* ------------------------------------------------------
   * Common
  ------------------------------------------------------ */
    /* ----- font ----- */
    .footer-copyright>small {
        font-family: Arial, Helvetica, "sans-serif";
    }
    /* ----- a ----- */
    /* ----- opacity ----- */
    /* ----- transition ----- */
    .footer-assist .assist_search {
        -webkit-transition: top .2s ease-out 0s;
        transition: top .2s ease-out 0s;
    }
    .AssistClone {
        -webkit-transition: top .5s ease-out 0s, bottom .5s ease-out 0s;
        transition: top .5s ease-out 0s, bottom .5s ease-out 0s;
    }
    .assist-navi:not(.is-ride) {
        -webkit-transition: bottom .5s ease-out 0s;
        transition: bottom .5s ease-out 0s;
    }
    .header-utility .utility_links>li>a::after {
        -webkit-transition: width .2s ease-out 0s;
        transition: width .2s ease-out 0s;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::before,
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::after {
        -webkit-transition: background-color .2s ease-out 0s;
        transition: background-color .2s ease-out 0s;
    }
    .assist-navi .navi_button .navi_trigger::after,
    .footer-assist .assist_buttons>li.type-menu>a::before,
    .footer-assist .assist_buttons>li.type-menu>a::after {
        -webkit-transition: transform .2s ease-out 0s;
        transition: transform .2s ease-out 0s;
    }
    .footer-assist .assist_buttons>li.type-pagetop>a::after,
    .footer-assist .assist_buttons>li.type-menu>a::before,
    .footer-assist .assist_buttons>li.type-menu>a::after,
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::before,
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::after,
    .footer-utility .utility_pagetop>a::after {
        -webkit-transition: all .2s ease-out 0s;
        transition: all .2s ease-out 0s;
    }
    /* ----- sprite ----- */
    .header-utility .utility_links>li>a::before,
    .footer-utility .utility_links>li>a::after {
        display: inline-block;
        background-image: url(/common-files/img/cmn_sprite_ic01-r2x.png);
        background-repeat: no-repeat;
        background-size: 600px 600px;
        vertical-align: middle;
        content: "";
    }
    .header-utility .utility_links>li.type-sitemap>a::before {
        width: 20px;
        height: 18px;
        background-position: 0px -550px;
    }
    .header-utility .utility_links>li.type-sitemap>a.is-active::before {
        width: 20px;
        height: 18px;
        background-position: -100px -550px;
    }
    .footer-utility .utility_links>li.type-sitemap>a::after {
        width: 20px;
        height: 18px;
        background-position: -150px -550px;
    }
    .header-utility .utility_links>li.type-search>a::before {
        width: 20px;
        height: 20px;
        background-position: -250px -550px;
    }
    .header-utility .utility_links>li.type-search>a.is-active::before {
        width: 20px;
        height: 20px;
        background-position: -350px -550px;
    }
    .footer-utility .utility_links>li.type-search>a::after {
        width: 20px;
        height: 20px;
        background-position: -400px -550px;
    }
    .header-utility .utility_links>li.type-contact>a::before {
        width: 20px;
        height: 15px;
        background-position: 0px 0px;
    }
    .header-utility .utility_links>li.type-contact>a.is-active::before {
        width: 20px;
        height: 15px;
        background-position: -100px 0px;
    }
    .footer-utility .utility_links>li.type-contact>a::after {
        width: 20px;
        height: 15px;
        background-position: -150px 0px;
    }
    .header-utility .utility_links>li.type-lang>a::before {
        width: 20px;
        height: 20px;
        background-position: 0px -50px;
    }
    .header-utility .utility_links>li.type-lang>a.is-active::before {
        width: 20px;
        height: 20px;
        background-position: -100px -50px;
    }
    .footer-utility .utility_links>li.type-lang>a::after {
        width: 20px;
        height: 20px;
        background-position: -150px -50px;
    }
    /* ------------------------------------------------------
   * Header
  ------------------------------------------------------ */
    .Header {
        position: absolute;
        top: 0;
        left: 0;
        z-index: 10000;
        width: 100%;
        height: 50px;
        background-color: #fff;
    }
    body.is-active-follow .Header {
        z-index: 9999;
    }
    body.is-active-colorbox .Header {
        z-index: 9999;
    }
    .HeaderBody {
        position: relative;
    }
    /* ----- header-identity ----- */
    .header-identity {
        display: flex;
        align-items: center;
        justify-content: left;
        padding: 10px 15px 10px 15px;
        border-bottom: 1px solid #cfcfcf;
    }
    .header-identity .identity_logo>a {
        display: block;
    }
    .header-identity .identity_logo .identity_brand {}
    .header-identity .identity_logo .identity_brand img {
        width: 96px;
        height: auto;
    }
    .header-identity .identity_logo .identity_statement {
        display: -webkit-flex;
        display: flex;
    }
    .header-identity .identity_logo .identity_statement>img {
        width: auto;
        height: 55px;
    }
    /* ----- header-utility ----- */
    .header-utility {
        padding: 0 10px 0 0;
        background-color: #fff;
    }
    .header-utility .utility_links {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
        -webkit-flex-direction: row;
        flex-direction: row;
    }
    .header-utility .utility_links>li {
        margin-left: 5px;
    }
    .header-utility .utility_links>li>a {
        display: block;
        position: relative;
        width: 30px;
        height: 40px;
        background-color: #fff;
        text-indent: -9999em;
        outline: none;
    }
    .header-utility .utility_links>li>a::before {
        position: absolute;
        left: 50%;
        content: "";
    }
    .header-utility .utility_links>li.type-sitemap>a::before {
        top: 11px;
        margin-left: -10px;
    }
    .header-utility .utility_links>li.type-search>a::before {
        top: 10px;
        margin-left: -10px;
    }
    .header-utility .utility_links>li.type-contact>a::before {
        top: 13px;
        margin-left: -10px;
    }
    .header-utility .utility_links>li.type-lang>a::before {
        top: 10px;
        margin-left: -10px;
    }
    .header-utility .utility_links>li>a::after {
        position: absolute;
        bottom: 0;
        left: 0;
        width: 0;
        height: 5px;
        background-color: #EB2E28;
        content: "";
    }
    .header-utility .utility_links>li>a.is-active::after {
        width: 100%;
    }
    /* ------------------------------------------------------
   * Gnav
  ------------------------------------------------------ */
    .Gnav {
        display: none;
    }
    .GnavBody {}
    /* ----- gnav-list ----- */
    .gnav-list {}
    /* ------------------------------------------------------
   * Main
  ------------------------------------------------------ */
    .Main {
        padding-top: 120px;
    }
    .MainBody {}
    /* ----- pageGuide ----- */
    .pageGuide {
        width: 100%;
        padding: 10px 15px;
    }
    .pageGuide.is-hidden {
        display: none;
    }
    /* breadcrumbs */
    .breadcrumbs {
        display: none;
    }
    /* languages */
    .languages {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
    }
    .languages>li {
        margin-left: 10px;
    }
    .languages>li>a {
        display: inline-block;
        min-width: 65px;
        padding: 4px 8px;
        background-color: #f7f7fa;
        font-size: 1.2rem;
        text-decoration: none;
        text-align: center;
    }
    /* ----- pageHead ----- */
    .pageHead {}
    /* ----- container ----- */
    .container {
        overflow: hidden;
        padding: 0 15px 120px;
    }
    /* contents */
    .contents {}
    .contents>*:first-child,
    .contents>*:first-child>[class*="heading-lv"] {
        margin-top: 0 !important;
    }
    [class*="contents-wrap"]>*:first-child,
    [class*="contents-wrap"]>*:first-child>[class*="heading-lv"] {
        margin-top: 0 !important;
    }
    /* sidebar */
    .sidebar {}
    /* ------------------------------------------------------
   * Assist
  ------------------------------------------------------ */
    .Assist {}
    .AssistClone {
        position: fixed;
        top: 100%;
        left: 0;
        z-index: 10000;
        width: 100%;
        background-color: #2b2b2b;
    }
    .AssistClone.is-hidden {
        display: none;
    }
    body.is-active-menu .AssistClone[data-button-count="2"] {
        height: calc(100vh - (45px + 1px) * 2);
    }
    body.is-active-menu .AssistClone[data-button-count="3"] {
        height: calc(100vh - (45px + 1px) * 3);
    }
    body.is-active-modal .AssistClone,
    body.is-active-search .AssistClone {
        z-index: 1000;
    }
    body.is-active-colorbox .AssistClone {
        z-index: 9999;
    }
    .AssistNavi {
        position: relative;
    }
    .assist-wrap {
        position: relative;
    }
    .assist-wrap-child {
        overflow-y: auto;
    }
    .assist-wrap-v2 {
        background-color: #444;
    }
    .assist-wrap-v3 {
        padding: 15px 15px 10px;
        background-color: #2b2b2b;
    }
    .assist-wrap-v3 .footer-copyright,
    .assist-wrap-v3 .footer-utility {
        display: none;
    }
    /* ----- assist-utility----- */
    .assist-utility {
        display: none;
        position: fixed;
        /* top: 120px; */
        left: 0;
        z-index: 3001;
        width: 100%;
        padding: 20px 15px;
        overflow-y: auto;
    }
    .assist-utility .utility_heading {
        position: relative;
        margin-bottom: 2em;
    }
    .assist-utility[data-utility="search"] .utility_heading {
        padding-top: 42px;
    }
    .assist-utility .utility_heading .utility_title {
        padding-right: 35px;
        color: #fff;
        font-size: 2.8rem;
        line-height: 1.5;
    }
    .assist-utility .utility_heading .utility_close {
        position: absolute;
        top: 5px;
        right: 0;
    }
    .assist-utility .utility_heading .utility_close>a {
        display: block;
        position: relative;
        width: 28px;
        height: 28px;
        text-indent: -9999em;
        outline: none;
    }
    .assist-utility .utility_heading .utility_close>a::before,
    .assist-utility .utility_heading .utility_close>a::after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 30px;
        height: 1px;
        margin: 0 0 0 -15px;
        background-color: #fff;
        content: "";
    }
    .assist-utility .utility_heading .utility_close>a::before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .assist-utility .utility_heading .utility_close>a::after {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .assist-utility .utility_content>*:first-child,
    .assist-utility .utility_content>*:first-child>[class*="heading-lv"] {
        margin-top: 0 !important;
    }
    .assist-utility .utility_links {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
    }
    .assist-utility .utility_links>li {
        display: -webkit-flex;
        display: flex;
        width: 100%;
        margin-top: 1.25em;
        margin-left: 20px;
    }
    .assist-utility .utility_links[data-count-sp="1"]>li:nth-child(-n+1) {
        margin-top: 0;
    }
    .assist-utility .utility_links[data-count-sp="1"]>li:nth-child(n+1) {
        margin-left: 0;
    }
    .assist-utility .utility_links>li>a {
        display: -webkit-flex;
        display: flex;
        -webkit-justify-content: center;
        justify-content: center;
        -webkit-align-items: center;
        align-items: center;
        width: 100%;
        padding: 15px;
        background-color: #fff;
        color: #333;
        font-size: 1.6rem;
        line-height: 1.5;
        text-decoration: none;
    }
    .assist-utility .utility_links>li>a>.utility_links_label {
        display: block;
        position: relative;
        width: 100%;
        padding: 0 20px;
        text-align: center;
    }
    .assist-utility .utility_links>li>a>.utility_links_label::after {
        position: absolute;
        right: 4px;
        top: 50%;
        width: 10px;
        height: 10px;
        margin: -5px 0 0 0;
        border-top: 1px solid #ff2222;
        border-right: 1px solid #ff2222;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    .assist-utility .utility_contact_guide {}
    .assist-utility .utility_contact_guide>dt {
        margin-bottom: 1em;
        color: #fff;
        font-size: 1.6rem;
        line-height: 1.5;
    }
    /* ----- assist-search ----- */
    .assist-search {
        display: none;
        position: fixed;
        top: 210px;
        left: 0;
        z-index: 9999;
        width: 100%;
        padding: 0 15px;
    }
    .assist-search .search_area {
        position: relative;
    }
    .assist-search .search_area .search_box {
        width: 100%;
        background-color: #fff;
    }
    .assist-search .search_area .search_close {
        position: absolute;
        top: -65px;
        right: 0;
    }
    .assist-search .search_area .search_close>a {
        display: block;
        position: relative;
        width: 28px;
        height: 28px;
        text-indent: -9999em;
        outline: none;
    }
    .assist-search .search_area .search_close>a::before,
    .assist-search .search_area .search_close>a::after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 30px;
        height: 1px;
        margin: 0 0 0 -15px;
        background-color: #fff;
        content: "";
    }
    .assist-search .search_area .search_close>a::before {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .assist-search .search_area .search_close>a::after {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    /* ----- assist-navi ----- */
    .assist-navi {
        position: fixed;
        left: 0;
        bottom: 0;
        z-index: 9999;
        width: 100%;
    }
    .assist-navi.is-ride {
        position: absolute;
        bottom: 0 !important;
    }
    body.is-active-modal .assist-navi {
        z-index: 1000;
    }
    body.is-active-search .assist-navi {
        z-index: 9997;
    }
    .assist-navi .navi_button {}
    .assist-navi .navi_button .navi_trigger {
        display: block;
        width: calc(100vw - 60px);
        position: relative;
        z-index: 9999;
        padding: 14px 35px 14px 15px;
        background-color: #666;
        color: #fff;
        font-size: 1.3rem;
        font-weight: 700;
        text-decoration: none;
    }
    .assist-navi .navi_button .navi_trigger::after {
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 14px;
        z-index: 2;
        width: 13px;
        height: 13px;
        margin: -3px 0 0 0;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    .assist-navi .navi_button .navi_trigger.is-active {
        width: 100vw;
        padding-right: 50px;
    }
    .assist-navi .navi_button .navi_trigger.is-active::after {
        right: 18px;
        margin-top: -10px;
        -webkit-transform: rotate(-135deg);
        transform: rotate(-135deg);
    }
    .assist-navi .navi_panel {
        display: none;
        padding: 0 0 145px 0;
    }
    .assist-navi .navi_panel .navi_follow {
        max-height: 100vh;
        border-top: 1px solid #dfdfe3;
        overflow-y: auto;
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_item {}
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping {}
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_title {
        position: relative;
        padding: 13px 100px 13px 15px;
        border-bottom: 1px solid #dfdfe3;
        background-color: #666;
        color: #fff;
        font-size: 1.5rem;
        font-weight: 700;
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_title::before,
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_title::after {
        position: absolute;
        top: 50%;
        right: 15px;
        width: 19px;
        height: 1px;
        background-color: #fff;
        content: "";
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_title::after {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_title.is-active::after {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_links {
        display: none;
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_links>li {
        border-bottom: 1px solid #dfdfe3;
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_links>li>a {
        display: block;
        position: relative;
        padding: 13px 70px 13px 15px;
        color: #fff;
        background-color: #666;
    }
    .assist-navi .navi_panel .navi_follow .navi_follow_grouping .navi_follow_links>li>a::after {
        display: inline-block;
        position: absolute;
        top: 50%;
        right: 15px;
        width: 10px;
        height: 10px;
        margin: -5px 0 0 0;
        border-top: 1px solid #fff;
        border-right: 1px solid #fff;
        vertical-align: middle;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    /* ----- assist-overlay ----- */
    .assist-overlay {
        display: none;
        position: fixed;
        top: 0;
        left: 0;
        z-index: 2000;
        width: 100%;
        height: 100%;
        background-color: rgba(0, 0, 0, .8);
    }
    .AssistModal .assist-overlay {
        z-index: 3000;
    }
    .AssistSearch .assist-overlay {
        z-index: 9998;
    }
    /* ------------------------------------------------------
   * Footer
  ------------------------------------------------------ */
    .Footer {
        position: relative;
        z-index: 10001;
    }
    .Footer.is-loaded {
        position: static;
        z-index: 1;
    }
    .FooterBody {}
    .footer-wrap {
        position: relative;
    }
    .footer-wrap-v2 {
        background-color: #444;
    }
    .footer-wrap-v3 {
        padding: 25px 15px 10px;
        background-color: #2b2b2b;
    }
    /* ----- footer-assist ----- */
    .footer-assist {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        -webkit-justify-content: flex-end;
        justify-content: flex-end;
    }
    .footer-assist .assist_buttons {
        position: absolute;
        bottom: 0;
        right: 0;
        z-index: 9999;
    }
    body.is-active-search .footer-assist .assist_buttons {
        z-index: 9997;
    }
    body.is-active-modal .footer-assist .assist_buttons {
        z-index: 1000;
    }
    .footer-assist .assist_buttons>li {
        height: 45px;
        margin-bottom: 1px;
    }
    .footer-wrap .footer-assist .assist_buttons>li.type-menu {
        display: none !important;
    }
    .footer-assist .assist_buttons>li>a {
        display: block;
        position: relative;
        width: 45px;
        height: 45px;
        color: #fff;
        font-size: .9rem;
        font-weight: 300;
        text-decoration: none;
        text-align: center;
        text-indent: -9999em;
        outline: none;
    }
    .footer-assist .assist_buttons>li.type-pagetop>a {
        background-color: #666;
    }
    .footer-assist .assist_buttons>li.type-pagetop>a::after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px;
        height: 10px;
        margin: -2px 0 0 -5px;
        border-top: 1px solid #fff;
        border-left: 1px solid #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    .footer-assist .assist_buttons>li.type-menu>a {
        background-color: #444;
    }
    .footer-assist .assist_buttons>li.type-menu>a::before,
    .footer-assist .assist_buttons>li.type-menu>a::after,
    .footer-assist .assist_buttons>li.type-menu>a>.assist_label::before {
        position: absolute;
        left: 50%;
        width: 16px;
        height: 1px;
        margin: 0 0 0 -8px;
        background-color: #fff;
        content: "";
    }
    .footer-assist .assist_buttons>li.type-menu>a::before {
        top: 16px;
    }
    .footer-assist .assist_buttons>li.type-menu>a>.assist_label::before {
        top: 22px;
    }
    .footer-assist .assist_buttons>li.type-menu>a::after {
        top: 28px;
    }
    .footer-assist .assist_buttons>li.type-menu>a.is-active::before,
    .footer-assist .assist_buttons>li.type-menu>a.is-active::after {
        top: 20px;
        width: 19px;
    }
    .footer-assist .assist_buttons>li.type-menu>a.is-active::before {
        -webkit-transform: rotate(-45deg);
        transform: rotate(-45deg);
    }
    .footer-assist .assist_buttons>li.type-menu>a.is-active::after {
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    .footer-assist .assist_buttons>li.type-menu>a.is-active>.assist_label::before {
        display: none;
    }
    .footer-assist .assist_buttons>li.type-search>a {
        background-color: #EB2E28;
    }
    /* .footer-assist .assist_buttons > li.type-search > a.is-active {
    visibility: hidden;
  } */
    .footer-assist .assist_buttons>li.type-search>a::before,
    .footer-assist .assist_buttons>li.type-search>a::after {
        position: absolute;
        content: "";
    }
    .footer-assist .assist_buttons>li.type-search>a::before {
        top: 13px;
        left: 14px;
        width: 14px;
        height: 14px;
        border: 1px solid #fff;
        border-radius: 50%;
    }
    .footer-assist .assist_buttons>li.type-search>a::after {
        top: 27px;
        left: 24px;
        width: 8px;
        height: 1px;
        background-color: #fff;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
    }
    /* ----- footer-policy ----- */
    .footer-policy {
        padding: 15px;
    }
    .AssistClone .footer-policy {
        background-color: #444;
    }
    .footer-policy .policy_box {
        padding: 15px;
        background-color: #2b2b2b;
    }
    .footer-policy .policy_text {
        margin-bottom: 1em;
        color: #ccc;
        font-size: 1.1rem;
        font-weight: 200;
    }
    .footer-policy .policy_action {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row nowrap;
        flex-flow: row nowrap;
        -webkit-align-items: center;
        align-items: center;
    }
    .footer-policy .policy_action>[class*="policy_"] {
        display: block;
        min-width: 86px;
        margin-right: 7px;
        padding: 5px;
        border: none;
        background-color: #4b4b4b;
        color: #fff;
        font-size: 1.0rem;
        font-weight: 200;
        line-height: 1.5;
        text-decoration: none;
        text-align: center;
    }
    /* ----- footer-sitemap ----- */
    .footer-sitemap {
        position: relative;
        padding: 0 0 15px 0;
        border-top: 1px solid #444;
    }
    /* tab */
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list {}
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li+li {
        border-top: 1px solid #333;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a {
        display: -webkit-flex;
        display: flex;
        position: relative;
        width: 100%;
        padding: 12px 40px 12px 15px;
        color: #fff;
        font-size: 1.4rem;
        line-height: 1.25;
        text-decoration: none;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::before,
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::after {
        position: absolute;
        top: 50%;
        right: 11px;
        width: 18px;
        height: 1px;
        background-color: #999;
        content: "";
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a::after {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a.is-active {
        background-color: #fff;
        color: #EB2E28;
        font-weight: 700;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a.is-active::before,
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a.is-active::after {
        background-color: #666;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a.is-active::after {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_navi .sitemap_tab_list>li>a>.sitemap_tab_label {}
    .footer-sitemap .sitemap_tab .sitemap_tab_detail {
        display: none;
        padding: 0 15px 20px;
        background-color: #fff;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_title>a {
        color: #333;
        font-size: 1.3rem;
        font-weight: 700;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_links {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-top: .75em;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_links>li {
        width: calc((100% - 15px) / 2);
        margin-top: .75em;
        margin-left: 15px;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_links>li:nth-child(-n+2) {
        margin-top: 0;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_links>li:nth-child(2n+1) {
        margin-left: 0;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_detail .sitemap_tab_links>li>a {
        color: #333;
        font-size: 1.3rem;
        line-height: 1.25;
    }
    .footer-sitemap .sitemap_tab .sitemap_tab_panel {
        display: none;
    }
    /* menu */
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li+li {
        border-top: 1px solid #333;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a {
        display: -webkit-flex;
        display: flex;
        position: relative;
        width: 100%;
        padding: 12px 40px 12px 15px;
        color: #fff;
        font-size: 1.4rem;
        line-height: 1.25;
        text-decoration: none;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a::before,
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a::after {
        position: absolute;
        top: 50%;
        right: 11px;
        width: 18px;
        height: 1px;
        background-color: #999;
        content: "";
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a::after {
        -webkit-transform: rotate(90deg);
        transform: rotate(90deg);
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a.is-active {
        background-color: #fff;
        color: #EB2E28;
        font-weight: 700;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a.is-active::before,
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a.is-active::after {
        background-color: #666;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_navi .sitemap_menu_list>li>a.is-active::after {
        -webkit-transform: rotate(0deg);
        transform: rotate(0deg);
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail {
        display: none;
        padding: 0 15px 20px;
        background-color: #fff;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_title>a {
        color: #333;
        font-size: 1.3rem;
        font-weight: 700;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_links {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        margin-top: .75em;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_links>li {
        width: calc((100% - 15px) / 2);
        margin-top: .75em;
        margin-left: 15px;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_links>li:nth-child(-n+2) {
        margin-top: 0;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_links>li:nth-child(2n+1) {
        margin-left: 0;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_detail .sitemap_menu_links>li>a {
        color: #333;
        font-size: 1.3rem;
        line-height: 1.25;
    }
    .footer-sitemap .sitemap_menu .sitemap_menu_panel {
        display: none;
    }
    /* sitemap_links */
    .footer-sitemap .sitemap_links {
        padding: 12px 15px 0;
        border-top: 1px solid #333;
    }
    .footer-sitemap .sitemap_links>li {
        float: left;
        width: calc((100% - 15px) / 2);
        margin-top: 1em;
        margin-left: 15px;
    }
    .footer-sitemap .sitemap_links>li:nth-child(-n+2) {
        margin-top: 0;
    }
    .footer-sitemap .sitemap_links>li:nth-child(2n+1) {
        clear: left;
        margin-left: 0;
    }
    .footer-sitemap .sitemap_links>li>a {
        display: inline-block;
        position: relative;
        padding-right: 17px;
        color: #fff;
        font-size: 1.4rem;
        font-weight: 500;
        text-decoration: none;
    }
    .footer-sitemap .sitemap_links>li>a::after {
        position: absolute;
        right: 0;
        top: 50%;
        width: 8px;
        height: 8px;
        margin: -4px 0 0 0;
        border-top: 1px solid #e3e3e3;
        border-right: 1px solid #e3e3e3;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    /* ----- footer-identity ----- */
    .footer-identity {}
    /* ----- footer-guide ----- */
    .footer-guide {}
    .footer-guide .guide_menu>li {
        float: left;
        width: calc((100% - 15px) / 2);
        margin-top: .5em;
        margin-left: 15px;
    }
    .footer-guide .guide_menu>li:nth-child(-n+2) {
        margin-top: 0;
    }
    .footer-guide .guide_menu>li:nth-child(2n+1) {
        clear: left;
        margin-left: 0;
    }
    .footer-guide .guide_menu>li>a {
        color: #fff;
        font-size: 1.3rem;
        font-weight: 200;
    }
    /* ----- footer-copyright ----- */
    .footer-copyright {
        margin-top: 1em;
        line-height: 1;
    }
    .footer-copyright>small {
        color: #999;
        font-size: 1.2rem;
    }
    /* ----- footer-utility ----- */
    .footer-utility {
        margin: .5em -15px 0;
    }
    .footer-utility .utility_links {
        display: -webkit-flex;
        display: flex;
        -webkit-flex-flow: row wrap;
        flex-flow: row wrap;
        float: left;
        padding-left: 10px;
    }
    .footer-utility .utility_links>li {
        display: -webkit-flex;
        display: flex;
        margin-right: 5px;
    }
    .footer-utility .utility_links>li>a {
        display: -webkit-flex;
        display: flex;
        position: relative;
        width: 30px;
        height: 45px;
        text-indent: -9999em;
        outline: none;
    }
    .footer-utility .utility_links>li>a::after {
        position: absolute;
        top: 50%;
        left: 50%;
        content: "";
    }
    .footer-utility .utility_links>li.type-sitemap>a::after {
        margin: -8px 0 0 -10px;
    }
    .footer-utility .utility_links>li.type-search>a::after {
        margin: -8px 0 0 -10px;
    }
    .footer-utility .utility_links>li.type-contact>a::after {
        margin: -7px 0 0 -10px;
    }
    .footer-utility .utility_links>li.type-lang>a::after {
        margin: -10px 0 0 -10px;
    }
    .footer-utility .utility_pagetop {
        float: right;
    }
    .footer-utility .utility_pagetop>a {
        display: block;
        position: relative;
        width: 45px;
        height: 45px;
        border-left: 1px solid #666;
        text-indent: -9999em;
        outline: none;
    }
    .footer-utility .utility_pagetop>a::after {
        position: absolute;
        top: 50%;
        left: 50%;
        width: 10px;
        height: 10px;
        margin: 0 0 0 -5px;
        border-top: 1px solid #666;
        border-left: 1px solid #666;
        -webkit-transform: rotate(45deg);
        transform: rotate(45deg);
        content: "";
    }
    /* ------------------------------------------------------
   * Other
  ------------------------------------------------------ */
    /* ------------------------------------------------------
   * Clearfix
  ------------------------------------------------------ */
    .HeaderBody::after,
    .container::after,
    .assist-wrap-v3::after,
    .footer-wrap-v3::after,
    .footer-sitemap .sitemap_links::after,
    .footer-sitemap .sitemap_tab .sitemap_tab_panel .sitemap_tab_links::after,
    .footer-guide .guide_menu::after,
    .footer-utility::after {
        display: block;
        clear: both;
        content: "";
    }
}


/* ======================================================
 * Media Queries
====================================================== */

@media only screen and (min-width: 320px) and (max-width: 767px) {}

@media only screen and (max-width: 736px) {}

@media only screen and (max-width: 667px) {}

@media only screen and (max-width: 640px) {}

@media only screen and (max-width: 568px) {}

@media only screen and (max-width: 480px) {}

@media only screen and (max-width: 414px) {}

@media only screen and (max-width: 375px) {}

@media only screen and (max-width: 360px) {}

@media only screen and (max-width: 320px) {}