@charset "utf-8";

.only_pc {
    display: block;
}

.only_mb {
    display: none;
}

@media screen and (max-width: 768px) {
    #loading {
        display: none !important;
        height: 0 !important;
        width: 0 !important;
        opacity: 0 !important;
        z-index: -9999999 !important;
        visibility: hidden;
    }

    .only_pc {
        display: none;
    }

    .only_mb {
        display: block;
    }

    /*---*/
    .lightbox {
        /*
  position: fixed;
  top: 40px !important;
  */
    }

    .lb-number {
        display: none !important;
    }

    .lightbox .lb-image {
        width: 100% !important;
        height: auto !important;
    }

    /*---*/
    a {
        -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
    }

    /*---*/
    .cont_wrap {
        max-width: 100%;
        min-width: 100%;
        margin-left: auto;
        margin-right: auto;
        padding: 0px;
        position: relative;
    }

    .cont_wrap02 {
        max-width: 100%;
        min-width: 100%;
        position: relative;
        margin-left: auto;
        margin-right: auto;
    }

    .cont_wrap03 {
        max-width: 100%;
        min-width: 100%;
        position: relative;
        margin-left: auto;
        margin-right: auto;
    }

    .cont_wrap04 {
        width: 100%;
        min-width: 100%;
        margin-left: auto;
        margin-right: auto;
        position: relative;
    }

    /*---*/
    .gen_btn01 {
        border: 1px solid #333;
        display: inline-block;
        font-size: 12px;
        padding: 4px 15px;
        text-align: center;
        color: #333;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .gen_btn01 span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
    }

    .gen_btn02 {
        border: 1px solid #333;
        display: inline-block;
        text-align: center;
        color: #333;
        padding: 15px;
        font-size: 15px;
        letter-spacing: 2px;
    }

    .gen_btn02 span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 10px;
    }

    .gen_btn02:hover {
        background: #333;
        color: #FFF;
    }

    .gen_btn02:hover span:before {
        color: #FFF;
    }

    .gen_btn03 {
        border: 1px solid #333;
        display: inline-block;
        text-align: center;
        color: #333;
        padding: 15px;
        font-size: 15px;
        letter-spacing: 2px;
    }

    .gen_btn03 span:before {
        content: "\f104";
        font-family: FontAwesome;
        margin-right: 10px;
    }

    .gen_btn03:hover {
        background: #333;
        color: #FFF;
    }

    .gen_btn03:hover span:before {
        color: #FFF;
    }

    .gen_link01 {
        color: #111;
        position: relative;
        font-size: 12px;
    }

    .gen_link01:hover {
        text-decoration: underline;
    }

    .gen_link01:before {
        content: "\f0da";
        font-family: FontAwesome;
        position: absolute;
        top: 50%;
        margin-top: -9px;
        left: -10px;
    }

    .gen_link02 {
        color: #111;
        position: relative;
        font-size: 12px;
    }

    .gen_link02:hover {
        text-decoration: underline;
    }

    .gen_link02:before {
        content: "\f105";
        font-family: FontAwesome;
        position: absolute;
        top: 50%;
        margin-top: -9px;
        left: -10px;
    }

    /*---*/
    .gen_title01 {
        font-size: 14px;
        font-family: 'Cabin', sans-serif;
        text-align: left;
        letter-spacing: 3px;
        position: relative;
    }

    .gen_title01>span:before {
        content: "“";
        font-size: 200%;
        margin-right: 10px;
        line-height: 10px;
        display: inline-block;
        vertical-align: bottom;
        font-family: 'Lora', serif;
    }

    .gen_title01>span:after {
        content: "”";
        font-size: 200%;
        margin-left: 10px;
        line-height: 10px;
        display: inline-block;
        vertical-align: bottom;
        font-family: 'Lora', serif;
    }

    .gen_title02 {
        font-size: 12px;
        letter-spacing: 3px;
        font-family: 'Cabin', sans-serif;
        text-align: left;
        -webkit-transform: none;
        -moz-transform: none;
        -ms-transform: none;
        -o-transform: none;
        transform: none;
    }

    .gen_title03 {
        font-size: 13px;
        font-family: 'Cabin', sans-serif;
        text-align: left;
        letter-spacing: 7px;
        position: relative;
    }

    .gen_title03>span {}

    .gen_title03>span:before {
        content: "「";
        margin-right: 10px;
        display: inline-block;
        display: none;
    }

    .gen_title03>span:after {
        content: "」";
        margin-left: 10px;
        display: inline-block;
        display: none;
    }

    /*---*/
    .gen_box_style01 {
        padding-top: 25px;
    }

    .gen_box_style01>.title {
        font-size: 13px;
        font-weight: bold;
        position: relative;
        padding-bottom: 30px;
        letter-spacing: 1px;
    }

    .gen_box_style01>.title:after {
        content: " ";
        width: 1px;
        height: 40px;
        position: absolute;
        top: 35px;
        left: 50%;
        background: #666;
    }

    .gen_box_style01>.text {
        line-height: 2;
        margin-bottom: 30px;
        text-align: left;
        padding: 20px;
    }

    /*---*/
    .column_wrap {
        text-align: center;
        letter-spacing: -0.5em;
        display: initial;
    }

    .column_wrap>.column {
        letter-spacing: normal;
        display: inline-block;
        vertical-align: top;
    }

    .column_type01>.column {
        width: 50%;
    }

    .column_type01>.left {
        /*float: none;*/
        width: 100%;
        padding-right: 0px;
        position: relative;
    }

    .column_type01>.right {
        /*float: none;*/
        width: 100%;
        padding-left: 0px;
        position: relative;
    }

    /*---*/
    .content {
        padding-top: 70px;
        position: relative;
        background: #FFF;
        z-index: 100;
    }

    .content_sub {
        padding-top: 50px;
        padding-bottom: 50px;
        background: #F4F5F7;
    }

    .page_corporate.content_sub,
    .page_restindex.content_sub {
        padding-bottom: 0;
    }

    .page_corporate .corp_news_block,
    .page_restindex .corp_news_block {
        border-bottom: none;
    }

    .content_sub02 {
        padding-top: 50px;
        background: #F4F5F7;
        padding-bottom: 0;
    }

    .content_sub02>div:last-child,
    .content_sub02>section:last-child {
        padding-bottom: 150px;
    }

    /*---*/
    body>header {
        position: fixed;
        z-index: 200;
        padding: 15px;
        width: 100%;
        /*height: 50px;*/
        background: rgba(0, 0, 0, 0.8);
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    body>header.dark {
        background: rgba(0, 0, 0, 0.8);
    }

    body>header .mb_header .logo {
        display: inline-block;
        vertical-align: middle;
        /*background-image: url('/assets/image/light_logo.png');*/
        background: none;
        background-repeat: no-repeat;
        /*width: 75px;*/
        height:35px;
        -webkit-background-size: contain;
        -o-background-size: contain;
        background-size: contain;
    }

    body>header .mb_header .logo img {
        /*width: 75px;*/
        height: 35px;
        display: block;
        opacity: 1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    body>header.sc {
        background: rgba(0, 0, 0, 0.8);
    }

    body>header.sc .pc_header .logo img {
        opacity: 0;
    }

    body>header.sc .pc_header .menu li a {
        color: #fff;
    }

    body>header.sc .pc_header .gen_btn01 {
        border: 1px solid #fff;
        color: #FFF;
    }

    .mb_menu_btn {
        width: 30px;
        height: 30px;
        position: absolute;
        top: -3px;
        right: 0px;
        cursor: pointer;
        font-size: 9px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        -webkit-border-radius: 5px;
        border-radius: 5px;
    }

    .mb_menu_btn i {
        font-size: 14px;
    }

    .mb_lang_btn {
        width: 30px;
        height: 30px;
        position: absolute;
        top: -3px;
        right: 40px;
        cursor: pointer;
        font-size: 9px;
        font-weight: bold;
        text-align: center;
        color: #fff;
        display: none;
        -webkit-border-radius: 5px;
        border-radius: 5px;
    }

    .mb_lang_btn a {
        text-decoration: none;
        color: #FFF;
    }

    .mb_lang_btn i {
        font-size: 14px;
    }

    .mb_menu_container {
        position: fixed;
        z-index: 150;
        top: 0;
        left: 0;
        width: 100%;
        padding-top: 50px;
        background: rgba(0, 0, 0, 0.9);
        display: none;
    }

    .mb_menu_container a,
    .mb_menu_container span {
        text-decoration: none;
        color: #FFF;
        padding: 15px 10px;
        display: block;
        position: relative;
        font-family: 'Cabin', sans-serif;
        border-bottom: 1px solid rgba(255, 255, 255, 0.3);
    }

    .mb_menu_container a:after {
        content: "\f105";
        font-family: FontAwesome;
        position: absolute;
        top: 50%;
        right: 10px;
        font-size: 16px;
        margin-top: -10px;
    }

    .mb_menu_close_btn {
        background: #000;
        color: #FFF;
        text-align: center;
        padding: 15px;
        font-weight: bold;
        cursor: pointer;
    }

    .mb_menu_close_btn i {
        margin-right: 5px;
    }

    .dark .gen_btn01 {
        border: 1px solid #fff;
        color: #FFF;
    }

    /*---*/
    body>footer {
        position: relative;
        background: #f4f5f7;
        z-index: 100;
        padding: 20px;
    }

    .page_toppage+.corp_foot_brand_block+footer {
        background: #FFF;
    }

    body>footer .logo {
        margin-bottom: 5px;
    }

    body>footer .menu {
        margin-bottom: 25px;
    }

    body>footer .menu li {
        display: block;
        margin-right: 0px;
        margin-bottom: 5px;
        font-size: 11px;
    }

    body>footer .menu li a {
        color: #111;
    }

    body>footer .menu li a:hover {
        text-decoration: underline;
    }

    body>footer .inner {
        position: relative;
    }

    body>footer .inner .info_wrap>.menu {
        float: none;
    }

    body>footer .inner .info_wrap>small {
        float: none;
        text-align: center;
        display: block;
    }

    /*---*/
    .breadcrumb {
        text-align: right;
        margin-right: 15px;
    }

    .breadcrumb>li {
        display: inline-block;
        font-size: 12px;
        vertical-align: middle;
        margin-right: 5px;
    }

    .breadcrumb>li:before {
        content: "\f105";
        display: inline-block;
        font-family: FontAwesome;
        margin-right: 5px;
        vertical-align: middle;
        margin-top: -2px;
    }

    .breadcrumb>li:first-child:before {
        opacity: 0;
    }

    .breadcrumb>li a {
        color: #111;
    }

    .breadcrumb>li a:hover {
        text-decoration: underline;
    }

    /*---*/
    .mb_mv_container {
        width: 100%;
        height: 100%;
        /*height: 500px !important;*/
        position: relative;
        background: #000;
        z-index: 110;
    }

    .mb_mv_container .item {
        width: 100%;
        height: 100%;
        position: absolute;
        left: 0;
        top: 0;
        opacity: 0;
        -webkit-transition: opacity 2s ease;
        -moz-transition: opacity 2s ease;
        -ms-transition: opacity 2s ease;
        -o-transition: opacity 2s ease;
        transition: opacity 2s ease;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .mb_mv_container .item.on {
        opacity: 1;
    }

    .top_movie_container {
        display: none;
    }

    .page_toppage .block01 {
        margin-bottom: 50px;
    }

    .page_toppage .block01 .gen_title01 {
        margin-bottom: 10px;
        text-align: center;
    }

    .page_toppage .block01 .gen_title02 {
        position: static;
        text-align: center;
        margin-bottom: 15px;
    }

    .page_toppage .block01 .gen_btn02 {
        width: 70%;
        font-family: 'Cabin', sans-serif;
    }

    .page_toppage .block02 {}

    .page_toppage .block03 {
        margin-bottom: 100px;
    }

    .page_toppage .block03 .gen_title01 {
        margin-bottom: 20px;
        text-align: center;
    }

    .page_toppage .block03 .gen_btn02 {
        width: 70%;
        font-family: 'Cabin', sans-serif;
    }

    .page_toppage .block03 .gen_title02 {
        position: static;
        text-align: center;
        padding: 0px;
        margin-bottom: 15px;
    }

    .page_toppage .block04 .column_wrap {
        background: #999;
    }

    .page_toppage .block04 .column_type02 .left {
        width: 100%;
        float: none;
    }

    .page_toppage .block04 .column_type02 .right {
        width: 100%;
        float: none;
    }

    .page_toppage .block04 .column_type02 .table {
        width: 100%;
        display: block;
    }

    .page_toppage .block04 .column_type02 .row {
        display: block;
        letter-spacing: -0.5em;
    }

    .page_toppage .block04 .column_type02 .col {
        display: inline-block;
        vertical-align: middle;
        width: 50%;
        background: #FFF;
        position: relative;
        letter-spacing: normal;
    }

    .page_toppage .block04 .column_type02 .inner {
        width: 100%;
        height: 100%;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_toppage .block04 .column_type02 .item01 {
        width: 100%;
        display: block;
        padding: 20px;
        height: auto !important;
    }

    .page_toppage .block04 .column_type02 .item02 {
        width: 100%;
        display: block;
        height: 250px !important;
    }

    .page_toppage .block04 .column_type02 .item01:before {
        content: " ";
        width: 100%;
        height: 100%;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        background: #000;
        z-index: 40;
        display: none;
    }

    .page_toppage .block04 .column_type02 .item01 .gen_title01 {
        color: #111;
        font-size: 14px;
        text-align: center;
        position: relative;
        z-index: 110;
    }

    .page_toppage .block04 .column_type02 .item03 {
        display: none;
    }

    .page_toppage .block04 .column_type02 .item04 {
        text-align: left;
        width: 100%;
        height: auto !important;
        padding-bottom: 40px;
    }

    .page_toppage .block04 .column_type02 .item04 .gen_title02 {
        font-size: 15px;
        position: static;
        text-align: center;
        padding: 20px 0;
    }

    .page_toppage .block04 .column_type02 .item04 .text {
        font-size: 13px;
        padding: 0 20px;
        line-height: 200%;
    }

    .page_toppage .block04 .column_type02 .item07 {
        display: none;
    }

    .page_toppage .block04 .column_type02 .item08 {
        width: 100%;
    }

    .page_toppage .block04 .column_type02 .item05,
    .page_toppage .block04 .column_type02 .item06,
    .page_toppage .block04 .column_type02 .item08 {
        height: 150px !important;
    }

    .page_toppage .block04 .column_type02 .item08 .gen_btn02 {
        margin-top: 50px;
        width: 70%;
    }

    .corp_news_block {
        border-top: none;
        border-bottom: 1px solid #818181;
    }

    .corp_news_block .table {
        display: table;
        width: 100%;
    }

    .corp_news_block .table .col {
        display: block;
        vertical-align: middle;
        padding: 20px 25px;
    }

    .corp_news_block .table .col:nth-of-type(1) {
        width: 100%;
        text-align: center;
        border-right: 1px solid #818181;
        border: none;
    }

    .corp_news_block .table .col:nth-of-type(2) {
        padding: 0;
    }

    .corp_news_title {
        font-size: 24px;
        margin-bottom: 25px;
    }

    .corp_news_block .gen_link01 {
        font-size: 12px;
    }

    .corp_news_block .news_list>li {
        margin-bottom: 0;
        padding: 10px 10px;
    }

    .corp_news_block .news_list>li:nth-child(odd) {
        background: #eee;
    }

    .corp_news_block .news_list .date {
        display: inline-block;
        vertical-align: middle;
        padding: 3px 5px;
        font-size: 10px;
        color: #FFF;
        background: #32312e;
        margin-right: 0px;
        letter-spacing: 2px;
        margin-bottom: 5px;
    }

    .corp_news_block .news_list .category {
        display: inline-block;
        vertical-align: middle;
        padding: 3px 5px;
        font-size: 10px;
        color: #FFF;
        background: #32312e;
        margin-right: 10px;
        letter-spacing: 2px;
        width: 130px;
        text-align: center;
        margin-bottom: 5px;
    }

    .corp_news_block .news_list .title {
        display: inline-block;
        vertical-align: middle;
        width: 270px;
    }

    .corp_news_block .news_list .title a {
        text-decoration: underline;
        color: #111;
    }

    .corp_news_block .news_list .title a:hover {
        text-decoration: none;
    }

    .corp_foot_brand_block {
        border-top: 1px solid #818181;
        border-bottom: 1px solid #818181;
        padding: 25px;
        background: #f4f5f7;
        position: relative;
        z-index: 100;
    }

    .page_toppage+.corp_foot_brand_block {
        background: #FFF;
    }

    .page_toppage+.corp_foot_brand_block {
        border-top: none;
    }

    .corp_foot_brand_block>.inner {
        text-align: center;
        letter-spacing: -0.5em;
    }

    .corp_foot_brand_block>.inner>li {
        display: inline-block;
        letter-spacing: normal;
        vertical-align: middle;
        margin-left: 15px;
        margin-right: 15px;
    }

    .corp_foot_brand_block>.inner>li:nth-of-type(3) img {
        height: 40px;
        width: auto;
    }

    .corp_foot_brand_block>.inner>li:nth-of-type(4) img {
        height: 40px;
        width: auto;
    }

    .corp_foot_brand_block>.inner>li:nth-of-type(11) img {
        height: 40px;
        width: auto;
    }

    .corp_foot_brand_block>.inner>li img {
        opacity: 1;
        width: 50px;
        height: auto;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .corp_foot_brand_block>.inner>li img:hover {
        opacity: 0.7;
    }

    /*---*/
    .page_corporate .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_corporate .block01 .head {
        margin-bottom: 30px;
    }

    .page_corporate .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 17px;
    }

    .page_corporate .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_corporate .block01 .body .text {
        line-height: 2;
        padding-left: 15px;
        padding-right: 15px;
        text-align: left;
    }

    .page_corporate .block02 {
        margin-bottom: 40px;
    }

    .page_corporate .block02>.item_wrap>.item {
        width: 100%;
        float: none;
        margin-bottom: 20px;
    }

    .page_corporate .block02>.item_wrap>.item:nth-of-type(2n) {
        float: none;
    }

    .page_corporate .block02>.item_wrap>.item a {
        color: #111;
    }

    .page_corporate .block02>.item_wrap>.item .image {
        width: 100%;
        height: 150px;
        margin-bottom: 10px;
        background-position: center;
        background-repeat: no-repeat;
        opacity: 1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_corporate .block02>.item_wrap>.item:hover .image {
        opacity: 1;
    }

    .page_corporate .block02>.item_wrap>.item .info_container {
        letter-spacing: -0.5em;
        position: relative;
        padding-left: 10px;
        padding-right: 10px;
    }

    .page_corporate .block02>.item_wrap>.item .info_container:after {
        content: "\f105";
        font-family: FontAwesome;
        position: absolute;
        top: 50%;
        right: 20px;
        font-size: 40px;
        margin-top: -30px;
        font-weight: normal;
    }

    .page_corporate .block02>.item_wrap>.item .info_container .title {
        width: 100%;
        display: block;
        vertical-align: middle;
        letter-spacing: normal;
        padding-bottom: 5px;
        margin-bottom: 5px;
    }

    .page_corporate .block02>.item_wrap>.item .info_container .title>.title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 17px;
        letter-spacing: 8px;
        margin-bottom: 2px;
    }

    .page_corporate .block02>.item_wrap>.item .info_container .title>.title_ja {
        font-size: 12px;
        letter-spacing: 3px;
    }

    .page_corporate .block02>.item_wrap>.item .info_container .text {
        width: 100%;
        display: block;
        vertical-align: middle;
        letter-spacing: normal;
        line-height: 1.7;
    }

    .page_corporate .block03>.head {
        width: 100%;
        margin-left: auto;
        margin-right: auto;
        text-align: center;
        border-bottom: 1px solid #111;
        margin-bottom: 20px;
    }

    .page_corporate .block03>.head .title {
        font-size: 20px;
        line-height: 1.2;
    }

    .page_corporate .block03>.head .title span {
        font-size: 24px;
    }

    .page_corporate .block03>.head .title_en {
        font-size: 12px;
        letter-spacing: 2px;
        margin-bottom: 20px;
    }

    .page_corporate .block03 .item_list {
        padding-left: 10px;
        padding-right: 10px;
    }

    .page_corporate .block03 .item_list>li {
        padding-left: 30px;
        margin-bottom: 20px;
        counter-increment: company_values;
        position: relative;
    }

    .page_corporate .block03 .item_list>li:before {
        content: counter(company_values);
        position: absolute;
        top: 0;
        left: 0;
        font-size: 18px;
        line-height: 1;
        font-weight: bold;
        font-family: 'Lora', serif;
        font-style: italic;
    }

    .page_corporate .block03 .item_list>li .ja {
        font-size: 14px;
        letter-spacing: 2px;
        font-weight: bold;
    }

    .page_corporate .block03 .item_list>li .en {
        font-size: 11px;
        color: #999;
    }

    .page_corporate .block03 .foot {
        text-align: center;
        padding-bottom: 30px;
    }

    .page_corporate .block03 .foot .ja {
        font-size: 15px;
        letter-spacing: 2px;
        font-weight: bold;
    }

    .page_corporate .block03 .foot .en {
        font-size: 11px;
        color: #999;
    }

    /*---*/
    .foot_category_link_block {
        position: relative;
        padding-bottom: 30px;
    }

    .foot_category_link_block>.inner {
        letter-spacing: -0.5em;
        text-align: center;
        border-top: 1px solid #aaa;
    }

    .foot_category_link_block>.inner>li {
        width: 100%;
        padding-left: 10px;
        padding-right: 10px;
        letter-spacing: normal;
        display: block;
        vertical-align: middle;
        text-align: left;
        border-bottom: 1px solid #aaa;
    }

    .foot_category_link_block>.inner>li:nth-of-type(2) {
        margin-left: 0px;
        margin-right: 0px;
    }

    .foot_category_link_block>.inner>li .image {
        width: 70px;
        height: 70px;
        vertical-align: middle;
        display: inline-block;
        margin-bottom: 0px;
        background-repeat: no-repeat;
        background-position: center;
        opacity: 1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
        -webkit-background-size: contain;
        -o-background-size: contain;
        background-size: contain;
    }

    .foot_category_link_block>.inner>li .title {
        font-weight: bold;
        letter-spacing: 3px;
        display: inline-block;
        height: 70px;
        line-height: 70px;
        vertical-align: middle;
        padding-left: 20px;
        position: relative;
    }

    .foot_category_link_block>.inner>li .title .gen_link02 {}

    .gen_link02:before {
        content: "\f105";
        font-family: FontAwesome;
        position: static;
        top: 50%;
        margin-top: -9px;
        left: -15px;
    }

    .foot_category_link_block>.inner>li a {
        display: block;
    }

    .foot_category_link_block>.inner>li a:hover .image {
        opacity: 1;
    }

    .foot_category_link_block>.inner>li span:hover {
        text-decoration: none;
    }

    .foot_category_link_block>.inner>li a:hover .title {}

    .back_to_prev_page_wrap {
        position: relative;
        text-align: center;
        padding-bottom: 50px;
    }

    .back_to_prev_page_wrap .gen_btn03 {
        width: 230px;
    }

    /*---*/
    .page_outline .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 0px;
    }

    .page_outline .block01 .head {
        margin-bottom: 60px;
    }

    .page_outline .block01 .head .gen_title03 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 20px;
        letter-spacing: 3px;
    }

    .page_outline .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_outline .block01 .body .image {
        text-align: center;
    }

    .page_outline .block01 .body .image img {
        width: 100%;
        display: block;
    }

    .page_outline .block02 {
        width: 100%;
        padding-bottom: 30px;
        margin-left: auto;
        margin-right: auto;
    }

    .page_outline .block02 .company_outline_detail {
        width: 100%;
    }

    .page_outline .block02 .company_outline_detail tr {
        border-bottom: 1px solid #999;
        border-bottom: none;
    }

    .page_outline .block02 .company_outline_detail th {
        padding: 10px;
        width: 100%;
        vertical-align: top;
        line-height: 1.8;
        display: block;
        background: #ddd;
    }

    .page_outline .block02 .company_outline_detail td {
        padding: 10px;
        width: 100%;
        vertical-align: top;
        line-height: 1.8;
        display: block;
    }

    .page_outline .block03 {
        padding-bottom: 30px;
    }

    .page_outline .block03 .map_container {
        width: 100%;
        height: 250px;
    }

    /*---*/
    .company_foot_link_block>.inner {
        max-width: 100%;
        min-width: 100%;
        display: table;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 30px;
    }

    .company_foot_link_block>.inner>li {
        display: block;
        width: 100%;
        padding: 5px 10px;
    }

    .company_foot_link_block>.inner>li:nth-child(odd) {
        background: #e3e3e3;
    }

    .company_foot_link_block>.inner>li .image {
        margin-bottom: 0px;
        opacity: 1;
        display: inline-block;
        vertical-align: middle;
        width: 20%;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .company_foot_link_block>.inner>li:hover .image {
        opacity: 0.7;
    }

    .company_foot_link_block>.inner>li .image img {
        width: 100%;
        display: block;
    }

    .company_foot_link_block>.inner>li .title {
        text-align: left;
        display: inline-block;
        width: 78%;
        vertical-align: middle;
        padding-left: 10px;
    }

    .company_foot_link_block>.inner>li .title>.title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 14px;
        letter-spacing: 4px;
        margin-bottom: 2px;
    }

    .company_foot_link_block>.inner>li .title>.title_ja {
        font-size: 12px;
        letter-spacing: 3px;
    }

    /*---*/
    .page_history .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_history .block01 .head {
        margin-bottom: 30px;
    }

    .page_history .block01 .head .gen_title03 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 20px;
        letter-spacing: 3px;
    }

    .page_history .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_history .block01 .body .image img {
        width: 100%;
        height: auto;
    }

    .page_history .block02 .company_history_table {
        width: 100%;
        margin-bottom: 40px;
        margin-left: auto;
        margin-right: auto;
    }

    .page_history .block02 .company_history_table th {
        vertical-align: middle;
        width: 100%;
        position: relative;
        /*font-family: 'Lora', serif;*/
        font-size: 16px;
        font-weight: bold;
        display: block;
        padding: 10px;
        background: #e3e3e3;
    }

    .page_history .block02 .company_history_table th:after {
        content: " ";
        width: 90px;
        height: 1px;
        background: #111;
        position: absolute;
        top: 50%;
        right: 30px;
        display: none;
    }

    .page_history .block02 .company_history_table td {
        display: block;
        width: 100%;
        vertical-align: middle;
        padding: 10px;
        line-height: 1.8;
    }

    /*---*/
    .page_vision .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_vision .block01 .head {
        margin-bottom: 30px;
    }

    .page_vision .block01 .head .gen_title03 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 20px;
        letter-spacing: 3px;
    }

    .page_vision .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_vision .block01 .body .title {
        font-size: 17px;
        line-height: 1.7;
        font-weight: bold;
        letter-spacing: 3px;
    }

    .page_vision .block01 .body .title_en {
        font-size: 12px;
        letter-spacing: 2px;
        margin-bottom: 20px;
    }

    .page_vision .company_vision_item_container {
        padding-left: 15px;
        padding-right: 15px;
        margin-left: auto;
        margin-right: auto;
        margin-bottom: 50px;
    }

    .page_vision .company_vision_item_container>.image {
        margin-bottom: 30px;
    }

    .page_vision .company_vision_item_container>.image img {
        width: 100%;
        height: auto;
    }

    .page_vision .company_vision_item_container>.title {
        font-weight: bold;
        font-size: 16px;
        letter-spacing: 3px;
        margin-bottom: 10px;
    }

    .page_vision .company_vision_item_container>.text_wrap>.left {
        width: 100%;
        float: none;
    }

    .page_vision .company_vision_item_container>.text_wrap>.right {
        width: 100%;
        float: none;
    }

    .page_vision .company_vision_item_container>.text_wrap p {
        margin-bottom: 1em;
        line-height: 1.6;
    }

    /*---*/
    .page_principle .mv_block {
        background-attachment: fixed;
        width: 100%;
        height: 500px !important;
        position: relative;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .mv_block .breadcrumb {
        color: #FFF;
        padding-top: 10px;
        display: none;
    }

    .page_principle .mv_block .breadcrumb a {
        color: #fff;
    }

    .page_principle .mv_block .title {
        font-size: 14px;
        position: static;
        bottom: 15%;
        left: 50%;
        margin-left: 0;
        color: #FFF;
        line-height: 1.6;
        text-align: center;
        padding-top: 150px;
        text-shadow: 0px 0px 8px #000000;
    }

    .page_principle .mv_block .title span {
        display: inline-block;
    }

    .page_principle .mv_block .title span:last-child {
        padding-left: 0px;
    }

    .page_principle .block00 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_principle .block00 .head {
        margin-bottom: 30px;
    }

    .page_principle .block00 .head .gen_title03 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 20px;
        letter-spacing: 3px;
    }

    .page_principle .block00 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_principle .block00 .body .image img {
        width: 100%;
        height: auto;
    }

    .page_principle .block00 .foot .text {
        font-size: 16px;
    }

    .page_principle .block01 {
        text-align: center;
        padding-top: 40px;
        padding-bottom: 30px;
    }

    .page_principle .block01 .head {
        margin-bottom: 30px;
    }

    .page_principle .block01 .head .gen_title03 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 20px;
        letter-spacing: 3px;
    }

    .page_principle .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_principle .block01 .text_wrap {
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
    }

    .page_principle .block01 .text_wrap>.left {
        width: 100%;
        padding-left: 0px;
        padding-right: 0px;
        float: none;
    }

    .page_principle .block01 .text_wrap>.right {
        width: 100%;
        padding-left: 0px;
        padding-right: 0px;
        float: none;
    }

    .page_principle .block01 .text_wrap p {
        margin-bottom: 1em;
        line-height: 1.8;
    }

    .page_principle .block02>.table {
        width: 100%;
        margin-bottom: 10px;
        display: table;
        margin-left: auto;
        margin-right: auto;
    }

    .page_principle .block02>.table>.left {
        display: block;
        width: 100%;
        vertical-align: top;
        text-align: center;
        position: relative;
        padding-bottom: 10px;
    }

    .page_principle .block02>.table>.left img {
        width: 180px;
        height: auto !important;
    }

    .page_principle .block02>.table>.left .gen_title02 {
        position: static;
        top: 50px;
        left: 20px;
        font-size: 15px;
        text-align: center;
        margin-bottom: 15px;
    }

    .page_principle .block02>.table>.right {
        display: block;
        width: 100%;
        vertical-align: top;
        position: relative;
        padding: 15px;
    }

    .page_principle .block02>.table>.right .job {
        font-size: 14px;
        line-height: 1.6;
        font-weight: bold;
        margin-bottom: 10px;
    }

    .page_principle .block02>.table>.right .job span {
        font-size: 12px;
        font-weight: normal;
    }

    .page_principle .block02>.table>.right .name {
        font-size: 20px;
        line-height: 1.6;
        font-weight: bold;
        margin-bottom: 15px;
    }

    .page_principle .block02>.table>.right .name span {
        font-size: 12px;
        font-weight: normal;
    }

    .page_principle .block02>.table>.right .text {
        line-height: 2;
    }

    /*---*/
    .page_news .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_news .block01 .head {
        margin-bottom: 30px;
    }

    .page_news .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_news .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_news .news_container {
        padding-left: 0px;
        padding-right: 0px;
        margin-bottom: 30px;
    }

    .page_news .news_container>.left {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
        float: none;
    }

    .page_news .news_container>.right {
        width: 100%;
        padding-left: 15px;
        padding-right: 15px;
        float: none;
    }

    .page_news .news_container .news_list {
        margin-bottom: 50px;
    }

    .page_news .news_container .news_list>li {
        border-bottom: 1px solid #aaa;
    }

    .page_news .news_container .news_list>li a {
        display: block;
        padding: 10px 0;
        position: relative;
        padding-right: 30px;
    }

    .page_news .news_container .news_list>li:first-child a {
        padding-top: 0;
    }

    .page_news .news_container .news_list>li a:before {
        content: " ";
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 0 10px 10px;
        border-color: transparent transparent transparent #999;
        position: absolute;
        top: 50%;
        right: 10px;
        font-size: 20px;
        margin-top: -10px;
        color: #999;
    }

    .page_news .news_container .news_list>li a:hover:before {
        border-color: transparent transparent transparent #111;
    }

    .page_news .news_container .news_list>li a:after {
        content: " ";
        display: block;
        width: 0;
        height: 0;
        border-style: solid;
        border-width: 10px 0 10px 10px;
        border-color: transparent transparent transparent #F4F5F7;
        position: absolute;
        top: 50%;
        right: 11px;
        font-size: 20px;
        margin-top: -10px;
        color: #999;
    }

    .page_news .news_container .news_list>li a:hover:after {}

    .page_news .news_container .news_list span {
        vertical-align: middle;
    }

    .page_news .news_container .news_list .info {
        margin-bottom: 5px;
    }

    .page_news .news_container .news_list .date {
        font-size: 16px;
        font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
        font-style: italic;
    }

    .page_news .news_container .news_list .date span {
        font-size: 14px;
        margin-left: 5px;
        margin-right: 10px;
    }

    .page_news .news_container .news_list .category {
        display: inline-block;
        padding: 3px 10px;
        background: #292929;
        color: #fff;
        font-size: 9px;
        letter-spacing: 2px;
        vertical-align: middle;
    }

    .page_news .news_container .news_list .title {
        font-size: 13px;
        font-weight: bold;
        padding-right: 10px;
    }

    .page_news .news_container .news_list .list_en_title {
        padding-right: 10px;
    }

    .page_news .news_container .pager {
        text-align: center;
        margin-bottom: 30px;
    }

    .page_news .news_container .pager a {
        display: inline-block;
        padding: 7px 0;
        width: 35px;
        text-align: center;
        font-size: 14px;
        border: 1px solid #111;
    }

    .page_news .news_container .pager a:hover {
        background: #292929;
        color: #FFF;
    }

    .page_news .news_container .pager .current {
        border: none;
    }

    .page_news .news_container .pager .current:hover {
        background: none;
        color: #111;
    }

    .page_news .news_container .pager .prev,
    .page_news .news_container .pager .next,
    .page_news .news_container .pager .top {
        border: none;
        width: auto;
        font-weight: bold;
        font-size: 16px;
    }

    .page_news .news_container .pager .prev {
        margin-right: 10px;
    }

    .page_news .news_container .pager .next {
        margin-left: 10px;
    }

    .page_news .news_container .pager .prev:hover,
    .page_news .news_container .pager .next:hover,
    .page_news .news_container .pager .top:hover {
        background: none;
        color: #111;
        text-decoration: underline;
    }

    .page_news .news_container .pager .prev:before {
        content: "\f060";
        font-family: FontAwesome;
        margin-right: 10px;
        display: inline-block;
        vertical-align: bottom;
        padding-bottom: 4px;
        font-size: 12px;
    }

    .page_news .news_container .pager .next:after {
        content: "\f061";
        font-family: FontAwesome;
        margin-left: 10px;
        display: inline-block;
        vertical-align: bottom;
        padding-bottom: 4px;
        font-size: 12px;
    }

    .page_news .news_container .news_nav {}

    .page_news .news_container .news_nav .item {
        margin-bottom: 30px;
    }

    .page_news .news_container .news_nav .title {
        padding-top: 10px;
        padding-bottom: 10px;
        border-top: 2px solid #000;
        border-bottom: 2px solid #000;
        margin-bottom: 15px;
        font-size: 14px;
        letter-spacing: 6px;
        font-weight: bold;
        text-align: center;
    }

    .page_news .news_container .news_nav li {
        border-bottom: none;
    }

    .page_news .news_container .news_nav li:last-of-type {
        border-bottom: none;
    }

    .page_news .news_container .news_nav li>a {
        display: block;
        padding: 15px 10px;
        font-size: 13px;
        letter-spacing: 3px;
        font-weight: bold;
        background: #F4F5F7;
        border-bottom: 1px dotted #ccc;
    }

    .page_news .news_container .news_nav li>a:hover {
        background: #292929;
        color: #fff;
    }

    /*---*/
    .page_news .news_container .news_detail {
        padding-bottom: 50px;
    }

    .page_news .news_container .news_detail .info {
        margin-bottom: 40px;
    }

    .page_news .news_container .news_detail .info span {
        vertical-align: middle;
    }

    .page_news .news_container .news_detail .date {
        font-size: 15px;
        font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
        font-style: italic;
    }

    .page_news .news_container .news_detail .date span {
        font-size: 13px;
        margin-left: 5px;
        margin-right: 10px;
    }

    .page_news .news_container .news_detail .category {
        display: inline-block;
        padding: 3px 10px;
        background: #292929;
        color: #fff;
        font-size: 9px;
        letter-spacing: 2px;
        vertical-align: middle;
    }

    .page_news .news_container .news_detail .title {
        font-size: 16px;
        font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
        font-weight: bold;
        margin-bottom: 40px;
    }

    .page_news .news_container .news_detail+.pager {
        text-align: center;
    }

    .editor_area {
        line-height: 2;
    }

    .editor_area strong {
        font-weight: bold;
    }

    .editor_area em {
        font-style: italic;
    }

    .editor_area img,
    .editor_area iframe {
        max-width: 100%;
        height: auto !important;
    }

    .editor_area p {
        margin-bottom: 1em;
    }

    /*---*/
    .page_about>.wrap>section {
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 30px;
    }

    .page_about>.wrap>section:last-of-type {
        margin-bottom: 30px;
    }

    .page_about>.wrap>.block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
        margin-bottom: 0;
    }

    .page_about .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_about .block01 .head .gen_title01 span:before,
    .page_about .block01 .head .gen_title01 span:after {
        display: none;
    }

    .page_about .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_about>.wrap>section .title {
        font-size: 15px;
        padding: 10px 0;
        font-weight: bold;
        border-bottom: 1px solid #111;
        margin-bottom: 15px;
    }

    .page_about>.wrap>section .text {
        line-height: 2;
    }

    /*---*/
    .page_sitemap .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_sitemap .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_sitemap .block01 .head .gen_title01>span:before,
    .page_sitemap .block01 .head .gen_title01>span:after {
        display: none;
    }

    .page_sitemap .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    /*---*/
    .page_contact .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_contact .block01 .head {
        margin-bottom: 30px;
    }

    .page_contact .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_contact .block01 .head .gen_title01 span:before,
    .page_contact .block01 .head .gen_title01 span:after {
        display: none;
    }

    .page_contact .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_contact .block01 .body {
        line-height: 1.8;
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
    }

    .contact_form_container {
        padding-left: 15px;
        padding-right: 15px;
        margin-bottom: 30px;
        font-size: 13px;
    }

    .contact_form_container table {
        width: 100%;
    }

    .contact_form_container table th {
        width: 100%;
        display: block;
        vertical-align: top;
        padding: 10px;
        background: #e3e3e3;
        position: relative;
        font-weight: bold;
    }

    .contact_form_container table th:after {
        content: "MUST";
        display: block;
        font-weight: normal;
        position: absolute;
        font-size: 11px;
        top: 9px;
        right: 10px;
        padding: 4px 7px;
        background: #BA4758;
        color: #fff;
        font-family: 'Cabin', sans-serif;
        -webkit-border-radius: 2px;
        border-radius: 2px;
    }


    .contact_form_container table td p>span {
        display: block;
    }



    .contact_form_container table td {
        vertical-align: top;
        padding: 10px;
        padding-bottom: 40px;
        width: 100%;
        display: block;
    }

    .contact_form_container input[type=text],
    .contact_form_container input[type=tel],
    .contact_form_container input[type=email],
    .contact_form_container select,
    .contact_form_container textarea {
        padding: 10px;
        width: 100%;
        font-size: 16px;
        border: 2px solid #d9d9d9;
        -webkit-border-radius: 5px;
        border-radius: 5px;
        min-height: 50px;
    }

    .contact_form_container input[type=text].mini {
        width: 50%;
    }

    .contact_form_container .privacy_wrap {
        margin-top: 15px;
        margin-bottom: 15px;
    }

    .contact_form_container .privacy_wrap input[type=checkbox] {
        margin-right: 10px;
    }

    .contact_form_container .privacy_wrap a {
        text-decoration: underline;
    }

    .contact_form_container .privacy_wrap a:hover {
        text-decoration: none;
    }

    .contact_form_container .privacy_wrap i {
        padding-left: 5px;
        padding-right: 5px;
    }

    .contact_form_container .submit_btns {
        text-align: center;
    }

    .contact_form_container .submit_btns input[type=submit],
    .contact_form_container .submit_btns input[type=button] {
        width: 70%;
        padding: 20px;
        background: #cccccc;
        color: #fff;
        font-size: 16px;
        /*letter-spacing: 4px;*/
        text-align: center;
        border: none;
        margin: 10px;
        margin-left: auto;
        margin-right: auto;
        display: block;
    }

    .contact_form_container .submit_btns.on input[type=submit],
    .contact_form_container .submit_btns.on input[type=button] {
        background: #292929;
        cursor: pointer;
    }

    /*---*/
    .page_philosophy .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_philosophy .block01 .head {
        margin-bottom: 15px;
    }

    .page_philosophy .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_philosophy .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_philosophy .block02 {
        width: 100%;
        height: 300px;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_philosophy .block02>.inner {
        position: relative;
    }

    .page_philosophy .block02>.inner .item_wrap {
        width: 100%;
        height: 300px;
        padding: 50px 0;
        background: rgba(255, 255, 255, 0.5);
        position: static;
        top: 0;
        right: 0;
        text-align: center;
        color: #111;
    }

    .page_philosophy .block02>.inner .item_wrap .title {
        margin-bottom: 20px;
    }

    .page_philosophy .block02>.inner .item_wrap .title img {
        padding: 10px;
        background: #FFF;
        -webkit-border-radius: 3px;
        border-radius: 3px;
    }

    .page_philosophy .block02>.inner .item_wrap .text_ja {
        margin-bottom: 20px;
        line-height: 2;
    }

    .page_philosophy .block02>.inner .item_wrap .text_en {
        font-size: 12px;
        line-height: 2;
    }

    .page_philosophy .block03 {
        text-align: left;
        padding-top: 20px;
        padding-bottom: 20px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .page_philosophy .block03 .title_ja {
        font-size: 14px;
        margin-bottom: 15px;
        line-height: 1.8;
        font-weight: bold;
        letter-spacing: 3px;
    }

    .page_philosophy .block03 .text_ja {
        line-height: 1.7;
        font-size: 13px;
    }

    .page_philosophy .block03 .text_en02 {
        line-height: 1.8;
    }

    .page_philosophy .block04 {
        width: 100%;
        height: 300px;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_philosophy .block04 .text_en01 {
        font-family: 'Cabin', sans-serif;
        font-size: 15px;
        line-height: 2;
    }

    .page_philosophy .block04 .text_en02 {
        font-family: 'Cabin', sans-serif;
        font-size: 12px;
        line-height: 1.5;
    }

    .page_philosophy .block04>.inner {
        position: relative;
    }

    .page_philosophy .block04>.inner .item_wrap {
        width: 100%;
        height: 300px;
        padding: 25px;
        background: rgba(255, 255, 255, 0.5);
        position: static;
        top: 0;
        left: 0;
        text-align: left;
        color: #111;
    }

    .page_philosophy .block04>.inner .item_wrap .title {
        margin-bottom: 20px;
    }

    .page_philosophy .block04>.inner .item_wrap .title img {
        padding: 5px;
        background: #FFF;
        -webkit-border-radius: 3px;
        border-radius: 3px;
    }

    .page_philosophy .block04>.inner .item_wrap .text_ja {
        margin-bottom: 20px;
    }

    .page_philosophy .block04>.inner .item_wrap .text_en01 {
        font-size: 20px;
        letter-spacing: 4px;
    }

    .page_philosophy .block04>.inner .item_wrap .text_en02 {}

    /*---*/
    .philosophy_text_container {
        padding-left: 15px;
        padding-right: 15px;
        margin-left: auto;
        margin-right: auto;
        margin-top: 20px;
        margin-bottom: 30px;
    }

    .philosophy_text_container .title_ja {
        font-weight: bold;
        font-size: 14px;
        letter-spacing: 3px;
        margin-bottom: 15px;
        line-height: 1.8;
        text-align: left;
    }

    .philosophy_text_container .text_wrap>.left {
        width: 100%;
        float: none;
    }

    .philosophy_text_container .text_wrap>.right {
        width: 100%;
        float: none;
    }

    .philosophy_text_container .text_wrap p {
        margin-bottom: 1.5em;
        line-height: 1.8;
        font-size: 14px;
    }

    .philosophy_text_container .cont_wrap04 {
        padding-left: 0;
        padding-right: 0;
    }

    .page_philosophy .block06 {
        width: 100%;
        height: 300px;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_philosophy .block06 .text_ja {
        margin-bottom: 20px;
    }

    .page_philosophy .block06 .text_en01 {
        font-family: 'Cabin', sans-serif;
        font-size: 15px;
        line-height: 1.4;
        margin-bottom: 20px;
    }

    .page_philosophy .block06 .text_en02 {
        font-family: 'Cabin', sans-serif;
        font-size: 12px;
        line-height: 1.5;
    }

    .page_philosophy .block06>.inner {
        position: relative;
    }

    .page_philosophy .block06>.inner .item_wrap .title {
        margin-bottom: 20px;
    }

    .page_philosophy .block06>.inner .item_wrap .title img {
        padding: 5px;
        background: #FFF;
        -webkit-border-radius: 3px;
        border-radius: 3px;
    }

    .page_philosophy .block06>.inner .item_wrap {
        width: 100%;
        height: 300px;
        padding: 25px;
        background: rgba(255, 255, 255, 0.5);
        position: static;
        top: 0;
        left: 0;
        text-align: left;
        color: #111;
    }

    .page_philosophy .block08 {
        width: 100%;
        height: 300px;
        background-position: left;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_philosophy .block08 .text_ja {
        margin-bottom: 20px;
    }

    .page_philosophy .block08 .text_en01 {
        font-family: 'Cabin', sans-serif;
        font-size: 15px;
        line-height: 1.4;
    }

    .page_philosophy .block08 .text_en02 {
        font-family: 'Cabin', sans-serif;
        font-size: 12px;
        line-height: 1.5;
    }

    .page_philosophy .block08>.inner {
        position: relative;
    }

    .page_philosophy .block08>.inner .item_wrap .title {
        margin-bottom: 20px;
    }

    .page_philosophy .block08>.inner .item_wrap .title img {
        padding: 5px;
        background: #FFF;
        -webkit-border-radius: 3px;
        border-radius: 3px;
    }

    .page_philosophy .block08>.inner .item_wrap {
        width: 100%;
        height: 300px;
        padding: 25px;
        background: rgba(255, 255, 255, 0.5);
        position: static;
        top: 0;
        left: 0;
        text-align: left;
        color: #111;
    }

    .page_philosophy .block10 {
        width: 100%;
        height: 300px;
        background-position: left;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_philosophy .block10 .text_ja {
        margin-bottom: 20px;
    }

    .page_philosophy .block10 .text_en01 {
        /*font-family: 'Cabin', sans-serif;*/
        font-size: 15px;
        line-height: 1.4;
    }

    .page_philosophy .block10 .text_en02 {
        /*font-family: 'Cabin', sans-serif;*/
        font-size: 12px;
        line-height: 1.5;
    }

    .page_philosophy .block10>.inner {
        position: relative;
    }

    .page_philosophy .block10>.inner .item_wrap .title {
        margin-bottom: 20px;
    }

    .page_philosophy .block10>.inner .item_wrap .title img {
        padding: 5px;
        background: #FFF;
        -webkit-border-radius: 3px;
        border-radius: 3px;
    }

    .page_philosophy .block10>.inner .item_wrap {
        width: 100%;
        height: 300px;
        padding: 25px;
        background: rgba(255, 255, 255, 0.5);
        position: static;
        top: 0;
        left: 0;
        text-align: left;
        color: #111;
    }

    /*---*/
    .page_restindex .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 50px;
    }

    .restaurant_brand_block {
        display: none;
    }

    .page_restindex .block01 .head {
        margin-bottom: 15px;
    }

    .page_restindex .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_restindex .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_restindex .block01 .body .text {
        line-height: 2;
        font-size: 13px;
        margin-bottom: 20px;
        letter-spacing: normal;
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
    }

    .page_restindex .tab_selector_wrap {
        margin-bottom: 50px;
    }

    .page_restindex .tab_selector_wrap .tab_selector {
        text-align: center;
        letter-spacing: -0.5em;
        padding-top: 30px;
    }

    .page_restindex .tab_selector_wrap .tab_selector>li {
        width: 280px;
        letter-spacing: 2px;
        font-family: 'Cabin', sans-serif;
        font-size: 12px;
        text-align: center;
        padding: 10px;
        margin: 5px;
        display: inline-block;
        cursor: pointer;
        background: #FFF;
    }

    .page_restindex .tab_selector_wrap .tab_selector>li:hover,
    .page_restindex .tab_selector_wrap .tab_selector>li.current {
        color: #FFF;
        background: #292929;
    }

    .page_restindex .rest_item_container {
        padding-left: 10px;
        padding-right: 10px;
    }

    .page_restindex .rest_item_container>.item {
        float: none;
        width: 100%;
        padding-bottom: 20px;
        margin-bottom: 20px;
        border-bottom: 1px dotted #ccc;
        text-align: center;
        display: none;
    }

    .page_restindex .rest_item_container>.item.show {
        display: none;
    }

    .page_restindex .rest_item_container>.item.left {
        margin-right: 0;
    }

    .page_restindex .rest_item_container>.item.right {
        float: none;
    }

    .page_restindex .rest_item_container>.item .image {
        position: relative;
    }

    .page_restindex .rest_item_container>.item .image img {
        width: 100%;
        height: auto;
    }

    .page_restindex .rest_item_container>.item .info {
        height: auto;
        padding-bottom: 20px;
    }

    .page_restindex .rest_item_container>.item .logo {}

    .page_restindex .rest_item_container>.item .name_en {
        font-size: 15px;
        font-family: 'Cabin', sans-serif;
        letter-spacing: 2px;
    }

    .page_restindex .rest_item_container>.item .name_ja {
        font-size: 13px;
        margin-bottom: 10px;
        color: #525252;
    }

    .page_restindex .rest_item_container>.item .btn_wrap {
        letter-spacing: -0.5em;
    }

    .page_restindex .rest_item_container>.item .btn_wrap>a {
        margin: 0 5px;
    }

    .page_restindex .rest_item_container>.item .brand_btn {
        border: 1px solid #333;
        display: inline-block;
        font-size: 11px;
        width: 140px;
        padding: 5px;
        text-align: center;
        color: #333;
        letter-spacing: 1px;
    }

    .page_restindex .rest_item_container>.item .brand_btn span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
    }

    .page_restindex .rest_item_container>.item .brand_btn:hover {
        background: #292929;
        color: #FFF;
    }

    .page_restindex .rest_item_container>.item .brand_btn:hover span:before {
        color: #FFF;
    }

    .page_restindex .rest_item_container>.item .shop_btn {
        border: 1px solid #333;
        display: inline-block;
        font-size: 11px;
        width: 140px;
        padding: 5px;
        text-align: center;
        color: #fff;
        letter-spacing: 1px;
        background: #292929;
    }

    .page_restindex .rest_item_container>.item .shop_btn span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
    }

    .page_restindex .rest_item_container>.item .shop_btn:hover {
        background: #fff;
        color: #111;
    }

    .page_restindex .rest_item_container>.item .shop_btn:hover span:before {
        color: #111;
    }

    .page_restindex .rest_item_container>.item.cat_rego .image:before {
        content: "RIGOLETTO";
        width: 145px;
        text-align: center;
        letter-spacing: 0.1em;
        font-size: 12px;
        font-family: 'Cabin', sans-serif;
        background: rgba(255, 255, 255, 0.6);
        color: #111;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        padding: 7px;
        display: none;
    }

    .page_restindex .rest_item_container>.item.cat_mm .image:before {
        content: "MODERN MEXICANO";
        width: 145px;
        text-align: center;
        letter-spacing: 0.1em;
        font-size: 12px;
        font-family: 'Cabin', sans-serif;
        background: rgba(255, 255, 255, 0.6);
        color: #111;
        display: block;
        position: absolute;
        top: 0;
        left: 0;
        padding: 7px;
        display: none;
    }

    /*---*/
    .page_restconcept .block01 {
        text-align: center;
        padding-top: 30px;
        padding-bottom: 30px;
    }

    .page_restconcept .block01 .head {
        margin-bottom: 15px;
    }

    .page_restconcept .block01 .head .gen_title01 {
        text-align: center;
        margin-bottom: 15px;
        font-size: 15px;
    }

    .page_restconcept .block01 .head .title_ja {
        letter-spacing: 3px;
        font-weight: bold;
        font-size: 12px;
    }

    .page_restconcept .block02 {
        width: 100%;
        height: 600px;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_restconcept .block02 .title {
        color: #FFF;
        font-family: 游明朝, "Yu Mincho", YuMincho, "Hiragino Mincho ProN", HGS明朝E, メイリオ, Meiryo, serif;
        font-size: 16px;
        letter-spacing: 2px;
        -webkit-writing-mode: vertical-rl;
        -ms-writing-mode: tb-rl;
        writing-mode: vertical-rl;
    }

    .page_restconcept .block02 .title01 {
        position: absolute;
        height: 400px;
        top: 60px;
        left: 50%;
        margin-left: 20px;
        display: inline-block;
    }

    .page_restconcept .block02 .title02 {
        position: absolute;
        height: 400px;
        top: 160px;
        left: 50%;
        margin-left: -20px;
        display: inline-block;
    }

    .page_restconcept .block03 {
        padding-top: 20px;
        padding-bottom: 20px;
        text-align: left;
        padding-left: 15px;
        padding-right: 15px;
        background-position: center bottom;
        background-repeat: no-repeat;
        -webkit-background-size: contain;
        -o-background-size: contain;
        background-size: contain;
    }

    .page_restconcept .block03 p {
        margin-bottom: 1em;
        line-height: 1.8;
        font-weight: normal;
    }

    .page_restconcept .block04 {
        width: 100%;
        height: 300px;
        margin-bottom: 30px;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .page_restconcept .block04 .item_wrap {
        background: #FFF;
        width: 100%;
        height: 300px;
        padding: 20px;
        background: rgba(255, 255, 255, 0.8);
        display: -webkit-flex;
        display: -moz-flex;
        display: -ms-flex;
        display: -o-flex;
        display: flex;
        -webkit-flex-direction: column;
        -moz-flex-direction: column;
        -ms-flex-direction: column;
        -o-flex-direction: column;
        flex-direction: column;
        justify-content: center;
    }

    .page_restconcept .block04 .item_wrap p {
        line-height: 1.8;
        font-size: 13px;
        color: #111;
        margin-bottom: 1em;
    }

    /*---*/
    .brand_mv .logo {
        position: absolute;
        top: 50%;
        left: 50%;
        margin-top: -60px;
        margin-left: -45px;
    }

    .brand_mv .logo img {
        width: 90px;
        height: 90px;
    }

    .page_brand section,
    .page_brand div {
        background: #F4F5F7;
    }

    .page_brand .mv_block {
        position: relative;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .brand_mv .attached_bg {
        position: fixed;
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        -webkit-background-size: cover;
        background-size: cover;
        background-position: center;
    }

    .rest_to_access_btn {
        position: fixed;
        background: rgba(0, 0, 0, 0.6);
        top: 50%;
        right: 0;
        margin-top: -50px;
        color: #FFF;
        font-size: 12px;
        z-index: 250;
        text-align: center;
        display: none;
    }

    .rest_to_access_btn a {
        color: #FFF;
        display: block;
        padding: 20px;
    }

    .brand_rigoletto .rest_to_access_btn a,
    .brand_modern-mexicano .rest_to_access_btn a {
        color: #FFF;
        display: block;
        padding: 20px 10px;
    }

    .page_brand .block01 {
        padding-top: 30px;
        padding-bottom: 30px;
        padding-left: 10px;
        padding-right: 10px;
        text-align: center;
    }

    .page_brand .block01 .title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 16px;
        margin-bottom: 10px;
        font-weight: bold;
        letter-spacing: 2px;
    }

    .page_brand .block01 .title_ja {
        font-size: 14px;
        margin-bottom: 30px;
        font-weight: bold;
    }

    .page_brand .block01 .text01 {
        font-size: 14px;
        font-weight: bold;
        margin-bottom: 30px;
    }

    .page_brand .block01 .text02 {
        font-size: 13px;
        line-height: 1.8;
        text-align: left;
        padding-left: 5px;
        padding-right: 5px;
    }

    .brand_slider {
        position: relative;
        width: 100%;
        margin-bottom: 0;
        padding-bottom: 30px;
    }

    .brand_slider_for_wrap {
        position: relative;
        margin-bottom: 0;
        padding-bottom: 5px;
    }

    .brand_slider_for div.item {
        width: 100%;
        padding: 7px;
    }

    .brand_slider_for div.item img {
        width: 100%;
        height: auto;
    }

    .brand_slider_nav div.item {
        width: 13%;
        margin: 0 5px;
        background: #000;
    }

    .brand_slider_nav div.item img {
        width: 100%;
        height: auto;
        opacity: 0.4;
    }

    .brand_slider_nav .slick-current img {
        opacity: 1 !important;
    }

    .brand_slider_for_wrap .slider_prev {
        position: absolute;
        top: 50%;
        left: 25%;
        margin-top: -18px;
        margin-left: -15px;
        cursor: pointer;
        display: none;
    }

    .brand_slider_for_wrap .slider_next {
        position: absolute;
        top: 50%;
        right: 25%;
        margin-top: -18px;
        margin-right: -15px;
        cursor: pointer;
        display: none;
    }

    .page_brand .block03 {
        margin-bottom: 0;
        padding-bottom: 60px;
    }

    .page_brand .block03 .table {
        display: block;
        width: 100%;
    }

    .page_brand .block03 .table>.left {
        width: 100%;
        vertical-align: middle;
        text-align: center;
        display: block;
        padding: 10px;
        margin-bottom: 20px;
    }

    .page_brand .block03 .table>.left .title {
        display: inline-block;
        position: relative;
    }

    .page_brand .block03 .table>.left .title .en {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        letter-spacing: 5px;
        font-weight: bold;
        display: inline-block;
        margin-bottom: 10px;
    }

    .page_brand .block03 .table>.left .title .ja {
        font-size: 14px;
        letter-spacing: 3px;
        font-weight: bold;
        display: inline-block;
    }

    .page_brand .block03 .table>.left .title:before {
        content: "“";
        font-size: 40px;
        display: block;
        font-family: 'Lora', serif;
        position: absolute;
        top: -20px;
        left: -40px;
        display: none;
    }

    .page_brand .block03 .table>.left .title:after {
        content: "”";
        font-size: 40px;
        display: block;
        font-family: 'Lora', serif;
        position: absolute;
        bottom: -40px;
        right: -40px;
        display: none;
    }

    .page_brand .block03 .table>.right {
        vertical-align: middle;
        display: block;
        padding: 10px 15px;
        width: 100%;
    }

    .page_brand .block03 .table>.right .text {
        line-height: 1.8;
    }

    .page_brand .block04 .head {
        text-align: center;
        margin-bottom: 20px;
        padding-left: 15px;
        padding-right: 15px;
    }

    .page_brand .block04 .title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        margin-bottom: 15px;
        letter-spacing: 5px;
        font-weight: bold;
    }

    .page_brand .block04 .title_ja {
        font-size: 14px;
        letter-spacing: 1.8px;
        margin-bottom: 20px;
        font-weight: bold;
    }

    .brand_fadeslide_container {
        margin-bottom: 0;
        padding-bottom: 30px;
    }

    .brand_fadeslide_container>.item_wrap {
        margin-bottom: 10px;
        position: relative;
        width: 100%;
        height: auto;
    }

    .brand_fadeslide_container>.item_wrap>.item {
        position: static;
        top: 0;
        left: 0;
        opacity: 1;
        -webkit-transition: opacity 0.3s ease;
        -moz-transition: opacity 0.3s ease;
        -ms-transition: opacity 0.3s ease;
        -o-transition: opacity 0.3s ease;
        transition: opacity 0.3s ease;
    }

    .brand_fadeslide_container>.item_wrap>.item.on {
        opacity: 1;
    }

    .brand_fadeslide_container .table {
        display: block;
        width: 100%;
        height: auto;
    }

    .brand_fadeslide_container .table>.info {
        width: 100%;
        padding: 10px 15px;
        display: block;
        vertical-align: middle;
        background: #F4F5F7;
        display: none;
    }

    .brand_fadeslide_container .table:first-child .info {
        display: block;
    }

    .brand_fadeslide_container .table>.info .title {
        text-align: center;
        margin-bottom: 30px;
        font-size: 14px;
        font-weight: bold;
    }

    .brand_fadeslide_container .table>.info .text {
        font-size: 13px;
        line-height: 1.8;
    }

    .brand_fadeslide_container .table>.image {
        display: block;
        width: 100%;
        height: 250px;
        vertical-align: middle;
        opacity: 1;
        display: none;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .brand_fadeslide_container>.thumbs {
        text-align: center;
        letter-spacing: -0.5em;
        position: relative;
    }

    .brand_fadeslide_container>.thumbs:after {
        content: "";
        width: 100%;
        height: 100%;
        position: absolute;
        top: 0;
        left: 0;
    }

    .brand_fadeslide_container>.thumbs>.item {
        width: 47%;
        height: 150px;
        margin: 0px 3px;
        cursor: default;
        letter-spacing: normal;
        display: inline-block;
        background: #000;
    }

    .brand_fadeslide_container>.thumbs>.item span {
        opacity: 1;
        display: block;
        width: 100%;
        height: 100%;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .brand_fadeslide_container>.thumbs>.item.on span {
        opacity: 1;
    }

    .page_brand .block05 .head {
        text-align: center;
        margin-bottom: 20px;
    }

    .page_brand .block05 .title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        margin-bottom: 20px;
        letter-spacing: 5px;
        font-weight: bold;
    }

    .page_brand .block05 .title_ja {
        font-size: 14px;
        letter-spacing: 1.8px;
        margin-bottom: 20px;
        font-weight: bold;
    }

    .brand_access_block {
        margin-bottom: 0;
        padding-bottom: 50px;
        text-align: center;
    }

    .brand_access_block>.title {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        margin-bottom: 30px;
        letter-spacing: 5px;
        font-weight: bold;
    }

    .brand_access_block .access_wrap {
        letter-spacing: -0.5em;
        text-align: center;
    }

    .brand_access_block .access_wrap>.image {
        width: 100%;
        display: block;
        vertical-align: top;
        margin: 0px;
        letter-spacing: normal;
    }

    .brand_access_block .access_wrap>.image img {
        width: 100%;
        height: auto;
    }

    .brand_access_block .access_wrap>.info {
        width: 100%;
        display: block;
        vertical-align: top;
        margin: 0px;
        letter-spacing: normal;
        padding: 30px 10px;
    }

    .brand_access_block .access_wrap>.info .logo {
        margin-bottom: 15px;
    }

    .brand_access_block .access_wrap>.info .title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        font-weight: bold;
        letter-spacing: 3px;
    }

    .brand_access_block .access_wrap>.info .title_ja {
        margin-bottom: 30px;
        font-size: 12px;
    }

    .brand_access_block .access_wrap>.info .area {
        background: #FFF;
        display: inline-block;
        padding: 5px 30px;
        font-size: 13px;
        letter-spacing: 2px;
        margin-bottom: 30px;
    }

    .brand_access_block .access_wrap>.info .shop_btn {
        border: 1px solid #333;
        display: inline-block;
        font-size: 12px;
        width: 75%;
        padding: 6px;
        text-align: center;
        color: #fff;
        letter-spacing: 2px;
        background: #292929;
    }

    .brand_access_block .access_wrap>.info .shop_btn span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
    }

    .brand_access_block .access_wrap>.info .shop_btn:hover {
        background: #fff;
        color: #111;
    }

    .brand_access_block .access_wrap>.info .shop_btn:hover span:before {
        color: #111;
    }

    /* 蘇芳 */
    .brand_access_block .access_wrap>.single-info .shop_btn {
        border: 1px solid #333;
        display: inline-block;
        font-size: 11px;
        width: 140px;
        padding: 5px;
        text-align: center;
        color: #fff;
        letter-spacing: 1px;
        background: #292929;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .brand_access_block .access_wrap>.single-info .shop_btn span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .brand_access_block .access_wrap>.single-info .shop_btn:hover {
        background: #fff;
        color: #111;
    }

    .brand_access_block .access_wrap>.single-info .shop_btn:hover span:before {
        color: #111;
    }

    .brand_access_block .access_wrap>.single-info .btn_wrap>a {
        margin: 0 5px;
    }

    .brand_access_block .access_wrap>.single-info .brand_btn {
        border: 1px solid #333;
        display: inline-block;
        font-size: 11px;
        width: 140px;
        padding: 5px;
        text-align: center;
        color: #333;
        letter-spacing: 1px;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .brand_access_block .access_wrap>.single-info .brand_btn span:before {
        content: "\f105";
        font-family: FontAwesome;
        margin-right: 5px;
    }

    .brand_access_block .access_wrap>.single-info .brand_btn:hover {
        background: #292929;
        color: #FFF;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .brand_access_block .access_wrap>.single-info .brand_btn:hover span:before {
        color: #FFF;
    }


    .page_brand .page_restindex {
        margin-bottom: 0;
        padding-bottom: 60px;
        position: relative;
    }

    .page_brand .page_restindex>.head {
        text-align: center;
        margin-bottom: 10px;
    }

    .page_brand .page_restindex>.head .title_en {
        font-family: 'Cabin', sans-serif;
        font-size: 18px;
        margin-bottom: 20px;
        letter-spacing: 5px;
        font-weight: bold;
    }

    .page_brand .page_restindex .rest_item_container>.item {
        display: block;
    }

    .page_brand .page_restindex .rest_item_container>.item:last-of-type {
        border-bottom: none;
    }

    .page_restindex .brandpage_rest_item_container>.item:nth-of-type(3n) {
        float: none;
    }

    /*---*/
    .top_shoplist_block {
        margin-bottom: 60px;
    }

    .top_shoplist_block .table {
        display: block;
        width: 100%;
        border-collapse: separate;
        border-spacing: 5px;
    }

    .top_shoplist_block .table .row {
        display: block;
    }

    .top_shoplist_block .table .col {
        display: block;
        position: relative;
        width: 100%;
        height: 200px;
        padding-top: 50px;
        text-align: center;
        vertical-align: middle;
        background-position: center;
        background-repeat: no-repeat;
        -webkit-background-size: cover;
        -o-background-size: cover;
        background-size: cover;
    }

    .top_shoplist_block .table .col img {
        width: auto;
        height: 100px;
    }

    .top_shoplist_block .table .col a {
        opacity: 1;
        -webkit-transition: all 0.3s ease;
        -moz-transition: all 0.3s ease;
        -ms-transition: all 0.3s ease;
        -o-transition: all 0.3s ease;
        transition: all 0.3s ease;
    }

    .top_shoplist_block .table .col a:hover {
        opacity: 0.8;
    }

    .top_shoplist_block .table .col.item01:before {
        content: " ";
        width: 100%;
        height: 10px;
        background: #000;
        position: absolute;
        top: 0;
        left: 0;
    }

    .top_shoplist_block .table .col.item01:after {
        content: " ";
        width: 100%;
        height: 10px;
        background: #000;
        position: absolute;
        bottom: 0;
        left: 0;
    }

    .rest_head_brandlist {
        padding-bottom: 15px;
        margin-bottom: 0;
    }

    .rest_head_brandlist .inner {
        width: 100%;
    }

    .rest_head_brandlist .item_list {
        letter-spacing: normal;
    }

    .rest_head_brandlist .item_list>li {
        display: inline-block;
        vertical-align: top;
        letter-spacing: normal;
        margin: 1px 1px;
        width: 100px;
    }

    .rest_head_brandlist .item_list>li img {
        width: 100%;
        height: auto;
        display: block;
    }

    .top_mb_movie_block {
        background: #000;
        color: #FFF;
        padding: 20px 0;
        text-align: center;
        position: absolute;
        bottom: 0px;
        width: 100%;
        z-index: 111;
    }

    .top_mb_movie_block a {
        color: #FFF;
        text-decoration: none;
    }

    .tmp_txt_block {
        padding-left: 10px;
        padding-right: 10px;
        padding-bottom: 50px;
    }

    .lb-close {
        top: 10px;
        right: 10px;
    }

    .lb-nav a.lb-prev {
        /*opacity: 0;*/
        position: absolute;
        left: -50px;
        display: none !important;
    }

    .lb-nav a.lb-next {
        /*opacity: 0;*/
        position: absolute;
        right: -50px;
        display: none !important;
    }

    .sitemap_container {
        padding: 15px;
        margin-bottom: 40px;
    }

    .sitemap_item {
        width: 100%;
        float: none;
        margin-right: 0;
        margin-bottom: 20px;
    }

    .sitemap_item:nth-of-type(3n) {
        margin-right: 0;
        float: none;
    }

    .sitemap_category_name {
        padding: 5px 0;
        font-size: 16px;
        border-bottom: 2px solid #111;
        font-family: 'Cabin', sans-serif;
        margin-bottom: 15px;
    }

    .sitemap_item .item {
        font-size: 13px;
        margin-bottom: 5px;
    }

    .lb-outerContainer {
        width: 90% !important;
    }

    .lb-close {
        width: 15px;
        height: 15px;
        -webkit-background-size: 15px 15px;
        -o-background-size: 15px 15px;
        background-size: 15px 15px;
    }

    #shoplist_block {
        padding-top: 80px;
    }

    .shop_close_mes {
        position: absolute;
        width: 100%;
        top: 50%;
        left: 0;
        margin-top: 100px;
        text-align: center;
        font-size: 14px;
        color: #FFF;
        font-weight: bold;
    }

    .top_shop_close_mes {
        padding-top: 15px;
        font-size: 13px;
    }

    .add_form_notice {
        text-align: left;
        line-height: 1.8;
    }

}