/* window-size + 17px */
/*  Clear Fix
--------------------------------------- */
.clearfix:after,
#content .content-inner:after,
#header #header-block-01 #header-block-01-inner:after,
#header #header-block-01 #header-block-01-inner #nav-category ul:after,
#header #header-block-01 #header-block-01-inner #nav-utility ul:after,
#header #header-block-02 #header-block-02-inner:after,
#header #header-block-02 #header-block-02-inner #nav-global ul:after,
.switch-modal .btn-list:after,
#header-top #header-block-01 #header-block-01-inner:after,
#header-top #header-block-02 #header-block-02-inner:after,
#footer #footer-block-01 #footer-block-01-inner:after,
#footer #footer-block-02:after,
#footer #nav-footer-01 ul:after,
#footer #nav-footer-tablet ul:after,
#footer #nav-footer-02:after,
#footer #nav-footer-03 ul:after,
#footer #nav-footer-04 ul:after
{
    display: table;
    clear: both; 

    content: '';
}

.icon-bullet-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90e'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-right-01:before,
#nav-global-sp ul li a span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e902'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-right-02:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e906'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-top-01:before,
#footer #nav-page-top-01-sp span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e907'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-top-02:before,
#nav-global-sp ul li.type-04.active .lang-container span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e903'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-btm-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e904'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-btm-02:before,
#nav-global-sp ul li.type-04 .lang-container span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e900'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-left-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e905'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-arrow-left-02:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e901'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-circle-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90a'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-business-01:before,
#footer .btn-members-sp.type-02 a span:before,
#footer #nav-footer-02 .btn-members.type-02 a span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e908'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-kuroneko-01:before,
#footer .btn-members-sp.type-01 a span:before,
#footer #nav-footer-02 .btn-members.type-01 a span:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90b'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-lang-01:before,
#nav-global-sp ul li.type-04 .lang-container:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90c'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-hamburger-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90d'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-hamburger-02:before,
#header #header-block-02 #header-block-02-inner #btn-hamburger:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e916'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-map-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e90f'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-close-01:before,
.switch-modal .btn-close:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e910'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-close-02:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e909'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-close-03:before,
#header #header-block-02 #header-block-02-inner #btn-site-search-close span:before,
#nav-global-sp-close:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e915'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-open-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e913'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-movie-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e911'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-window-01:before,
#nav-global-sp ul li.type-03 a.external span:before,
#footer #nav-footer-tablet ul li.external span:before,
#footer #nav-footer-02 .list-02 li.external a:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e912'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

.icon-search-01:before
{
    font-family: 'iconfont' !important;
    font-weight: normal;
    font-style: normal;
    font-variant: normal;
    line-height: 1;

    content: '\e914'; 
    text-transform: none;

    speak: none;
    -webkit-font-smoothing: antialiased;
    -moz-osx-font-smoothing: grayscale;
}

/* -------------------------------------------------------------------

    Content

-------------------------------------------------------------------- */
/* Container
--------------------------------------- */
#container
{
    position: relative;
}

/* Content
--------------------------------------- */
#content
{
    padding-bottom: 48px;
}
@media screen and (max-width: 760px)
{
    #content
    {
        padding-bottom: 35px;
    }
}
#content .content-inner
{
    max-width: 1122px; 
    margin: 0 auto;
    padding: 0 30px;
}
@media screen and (max-width: 760px)
{
    #content .content-inner
    {
        box-sizing: border-box;
        width: 100%; 
        padding: 0 15px;
    }
}
#content .content-inner.w-940
{
    max-width: 940px;
}
#content .content-inner #main
{
    float: right;

    width: 74.33155080213904%;
}
@media screen and (max-width: 1064px)
{
    #content .content-inner #main
    {
        float: none;

        width: 100%;
    }
}
#content .content-inner #sub
{
    float: left;

    width: 21.21212121212121%;
}
@media screen and (max-width: 1064px)
{
    #content .content-inner #sub
    {
        float: none;

        width: 100%;
    }
}
#content .content-inner.type-02 #main
{
    float: left;

    width: 74.33155080213904%;
}
@media screen and (max-width: 1064px)
{
    #content .content-inner.type-02 #main
    {
        float: none;

        width: 100%;
    }
}
#content .content-inner.type-02 #sub
{
    float: right;

    width: 22.99465240641711%;
}
@media screen and (max-width: 1064px)
{
    #content .content-inner.type-02 #sub
    {
        float: none;

        width: 100%;
    }
}
#content .content-inner-border
{
    margin-top: 70px;

    border-top: 2px solid #e1e3e9;
}
@media screen and (max-width: 760px)
{
    #content .content-inner-border
    {
        margin-top: 40px;
    }
}
#content .content-inner-bg-gray
{
    margin: 50px 0 80px;

    background-color: #f5f6f8;
}
@media screen and (max-width: 760px)
{
    #content .content-inner-bg-gray
    {
        margin: 25px 0 40px;
    }
}
#content .content-inner-bg-gray .content-inner-bg-gray-inner
{
    max-width: 1122px; 
    margin: 0 auto;
    padding: 50px 30px 60px;
}
@media screen and (max-width: 760px)
{
    #content .content-inner-bg-gray .content-inner-bg-gray-inner
    {
        box-sizing: border-box;
        width: 100%; 
        padding: 30px 15px 35px;
    }
}

/* -------------------------------------------------------------------

    Header

-------------------------------------------------------------------- */
#header *
{
    -webkit-transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
    transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
}

#header #header-block-01
{
    border-bottom: 1px solid #c6c9d3;
}
@media screen and (max-width: 760px)
{
    #header #header-block-01
    {
        display: none;
    }
}
#header #header-block-01 #header-block-01-inner
{
    margin: 0 auto;
}
#header #header-block-01 #header-block-01-inner #nav-category
{
    float: left;
}
#header #header-block-01 #header-block-01-inner #nav-category ul li
{
    float: left;

    width: 124px;
}
#header #header-block-01 #header-block-01-inner #nav-category ul li a
{
    font-size: 86%; 

    display: block;

    padding: 9px 0;

    text-align: center;

    color: #333;
}
#header #header-block-01 #header-block-01-inner #nav-category ul li a:active,
#header #header-block-01 #header-block-01-inner #nav-category ul li a:hover,
#header #header-block-01 #header-block-01-inner #nav-category ul li a:focus
{
    text-decoration: none; 

    color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #nav-category ul li.current a
{
    font-weight: bold; 

    color: #fff;
    background-color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #nav-category ul li.current a:active,
#header #header-block-01 #header-block-01-inner #nav-category ul li.current a:hover,
#header #header-block-01 #header-block-01-inner #nav-category ul li.current a:focus
{
    color: #fff;
}
#header #header-block-01 #header-block-01-inner #nav-utility
{
    float: right; 

    padding-top: 5px;
}
#header #header-block-01 #header-block-01-inner #nav-utility ul li
{
    float: left; 

    margin-right: 24px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-01 #header-block-01-inner #nav-utility ul li
    {
        margin-right: 12px;
    }
}
#header #header-block-01 #header-block-01-inner #nav-utility ul li.current a
{
    color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #nav-utility ul li a
{
    font-size: 86%; 

    color: #333;
}
#header #header-block-01 #header-block-01-inner #nav-utility ul li a:active,
#header #header-block-01 #header-block-01-inner #nav-utility ul li a:focus,
#header #header-block-01 #header-block-01-inner #nav-utility ul li a:hover
{
    text-decoration: none; 

    color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #btn-fs-switch
{
    float: right; 

    margin-top: 8px;
}
#header #header-block-01 #header-block-01-inner #btn-fs-switch a
{
    font-size: 86%; 
    line-height: 1.1;

    display: block;

    padding: 4px 12px 5px;

    color: #333;
    border: 1px solid #c6c9d3;
    border-radius: 8px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-01 #header-block-01-inner #btn-fs-switch a
    {
        padding: 4px 10px 5px;
    }
}
#header #header-block-01 #header-block-01-inner #btn-fs-switch a:active,
#header #header-block-01 #header-block-01-inner #btn-fs-switch a:hover,
#header #header-block-01 #header-block-01-inner #btn-fs-switch a:focus
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch
{
    float: right; 

    margin: 8px 10px 0 8px;
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch a
{
    font-size: 86%; 
    line-height: 1.1;

    display: block;
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:active,
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:hover,
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:focus
{
    text-decoration: none;
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:active span,
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:hover span,
#header #header-block-01 #header-block-01-inner #btn-lang-switch a:focus span
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch a span
{
    display: block;

    padding: 4px 12px 5px;

    color: #333; 
    border: 1px solid #c6c9d3;
    border-radius: 8px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-01 #header-block-01-inner #btn-lang-switch a span
    {
        padding: 4px 10px 5px;
    }
}
#header #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-02
{
    display: none;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-01
    {
        display: none;
    }
    #header #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-02
    {
        display: block;
    }
}

#header #header-block-02 #header-block-02-inner
{
    position: relative; 

    margin: 0 auto;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner
    {
        height: 60px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-hamburger
{
    line-height: 1.1;

    display: none;
    float: left;

    margin: 15px 0 0 10px;

    cursor: pointer; 
    text-align: center;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-hamburger
    {
        display: block;
    }
}
#header #header-block-02 #header-block-02-inner #btn-hamburger:before
{
    font-size: 20px; 

    display: block;

    vertical-align: middle;

    color: #10af9e;
}
#header #header-block-02 #header-block-02-inner #btn-hamburger .text
{
    font-size: 65%; 

    display: block;

    margin-top: 4px;

    color: #10af9e;
}
#header #header-block-02 #header-block-02-inner #site-logo
{
    float: left; 

    box-sizing: border-box;
    margin: 20px 30px 0 0;
    padding: 12px 35px 11px 30px;

    border-right: 1px solid #d0d2db;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-logo
    {
        margin: 27px 30px 0 15px;
        padding: 0;

        border-right: none;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #site-logo
    {
        position: absolute;
        top: 20px;
        left: 50%; 

        float: none;

        margin: 0 0 0 -73px;
    }
}
#header #header-block-02 #header-block-02-inner #site-logo img
{
    width: 160px;

    -webkit-backface-visibility: hidden;

            backface-visibility: hidden;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-logo img
    {
        width: 140px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #site-logo img
    {
        width: 120px;
    }
}
#header #header-block-02 #header-block-02-inner #nav-global
{
    overflow: hidden; 

    box-sizing: border-box;
    height: 90px;
    padding-top: 30px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #nav-global
    {
        height: 80px; 
        padding-top: 26px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #nav-global
    {
        display: none;
    }
}
@media screen and (max-width: 1182px)
{
    #header #header-block-02 #header-block-02-inner #nav-global.line-2
    {
        line-height: 1.5; 

        padding-top: 23px;
    }
    #header #header-block-02 #header-block-02-inner #nav-global.line-2 ul li
    {
        text-align: center; 

        background: url('/assets/img/bg/bg_border_05.gif') no-repeat 100% 4px;
    }
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #nav-global.line-2
    {
        padding-top: 17px;
    }
}
#header #header-block-02 #header-block-02-inner #nav-global ul li
{
    float: left;

    margin-right: 22px;
    padding-right: 23px;

    background: url('/assets/img/bg/bg_border_01.png') no-repeat 100% 8px;
}
@media screen and (max-width: 1360px)
{
    #header #header-block-02 #header-block-02-inner #nav-global ul li
    {
        margin-right: 14px;
        padding-right: 15px;

        background-position: 100% 6px;
    }
}
#header #header-block-02 #header-block-02-inner #nav-global ul li:last-child
{
    margin-right: 0;
    padding-right: 0;

    background: none;
}
#header #header-block-02 #header-block-02-inner #nav-global ul li.current a
{
    color: #10af9e;
}
#header #header-block-02 #header-block-02-inner #nav-global ul li a
{
    font-size: 129%; 

    display: block;

    color: #333;
}
@media screen and (max-width: 1360px)
{
    #header #header-block-02 #header-block-02-inner #nav-global ul li a
    {
        font-size: 108%;
    }
}
@media screen and (max-width: 1182px)
{
    #header #header-block-02 #header-block-02-inner #nav-global ul li a
    {
        font-size: 100%;
    }
}
#header #header-block-02 #header-block-02-inner #nav-global ul li a:active
{
    text-decoration: none;
}
#header #header-block-02 #header-block-02-inner #nav-global ul li a:hover,
#header #header-block-02 #header-block-02-inner #nav-global ul li a:focus
{
    text-decoration: none; 

    color: #10af9e;
}
#header #header-block-02 #header-block-02-inner #nav-global ul li a br
{
    display: none;
}
@media screen and (max-width: 1182px)
{
    #header #header-block-02 #header-block-02-inner #nav-global ul li a br
    {
        display: block;
    }
}
#header #header-block-02 #header-block-02-inner #site-search
{
    position: absolute;
    top: 25px;
    right: 120px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-search
    {
        z-index: 9999;
        top: 80px;
        right: inherit;
        left: 0;

        display: none;

        box-sizing: border-box;
        width: 100%;
        height: 100px;
        padding: 25px 30px 0;

        -webkit-transition: none;

        transition: none; 

        background-color: #10af9e;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #site-search
    {
        top: 60px;

        height: 72px; 
        padding: 19px 15px 0;
    }
}
#header #header-block-02 #header-block-02-inner #site-search p
{
    position: relative;
}
#header #header-block-02 #header-block-02-inner #site-search p .input-text
{
    font-size: 86%;

    box-sizing: border-box;
    width: 200px;
    height: 40px;
    padding: 0 40px 0 15px;

    -webkit-transition: none;

    transition: none; 

    border: 1px solid #eaeaf0;
    border-radius: 20px;
    background-color: #eaeaf0;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-search p .input-text
    {
        font-size: 115%; 

        width: 100%;
        height: 50px;
        padding: 0 70px 0 30px;

        border: 1px solid #fff;
        border-radius: 40px;
        background-color: #fff;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #site-search p .input-text
    {
        font-size: 86%; 

        height: 35px;
        padding: 0 40px 0 14px;

        border-radius: 20px;
    }
}
#header #header-block-02 #header-block-02-inner #site-search p .search-img-pc
{
    position: absolute;
    top: 12px;
    right: 15px;

    width: 17px;
    height: 17px;

    -webkit-transition: none;

    transition: none;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-search p .search-img-pc
    {
        display: none;
    }
}
#header #header-block-02 #header-block-02-inner #site-search p .search-img-sp
{
    position: absolute;
    top: 12px;
    right: 30px;

    display: none;

    width: 25px;

    -webkit-transition: none;

    transition: none;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #site-search p .search-img-sp
    {
        display: block;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #site-search p .search-img-sp
    {
        top: 10px;
        right: 12px;

        width: 15px;
        height: 15px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-site-search
{
    display: none;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-site-search
    {
        line-height: 1.1;

        position: absolute;
        top: 14px;
        right: 106px;

        display: block;

        cursor: pointer; 
        text-align: center;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search .site-search-btn .image
    {
        width: 28px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search .site-search-btn .text
    {
        font-size: 93%; 

        display: block;

        margin-top: 8px;

        color: #10af9e;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-site-search
    {
        top: 14px;
        right: 76px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search.type-02
    {
        right: 79px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search .site-search-btn .image
    {
        width: 20px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search .site-search-btn .text
    {
        font-size: 65%; 

        display: block;

        margin-top: 4px;

        color: #10af9e;
    }
}
#header #header-block-02 #header-block-02-inner #btn-site-search-close
{
    display: none;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-site-search-close
    {
        position: absolute;
        z-index: 9999;
        top: 0;
        right: 80px;

        width: 80px;
        height: 80px;

        cursor: pointer; 

        background-color: #10af9e;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search-close span
    {
        display: block; 

        padding: 26px 0 0 29px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search-close span:before
    {
        font-size: 22px; 

        vertical-align: middle;

        color: #fff;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-site-search-close
    {
        top: 0;
        right: 60px;

        width: 60px;
        height: 60px;
    }
    #header #header-block-02 #header-block-02-inner #btn-site-search-close span
    {
        padding: 17px 0 0 19px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login
{
    font-size: 79%;

    position: absolute;
    top: 0;
    right: 0;

    box-sizing: border-box;

    text-align: center;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-login
    {
        font-size: 72%;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login
    {
        font-size: 65%; 
        line-height: 1.2;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a
{
    padding-top: 15px;

    color: #333;
    background-color: #fcff00;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a
    {
        padding-top: 10px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:active,
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:focus,
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:hover
{
    text-decoration: none; 

    background-color: #ffd600;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:active,
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:focus,
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:hover
    {
        background-color: #fcff00;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:active .img,
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:focus .img,
#header #header-block-02 #header-block-02-inner #btn-login.type-01 a:hover .img
{
    -webkit-animation: sprite-login-01 1s steps(10) forwards;
            animation: sprite-login-01 1s steps(10) forwards;
}

@-webkit-keyframes sprite-login-01
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -280px;
    }
}

@keyframes sprite-login-01
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -280px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:active .img,
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:focus .img,
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 a:hover .img
    {
        -webkit-animation: none;
                animation: none;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-01 .img
{
    width: 31px;
    height: 28px;

    background: url('/assets/img/icon/icon_members_01.png') no-repeat 0 0;
    background-size: 31px 308px;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 .img
    {
        width: 20px;
        height: 18px;

        background-size: 20px 198px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-01 .text
{
    padding-top: 4px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 .text
    {
        padding-top: 3px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-01 .text
    {
        padding-top: 4px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a
{
    padding-top: 13px;

    color: #fff;
    background-color: #006f80;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a
    {
        width: 70px; 
        padding-top: 8px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:active,
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:focus,
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:hover
{
    text-decoration: none; 

    background-color: #008a9f;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:active,
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:focus,
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:hover
    {
        background-color: #006f80;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:active .img,
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:focus .img,
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a:hover .img
{
    -webkit-animation: sprite-login-02 1s steps(14) forwards;
            animation: sprite-login-02 1s steps(14) forwards;
}

@-webkit-keyframes sprite-login-02
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -420px;
    }
}

@keyframes sprite-login-02
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -420px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:active .img,
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:focus .img,
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a:hover .img
    {
        -webkit-animation: none;
                animation: none;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-02 a .img
{
    width: 30px;
    height: 30px;

    background: url('/assets/img/icon/icon_members_02.png') no-repeat 0 0;
    background-size: 30px 450px;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 a .img
    {
        width: 20px;
        height: 20px;

        background-size: 20px 300px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login.type-02 .text
{
    padding-top: 4px;
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login.type-02 .text
    {
        padding-top: 6px;

        -webkit-transform: scale(.8);

                transform: scale(.8);
    }
}
#header #header-block-02 #header-block-02-inner #btn-login a
{
    display: block;

    box-sizing: border-box;
    width: 100px;
    height: 90px;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-login a
    {
        width: 80px;
        height: 80px;
    }
}
@media screen and (max-width: 760px)
{
    #header #header-block-02 #header-block-02-inner #btn-login a
    {
        width: 60px;
        height: 60px;
    }
}
#header #header-block-02 #header-block-02-inner #btn-login a .img
{
    display: block;
    overflow: hidden;

    margin: 0 auto;

    -webkit-transition-property: none;

    transition-property: none;
}
#header #header-block-02 #header-block-02-inner #btn-login .text
{
    line-height: 1.4; 

    display: block;
}
@media screen and (max-width: 1064px)
{
    #header #header-block-02 #header-block-02-inner #btn-login .text
    {
        line-height: 1.2;
    }
}

#nav-global-sp
{
    position: relative;

    display: none;
}
#nav-global-sp #nav-global-sp-inner.scroll
{
    overflow-y: scroll;
}
@media screen and (max-width: 760px)
{
    #nav-global-sp
    {
        position: fixed;
        z-index: 99999;
        top: 0;
        left: -100%;

        display: block;

        width: 85.9375%;

        background-color: #fff;
    }
}
#nav-global-sp .title-01
{
    font-size: 100%; 
    font-weight: bold;

    padding: 6px 15px 9px;

    color: #fff;
    background-color: #098377;
}
#nav-global-sp ul li
{
    border-bottom: 1px solid #10af9e;
}
#nav-global-sp ul li a
{
    font-weight: bold; 

    position: relative;

    display: block;

    padding: 12px 19px 12px 52px;

    color: #333;
}
#nav-global-sp ul li a:active,
#nav-global-sp ul li a:focus,
#nav-global-sp ul li a:hover
{
    text-decoration: none;
}
#nav-global-sp ul li a .image
{
    position: absolute;
    top: 11px;
    left: 9px;

    width: 32px;
}
#nav-global-sp ul li a span
{
    font-size: 100%; 

    position: relative;

    display: block;

    padding-right: 20px;
}
#nav-global-sp ul li a span:before
{
    font-size: 24px; 

    position: absolute;
    top: 2px;
    right: -6px;

    vertical-align: middle;

    color: #10af9e;
}
#nav-global-sp ul li ul
{
    border-top: 1px solid #10af9e;
}
#nav-global-sp ul li ul li
{
    border-bottom: 1px solid #e1e3e9;
}
#nav-global-sp ul li ul li a
{
    padding: 12px 19px 12px 15px;
}
#nav-global-sp ul li ul li a span
{
    font-size: 93%;
}
#nav-global-sp ul li ul li a span:before
{
    font-size: 18px; 

    top: 4px;
    right: -4px;
}
#nav-global-sp ul li ul li:last-child
{
    border-bottom: none;
}
#nav-global-sp ul li.type-02 a
{
    padding-left: 15px;
}
#nav-global-sp ul li.type-03
{
    border-bottom: 1px solid #e1e3e9;
    background-color: #f5f6f8;
}
#nav-global-sp ul li.type-03 a
{
    font-size: 79%; 

    padding: 6px 19px 7px 15px;
}
#nav-global-sp ul li.type-03 a span:before
{
    font-size: 18px; 

    top: 2px;
    right: -4px;
}
#nav-global-sp ul li.type-03 a.external
{
    position: relative;
}
#nav-global-sp ul li.type-03 a.external span
{
    padding-left: 30px;
}
#nav-global-sp ul li.type-03 a.external span:before
{
    font-size: 12px; 

    position: absolute;
    top: 6px;
    left: 5px;

    vertical-align: middle;

    color: #20a898;
}
#nav-global-sp ul li.type-04
{
    border-bottom: 1px solid #e1e3e9;
    background-color: #f5f6f8;
}
#nav-global-sp ul li.type-04.active ul
{
    max-height: 100em; 

    border-top: 1px solid #e1e3e9;
}
#nav-global-sp ul li.type-04 .lang-container
{
    font-weight: bold;

    position: relative;

    display: block;

    padding: 6px 19px 7px 45px;

    cursor: pointer; 

    color: #333;
}
#nav-global-sp ul li.type-04 .lang-container:before
{
    font-size: 20px; 

    position: absolute;
    top: 7px;
    left: 15px;

    vertical-align: middle;

    color: #10af9e;
}
#nav-global-sp ul li.type-04 .lang-container span
{
    font-size: 79%; 

    position: relative;

    display: block;

    padding-right: 20px;
}
#nav-global-sp ul li.type-04 .lang-container span:before
{
    font-size: 18px; 

    position: absolute;
    top: 2px;
    right: -4px;

    vertical-align: middle;

    color: #10af9e;
}
#nav-global-sp ul li.type-04 ul
{
    overflow: hidden;

    max-height: 0; 

    border-top: none;
}
#nav-global-sp ul li.type-04 ul li
{
    background-color: #fff;
}
#nav-global-sp ul li.type-04 ul li a span
{
    font-size: 79%;
}
#nav-global-sp .hand
{
    position: absolute;
    top: 100px;
    right: -38px;

    overflow: hidden;

    width: 50px;
    height: 42px;

    -webkit-transition-property: none;

    transition-property: none; 

    background: url('/assets/img/img/img_hand_01.png') no-repeat 0 0;
    background-size: 50px 504px;
}
#nav-global-sp .hand.moving
{
    -webkit-animation: sprite-hand .3s steps(11) forwards;
            animation: sprite-hand .3s steps(11) forwards;
}

@-webkit-keyframes sprite-hand
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -462px;
    }
}

@keyframes sprite-hand
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -462px;
    }
}

#nav-global-sp-close
{
    position: absolute;
    right: -9999px;

    display: none;
}
@media screen and (max-width: 760px)
{
    #nav-global-sp-close
    {
        position: fixed;
        z-index: 99999;
        top: 8px;
        right: 4.21875%;

        cursor: pointer;
    }
    #nav-global-sp-close:before
    {
        font-size: 20px; 

        vertical-align: middle;

        color: #fff;
    }
}

#nav-global-sp-overlay
{
    display: none;
}
@media screen and (max-width: 760px)
{
    #nav-global-sp-overlay
    {
        position: fixed;
        z-index: 99998;
        top: 0;
        left: 0;

        width: 100%;
        height: 120%;

        opacity: .85;

        -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=85)"; 
        background-color: #1ea697;
    }
}

.switch-modal
{
    position: fixed;
    z-index: 99998;
    left: 50%;

    display: none;

    width: 738px;
    margin-left: -369px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s;
    -webkit-transform: scale(.9);
            transform: scale(.9);
    -webkit-transform-origin: 50% 50%;
            transform-origin: 50% 50%; 

    opacity: 0; 

    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=0)";
}
.switch-modal.open
{
    -webkit-transform: scale(1);
            transform: scale(1); 

    opacity: 1; 

    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=100)";
}
.switch-modal .switch-modal-inner
{
    position: relative;
}
.switch-modal .title
{
    font-size: 229%;

    margin-bottom: 30px;

    text-align: center;
}
.switch-modal .btn-close
{
    position: absolute;
    top: -60px;
    right: 0;

    cursor: pointer;
}
.switch-modal .btn-close:before
{
    font-size: 39px; 

    vertical-align: middle;

    color: #10af9e;
}
.switch-modal .btn-list
{
    margin: 0 auto;
}
.switch-modal .btn-list.btn-3
{
    width: 546px;
}
.switch-modal .btn-list.btn-4
{
    font-size: 143%; 

    width: 738px;
}
.switch-modal .btn-list li
{
    position: relative;

    float: left;

    margin-left: 30px;

    text-align: center;
}
.switch-modal .btn-list li:first-child
{
    margin-left: 0;
}
.switch-modal .btn-list li.current .inner
{
    cursor: default !important; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
    box-shadow: 0 2px 0 0 #10af9e;
}
.switch-modal .btn-list li .inner.current
{
    cursor: default !important; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
    box-shadow: 0 2px 0 0 #10af9e;
}
.switch-modal .btn-list li .inner
{
    line-height: 1.1;

    display: table-cell;

    width: 160px;
    height: 136px;

    cursor: pointer;
    -webkit-transition: all .2s ease 0s;
    transition: all .2s ease 0s; 
    vertical-align: middle;

    color: #10af9e;
    border: 1px solid #c6c9d3;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 2px 0 0 #c6c9d3;
}
.switch-modal .btn-list li .inner:active,
.switch-modal .btn-list li .inner:hover,
.switch-modal .btn-list li .inner:focus
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
    box-shadow: 0 2px 0 0 #10af9e;
}
.switch-modal .btn-list li#font-S .text-01
{
    font-size: 208%;
}
.switch-modal .btn-list li#font-M .text-01
{
    font-size: 300%;
}
.switch-modal .btn-list li#font-L .text-01
{
    font-size: 400%;
}
.switch-modal .btn-list li .text-02
{
    display: block;

    width: 100%;
    margin-top: 10px;

    text-align: center;
}
.switch-modal .btn-submit
{
    box-sizing: border-box;
    width: 162px;
    margin: 30px auto 0;
    padding: 6px 0 9px;

    cursor: pointer;
    -webkit-transition: all .2s ease 0s;
    transition: all .2s ease 0s; 
    text-align: center;

    color: #10af9e;
    border: 1px solid #c6c9d3;
    border-radius: 5px;
    background-color: #fff;
    box-shadow: 0 2px 0 0 #c6c9d3;
}
.switch-modal .btn-submit:active,
.switch-modal .btn-submit:hover,
.switch-modal .btn-submit:focus
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
    box-shadow: 0 2px 0 0 #10af9e;
}

#switch-overlay
{
    position: fixed;
    z-index: 10001;
    top: 0;
    left: 0;

    display: none;

    width: 100%;
    height: 100%;

    cursor: pointer; 

    opacity: .8; 

    -ms-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)";
    background-color: #fff;
}

@media screen and (max-width: 1064px)
{
    #SS_Frame,
    #SS_Frame1,
    #SS_Frame2
    {
        display: none !important;
    }
}

/* header-top
--------------------------------------- */
#header-top
{
    box-sizing: border-box; 
    height: 105px;
    padding: 13px 30px 18px;
}
#header-top .nav-btn-02
{
    margin-bottom: 0;
}
@media screen and (max-width: 960px)
{
    #header-top
    {
        box-sizing: border-box; 
        height: auto;
        padding: 10px 2.34375% 8px 3.90625%;
    }
    #header-top.fixed
    {
        position: fixed;
        z-index: 9999;
        top: -79px;

        width: 100%;

        border-bottom: 1px solid #c6c9d3;
        background-color: #fff;
    }
}
@media screen and (max-width: 374px)
{
    #header-top
    {
        padding: 0 2.34375% 0 3.90625%;
    }
}
#header-top *
{
    -webkit-transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
    transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01
    {
        position: static;

        float: left;

        width: 10.667%;
        padding-top: 7px;

        text-align: center;
    }
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch
{
    float: right; 

    margin: 0 0 0 8px;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch
    {
        position: relative;
        z-index: 9999; 

        float: left;

        width: 100%;
        margin: 0;
    }
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a
{
    font-size: 86%; 
    line-height: 1.1;

    display: block;
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a:active,
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a:hover,
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a:focus
{
    text-decoration: none;
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span
{
    display: block;

    padding: 4px 12px 5px;

    color: #333; 
    border: 1px solid #c6c9d3;
    border-radius: 8px;
}
@media screen and (max-width: 1064px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span
    {
        padding: 4px 10px 5px;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span
    {
        display: inline-block;

        width: 100%;
        padding: 4px 0 5px; 

        color: #10af9e;
        border: none;
    }
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:active,
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:hover,
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:focus
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:active,
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:hover,
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a span:focus
    {
        color: #10af9e; 
        border: none;
        background-color: #fff;
    }
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .img01
{
    display: none;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .img01
    {
        display: block;

        width: 28px;
        margin: 0 auto;
    }
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .img01 img
    {
        width: 100%;
    }
}
@media screen and (max-width: 760px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .img01
    {
        width: 43.77%;
    }
}
#header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-02
{
    display: none;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-02
    {
        display: block;
    }
}
@media screen and (max-width: 960px) and (max-width: 660px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-02
    {
        position: relative;
        top: -6px;
        left: -35%;

        width: 169.7%;

        -webkit-transform: scale(.6);

                transform: scale(.6);
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-01 #header-block-01-inner #btn-lang-switch a .lang-01
    {
        display: none;
    }
}
#header-top #header-block-02 #header-block-02-inner
{
    position: relative; 

    margin: 0 auto;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner
    {
        overflow: hidden;
    }
}
#header-top #header-block-02 #header-block-02-inner #site-logo
{
    position: relative;
    top: -2px;

    float: left;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #site-logo
    {
        position: absolute;
        top: 15px;
        right: inherit;
        left: 23.5%;

        float: none;

        width: 39.553%;
        max-width: 212px;
        margin: auto;
        padding: 0;

        border-right: none;
    }
    #header-top #header-block-02 #header-block-02-inner #site-logo img
    {
        width: 100%;
    }
}
@media screen and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #site-logo
    {
        max-width: inherit;
    }
}
#header-top #header-block-02 #header-block-02-inner #site-logo img
{
    width: 220px;

    -webkit-transition: none;

    transition: none; 

    -webkit-backface-visibility: hidden; 

            backface-visibility: hidden;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #site-logo img
    {
        width: 100%;
    }
}
@media screen and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #site-logo img
    {
        width: 100%;
        max-width: 212px;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav
{
    float: right;

    padding: 10px 0 0;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li .top-header-br
{
    display: none;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li .text
{
    display: inline-block;

    vertical-align: middle;
}
@media screen and (max-width: 660px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li .text
    {
        position: relative;
        top: -6px;
        left: -35%;

        width: 169.7%;

        -webkit-transform: scale(.6);

                transform: scale(.6);
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a
{
    color: #000;
    background-color: #fcff00;
    box-shadow: 0 2px 0 0 #c7c900;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:active
{
    background-color: #ffd600 !important;
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, .15) inset !important;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:active
    {
        background-color: transparent !important;
        box-shadow: none !important;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:focus,
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:hover
{
    text-decoration: none;

    background-color: #ffd600;
    box-shadow: none;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:focus .img,
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:hover .img
{
    -webkit-animation: sprite-login-top 1s steps(10) forwards;
            animation: sprite-login-top 1s steps(10) forwards;
}

@-webkit-keyframes sprite-login-top
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -200px;
    }
}

@keyframes sprite-login-top
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -200px;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:focus .img,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:hover .img
    {
        -webkit-animation: none;
                animation: none;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a .img
{
    position: relative;
    top: 1px;

    display: inline-block;
    overflow: hidden;

    width: 22px;
    height: 20px;
    margin: 0 5px 0 0;

    -webkit-transition-property: none;
            transition-property: none;
    vertical-align: middle;

    background: url('/assets/img/icon/icon_members_01.png') no-repeat 0 0;
    background-size: 100% 220px;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a .img
    {
        display: block;

        width: 32px;
        height: 24px;
        margin: 0 auto 5px; 

        background-image: url('/assets/img/icon/icon_members_03.png');
        background-size: contain;
    }
}
@media screen and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a .img
    {
        width: 39.15%;
        max-width: 32px;
        height: auto;
        padding-top: 28.93%;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a
{
    padding: 10px 10px 9px;

    background-color: #006f80;
    box-shadow: 0 2px 0 0 #00343c;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:active
{
    background-color: #006f80 !important;
    box-shadow: 0 3px 0 0 #00343c inset !important;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:active
    {
        background-color: transparent !important;
        box-shadow: none !important;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:focus,
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:hover
{
    text-decoration: none;

    background-color: #008a9f;
    box-shadow: none;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:focus .img,
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:hover .img
{
    -webkit-animation: sprite-members-top 1s steps(14) forwards;
            animation: sprite-members-top 1s steps(14) forwards;
}

@-webkit-keyframes sprite-members-top
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -322px;
    }
}

@keyframes sprite-members-top
{
    0%
    {
        background-position: 0 0;
    }
    100%
    {
        background-position: 0 -322px;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:focus .img,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:hover .img
    {
        -webkit-animation: none;
                animation: none;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a .img
{
    position: relative;
    top: 1px;

    display: inline-block;
    overflow: hidden;

    width: 23px;
    height: 23px;
    margin: 0 5px 0 0;

    -webkit-transition-property: none;
            transition-property: none; 
    vertical-align: middle;

    background: url('/assets/img/icon/icon_members_02.png') no-repeat 0 0;
    background-size: 23px 345px;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a .img
    {
        display: block;

        width: 28px;
        height: 24px;
        margin: 0 auto 6px; 

        background-image: url('/assets/img/icon/icon_members_04.png');
        background-size: contain;
    }
}
@media screen and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a .img
    {
        width: 33.75%;
        max-width: 28px;
        height: auto;
        padding-top: 28.93%;
    }
}
#header-top #header-block-02 #header-block-02-inner #header-nav li a
{
    font-size: 86%; 

    width: 210px;
}
#header-top #header-block-02 #header-block-02-inner #header-nav li a:active,
#header-top #header-block-02 #header-block-02-inner #header-nav li a:focus,
#header-top #header-block-02 #header-block-02-inner #header-nav li a:hover
{
    text-decoration: none; 

    background-color: #ffd600;
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav
    {
        width: auto;
    }
}
@media screen and (max-width: 960px) and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav
    {
        width: 30.973%;
    }
}
@media screen and (max-width: 960px) and (max-width: 320px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav
    {
        width: 33%;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li
    {
        font-size: 72%;

        display: inline-block;

        width: 70px;
        margin: 0;

        text-align: center;
    }
}
@media screen and (max-width: 960px) and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li
    {
        width: 50%;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li .top-header-br
    {
        display: block;
    }
    #header-top #header-block-02 #header-block-02-inner #header-nav li:first-child
    {
        padding-right: 8px;
    }
}
@media screen and (max-width: 960px) and (max-width: 760px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li:first-child
    {
        padding: 0;
    }
}
@media screen and (max-width: 960px)
{
    #header-top #header-block-02 #header-block-02-inner #header-nav li a
    {
        background-color: transparent;
    }
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a
    {
        width: 100%;
        padding: 0; 

        color: #10af9e;
        background-color: transparent;
        box-shadow: none;
    }
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:active,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:focus,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-login a:hover,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:active,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:focus,
    #header-top #header-block-02 #header-block-02-inner #header-nav li#btn-members a:hover
    {
        background-color: transparent;
    }
    #header-top #header-block-02 #header-block-02-inner #header-nav li .img
    {
        -webkit-animation: none;
                animation: none;
    }
}
#header-top .top-header-br
{
    line-height: 0;
}

#container.sp-fixed-header
{
    padding-top: 60px;
}

#container.sp-fixed-header-top
{
    padding-top: 79px;
}

@media screen and (max-width: 760px)
{
    #header.fixed
    {
        position: fixed;
        z-index: 9999;
        top: -60px;

        width: 100%;

        border-bottom: 1px solid #c6c9d3; 
        background-color: #fff;
    }
}

/* -------------------------------------------------------------------

    Footer

-------------------------------------------------------------------- */
@media screen and (max-width: 1064px)
{
    #footer
    {
        padding-bottom: 66px;
    }
}

#footer *
{
    -webkit-transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
    transition: width,height,font-size,margin,padding,background-color,text-decoration,color,border, .2s ease 0s;
}

#footer #footer-block-01
{
    background-color: #f5f6f8;
}
#footer #footer-block-01 #footer-block-01-inner
{
    position: relative;

    box-sizing: border-box;
    max-width: 1182px; 
    margin: 0 auto;
    padding: 40px 30px 43px;
}
@media screen and (max-width: 1064px)
{
    #footer #footer-block-01 #footer-block-01-inner
    {
        padding-bottom: 0;
    }
}
@media screen and (max-width: 760px)
{
    #footer #footer-block-01 #footer-block-01-inner
    {
        padding: 20px 15px 15px;
    }
}

#footer #footer-block-02
{
    position: relative;

    padding: 26px 30px 20px;
}
@media screen and (max-width: 1064px)
{
    #footer #footer-block-02
    {
        padding: 20px 30px 20px;

        background-color: #f5f6f8;
    }
}
@media screen and (max-width: 760px)
{
    #footer #footer-block-02
    {
        padding: 0;
    }
}

#footer #site-search-footer
{
    position: absolute;
    top: 40px;
    left: 50%; 

    margin-left: -177px;
}
@media screen and (max-width: 760px)
{
    #footer #site-search-footer
    {
        position: static; 

        margin-left: 0;
    }
}
#footer #site-search-footer p
{
    position: relative;
}
#footer #site-search-footer p .input-text
{
    font-size: 100%;

    box-sizing: border-box;
    width: 354px;
    height: 50px;
    padding: 0 40px 0 15px;

    -webkit-transition: none;

    transition: none; 

    border: 1px solid #c6c9d3;
    border-radius: 25px;
    background-color: #fff;
}
@media screen and (max-width: 760px)
{
    #footer #site-search-footer p .input-text
    {
        font-size: 86%; 

        width: 100%;
        height: 35px;
    }
}
#footer #site-search-footer p .search-img
{
    position: absolute;
    top: 17px;
    right: 17px;

    width: 17px;
    height: 17px;

    -webkit-transition: none;

    transition: none;
}
@media screen and (max-width: 760px)
{
    #footer #site-search-footer p .search-img
    {
        display: none;
    }
}
#footer #site-search-footer p .search-img-sp
{
    display: none;
}
@media screen and (max-width: 760px)
{
    #footer #site-search-footer p .search-img-sp
    {
        position: absolute;
        top: 10px;
        right: 15px;

        display: block;

        width: 15px;
        height: 15px;
    }
}

#footer .btn-members-sp-title
{
    display: none; 

    margin: 80px 0 10px;
}
@media screen and (max-width: 1064px)
{
    #footer .btn-members-sp-title
    {
        display: block;

        text-align: center;
    }
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp-title
    {
        font-size: 86%; 

        margin: 14px 0 10px;
    }
}

#footer .btn-members-sp
{
    display: none;
}
@media screen and (max-width: 1064px)
{
    #footer .btn-members-sp
    {
        display: block;

        width: 354px; 
        margin: 0 auto 32px;
    }
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp
    {
        width: 100%; 
        margin: 0 auto 19px;
    }
}
#footer .btn-members-sp a
{
    font-weight: bold;

    position: relative;

    display: block;

    box-sizing: border-box;
    padding: 12px 10px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 
    text-align: center;
    vertical-align: middle;

    color: #333;
    border-radius: 10px;
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp a
    {
        padding: 12px 10px;
    }
}
#footer .btn-members-sp.type-01 a
{
    background-color: #fcff00; 
    box-shadow: 0 2px 0 0 #c7c900;
}
#footer .btn-members-sp.type-01 a span:before
{
    font-size: 18px; 

    margin-right: 6px;

    vertical-align: middle;

    color: #231815;
}
#footer .btn-members-sp.type-01 a:active
{
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, .15) inset !important;
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp.type-01 a:active
    {
        box-shadow: 0 2px 0 0 #c7c900 !important;
    }
}
#footer .btn-members-sp.type-01 a:hover,
#footer .btn-members-sp.type-01 a:focus
{
    text-decoration: none; 

    background-color: #ffda00;
    box-shadow: none;
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp.type-01 a:hover,
    #footer .btn-members-sp.type-01 a:focus
    {
        background-color: #fcff00; 
        box-shadow: 0 2px 0 0 #c7c900;
    }
}
#footer .btn-members-sp.type-02 a
{
    color: #fff;
    background-color: #006f80; 
    box-shadow: 0 2px 0 0 #00343c;
}
#footer .btn-members-sp.type-02 a span:before
{
    font-size: 17px; 

    position: relative;
    top: -1px;

    margin-right: 10px;

    vertical-align: middle;

    color: #fff;
}
#footer .btn-members-sp.type-02 a:active
{
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, .15) inset !important;
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp.type-02 a:active
    {
        box-shadow: 0 2px 0 0 #006f80 !important;
    }
}
#footer .btn-members-sp.type-02 a:hover,
#footer .btn-members-sp.type-02 a:focus
{
    text-decoration: none; 

    background-color: #008a9f;
    box-shadow: none;
}
@media screen and (max-width: 760px)
{
    #footer .btn-members-sp.type-02 a:hover,
    #footer .btn-members-sp.type-02 a:focus
    {
        background-color: #006f80; 
        box-shadow: 0 2px 0 0 #00343c;
    }
}

#footer #btn-fs-switch-footer
{
    float: right; 

    margin-top: 20px;
}
@media screen and (max-width: 1064px)
{
    #footer #btn-fs-switch-footer
    {
        display: none;
    }
}
#footer #btn-fs-switch-footer a
{
    font-size: 86%;
    line-height: 1.1;

    display: block;

    width: 112px;
    padding: 7px 0 8px;

    text-align: center; 

    color: #333;
    border: 1px solid #c6c9d3;
    border-radius: 8px;
    background-color: #fff;
}
#footer #btn-fs-switch-footer a:active,
#footer #btn-fs-switch-footer a:hover,
#footer #btn-fs-switch-footer a:focus
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
}

#footer #btn-lang-switch-footer
{
    float: right; 

    margin: 20px 0 0 10px;
}
@media screen and (max-width: 1064px)
{
    #footer #btn-lang-switch-footer
    {
        display: none;
    }
}
#footer #btn-lang-switch-footer a
{
    font-size: 86%; 
    line-height: 1.1;

    display: block;
}
#footer #btn-lang-switch-footer a:active,
#footer #btn-lang-switch-footer a:hover,
#footer #btn-lang-switch-footer a:focus
{
    text-decoration: none;
}
#footer #btn-lang-switch-footer a:active span,
#footer #btn-lang-switch-footer a:hover span,
#footer #btn-lang-switch-footer a:focus span
{
    text-decoration: none; 

    color: #fff;
    border: 1px solid #10af9e;
    background-color: #10af9e;
}
#footer #btn-lang-switch-footer a span
{
    display: block;

    width: 112px;
    padding: 7px 0 8px;

    text-align: center; 

    color: #333;
    border: 1px solid #c6c9d3;
    border-radius: 8px;
    background-color: #fff;
}
@media screen and (max-width: 1064px)
{
    #footer #btn-lang-switch-footer a span
    {
        display: none;
    }
}

#footer #nav-footer-01
{
    margin: 80px 0 55px;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-01
    {
        margin: 0;
    }
}
#footer #nav-footer-01 ul li
{
    float: left;

    width: 14.43850267379679%; 
    margin-right: 2.67379679144385%;

    border-radius: 10px;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-01 ul li
    {
        width: 48.88888888888889%; 
        margin-right: 2.222222222222222%;
        margin-bottom: 15px;
    }
    #footer #nav-footer-01 ul li:nth-child(2n)
    {
        margin-right: 0;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li
    {
        float: none;

        width: 100%; 
        margin-right: 0;
        margin-bottom: 5px;
    }
}
#footer #nav-footer-01 ul li:last-child
{
    margin-right: 0;
}
#footer #nav-footer-01 ul li a
{
    line-height: 1.3;

    position: relative;

    display: block;

    box-sizing: border-box;
    width: 100%;
    height: 153px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 

    color: #333;
    border: 1px solid #cfd2db;
    border-radius: 10px;
    background-color: #fff;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-01 ul li a
    {
        height: 58px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a
    {
        font-size: 93%; 

        height: 50px;
    }
}
#footer #nav-footer-01 ul li a:before
{
    position: absolute;
    top: 30px;
    left: 50%;

    width: 62px;
    height: 60px;
    margin-left: -31px;

    content: '';
    -webkit-transition: all .2s ease 0s;
    transition: all .2s ease 0s; 

    background-repeat: no-repeat;
    background-position: 0 0;
    background-size: 62px 60px;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-01 ul li a:before
    {
        top: 17px;
        left: 17px;

        width: 30px;
        height: auto;
        height: 28px;
        margin-left: 0;

        background-size: 30px 28px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a:before
    {
        top: 13px;
        left: 10px;

        width: 25px;
        height: 23px;

        background-size: 25px 23px;
    }
}
#footer #nav-footer-01 ul li a.nav-01:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_01.png');
}
#footer #nav-footer-01 ul li a.nav-02:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_02.png');
}
#footer #nav-footer-01 ul li a.nav-03:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_03.png');
}
#footer #nav-footer-01 ul li a.nav-04:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_04.png');
}
#footer #nav-footer-01 ul li a.nav-05:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_05.png');
}
#footer #nav-footer-01 ul li a.nav-06:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_06.png');
}
#footer #nav-footer-01 ul li a:active,
#footer #nav-footer-01 ul li a:hover,
#footer #nav-footer-01 ul li a:focus
{
    text-decoration: none; 

    border: 1px solid transparent;
    background-color: #10af9e;
}
#footer #nav-footer-01 ul li a:active.nav-01:before,
#footer #nav-footer-01 ul li a:hover.nav-01:before,
#footer #nav-footer-01 ul li a:focus.nav-01:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_01_o.png');
}
#footer #nav-footer-01 ul li a:active.nav-02:before,
#footer #nav-footer-01 ul li a:hover.nav-02:before,
#footer #nav-footer-01 ul li a:focus.nav-02:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_02_o.png');
}
#footer #nav-footer-01 ul li a:active.nav-03:before,
#footer #nav-footer-01 ul li a:hover.nav-03:before,
#footer #nav-footer-01 ul li a:focus.nav-03:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_03_o.png');
}
#footer #nav-footer-01 ul li a:active.nav-04:before,
#footer #nav-footer-01 ul li a:hover.nav-04:before,
#footer #nav-footer-01 ul li a:focus.nav-04:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_04_o.png');
}
#footer #nav-footer-01 ul li a:active.nav-05:before,
#footer #nav-footer-01 ul li a:hover.nav-05:before,
#footer #nav-footer-01 ul li a:focus.nav-05:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_05_o.png');
}
#footer #nav-footer-01 ul li a:active.nav-06:before,
#footer #nav-footer-01 ul li a:hover.nav-06:before,
#footer #nav-footer-01 ul li a:focus.nav-06:before
{
    background-image: url('/assets/img/icon/icon_footer-nav_06_o.png');
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a:active.nav-01:before,
    #footer #nav-footer-01 ul li a:hover.nav-01:before,
    #footer #nav-footer-01 ul li a:focus.nav-01:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_01.png');
    }
    #footer #nav-footer-01 ul li a:active.nav-02:before,
    #footer #nav-footer-01 ul li a:hover.nav-02:before,
    #footer #nav-footer-01 ul li a:focus.nav-02:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_02.png');
    }
    #footer #nav-footer-01 ul li a:active.nav-03:before,
    #footer #nav-footer-01 ul li a:hover.nav-03:before,
    #footer #nav-footer-01 ul li a:focus.nav-03:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_03.png');
    }
    #footer #nav-footer-01 ul li a:active.nav-04:before,
    #footer #nav-footer-01 ul li a:hover.nav-04:before,
    #footer #nav-footer-01 ul li a:focus.nav-04:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_04.png');
    }
    #footer #nav-footer-01 ul li a:active.nav-05:before,
    #footer #nav-footer-01 ul li a:hover.nav-05:before,
    #footer #nav-footer-01 ul li a:focus.nav-05:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_05.png');
    }
    #footer #nav-footer-01 ul li a:active.nav-06:before,
    #footer #nav-footer-01 ul li a:hover.nav-06:before,
    #footer #nav-footer-01 ul li a:focus.nav-06:before
    {
        background-image: url('/assets/img/icon/icon_footer-nav_06.png');
    }
}
#footer #nav-footer-01 ul li a:active .text,
#footer #nav-footer-01 ul li a:hover .text,
#footer #nav-footer-01 ul li a:focus .text
{
    color: #fff;
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a:active .text,
    #footer #nav-footer-01 ul li a:hover .text,
    #footer #nav-footer-01 ul li a:focus .text
    {
        color: #333;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a:active,
    #footer #nav-footer-01 ul li a:hover,
    #footer #nav-footer-01 ul li a:focus
    {
        border: 1px solid #cfd2db;
        background-color: #fff;
    }
}
#footer #nav-footer-01 ul li a .text
{
    display: block;

    box-sizing: border-box;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 
    text-align: center;
    vertical-align: middle;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-01 ul li a .text
    {
        padding: 20px 0 0 59px !important;

        text-align: left;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-01 ul li a .text
    {
        padding: 16px 0 0 50px !important;
    }
}
#footer #nav-footer-01 ul li a.nav-01 .text
{
    padding-top: 110px;
}
#footer #nav-footer-01 ul li a.nav-02 .text
{
    padding-top: 110px;
}
#footer #nav-footer-01 ul li a.nav-03 .text
{
    padding-top: 110px;
}
#footer #nav-footer-01 ul li a.nav-04 .text
{
    padding-top: 100px;
}
#footer #nav-footer-01 ul li a.nav-05 .text
{
    padding-top: 100px;
}
#footer #nav-footer-01 ul li a.nav-06 .text
{
    padding-top: 110px;
}

#footer #nav-footer-tablet
{
    display: none; 

    padding: 25px 0 0;
}
#footer #nav-footer-tablet ul li
{
    float: left;

    box-sizing: border-box;
    width: 32%;
    margin-right: 2%;
    margin-bottom: 15px;

    border: 1px solid #c6c9d3;
    border-radius: 10px;
    background-color: #f5f6f8;
}
#footer #nav-footer-tablet ul li a
{
    display: block;

    box-sizing: border-box;
    width: 100%;
    height: 38px;
    padding-top: 6px;

    text-align: center; 

    color: #666;
}
#footer #nav-footer-tablet ul li a:active,
#footer #nav-footer-tablet ul li a:hover,
#footer #nav-footer-tablet ul li a:focus
{
    text-decoration: none;
}
#footer #nav-footer-tablet ul li:nth-child(3n)
{
    margin-right: 0;
}
#footer #nav-footer-tablet ul li.external span
{
    position: relative;

    display: inline-block; 

    padding-left: 19px;
}
#footer #nav-footer-tablet ul li.external span:before
{
    font-size: 12px; 

    position: absolute;
    top: 8px;
    left: 0;

    vertical-align: middle;

    color: #20a898;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-tablet
    {
        display: block;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-tablet
    {
        display: none;
    }
}

@media screen and (max-width: 1064px)
{
    #footer #nav-footer-02
    {
        display: none;
    }
}

#footer #nav-footer-02 .column
{
    float: left;

    width: 22.99465240641711%; 
    margin-right: 2.67379679144385%;
}
#footer #nav-footer-02 .column:last-child
{
    margin-right: 0;
}

#footer #nav-footer-02 .title-01
{
    margin-bottom: 7px;

    border-bottom: 1px solid #cfd2db;
}
#footer #nav-footer-02 .title-01 a
{
    display: block;

    padding-bottom: 12px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 

    color: #333;
}
#footer #nav-footer-02 .title-01 a:active,
#footer #nav-footer-02 .title-01 a:hover,
#footer #nav-footer-02 .title-01 a:focus
{
    color: #14bfad;
}

#footer #nav-footer-02 .title-02
{
    margin-bottom: 10px;

    text-align: center;
}

#footer #nav-footer-02 .list-01 li
{
    line-height: 1.5; 

    margin-bottom: 10px;
}
#footer #nav-footer-02 .list-01 li a
{
    font-size: 86%;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 

    color: #333;
}
#footer #nav-footer-02 .list-01 li a:active,
#footer #nav-footer-02 .list-01 li a:hover,
#footer #nav-footer-02 .list-01 li a:focus
{
    color: #14bfad;
}
#footer #nav-footer-02 .list-01 li ul
{
    margin: 3px 12px;
}

#footer #nav-footer-02 .list-02
{
    margin-bottom: 17px;
}
#footer #nav-footer-02 .list-02 li
{
    border-bottom: 1px solid #c6c9d3;
}
#footer #nav-footer-02 .list-02 li:first-child a
{
    padding-top: 0;
}
#footer #nav-footer-02 .list-02 li a
{
    display: block;

    padding-top: 9px;
    padding-bottom: 9px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 

    color: #333;
}
#footer #nav-footer-02 .list-02 li a:active,
#footer #nav-footer-02 .list-02 li a:hover,
#footer #nav-footer-02 .list-02 li a:focus
{
    color: #14bfad;
}
#footer #nav-footer-02 .list-02 li.border-none
{
    border-bottom: none;
}
#footer #nav-footer-02 .list-02 li.external a
{
    position: relative; 

    padding-left: 18px;
}
#footer #nav-footer-02 .list-02 li.external a:before
{
    font-size: 12px;

    position: absolute;
    top: 17px;
    left: 0;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 
    vertical-align: middle;

    color: #20a898;
}
#footer #nav-footer-02 .list-02 li.external a:active:before,
#footer #nav-footer-02 .list-02 li.external a:hover:before,
#footer #nav-footer-02 .list-02 li.external a:focus:before
{
    color: #14bfad;
}

#footer #nav-footer-02 .btn-members
{
    text-align: center;
}
#footer #nav-footer-02 .btn-members a
{
    font-weight: bold;

    position: relative;

    display: block;

    box-sizing: border-box;
    padding: 7px 10px;

    -webkit-transition: all .2s ease 0s;

    transition: all .2s ease 0s; 
    text-align: center;
    vertical-align: middle;

    border-radius: 10px;
}
#footer #nav-footer-02 .btn-members.type-01 a
{
    color: #333;
    background-color: #fcff00; 
    box-shadow: 0 2px 0 0 #c7c900;
}
#footer #nav-footer-02 .btn-members.type-01 a span:before
{
    font-size: 18px; 

    margin-right: 6px;

    vertical-align: middle;

    color: #231815;
}
#footer #nav-footer-02 .btn-members.type-01 a:active
{
    box-shadow: 0 3px 0 0 rgba(0, 0, 0, .15) inset !important;
}
#footer #nav-footer-02 .btn-members.type-01 a:hover,
#footer #nav-footer-02 .btn-members.type-01 a:focus
{
    text-decoration: none; 

    background-color: #ffda00;
    box-shadow: none;
}
#footer #nav-footer-02 .btn-members.type-02 a
{
    color: #fff;
    background-color: #006f80; 
    box-shadow: 0 2px 0 0 #00343c;
}
#footer #nav-footer-02 .btn-members.type-02 a span:before
{
    font-size: 17px; 

    position: relative;
    top: -1px;

    margin-right: 10px;

    vertical-align: middle;

    color: #fff;
}
#footer #nav-footer-02 .btn-members.type-02 a:hover,
#footer #nav-footer-02 .btn-members.type-02 a:focus
{
    text-decoration: none; 

    background-color: #008a9f;
    box-shadow: none;
}
#footer #nav-footer-02 .btn-members.type-02 a:active
{
    background-color: #006f80;
    box-shadow: 0 3px 0 0 #00343c inset !important;
}

#footer #nav-footer-03
{
    background-color: #ebedf1;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-03
    {
        display: none;
    }
}
#footer #nav-footer-03 ul li
{
    float: left;

    box-sizing: border-box;
    width: 25%;

    text-align: center;
}
#footer #nav-footer-03 ul li a
{
    font-weight: bold; 

    display: block;

    padding: 13px 0 12px;
}
#footer #nav-footer-03 ul li a:active,
#footer #nav-footer-03 ul li a:hover,
#footer #nav-footer-03 ul li a:focus
{
    font-weight: bold;

    text-decoration: none; 

    color: #fff;
    background-color: #10af9e;
}
#footer #nav-footer-03 ul li.current a
{
    font-weight: bold;

    position: relative;

    color: #fff;
    background-color: #10af9e;
}
#footer #nav-footer-03 ul li.current a:before
{
    position: absolute;
    top: -7px;
    left: 50%;

    display: block;

    width: 14px !important;
    height: 7px !important;
    margin-left: -7px;

    content: '';

    background: url('/assets/img/bg/bg_nav-footer-03_current.png') no-repeat 0 0;
    background-size: 14px 7px;
}
#footer #nav-footer-03 ul li.current a:active,
#footer #nav-footer-03 ul li.current a:hover,
#footer #nav-footer-03 ul li.current a:focus
{
    text-decoration: none;
}

#footer #site-logo-footer
{
    float: left;

    width: 134px; 
    margin-right: 20px;
}
#footer #site-logo-footer img
{
    width: 100%;
}
@media screen and (max-width: 1064px)
{
    #footer #site-logo-footer
    {
        float: none;

        width: 180px; 
        margin: 0 auto 6px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #site-logo-footer
    {
        width: 135px;
    }
}

#footer #copyright
{
    font-size: 86%; 

    overflow: hidden;

    padding-top: 3px;

    color: #999;
}
@media screen and (max-width: 1064px)
{
    #footer #copyright
    {
        overflow: inherit;

        text-align: center;
    }
}
@media screen and (max-width: 760px)
{
    #footer #copyright
    {
        padding-bottom: 10px;
    }
}

#footer #nav-footer-04
{
    position: absolute;
    top: 25px;
    right: 30px;
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-04
    {
        position: static; 

        margin-bottom: 25px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-04
    {
        margin-bottom: 15px;
    }
}
@media screen and (max-width: 1064px)
{
    #footer #nav-footer-04 ul
    {
        text-align: center;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-04 ul
    {
        border-top: 1px solid #c6c9d3;
    }
}
#footer #nav-footer-04 ul li
{
    font-size: 86%; 

    display: inline-block;
    overflow: hidden;

    margin-left: 10px;
    padding-left: 10px;

    background: url('/assets/img/bg/bg_border_03.gif') no-repeat 0 .5em;
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-04 ul li
    {
        float: left;

        box-sizing: border-box;
        width: 50%;
        margin-left: 0;
        padding-left: 0;

        border-right: 1px solid #c6c9d3;
        border-bottom: 1px solid #c6c9d3;
        background: none;
    }
    #footer #nav-footer-04 ul li:nth-child(2n)
    {
        border-right: none;
    }
}
#footer #nav-footer-04 ul li:first-child
{
    margin-left: 0;
    padding-left: 0;

    background: none;
}
#footer #nav-footer-04 ul li a
{
    color: #666;
}
@media screen and (max-width: 760px)
{
    #footer #nav-footer-04 ul li a
    {
        font-size: 86%; 
        line-height: 1.3;

        display: table-cell;

        width: 300px;
        height: 45px;

        vertical-align: middle;
    }
    #footer #nav-footer-04 ul li a:active,
    #footer #nav-footer-04 ul li a:hover,
    #footer #nav-footer-04 ul li a:focus
    {
        text-decoration: none;
    }
}

#footer #nav-page-top-01-sp
{
    font-size: 86%;

    display: none !important;

    box-sizing: border-box;
    width: 100%;
    height: 45px;
    padding-top: 10px;

    cursor: pointer;
    text-align: center; 

    color: #666;
    border-top: 1px solid #c6c9d3;
    border-bottom: 1px solid #c6c9d3;
    background-color: #f5f6f8;
}
#footer #nav-page-top-01-sp.border-bottom-none
{
    border-bottom: none;
}
#footer #nav-page-top-01-sp span
{
    position: relative;

    display: inline-block; 

    padding-left: 19px;
}
#footer #nav-page-top-01-sp span:before
{
    font-size: 12px; 

    position: absolute;
    top: 2px;
    left: 0;

    vertical-align: middle;

    color: #a2a4ab;
}
@media screen and (max-width: 960px)
{
    #footer #nav-page-top-01-sp span:before
    {
        top: 4px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-page-top-01-sp span:before
    {
        top: 6px;
    }
}
@media screen and (max-width: 760px)
{
    #footer #nav-page-top-01-sp
    {
        display: block !important;
    }
}

/* footer-top
--------------------------------------- */
#footer-top
{
    padding: 20px 0; 

    color: #b5b5c8;
}
@media screen and (max-width: 760px)
{
    #footer-top
    {
        color: #fff; 
        background-color: #575a5f;
    }
}
