@charset "UTF-8";

/*
maincolor: #005bac;
subcolor: #;
*/

header{
    background-repeat: no-repeat;
    background-position: top center;
    background-size: 100%;
    position: fixed;
    width: 100%;
    z-index: 1000;
    height: 60px;
    min-width: auto;
    width: 100%;
}

.header_wrap{
    width: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    height: 100%;
    background: #fff;
}

/*header 左側ロゴ部分*/
.header_inner_left{
    height: 100%;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    max-width: 70%;
    width: 70%;
}
    .header_inner_logo_wrap{
        cursor: pointer;
        margin-left: 10px;
        min-width: 65px;
    }
        .header_inner_logo_wrap a{

        }
            .header_inner_logo_wrap a img{
                width: 90%;
                max-width: 325px;
            }

/*ヘッダー SNS エリア*/
.header_sns_area_wrap{
    display: none;
}
    .header_sns_btn{

    }
        .header_sns_btn a{

        }
            .header_sns_btn a img{

            }

/*言語選択*/
/* 既存のスタイル */
.header_inner_right_select_language_wrap {
    margin: -30px 25px 0;
    position: relative;
    /* 絶対位置指定の基準となる */
}

.gtranslate_wrapper {
    display: flex;
    flex-direction: column-reverse;
    /* JAを一番上に表示 */
    align-items: center;
}

.gtranslate_wrapper a {
    height: 30px;
    width: 32px;
    display: flex;
    align-items: center;
    justify-content: center;
    color: #000;
    border-bottom: 1px solid #005bac;
    transition: all 0.5s ease;
    color: #005bac;
    background: #FFF;
    font-size: 13px;
}

.gtranslate_wrapper a:last-of-type {
    border-top: 1px solid #005bac;
}

/* JAリンクを絶対位置で配置 */
.gtranslate_wrapper a[data-gt-lang="ja"] {
    position: absolute;
    top: 0;
    left: 50%;
    transform: translateX(-50%);
    /* 中央に配置 */
}

/* ENとCNリンクを初期状態で非表示にし、絶対位置で配置する */
.gtranslate_wrapper a:not([data-gt-lang="ja"]) {
    position: absolute;
    transform: translateX(-50%) scaleY(0);
    opacity: 0;
    transition: transform 0.5s ease, opacity 0.5s ease;
}
.gtranslate_wrapper a[data-gt-lang="en"] {
    top: 30px;
    /* JAリンクの下に配置 */
    left: 50%;
}
.gtranslate_wrapper a[data-gt-lang="zh-CN"] {
    top: 60px;
    /* JAリンクの下に配置 */
    left: 50%;
}

/* ホバー時にENとCNリンクを表示 */
.gtranslate_wrapper:hover a[data-gt-lang="en"] {
    transform: translateX(-50%) scaleY(1);
    opacity: 1;
    top: 30px;
}
.gtranslate_wrapper:hover a[data-gt-lang="zh-CN"] {
    transform: translateX(-50%) scaleY(1);
    opacity: 1;
    top: 60px;
}





/*header 右側ナビ部分*/
.header_inner_right{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
}

    /*アイコン ナビ*/
    .header_icon_nav_wrap{
        position: fixed;
        top: 70px;
        right: 20px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-orient: vertical;
        -webkit-box-direction: normal;
        -webkit-flex-direction: column;
        -ms-flex-direction: column;
        flex-direction: column;
    }
        .header_icon_nav_btn{

        }
        .header_icon_nav_btn:not(:first-of-type){
            margin-top: 5px;
        }
            .header_icon_nav_btn a{

            }
                .header_icon_nav_btn a img{
                    width: 40px;
                }

    /*drawer ボタン*/
    .header_inner_drawer_wrap{
        margin: 0 18px 0 15px;
    }
        #g-nav {
            /*position:fixed;にし、z-indexの数値を大きくして前面へ*/
            position: fixed;
            opacity: 0.5;
            z-index: 999;
            /*ナビのスタート位置と形状*/
            top: 0;
            right: -120%;
            width: 100%;
            height: 100vh;
            /*ナビの高さ*/
            background: #FFF;
            /*動き*/
            transition: all 0.6s;
            padding: 60px 18px;
        }

        /*アクティブクラスがついたら位置を0に*/
        #g-nav.panelactive {
            opacity: 1;
            right: 0;
            overflow: auto;
            -webkit-overflow-scrolling: touch;
        }

        /*ナビゲーションの縦スクロール*/
        #g-nav.panelactive #g-nav-list {
            /*ナビの数が増えた場合縦スクロール*/
            /*position: fixed;*/
            z-index: 999;
            width: 100%;
            height: 100vh;
            /*表示する高さ*/
            /*overflow: auto;
            -webkit-overflow-scrolling: touch;*/
        }

        /*========= ボタンのためのCSS ===============*/
        .openbtn {
            /*position: fixed;*/
            z-index: 9999;
            /*ボタンを最前面に*/
            /*top: 10px;*/
            /*right: 10px;*/
            cursor: pointer;
            width: 32px;
            height: 30px;

            cursor: pointer;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-orient: vertical;
            -webkit-box-direction: normal;
            -webkit-flex-direction: column;
            -ms-flex-direction: column;
            flex-direction: column;
            -webkit-box-pack: justify;
            -webkit-justify-content: space-between;
            -ms-flex-pack: justify;
            justify-content: space-between;
            position: relative;
            /*z-index: 1;*/
        }
        .header_inner_drawer_wrap .active{
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
        }

        /*×に変化*/
        .openbtn span {
            display: inline-block;
            transition: all .4s;
            /*position: absolute;*/
            /*left: 14px;*/
            /*height: 3px;*/
            /*border-radius: 2px;*/
            /*background-color: #666;*/
            width: 100%;
            height: 5px;
            background: #005bac;
        }

        .openbtn span:nth-of-type(1) {
            /*top: 15px;*/
        }

        .openbtn span:nth-of-type(2) {
            /*top: 23px;*/
        }

        .openbtn span:nth-of-type(3) {
            /*top: 31px;*/
        }

        .openbtn.active span:nth-of-type(1) {
            top: 8px;
            left: 0px;
            transform: translateY(5px) rotate(-45deg);
            width: 100%;
            position: absolute;
        }

        .openbtn.active span:nth-of-type(2) {
            opacity: 0;
        }

        .openbtn.active span:nth-of-type(3) {
            top: 18px;
            left: 0px;
            transform: translateY(-5px) rotate(45deg);
            width: 100%;
            position: absolute;
        }

/*****************/
/*ドロワーメニュー内容*/
/*****************/

/*SNS*/
.drawer_inner_menu_sns_wrap{
    width: 165px;
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-pack: justify;
    -webkit-justify-content: space-between;
    -ms-flex-pack: justify;
    justify-content: space-between;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin: 0 auto 20px;
}
    .drawer_inner_menu_sns_btn{
        width: 32px;
    }
    .drawer_inner_menu_sns_btn:not(:first-child){
        margin-left: 15px;
    }
        .drawer_inner_menu_sns_btn a{

        }
            .drawer_inner_menu_sns_btn a img{

            }
/*Online Shop*/
.drawer_inner_menu_onlineshop_btn{
    text-decoration: none;
}
    .drawer_inner_menu_onlineshop_btn div{
        margin: 0 auto;
        width: 182px;
        height: 45px;
        border: 1px solid #ea5504;
        border-radius: 10px;
        padding: 0 45px 0 25px;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        color: #ea5504;
        -webkit-transition: all .3s;
        transition: all .3s;
        font-size: 16px;
        position: relative;
    }
    .drawer_inner_menu_onlineshop_btn div:hover{
        background: #ea5504;
        color: #fff;
    }

        .drawer_inner_menu_onlineshop_btn div span{

        }
            .drawer_inner_menu_onlineshop_btn div img{
                width: 32px;
                height: 32px;
                position: absolute;
                right: 13px;
            }
            .drawer_inner_menu_onlineshop_btn div img.drawer_inner_menu_onlineshop_img_normal{
                opacity: 1;
            }
                .drawer_inner_menu_onlineshop_btn div:hover .drawer_inner_menu_onlineshop_img_normal{
                    opacity: 0;
                }
            .drawer_inner_menu_onlineshop_btn div img.drawer_inner_menu_onlineshop_img_hover{
                opacity: 0;
            }
                .drawer_inner_menu_onlineshop_btn div:hover .drawer_inner_menu_onlineshop_img_hover{
                    opacity: 1;
                }

/*drawer sitemap*/
#g-nav ul.drawer_inner_menu_sitemap_wrap{
    margin: 50px 0;
}
    .drawer_sitemap_list{
        border-bottom: 1px solid #005bac;
        padding: 20px 0;
    }
    .drawer_sitemap_list:first-of-type{
        border-top: 1px solid #005bac;
    }
    .drawer_sitemap_list_aco{
        position: relative;
    }
        .drawer_sitemap_list_heading_ourshop{
            color: #ea5504;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
        }
            .drawer_sitemap_list_heading_ourshop a{
                color: #005bac;
            }
            .drawer_sitemap_list_heading_ourshop a:visited{
                color: #ea5504;
            }
            .drawer_sitemap_list_heading_ourshop img{
                margin-right: 10px;
                width: 32px;
                height: 32px;
            }
        .drawer_sitemap_list a{
            
        }
            .drawer_sitemap_list a div.drawer_sitemap_list_heading{
                -webkit-transition: all .3s;
                transition: all .3s;
                color: #005bac;
                font-size: 16px;
            }
        div.drawer_sitemap_list_accordion{
            cursor: pointer;
            width: 30px;
            height: 30px;
            position: absolute;
            right: 0;
            top: 18px;
        }
            div.drawer_sitemap_list_accordion span{

            }
            div.drawer_sitemap_list_accordion span::before,
            div.drawer_sitemap_list_accordion span::after{
                width: 18px;
            }
            div.drawer_sitemap_list_accordion span::before{
                content: "";
                display: block;
                width: 20px;
                height: 2px;
                background: #005bac;
                position: absolute;
                right: 5px;
                top: 50%;
                -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
            }
            .drawer_sitemap_list_aco div.drawer_sitemap_list_accordion span::after{
                content: "";
                display: block;
                width: 20px;
                height: 2px;
                background: #005bac;
                position: absolute;
                right: 5px;
                top: 50%;
                -webkit-transform: translateY(-50%);
                transform: translateY(-50%);
                background: #005bac;
                -webkit-transform: translateY(-50%) rotate(90deg);
                transform: translateY(-50%) rotate(90deg);
                -webkit-transition: all 0.3s;
                transition: all 0.3s;
            }
            .drawer_sitemap_list_aco_active div.drawer_sitemap_list_accordion span::after{
                -webkit-transform: rotate(0);
                transform: rotate(0);
                -webkit-transition: all 0.3s;
                transition: all 0.3s;
                -webkit-transform: translateY(-1px);
                transform: translateY(-1px);
            }
        .drawer_sitemap_list_accordion_inner{
            margin: 20px 0 5px 10px;
        }
        .drawer_sitemap_list_aco .drawer_sitemap_list_accordion_inner{
            display: none;
        }
        .drawer_sitemap_list_aco_active .drawer_sitemap_list_accordion_inner{
            display: block;
        }
            .drawer_sitemap_list_accordion_inner_list{
                margin-bottom: 5px;
                font-size: 14px;
            }
                .drawer_sitemap_list_accordion_inner_list a{

                }
                    .drawer_sitemap_list_accordion_inner_list a div.drawer_sitemap_list_accordion_inner_list_heading{
                        -webkit-transition: all 0.3s;
                        transition: all 0.3s;
                        font-size: 14px;
                        color: #000;
                    }
                    .drawer_sitemap_list_accordion_inner_list a div.drawer_sitemap_list_accordion_inner_list_heading_step{
                        display: -webkit-box;
                        display: -webkit-flex;
                        display: -ms-flexbox;
                        display: flex;
                        -webkit-box-align: center;
                        -webkit-align-items: center;
                        -ms-flex-align: center;
                        align-items: center;
                        color: #000;
                        margin: 5px 0;
                        font-size: 14px;
                    }
                        .drawer_sitemap_list_accordion_inner_list a div.drawer_sitemap_list_accordion_inner_list_heading_step::before{
                            content: '>';
                            /*background: url(../images/ico_arrow_right.svg) no-repeat center;*/
                            color: #005bac;
                            background-size: 100%;
                            width: 6px;
                            height: 19px;
                            margin-left: 15px;
                            margin-right: 10px;
                        }

/*drawer bottom logo wrap*/
.drawer_inner_menu_bottom_logo_wrap{
    display: -webkit-box;
    display: -webkit-flex;
    display: -ms-flexbox;
    display: flex;
    -webkit-box-align: center;
    -webkit-align-items: center;
    -ms-flex-align: center;
    align-items: center;
    margin-top: 55px;
    padding: 0 0 75px;
}
    .drawer_inner_menu_bottom_logo_wrap_inner{
        width: 50%;
        margin: 0;
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        -webkit-box-pack: center;
        -webkit-justify-content: center;
        -ms-flex-pack: center;
        justify-content: center;
        -webkit-transition: all .3s;
        transition: all .3s;
    }
        .drawer_inner_menu_bottom_logo_wrap_inner a{

        }
            .drawer_inner_menu_bottom_logo_wrap_inner a img{
                width: 85px;
            }



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

/**/
@media screen and (min-width: 960px) {

    header{
        height: 100px;
    }
    
    /*ヘッダー SNS エリア*/
    .header_sns_area_wrap {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        -webkit-box-align: center;
        -webkit-align-items: center;
        -ms-flex-align: center;
        align-items: center;
        margin-right: 30px;
    }
        .header_sns_btn {
            width: 46px;
            height: 46px;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            position: relative;
            -webkit-transition: all .3s;
            transition: all .3s;
            background: #fff;
            border: 3px solid #fff;
            border-radius: 100%;
        }
        .header_sns_btn:not(:first-of-type){
            margin-left: 15px;
        }
            .header_sns_btn a {
            
            }
                .header_sns_btn a img {
                
                }


    .header_inner_logo_wrap{
        margin-left: 30px;
    }
        .header_inner_logo_wrap a img{
            max-width: 450px;
        }

    /*drawer ボタン*/
    .header_inner_drawer_wrap{
        margin: 0 50px 0 65px;
    }
        .openbtn {
            width: 50px;
            height: 46px;
        }
            .openbtn span{
                height: 8px;
            }

    .header_inner_right_select_language_wrap{
        font-size: 18px;
        margin: -42px 0 0 50px;
    }
        .gtranslate_wrapper a{
            width: 50px;
            height: 46px;
            font-weight: 900;
            border-bottom: 2px solid #005bac;
            font-size: 18px;
        }
        .gtranslate_wrapper a:last-of-type {
            border-top: 2px solid #005bac;
        }
                /* ENとCNリンクを初期状態で非表示にし、絶対位置で配置する */
                .gtranslate_wrapper a:not([data-gt-lang="ja"]) {
                    width: 50px;
                    height: 46px;
                }
        
                /* ホバー時にENとCNリンクを表示 */
                .gtranslate_wrapper:hover a[data-gt-lang="en"] {
                    transform: translateX(-50%) scaleY(1);
                    opacity: 1;
                    top: 46px;
                }
        
                .gtranslate_wrapper:hover a[data-gt-lang="zh-CN"] {
                    transform: translateX(-50%) scaleY(1);
                    opacity: 1;
                    top: 92px;
                }
    
    /*アイコン ナビ*/
    .header_icon_nav_wrap{
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        -webkit-box-pack: justify;
        -webkit-justify-content: space-between;
        -ms-flex-pack: justify;
        justify-content: space-between;
        position: unset;
        flex-direction: row;
    }
        .header_icon_nav_btn{
            width: 46px;
            height: 46px;
            display: -webkit-box;
            display: -webkit-flex;
            display: -ms-flexbox;
            display: flex;
            -webkit-box-pack: center;
            -webkit-justify-content: center;
            -ms-flex-pack: center;
            justify-content: center;
            -webkit-box-align: center;
            -webkit-align-items: center;
            -ms-flex-align: center;
            align-items: center;
            position: relative;
            -webkit-transition: all .3s;
            transition: all .3s;
            border: 3px solid #fff;
            border-radius: 100%;
        }
        .header_icon_nav_btn:not(:first-of-type){
            margin-top: 0;
            margin-left: 10px;
        }
            .header_icon_nav_btn a{

            }
                .header_icon_nav_btn a img{
                    width: 40px;
                }
    
    /*ドロワーメニュー*/
    #g-nav{
        width: 500px;
        height: 100vh;
        max-height: 100vh;
        overflow-y: auto;
        padding-top: 140px;
        padding-left: 75px;
        padding-right: 75px;
        padding-bottom: 85px;
        right: 0;
        top: -1500px;
    }
        #g-nav.panelactive{
            top: 0;
        }

}

/**/
@media screen and (min-width: 1280px) {
	
}











