


@charset "utf-8";

/* +++++++++++++++++++++++++++++++

 common.css
 
 全デバイス共通

+++++++++++++++++++++++++++++++ */

/* reset */
ul {
    margin: 0;
    padding: 0;
    list-style: none;
}

input[type=text],
input[type=email],
input[type=tel] {
    -webkit-appearance: none;
}
input:placeholder-shown { color: #999; }
input::-webkit-input-placeholder { color: #999; }
input::-moz-input-placeholder { color: #999; }
input:-ms-input-placeholder { color: #999; }

/* layout */
body {
    background: #fff;
    font-family:'Roboto', 'Noto Sans Japanese', 'Noto Sans SC', 'Noto Sans TC', sans-serif;
    font-weight: 300;
} 

a {
    color: #333;
    text-decoration: none;
}
p a,
.link {
    text-decoration: underline;
}

img { vertical-align: bottom; }
.image img {
    max-width: 100%;
    max-height: 100%;
}
p { margin: 20px 0; }

input,
button {
    font-family:'Roboto', 'Noto Sans Japanese', sans-serif;
    font-weight: 300;
    outline: none;
}

strong { font-weight: 500; }

/* headline */
h1, h2, h3, h4, h5 {
    margin: 0;
    font-size: 20px;
}




/*
グローバルヘッダー
-----------------------------------*/
header.global {
    position: relative;
    z-index: 10;
    background: linear-gradient(90deg, rgba(249,204,219,0.50) 0%, rgba(254,236,131,0.50) 37%, rgba(156,217,218,0.50) 69%, rgba(246,169,197,0.50) 100%);
}
header.global .logo {
    float: left;
    margin: 0;
}
header.global .primary {
    float: right;
    margin-top: 19px;
}
header.global .primary > li { float: left; }

header.global .header_nav {
    position: absolute;
    top: 95px;
    right: 0;
    display: none;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    background: #333;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
    z-index: 100;
}


/*
店舗ヘッダー
-----------------------------------*/
.local_header {
    background: #143368;
    color: #fff;
    z-index: 9;
    position: sticky;
    top: 0;
    left: 0;
    right: 0;
}
.local_header .name {
    float: left;
    font-weight: 600;
}
.local_header .name a { color: #fff; }
.local_header .name a:hover { text-decoration: none; }

.local_header .business_hours {
    margin: 0 0 10px;
    padding: 15px 10px 14px;
    border-radius: 3px;
    background: #fff;
    font-size: 13px;
}
.local_header .business_hours strong { display: block; }

.local_header .business_hours > div {
    position: relative;
    margin-bottom: 15px;
    padding: 0 0 14px 40px;
    border-bottom: 1px solid #d9d9d9;
}
.local_header .business_hours > div:last-child {
    margin-bottom: 0;
    padding-bottom: 0;
    border-bottom: none;
}

.local_header .holiday {
    position: relative;
    margin: 0 0 10px;
    padding: 10px 10px 9px;
    border-radius: 3px;
    background: #f3d1cf;
    font-size: 13px;
}

.local_header strong { font-size: 15px; }
.local_header .tel a { text-decoration: none; }

/*
共通レイアウト
-----------------------------------*/
main { z-index: 1; }
header.global + main { border-top: 1px solid #d9d9d9; }

/*
共通：ボックス
-----------------------------------*/
.box {
    position: relative;
    z-index: 2;
}
#main .box:last-child { margin-bottom: 0; }
.box_gray {
    padding: 20px 0;
    background: #e5e5e5;
}
.box_lgray {
    padding: 20px 0;
    background: #f2f2f2;
}
.box_gray_texture {
    padding: 20px 0;
    background: #e5e5e5 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
}
.box_lgray_texture {
    padding: 20px 0;
    background: #f5f5f5 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
}

/*
パンくず
-----------------------------------*/
#pkz {
    margin: 0;
    padding: 2px 10px;
    background: #f5f5f5;
    font-size: 11px;
}
#pkz li {
    position: relative;
    display: inline-block;
}
#pkz li:before {
    display: inline-block;
    width: 6px;
    height: 10px;
    margin: 0 5px 0 3px;
    background: url(/images/common/pkz.png) no-repeat -50px 0;
    background-size: 100px auto;
    content: " ";
    vertical-align: -1px;
}

#pkz li:first-child:before {
    width: 12px;
    height: 12px;
    margin-left: 0;
    background-position: 0 0;
}

/*
見出し
-----------------------------------*/
/* 大見出し */
.headline01 {
    text-align: center;
    font-weight: 300;
}
.heading01 {
    margin-bottom: 20px;
    padding: 15px 0;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}
.heading02 {
    margin-bottom: 20px;
    padding: 15px 0;
    background: #e6e6e6;
    font-size: 18px;
    font-weight: 500;
}
.heading03 {
    margin-bottom: 20px;
    font-size: 20px;
    font-weight: 500;
    text-align: center;
}

/*
重要なお知らせ
-----------------------------------*/
.box_important_notice {
    padding: 0;
    background: #b2b2b2 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
}
.box_important_notice.most_important { background-color: #fcc; }
.box_important_notice ul { padding: 5px 0; }
.box_important_notice li {
    margin-top: 5px;
    padding: 8px 10px 7px;
    border-radius: 3px;
    background: #fff;
    font-size: 14px;
    color: #000;
}
.box_important_notice li:first-child { margin-top: 0; }


/*
汎用リスト
-----------------------------------*/
.list_indent li {
    margin-top: 20px;
    padding-left: 1em;
    text-indent: -1em;
}
.list_indent li:first-child { margin-top: 0; }

.list_square {
    margin-left: 20px;
    list-style: square;
}
.list_square li { margin-top: 3px; }

/*
ボタン
-----------------------------------*/
.button {
    position: relative;
    display: block;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 400px;
    background: #ececec;
    color: #333;
    font-size: 15px;
    text-align: center;
    
}
/* 小サイズ */
.button_small { width: 200px; }

/*
戻るリンク
-----------------------------------*/
.link_back {
    max-width: 980px;
    margin: 0 auto;
    text-align: right;
}
.link_back a {
    position: relative;
    display: inline-block;
    padding: 5px 10px 4px 20px;
    background: #e6e6e6;
    font-size: 12px;
}
.link_back a:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: inline-block;
    width: 6px;
    height: 13px;
    margin-top: -6px;
    background: url(/images/common/sprite_arrow.png) no-repeat -150px -100px;
    background-size: 200px auto;
    content: " ";
}
.link_back a:hover,
.link_back a.hover {
    background: #d9d9d9;
    text-decoration: none;
}

/*
リスト：ショップ
-----------------------------------*/
.list_shop { border-top: 1px solid #e6e6e6; }
.list_shop > li {
    border-bottom: 1px solid #e6e6e6;
}
.list_shop a {
    display: block;
    padding: 10px;
}
.list_shop a:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    font-size: 0;
    visibility: hidden;
}
.list_shop .image {
    float: right;
    width: 100px;
    margin-left: 10px;
}
.list_shop p { margin: 0; }
.list_shop .name {
    font-size: 16px;
    font-weight: 500;
}
.list_shop .tags:after { display: none; }
.list_shop .tags + p { padding-top: 5px; }

/*
フォームパーツ
-----------------------------------*/
/* ラジオボタンリスト */
.list_block,
.list_inline { margin-top: -5px; }
.list_inline li {
    display: inline-block;
    margin: 5px 0 0;
}
.list_block li { margin: 5px 5px 0 0; }
.list_block label,
.list_inline label {
    position: relative;
    display: block;
    padding: 5px 10px 4px 30px;
    border: 1px solid #ccc;
    background: #fff;
    cursor: pointer;
}
.list_block label { padding: 10px 10px 9px 30px; }
.list_block .checked,
.list_inline .checked {
    background: #333;
    color: #fff;
}
.list_block input,
.list_inline input {
    position: absolute;
    top: 0;
    left: 0;
    filter: alpha(opacity=0);
    opacity: 0;
}
.list_block label:before,
.list_inline label:before {
    position: absolute;
    top: 50%;
    left: 5px;
    display: block;
    width: 15px;
    height: 15px;
    margin-top: -7px;
    background: url(/images/common/ico_radio.png) no-repeat left top;
    background-size: 15px auto;
    content: " ";
}
.list_block .checked:before,
.list_inline .checked:before { background-position: 0 -15px; }

/*
店舗フッター
-----------------------------------*/
#shop_footer {
    position: relative;
    background: #f5f5f5;
    z-index: 2;
}
#shop_footer .name {
    margin: 0;
    font-size: 16px;
}
#shop_footer .tel a {
    font-weight: bold;
    text-decoration: none;
}

.box_footer_notice {
    background: #d9d9d9;
}


/*
グローバルフッター
-----------------------------------*/
footer.global {
    position: relative;
    padding: 20px 10px;
    background: #333;
    color: #fff;
    z-index: 10;
}
footer.global a { color: #fff; }

.footer_shop_list .title,
.footer_list .title {
    margin: 0;
    border-bottom: 1px solid #e5e5e5;
    font-size: 14px;
}
.footer_list li a {  font-size: 12px; }
.footer_shop_list a {
    display: block;
    padding: 0 10px 0 15px;
    background: url(/images/common/ico_circle.png) no-repeat left 4px;
    background-size: 10px;
    color: #fff;
    font-size: 12px;
}
footer.global small {
    display: block;
    padding-top: 10px;
    border-top: 1px solid #d9d9d9;
    text-align: center;
}
footer.global small:first-of-type {
    padding-top: 0;
    border-top: none;
}

/*tsuika171027*/
footer.global .securemark{
	width:150px;
	margin:0 auto 20px auto;
}

/* clearfix */
header:after,
footer:after,
main:after,
section:after,
div:after,
ul:after,
ol:after,
dl:after,
.clearfix:after {
    content: ".";
    display: block;
    clear: both;
    height: 0;
    font-size: 0;
    visibility: hidden;
}
header, footer, main, section, div, ul, ol, dl,.clearfix { display: inline-block; }
header, footer, main, section, div, ul, ol, dl, .clearfix { display: block; }


/*追加PCSP*/

@media all and (min-width: 980px) {

/* +++++++++++++++++++++++++++++++

 common.css
 PC用

+++++++++++++++++++++++++++++++ */

/* layout */
body,
input,
button {
    font-size: 13px;
    line-height: 1.4;
}

a:hover {
    text-decoration: underline;
}
p a:hover,
.link:hover { text-decoration: none; }

img { vertical-align: bottom; }
p { margin: 20px 0; }
.box > p { margin: 20px; }

/* headline */
h1, h2, h3, h4, h5 {
    font-size: 20px;
}
/*
グローバルヘッダー
-----------------------------------*/
header.global .logo {
    float: left;
    width: 220px;
    padding: 13px 0 15px 30px;
}
header.global .logo img { width: 100%; }


header.global .acc {
    position: relative;
    display: block;
    width: 70px;
    height: 36px;
    padding-top: 42px;
    font-size: 8px;
    text-align: center;
    text-decoration: none;
}
header.global .acc.opened {
    background: #333;
    color: #fff;
}
header.global .header_ec_list { width: 100px; }

header.global .acc:after {
    position: absolute;
    top: 8px;
    left: 50%;
    display: block;
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
header.global .header_storelist:after { background-position: -250px -150px; }
header.global .header_storelist.opened:after { background-position: -250px -200px; }
header.global .header_shop_list:after { background-position: -250px -150px; }
header.global .header_shop_list.opened:after { background-position: -250px -200px; }
header.global .header_ec_list:after {
    top:  11px;
    background-position: -300px -150px;
}
header.global .header_ec_list.opened:after { background-position: -300px -200px; }
header.global .header_language:after {background-position: -50px 0; }
header.global .header_language.opened:after { background-position: -50px -50px; }

header.global .header_ec_list .en { display: none; }

/* ドロップダウン共通 */
.header_nav .box_button {
    margin: 20px 0;
}
.primary > ul > li {
    float: left;
    padding: 0 5px;
}
/* 店舗一覧 */
.primary .menu,
div.header_shop_list { display: none; }
#header_shop_list .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 10px 0;
}
#header_shop_list .inner.first {
    padding: 10px 0 0;
}
#header_shop_list .inner.second {
    padding: 0 0 10px;
}


#header_shop_list li {
    display: table;
    float: left;
    width:20%;
}

/*dept*/
#header_shop_list li.dept {
    width: calc(100%/5);
}

/*scsq*/
#header_shop_list li.scsq {
    width: calc((100%/5)*2);
}
/*plz*/
#header_shop_list li.plz {
    width: calc((100%/5)*1);
}
/*sc*/
#header_shop_list li.sc {
    width: calc((100%/5)*1);
}


#header_shop_list li a {
    display: table-cell;
    width: 100%;
    height: 50px;
    padding: 5px 20px 4px 25px;
    background: url(/images/common/ico_circle.png) no-repeat 10px center;
    background-size: 10px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}
#header_shop_list li a:hover {
    background-color: #fff;
    color: #333;
}
/**/

#header_storelist .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 10px 0;
}
#header_storelist .inner.first {
    padding: 10px 0 0;
}
#header_storelist .inner.second {
    padding: 0 0 10px;
}


#header_storelist li {
    display: table;
    float: left;
    width:20%;
}

/*dept*/
#header_storelist li.dept {
    width: calc(100%/5);
}

/*scsq*/
#header_storelist li.scsq {
    width: calc((100%/5)*2);
}
/*plz*/
#header_storelist li.plz {
    width: calc((100%/5)*1);
}
/*sc*/
#header_storelist li.sc {
    width: calc((100%/5)*1);
}


#header_storelist li a {
    display: table-cell;
    width: 100%;
    height: 50px;
    padding: 5px 20px 4px 25px;
    background: url(/images/common/ico_circle.png) no-repeat 10px center;
    background-size: 10px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}
#header_storelist li a:hover {
    background-color: #fff;
    color: #333;
}

/**/
#header_shop_list .mode_sp { display: none; }

/* ネットショッピング */
#header_ec_list ul {
    padding: 20px 0;
    text-align: center;
}
#header_ec_list li {
    display: inline-block;
    overflow: hidden;
    height: 140px;
    margin: 0 5px;
    border-radius: 3px;
    background: #fff;
    vertical-align: middle;
}
#header_ec_list li:first-child a {
    display: block;
    overflow: hidden;
    width: 260px;
    padding: 30px 20px;
    border-radius: 3px;
}
#header_ec_list .category {
    width: 140px;
    height: 140px;
}
#header_ec_list .category a {
    position: relative;
    display: block;
    width: 140px;
    height: 50px;
    padding-top: 90px;
    text-decoration: none;
}
#header_ec_list .category .image {
    position: absolute;
    top: -10px;
    left: -10px;
    display: block;
    width: 160px;
    height: 160px;
    z-index:1;
}
/*#header_ec_list .category img {
    -webkit-filter: blur(3px);
    -moz-filter: blur(3px);
    -ms-filter: blur(3px);
    -o-filter: blur(3px);
    filter: blur(3px);
    transition: 0.1s linear;
}*/
#header_ec_list .category a:hover img {
     -webkit-filter: blur(0);
     -moz-filter: blur(0);
     -ms-filter: blur(0);
     -o-filter: blur(0);
     filter: blur(0);
}
#header_ec_list .category p {
/*
    position: relative;
    display: table-cell;
    width: 140px;
    height: 36px;
    margin: 0;
    color: #fff;
    vertical-align: middle;
    text-shadow: 1px 1px 1px rgba(0,0,0, .8),
                          1px 0 1px rgba(0,0,0, .8),
                          0 1px 1px rgba(0,0,0, .8),
                          -1px 0 1px rgba(0,0,0, .8),
                          0 -1px 1px rgba(0,0,0, .8),
                          -1px -1px 1px rgba(0,0,0, .8);
    z-index: 2;
*/
display:none;}

/* Language */
#header_language {
    width: 240px;
    padding: 10px;
}
#header_language li a {
    display: block;
    padding: 10px;
    color: #fff;
    text-align: center;
    text-decoration: none;
}
#header_language li a:hover {
    background: #fff;
    color: #333;
}


/* 検索 */


.search {
    position: relative;
    top: 13px;
    display: table;

    width: 300px;
    border: 3px solid #ccc;
    background: #fff;
}
.search.active { border-color: #333; }
.search div { display: table-cell; }
.search input[type=text] {
    width: 243px;
    height: 15px;
    padding: 6px 5px 5px;
    border: 1px solid #fff;
    line-height: 15px;
}
.search .button_ico_search {
    width: 40px;
    height: 20px;
    border: none;
    background: url(/images/common/sprite_icon.png) no-repeat -190px -100px;
    background-size: 500px auto;
    text-indent: -999px;
}
.search .active { background: #333; }
.search .active .button_ico_search { background-position: -190px -150px; }

.primary.searchcontainer{margin-right:20px;}
.acc_panel .search{display:none;}
/*
店舗ヘッダー
-----------------------------------*/
.local_header .name {
    float: left;
    padding: 15px 0 14px 20px;
    font-size: 22px;
}
.local_header .information {
    position: relative;
    top: 15px;
    float: right;
}
.local_header .toggle_other { display: none; }
.local_header  li {
    float: left;
    margin-right: 5px;
}
.local_header li > p,
.local_header li > a {
    display: inline-block;
    margin: 0 5px 0 0;
}
.local_header .tel strong {
    font-size: 13px;
    font-weight: normal;
}
.local_header .data {
    padding: 5px 10px 4px;
    border-radius: 3px;
    background: #e6e6e6;
    color: #333;
}
.local_header .restaurant_inline {
    display: inline-block;
    margin-left: 10px;
}
.local_header .address a { text-decoration: none; }
.local_header .address:before,
.local_header .tel:before,
.local_header .time_inline:before,
.local_header .restaurant_inline:before {
    display: inline-block;
    width: 14px;
    height: 14px;
    margin-right: 3px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    vertical-align: -2px;
    content: " ";
}
.local_header .address:before { background-position: -250px -100px; }
.local_header .tel:before { background-position: -300px -100px; }
.local_header .time_inline:before { background-position: -350px -100px; }
.local_header .restaurant_inline:before { background-position: -400px -100px; }

.local_header .toggle_pc {
    position: relative;
    padding-right: 25px;
    text-decoration: none;
}
.local_header .toggle_pc:after {
    position: absolute;
    top: 50%;
    right: 8px;
    display: inline-block;
    width: 13px;
    height: 7px;
    margin-top: -3px;
    background: url(/images/common/sprite_arrow.png) no-repeat -100px -100px;
    background-size: 200px auto;
    content: " ";
}
.local_header .toggle_pc.opened:after { background-position: 0 -100px; }
.local_header .toggle_pc.opened:before {
    position: absolute;
    bottom: -13px;
    left: 50%;
    display: block;
    margin-left: -10px;
    border-color: transparent transparent #e6e6e6;
    border-style: solid;
    border-width: 0 10px 10px 10px;
    content: " ";
}

.local_header .toggle_pc_panel {
    position: absolute;
    top: 40px;
    right: 10px;
    display: none;
    max-width: 280px;
    padding: 10px;
    background: #e6e6e6;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
    color: #333;
    z-index: 90;
}
.local_header .toggle_pc_panel p { margin: 0; }

.local_header .time:before,
.local_header .restaurant:before {
    position: absolute;
    top: 50%;
    left: 0;
    display: block;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}

.local_header .time:before { background-position: -350px -150px; }
.local_header .restaurant:before { background-position: -400px -150px; }

.local_header div:last-child { margin-bottom: 0; }
.local_header .toggle_other_panel > .box_button { display: none; }

/*
重要なお知らせ
-----------------------------------*/
main .box_important_notice { margin-bottom: 40px;}
header + .box_important_notice,
.box_important_notice:first-child { margin-bottom: 10px; }
.box_important_notice ul {
    width: 1200px;
    margin: 0 auto;
}
#main .box_important_notice ul {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 5px;
}
.box_important_notice ul:first-child,
#main .box_important_notice ul:first-child { margin-top: 40px; }
header + .box_important_notice ul:first-child,
.box_important_notice:first-child ul:first-child { margin-top: 0; }

.box_important_notice.headernotice { margin-bottom: 10px; }/*追加*/
.box_important_notice.headernotice ul:first-child { margin-top: 0; }/*追加*/

.box_important_notice:first-child ul:first-child { margin-top: 0; }
.box_important_notice ul + ul { padding-top: 0 !important; }
.box_important_notice li {
    position: relative;
    padding-left: /*140px*//*150px*/10em;
padding-right:10em;
}
/*追加
.box_important_notice li.notitle {
    padding-left: 10px;
}
#main .most_important.storepage ul:first-child { margin-top: 0!important; }

*/
.box_important_notice li.align_center {
    padding-left: 10px;
padding-right:10px;
display:block;
text-align:center;
}


.box_important_notice .title {
    position: absolute;
    top: 5px;
    left: 5px;
    margin: 0;
    padding: 3px 15px 2px;
    border-radius: 3px;
    background: #666;
    color: #fff;
    font-weight: 400;
}

.box_important_notice .align_right{
    display:block;
	text-align:right;
}
.box_important_notice.most_important .title { background: #e64545; }

.box_important_notice a { text-decoration: underline; }
.box_important_notice a:hover { text-decoration: none; }


.box_important_notice.headernotice ul.sougyou85 li {display:table}/*追加*/
.box_important_notice.headernotice ul.sougyou85 .image {display:table-cell;margin-right:10px;height:60px;}/*追加*/
.box_important_notice.headernotice ul.sougyou85 span {display:table-cell;vertical-align:middle;width:100%;}/*追加*/

.box_important_notice.headernotice ul.keishuku li {padding:18px 0;text-align:center;}/*追加*/
.box_important_notice.headernotice ul.keishuku li span{font-family: "Sawarabi Mincho",serif;font-size:22px;transform: rotate(.03deg);fonr-weight:800;}/*追加*/

.box_important_notice.headernotice ul.toyokoinfo li {padding:18px 0;text-align:center;}/*追加*/

.box_important_notice ul.omimai li {padding:18px 0;text-align:center;}/*追加*/
.box_important_notice ul.omimai li span{font-family: "Sawarabi Mincho",serif;font-size:18px;transform: rotate(.03deg);font-weight:400;}/*追加*/

/*
店舗共通レイアウト
-----------------------------------*/
main {
  position: relative;
  padding-bottom: 40px;
  overflow: hidden;
}
#main {
   width: calc(100% - 300px);
}
#nav {
    display: block !important;
    width: 290px;
    position: -webkit-sticky;
    position:sticky;
    bottom: 20px;
}

/*
ローカルメニュー
-----------------------------------*/
#nav .title,
#nav .name,
#nav .search,
#nav .toggle_nav,
#nav .box_button { display: none; }

#nav a {
    position: relative;
    display: block;
    text-decoration: none;


     transition: 0.1s linear;
}
#nav .primary a { width: 210px; }
#nav a:hover {
    border-bottom-color: #333;
    background: #333;
    color: #fff;
}
#nav a:before {
    position: absolute;
    display: block;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
#nav_panel {
    display: block !important;
    width: 100%;
}
#nav .primary a:before {
    top: 50%;
    left: 20px;
    width: 30px;
    height: 30px;
    margin-top: -15px;
}
#nav .secondary a:before {
    top: 8px;
    left: 50%;
}

#nav .primary a {
    padding: 20px 20px 19px 60px;
    border-bottom: 1px solid #d9d9d9;
    font-size: 15px;
}
#nav .primary .foreign_customers,
#nav .primary .long { padding: 10px 20px 9px 60px; }

#nav .secondary {
    padding: 10px 0;
    border-bottom: 1px solid #d9d9d9;
}
#nav .secondary li {
    float: left;
    width: 33.33%;
}
#nav .secondary a {
    height: 30px;

    padding: 45px 5px 5px;
    border-left: 1px solid #d9d9d9;
    font-size: 12px;
    text-align: center;
    line-height: 1.2;
}
#nav .secondary li:first-child a { border-left: none; }

/* アイコン表示 */
#nav .topics:before { background-position: -150px 0; }
#nav .topics:hover:before { background-position: -150px -50px; }

#nav .event:before { background-position: -200px 0; }
#nav .event:hover:before { background-position: -200px -50px; }

#nav .shops:before { background-position: -248px 0; }
#nav .shops:hover:before { background-position: -248px -50px; }

#nav .floor_map:before { background-position: -400px 0; }
#nav .floor_map:hover:before { background-position: -400px -50px; }

/* 東急フードショー追加 start */
#nav .column:before { background-position: -452px 0; }
#nav .column:hover:before { background-position: -452px -50px; }
/* 東急フードショー追加 end */

/* ショップブログ start */
#nav .shopblog:before {     background-image: url(/images/common/sprite_icon2.png);
    background-position: 0 0px;
    background-size: 250px auto; }
#nav .shopblog:hover:before { background-position: 0 -50px; }
/* ショップブログ追加 end */

/* 電話番号リスト 追加 start */
#nav .tellist:before {     background-image: url(/images/common/sprite_icon2.png);
    background-position: -50px 0px;
    background-size: 250px auto; }
#nav .tellist:hover:before { background-position: -50px -50px; }
/* 電話番号リスト 追加 end */


#nav .restaurant:before { background-position: 0 -195px; }
#nav .restaurant:hover:before { background-position: -50px -195px; }

#nav .service_guide:before { background-position: -300px 0; }
#nav .service_guide:hover:before { background-position: -300px -50px; }

#nav .access:before { background-position: -345px 0; }
#nav .access:hover:before { background-position: -345px -50px; }

#nav .foreign_customers:before { background-position: -50px 0; }
#nav .foreign_customers:hover:before { background-position: -50px -50px; }

#nav .information:before { background-position: -100px 0; }
#nav .information:hover:before { background-position: -100px -50px; }

#nav .noicon:before { background: none; }
#nav.show .noicon.hover:before { background: none; }

#nav .all_shops:before {
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background-position: 0 -100px;
}
#nav .all_shops:hover:before { background-position: 0 -150px; }

#nav .inquiry:before {
    top: 10px;
    width: 40px;
    height: 24px;
    margin-left: -20px;
    background-position: -50px -100px;
}
#nav .inquiry:hover:before { background-position: -50px -150px; }


#nav .shipping_inquiry:before {
    width: 45px;
    height: 30px;
    margin-left: -22.5px;
    background-position: -100px -100px;
}
#nav .shipping_inquiry:hover:before { background-position: -100px -150px; }

/* アイコンなし版 */
#nav .simple .primary a {
    width: 250px;
    padding: 20px 20px 19px;
}
#nav .primary.noicon a {
    width: 250px;
    padding: 20px 20px 19px;
}

#nav .simple .primary a:before { background: transparent; }
#nav .simple .primary .long { padding: 10px 20px 9px; }

/* 下層メニューあり */
#nav .primary .nav_title { border-bottom: none; }
#nav .primary .nav_title:hover {
    background: #fff;
    color: #333;
    cursor: default;
    pointer-action: none;
}
#nav .primary .nav_title + ul a {
    padding: 15px 20px 14px 40px;
    border-bottom: none;
    font-size: 14px;
}
#nav .primary .nav_title + ul { border-bottom: 1px solid #d9d9d9; }
#nav .primary .txt_supplement {
    display: block;
    font-size: 13px;
}
/*
共通ボックス
-----------------------------------*/
.box { margin-bottom: 50px; }

/*
見出し
-----------------------------------*/
/* 大見出し */
.headline01 {
    margin: 50px 0;
    font-size: 14px;
}
.headline01 span {
    display: block;
    margin-bottom: 5px;
    font-size: 34px;
}
/* 中見出し */
.heading02 {
    margin-bottom: 20px;
    padding: 10px;
}

/*

ボタン
-----------------------------------*/
.button {
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #333;
    transition: 0.1s linear;
}
.button:hover {
    background: #fff;

    color: #333;
    text-decoration: none;
}

/* 小サイズ */
.button_small { padding: 10px; }

/* 次へ */
.button_next:after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 9px;
    height: 14px;
    margin-top: -7px;
    background: url(/images/common/sprite_arrow.png) no-repeat -50px -100px;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}
.button_next:hover:after { background-position: -50px -100px; }

/* 戻る */
.button_prev {
    border-color: #999;
    background: #999;
}
.button_prev:after {
    position: absolute;
    top: 50%;
    left: 20px;
    display: block;
    width: 9px;
    height: 14px;
    margin-top: -7px;
    background: url(/images/common/sprite_arrow.png) no-repeat -150px -150px;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}
.button_prev:hover:after { background-position: -150px -100px; }

/* 閉じるボタン */
.button_close {
    position: relative;
    display: block;
    width: 90px;
    margin: 0 auto;
    padding: 5px 10px 4px 20px;
    border:  1px solid #fff;
    background: #fff;
    color: #333;
    font-size: 13px;
    text-align: center;
    transition: 0.1s linear;
}
.button_close:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url(/images/common/sprite_icon.png) no-repeat -150px -100px;
    background-size: 500px auto;
    content: " ";
}
.button_close:hover {
    background: #333;
    color: #fff;
    text-decoration: none;
}
.button_close:hover:before { background-position: -150px -150px; }

/* 見出し内ボタン */
.button_transition .button {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 200px;
    height: 40px;
    padding: 10px 20px;
    border-color: #333;
    background: #333;
    line-height: 20px;
}
.button_transition .button:hover { background: #fff; }

/*
テーブル
-----------------------------------*/
/* SP時にブロックタイプ */
.table_block {
    width: 100%;
    border-top: 1px solid #d9d9d9;
}
.table_block th,
.table_block td {
    padding: 15px;
    border-bottom: 1px solid #d9d9d9;
    font-weight: 300;
}
.table_block th {
    width: 120px;
    background: #f5f5f5;
}
.table_block p { margin: 5px 0 0; }
.table_block p:first-child { margin-top: 0; }
.table_block .supplement { font-size: 11px; }

/* SP時にボックスタイプ */
.table_box {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_box th,
.table_box td {
    padding: 15px;
    border-bottom: 1px solid #ccc;
    font-size: 16px;
    text-align: left;
}
.table_box th {
    width: 200px;
    font-weight: 500;
}

/* SP時もテーブル */
.table_list {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_list td {
    padding: 15px;
    border-bottom: 1px solid #ccc;
    text-align: left;
}


/*
タブ
-----------------------------------*/
.tab_toggle { height: 0; }
.tab {
    position: relative;
    margin-bottom: 20px;
    text-align: center;
    z-index: 2;
}
.tab:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 8px;
    background: #d9d9d9;
    content: " ";
    z-index: 2;
}
.tab:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 8px;
    background: url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
    z-index: 4;
    visibility: visible;
}
.tab li {
    display: inline-block;
    margin-right: -1px;
    vertical-align: bottom;
}
.tab a {
    position: relative;
    display: table-cell;
    min-width: 110px;
    height: 36px;
    padding: 5px 10px 7px;
    border-top: 3px solid #333;
    border-bottom: 8px solid #f2f2f2;
    background: #f2f2f2;
    text-decoration: none;
    line-height: 1.2;
    z-index: 1;
    vertical-align: middle;
}
.tab .current {

    border-bottom-color: #333;

    background-color: #d9d9d9;
    z-index: 3;
}
.tab .recommend { border-color: #5ba619; }
.tab .ladies { border-color: #f24981; }
.tab .mens { border-color: #0a83bf; }
.tab .foods { border-color: #ffb31a; }
.tab .hobby { border-color: #a621a6; }
.tab .campaign { border-color: #ff791a; }
.tab .norengai {
    border-color: #c00900;
    background-image: url(/toyoko/images/tab_norengai.png);
    background-repeat: no-repeat;
    background-position: center 16px;
    background-size: 90px auto;
    text-indent: -9999px;
}
.tab .foodshow {
    border-color: #24954b;
    background-image: url(/toyoko/images/tab_foodshow.png);
    background-repeat: no-repeat;
    background-position: center 12px;
    background-size: 60px auto;
    text-indent: -9999px;
}
.wrap_tab { position: relative; }
.tab_panel,
.tab_toggle_panel {
    width: 100%;
    display: none;
}

/* tab・toggle切り替え版 */
.heading01 .toggle_sp {
    pointer-events: none;
    cursor: default;
}
.heading01 .toggle_sp:hover { text-decoration: none; }

/*
共通：タグ
-----------------------------------*/
.tags li {
    display: inline-block;
    padding: 3px 5px 2px;
    background: #e6e6e6;
    font-size: 10px;
    line-height: 1.2;
}
.tags .tag_advance_notice {
    background-color: #f23524;
    color: #fff;
}
/*
リスト：トピックス
-----------------------------------*/
.list_topics {
  display: flex;
  flex-wrap: wrap;
  margin: 0 auto;
}
.list_topics > p {
    text-align: center;
}
.list_topics .item {
    margin: 0 5px 5px 0;
    padding: 4px;
    border: 1px solid #999;
    background: #fff;
    vertical-align: top;
    transition: 0.1s linear;
}
.list_topics .item:hover {
    border-color: #333;
    background: #333;
}
.list_topics .item a {
    position: relative;
    display: block;
    box-sizing: border-box;
    width: 100%;
    height: 100%;
    padding-bottom: 45px;
    background: #fff;
    text-align: left;
    text-decoration: none;
}
.list_topics .image_wrap {
    display: table;
    width: 100%;
    max-height: 300px;
}
.list_topics .image {
    display: table-cell;
    width: 100%;
    height: 100%;
    background: #f5f5f5 url(/images/common/bg_texture_bk.png) repeat left top;
    background-size: 15px 16px;
    text-align: center;
    vertical-align: middle;
}

.list_topics .title {
    margin: 8px 10px;
    font-size: 14px;
    font-weight: 500;
}
.list_topics .title + p {
    margin: 0;
    padding: 8px 10px 0;
    font-size: 12px;
}
/*追加*/
.list_topics p.description {
    margin: 0;
    padding: 8px 10px 0;
    font-size: 12px;
}

.list_topics .tags {
  position: absolute;
  bottom: 10px;
  margin: 10px 0 0 10px;
}
.list_topics .tags li { margin-bottom: 2px; }

/*
リスト：バナー
-----------------------------------*/
.list_banner {
    margin-top: -10px;
    text-align: center;
}
.list_banner li {
    display: inline-block;
    width: 160px;
    margin: 10px 3px 0;
}
.list_banner a {
    display: block;
    transition: 0.2s linear;
}
.list_banner a:hover {
    filter: alpha(opacity=60);
    opacity: 0.6;
}


/*
関連サイトバナー
-----------------------------------*/
.list_relations {
    width: 980px;
    margin: 40px auto;
    text-align: center;
}
.list_relations:last-child { margin-bottom: 0; }
.list_banner + .list_relations {
    position: relative;
    margin-top: 100px;
}
.list_banner + .list_relations:before {
    position: absolute;
    top: -50px;
    left: 50%;
    display: block;
    width: 360px;
    height: 2px;
    margin-left: -180px;
    border-radius: 2px;
    background: #e5e5e5 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
}
.list_relations li {
    display: inline-block;
    width: 250px;
    width: 0 15px;
}

.list_relations li.squarebanner {
    width: 160px;
}
/*
リスト：ショップ
-----------------------------------*/
.list_shop a { transition: 0.1s linear; }
.list_shop .image {
    border: 5px solid #fff;
    background: #fff;

}
.list_shop a:hover {
    display: block;
    background: #333;
    text-decoration: none;
}
.list_shop a:hover p{
    color: #fff;
}
.list_shop a:hover .tags li {
    background: #fff;
    color: #333;

}

.list_shop p { font-size: 13px; }

/* ブロックタイプ */
.list_shop_block {
    width: 840px;
    margin: 0 auto;
}
.list_shop_block li {
    float: left;
    width: 209px;
    margin: -1px 0 0 -1px;
    border: 1px solid #d9d9d9;
}
.list_shop_block a {
    position: relative;
    display: table;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 209px;
    height: 100%;
    border: 4px solid #fff;
    text-align: center;
    transition: 0.1s linear;
}
.list_shop_block a:hover {
    border-color: #333;
    text-decoration: none;
}
.list_shop_block .image {
    position: absolute;
    top: 4px;
    left: 4px;
    right: 4px;
    display: block;
    height: 74px;
    text-align: center;

}
.list_shop_block img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 100px;
    max-height: 74px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate( -50%, -50%);
}
.list_shop_block p {
    display: table-cell;
    margin: 0;
    line-height: 1.2;
    vertical-align: middle;
}
.list_shop_block p:first-child { height: 106px; }
.list_shop_block .image + p {
    height: 34px;
    padding-top: 78px;
}


/*
共通注意事項
-----------------------------------*/
.footer_anounce {
    margin: 10px auto 0;
    font-size: 11px;
}

/*
ログイン機能
-----------------------------------*/
.box_login p,
.box_login .table_block {
    width: 980px;
    margin: 20px auto;
}
.box_login p { font-size: 16px; }
.box_login input[type="text"],
.box_login input[type="email"],
.box_login input[type="password"] {
    display: inline-block;
    width: 300px;
    padding: 8px 10px 7px;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
}

.box_login .reg {
    display: inline-block;
    margin-left: 10px;
    padding: 5px 10px;
    background: #e5e5e5;
    font-size: 11px;
}


/*
店舗フッター
-----------------------------------*/
#shop_footer .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
}
#shop_footer .information {
    float: left;
    width: 800px;
}
#shop_footer .information li {
    position: relative;
    margin-top: 10px;
    font-size: 14px;
    padding-left: 20px;
}
#shop_footer .information li:before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 15px;
    height: 15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
#shop_footer .information .address:before { background-position: -250px -100px; }
#shop_footer .information .tel:before { background-position: -300px -100px; }
#shop_footer .information .time:before { background-position: -350px -100px; }
#shop_footer .information .holiday:before { background-position: -450px -100px; }

#shop_footer .information p { margin: 0; }

.box_footer_notice {
    float: right;
    width: 380px;
    padding: 20px 10px;
    font-size: 11px;
}

/*
グローバルフッター
-----------------------------------*/
footer.global .inner {
    width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
}
.page_top {
    position: absolute;
    top: 0;
    right: 0;
    width: 40px;
    text-align: center;
}
.page_top a { display: none; }
#button_page_top {
    position: relative;
    bottom: 0;
    display: inline-block;
    width: 40px;
    height:32px;
    border-top: 8px solid #666;
    background: #333;
    font-size: 12px;
    line-height: 32px;
}
#button_page_top:before {
    position: absolute;
    top: -6px;
    left: 50%;
    display: block;
    margin-left: -6px;
    border-color: transparent transparent #333;
    border-style: solid;
    border-width: 0 6px 6px 6px;
    content: " ";
}
#button_page_top:hover { text-decoration: none; }

.footer_shop_list,
.footer_list  { padding-bottom: 50px; }
.footer_shop_list .title,
.footer_list .title  { padding-bottom: 20px; }
.footer_shop_list ul,
.footer_list ul { margin: 0 10px; }
.footer_shop_list li {
    float: left;
    width: 20%;
    margin-top: 20px;
display:inline-block;
height:2em;
}

/*dept*/
.footer_shop_list li.dept {
    width: calc(100%/5);
}
/*scsq*/
.footer_shop_list li.scsq {
    width: calc((100%/5)*2);
}
/*plz*/
.footer_shop_list li.plz {
    width: calc((100%/5)*1);
}
/*sc*/
.footer_shop_list li.plz {
    width: calc((100%/5)*1);
}



.footer_list {
    float: left;
    width: 224px;
    margin-left :20px;
}

.footer_shop_list + .footer_list { margin-left: 0; }

.footer_list li {
    margin-top: 10px;
    line-height: 1.2;
}

footer.global small {
    width: 1200px;
    margin: 0 auto;
    font-size: 12px;
}
.mode_tb{display:none;}



#longbanner {text-align:center;padding:0;margin:0;}
#longbanner .image{max-width:1200px;margin:0 auto;}
#longbanner .image img{width:100%;}


.local_header .information .businessinfo_btn {
    position: absolute;
    top: -17px;
    right: 0;
    display: block;
    width: 80px;
    height: 18px;
    padding-top: 45px;
    color: #fff;
    font-size: 8px;
    text-align: center;
}
.local_header .information .businessinfo_btn:after {
    position: absolute;
    top: 10px;
    left: 50%;
    display: block;
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 500px auto;
    content: " ";
}
 .mode_sp { display: none; }
}
@media all and (max-width: 767px) {
  
 .mode_pc { display: none; }


/* +++++++++++++++++++++++++++++++

 common.css
 Smartphone用

+++++++++++++++++++++++++++++++ */

/* layout */
body,
input,
button {
    font-family:'Roboto', '游ゴシック  Medium',"游ゴシック体", "Yu Gothic", YuGothic,  'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'メイリオ', Meiryo,  sans-serif;

    font-size: 15px;
    line-height: 1.4;
}
input,
textarea { font-size: 16px; }

.box > p { margin: 20px 10px; }

/* headline */
h1, h2, h3, h4, h5 {
    font-size: 20px;
}
/*
グローバルヘッダー
-----------------------------------*/
header.global{
  z-index: 200;
  position: sticky;
  top: 0;
  left: 0;
  right: 0;
  padding: 5px 5px;
  background: #fff;
}
header.global::before{
  content:"";
  display:block;
  position: absolute;
  top: 0;
  left: 0;
  right: 0;
  width:100%;
  height:100%;
  background: linear-gradient(90deg, rgba(249,204,219,0.50) 0%, rgba(254,236,131,0.50) 37%, rgba(156,217,218,0.50) 69%, rgba(246,169,197,0.50) 100%);
  z-index:-1;
}
header.global .logo {
    float: left;
    width: 172px;
    padding: 6px 0 10px 5px;
}
header.global .logo img { max-width: 100%; }

/* 言語 */
header.global .header_language {
    position: absolute;
    top: 53%!important;
    /* right: 100px; */
    right: 0;
    width: 50px;
    height: 29px;
    padding-top: 37px;
    font-size: 8px;
    text-align: center;
    z-index: 50;
    transform: translateY(-50%);
}
	header.global.common .header_language {
	    right: 0;
	}
header.global .header_language.opened {
    background: #333;
    color: #fff;
}
header.global .header_language:after {
    position: absolute;
    top: 15px;
    left: 50%;
    display: block;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    background: url(/images/sp_common/sprite_icon.png) no-repeat -50px 0;
    background-size: 500px auto;
    content: " ";
}
header.global .header_language.opened:after { background-position: -50px -50px; }


header.global #header_language li { border-top: 1px solid #d9d9d9; }
header.global #header_language li:first-child  { border-top: none; }
header.global #header_language li a {
    display: block;
    padding: 10px;
    color: #fff;
    text-align: center;
}



/*------------------------------------*/

/* 店舗リスト */
header.global .header_storelist {
    position: absolute;
    top: 55%;
    right: 50px;
    width: 50px;
    height: 28px;
    padding-top: 39px;
    font-size: 8px;
    text-align: center;
    z-index: 50;
    transform: translateY(-50%);
}
	header.global.common .header_storelist {
	    right: 100px;
	}
	header.global.lang .header_storelist {
	    right: 100px;
	}
header.global .header_storelist.opened {
    background: #333;
    color: #fff;
}
header.global .header_storelist:after {
    position: absolute;
    top: 15px;
    left: 50%;
    display: block;
    width: 30px;
    height: 31px;
    margin-left: -10px;
    background: url(/images/common/sprite_icon.png) no-repeat -153px -92px;
    background-size: 310px auto;
    content: " ";
}




header.global .header_storelist.opened:after { background-position: -152px -123px;}

header.global #header_storelist .header_shop_list{
    display: block;
    padding: 15px;
    border-bottom: 1px solid #ccc;
    background: #fff;
    color: #333;
    font-size: 18px;
}

header.global #header_storelist .header_shop_list:before {
    display: inline-block;
    width: 18px;
    height: 18px;
    margin-right: 10px;
    background: url(/top/images/sprite_top.png) no-repeat 0 -250px;
    background-size: 600px auto;
    content: " ";
    vertical-align: -2px;
}

header.global #header_storelist .inner{
	display:flex;
	flex-wrap:wrap;
	margin-bottom:10px;
	background:#fff;
}
header.global #header_storelist .inner li{
	display:flex;
	flex-wrap:wrap;
	width:50%;
	box-sizing:border-box;
	border-right:1px solid #ccc;
	border-bottom:1px solid #ccc;
}
header.global #header_storelist .inner li a{
    display: block;
    padding: 10px;
	color:#333!important;
	font-weight:normal!important;
	font-size:12px!important;
	text-align:left;
}
header.global #header_storelist .inner li:nth-child(2n){
	border-right:0 solid #ccc;
}




header.global .header_nav {
    top: 77px;
    padding: 10px;
    border-bottom: 1px solid #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
}
/*
header.global .header_nav li { border-top: 1px solid #d9d9d9; }
header.global .header_nav li:first-child  { border-top: none; }
header.global .header_nav li a {
    display: block;
    padding: 10px;
    color: #fff;
    text-align: center;
}
---------------------------------*/
header.global .header_nav .box_button { margin-top: 15px; }

header.global .primary:last-child { display: none; }

/* ネットショッピング */
header.global .header_ec_list {
    position: absolute;
    top: 53%;
    /*    right: 50px;*/
    right:0;
    width: 50px;
    height: 17px;
    padding-top: 27px;
    font-size: 8px;
    text-align: center;
    z-index:50;
    transform: translateY(-50%);
}
	header.global.common .header_ec_list {
	    right: 50px;
	}
	header.global.lang .header_ec_list {
	    right: 50px;
	}


header.global .header_ec_list.opened {
    background: #333;
    color: #fff;
}
header.global .header_ec_list:after {
    position: absolute;
    top: 5px;
    left: 50%;
    display: block;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    background:  url(/images/sp_common/sprite_icon.png) no-repeat -400px -150px;
    background-size: 500px auto;
    content: " ";
}
header.global .header_ec_list.opened:after { background-position: -350px -150px; }
header.global .header_ec_list .jp { display: none; }

#header_ec_list span,
#header_ec_list img,
#header_ec_list br { display: none; }
#header_ec_list li:first-child + li { border-top: none; }
#header_ec_list li:first-child a { text-align: left; }
#header_ec_list .category a {
    background: #fff;
    color: #333;
    text-align: left;
}
#header_ec_list p { margin: 0; }

/*
重要なお知らせ
-----------------------------------*/
main .box_important_notice { margin-bottom: 30px; }
header + .box_important_notice,
.box_important_notice:first-child { margin-bottom: 5px; }
.box_important_notice ul { padding: 5px; }
.box_important_notice ul:first-child,
#main .box_important_notice ul:first-child { margin-top: 30px; }
header + .box_important_notice ul:first-child,
.box_important_notice:first-child ul:first-child { margin-top: 0; }
.box_important_notice ul + ul { padding-top: 0 !important; }
.box_important_notice .title { display: none; }

.box_important_notice a { text-decoration: underline; }
.box_important_notice a:hover { text-decoration: none; }
.box_important_notice .align_right{
    display:block;
	text-align:right;
}
.box_important_notice.headernotice ul.sougyou85 li {display:table;font-size:12px}/*追加*/
.box_important_notice.headernotice ul.sougyou85 .image {display:table-cell;margin-right:10px;height:65px;}/*追加*/
.box_important_notice.headernotice ul.sougyou85 span {display:table-cell;vertical-align:middle}/*追加*/
.box_important_notice.headernotice  ul.sougyou85{ margin-top: 0!important;margin-bottom:0!important; }


.box_important_notice.headernotice ul.keishuku {margin-top: 0!important;margin-bottom:0!important;}/*追加*/
.box_important_notice.headernotice ul.keishuku li {padding:16px 0;text-align:center;}/*追加*/
.box_important_notice.headernotice ul.keishuku li span{font-family: "Sawarabi Mincho",serif;font-size:18px;transform: rotate(.03deg);fonr-weight:800;}/*追加*/

.box_important_notice.headernotice  {margin-bottom:10px;}



/*
店舗ヘッダー
-----------------------------------*/
.local_header { top: 54px; }
.local_header .name {
  padding: 0 55px 0 10px;
  font-size: 16px;
  line-height: 53px;
  white-space: nowrap;
  font-weight: 600;
}
.local_header .information {
    position: absolute;
    top: 0;
    right: 0;
}
.local_header .information .toggle_other {
    position: absolute;
    top: 0;
/*    right: 0;*/
    right:45px;
    display: block;
/*    width: 50px;*/
width:45px;
    height: 18px;
    padding-top: 35px;
    color: #fff;
    font-size: 8px;
    text-align: center;
}
.local_header .information .toggle_other.opened {
    background: #e6e6e6;
    color: #333;
}
.local_header .information .toggle_other:after {
    position: absolute;
    top: 10px;
    left: 50%;
    display: block;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 500px auto;
    content: " ";
}
.local_header .information .toggle_other.opened:after { background-position: -100px 0; }

.local_header .toggle_other_panel {
    position: relative;
    top: 53px;
    right: 0;
    left: 0;
    display: none;
    padding: 10px;
    border-bottom: 1px solid #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
    background: #e6e6e6;
    color: #333;
    z-index: 50;
}

.local_header li {
    position: relative;
    margin: 0 0 10px;
    padding: 15px 10px 14px 40px;
    border-radius: 3px;
    background: #fff;
}
.local_header p {
    margin: 0;
    font-size: 13px;
}
.local_header li:last-child {
    padding: 0;
    background: transparent;
}
.local_header li:last-child > p,
.local_header li:last-child > a  { display: none; }

.local_header .business_hours > div { padding-left: 30px; }
.local_header .address a { text-decoration: none; }
.local_header .address:before,
.local_header .tel:before,
.local_header .time:before,
.local_header .restaurant:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
.local_header .address:before { background-position: -250px -100px; }
.local_header .tel:before { background-position: -300px -100px; }
.local_header .time:before {
    left: 0;
    background-position: -350px -100px;
}
.local_header .restaurant:before {
    left: 0;
    background-position: -400px -100px;
}

/*
共通レイアウト
-----------------------------------*/
main { z-index: 5; }

/*
ローカルメニュー
-----------------------------------*/
#nav {
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    z-index: 10;
}
#nav .title {
    position: fixed;
  	top:62px;
    right: 0;
    display: block;
    width:45px;
    height: 17px;
    padding-top: 27px;
    font-size: 8px;
    text-align: center;
    color: #fff;
    z-index:5;
}
#nav .title.app {
   top: 8px;
}
#nav .title.opened {
    background: #333;
    color: #fff;
}
#nav .title:before {
    position: absolute;
    top: 7px;
    left: 50%;
    display: block;
    width: 25px;
    height: 20px;
    margin-left: -12.5px;
    background: url(/images/common/sprite_icon.png) no-repeat 0 -50px;
	background-size: 500px auto;
    content: " ";
}
#nav .title.opened:before {
    width: 20px;
    margin-left: -10px;
    background-position: -150px -150px;
}

#nav_panel {
  position: fixed;
  top: 56px;
  left: 0;
  right: 0;
  display: none;
  padding: 0 10px 10px;
  border-bottom: 1px solid #fff;
  background: #333;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
  color: #fff;
  height: 100%;
}
#nav_panel.app {
    top: 0;
}
/* 店舗名 */
#nav .name {
    margin: 0;
    padding: 0;
    background: #333;
    font-size: 16px;
    line-height: 53px;
}

/* メインメニュー */
#nav .primary {
    margin-bottom: 15px;
}
#nav .primary li { border-top: 1px solid #d9d9d9; }
#nav .primary li:first-child  { border-top: none; }
#nav .primary li:last-child  { display: none; }

#nav .primary a {
    display: block;
    padding: 10px 10px 9px;
    background: #fff;
}
#nav .primary a:before {
    display: inline-block;
    width: 20px;
    height: 20px;
    margin-right: 10px;
    background-image: url(/images/sp_common/sprite_icon.png);
    background-size: 500px auto;
    vertical-align: middle;
    content: " ";
}
#nav .primary .topics:before { background-position: -150px 0; }
#nav .primary .event:before { background-position: -200px 0; }
#nav .primary .shops:before { background-position: -248px 0; }
#nav .primary .floor_map:before { background-position: -400px 0; }
#nav .primary .restaurant:before { background-position: -450px 0; }
#nav .primary .service_guide:before { background-position: -300px 0; }
#nav .primary .access:before { background-position: -346px 0; }
#nav .primary .foreign_customers:before { background-position: -50px 0; }

#nav .primary .column:before { background-position: -478px 0; }

/* ショップブログ start */
#nav .primary .shopblog:before { background-image: url(/images/sp_common/sprite_icon2.png);background-size: 85px auto;background-position: 0 0;}
/* ショップブログ追加 end */

/* 電話番号一覧追加 start */
#nav .primary .tellist:before { background-image: url(/images/sp_common/sprite_icon2.png);background-size: 90px auto;background-position: -22px 0;}
/* 電話番号一覧追加 end */


#nav .primary a br { display: none; }
#nav .primary  .noicon:before { background: none; }




/* サブメニュー */
#nav .secondary {
    margin-bottom: 15px;
    padding: 10px 0;
    border-radius: 3px;
    background: #f5f5f5;
}
#nav .secondary li {
    float: left;
    width: 33.33%;
}
#nav .secondary a {
    position: relative;
    display: block;
    height: 30px;
    padding-top: 30px;
    border-left: 1px solid #d9d9d9;
    font-size: 13px;
    line-height: 1.2;
    text-align: center;
}
#nav .secondary li:first-child a { border-left: none; }

#nav .secondary a:before {
    position: absolute;
    top: 0;
    left: 50%;
    display: block;
    width: 30px;
    height: 20px;
    margin-left: -15px;
    background-image: url(/images/sp_common/sprite_icon.png);
    background-size: 500px auto;
    vertical-align: middle;
    content: " ";
}
#nav .secondary .all_shops:before {
    width: 20px;
    margin-left: -10px;
    background-position: 0 -100px;
}
#nav .secondary .inquiry:before {
    top: 4px;
    width: 25px;
    margin-left: -12.5px;
    background-position: -50px -100px;
}
#nav .secondary .shipping_inquiry:before {
    background-position: -100px -100px;
}
#nav .box_button { margin-top: 15px; }

/* 検索 */
.search {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    position: relative;
    margin-bottom: 15px;
    border: 3px solid #ccc;
    background: #fff;
}
.search.active { border-color: #333; }
.global .search.active,
#nav .search.active { border-color: #666; }

.search div + div {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 100%;
}
.search input[type=text] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100%;
    padding: 5px;
    border: 1px solid #fff;
    -webkit-appearance: none;
}
.search .button_ico_search {
    position: absolute;
    top: 50%;
    right: 0;
    width: 40px;
    height: 20px;
    margin-top: -10px;
    border: none;
    background: url(/images/common/sprite_icon.png) no-repeat -190px -100px;
    background-size: 500px auto;
    color: transparent;
    font-size: 1px;
    vertical-align: top;
}
.search .active { background: #333; }
.search .active .button_ico_search { background-position: -190px -150px; }


.primary.searchcontainer{display:none!important;}

/* 店舗一覧、ネットショッピング */
#nav .toggle_nav { margin: 0 -10px; }
#nav .toggle {
    position: relative;
    display: block;
    padding: 15px 0;
    border-top: 1px solid #666;
    border-bottom: 1px solid #666;
    color: #fff;
    font-weight: 500;
    text-align: center;
}
#nav .toggle.opened {
    border-bottom: none;
    background: #fff;
    color: #333
}
#nav .toggle:after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 16px;
    height: 9px;
    margin-top: -5px;
    background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 200px auto;
    content: " ";
}
#nav .toggle.opened:after { background-position: 0 0; }

#nav .toggle_panel {
    border-top: 1px solid #d9d9d9;
    background: #fff;
}
#nav .toggle_panel li { border-top: 1px solid #d9d9d9; }
#nav .toggle_panel a {
    display: block;
    padding: 15px 10px 14px;
    
}

#nav_shop_list li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: table;
    float: left;
    width: 50%;
    margin-top: -1px;
    border-bottom: 1px solid #d9d9d9;
}
#nav_shop_list li:nth-child(odd) { border-right: 1px solid #d9d9d9; }
#nav_shop_list li:last-child { width: 100%; }

#nav #nav_shop_list a {
    display: table-cell;
    width: 100%;
    padding: 5px 10px 4px;
    height: 42px;
    line-height: 1.2;
    vertical-align: middle;
}

/* アイコンなし版 */
#nav .simple .primary a:before {
    display: inline;
    margin: 0;
    background: transparent;
}
#nav .noicon.primary a:before {
    display: inline;
    margin: 0;
    background: transparent;
}

/*
共通ボックス
-----------------------------------*/
main { margin-bottom: 20px; }
#main {
    position: relative;
    z-index: 3;
}
.box { margin-bottom: 30px; }
.box_lgray_texture { padding: 10px; }

/*
パンくず
-----------------------------------*/
#pkz { display: none; }

/*
見出し
-----------------------------------*/
/* 大見出し */
.headline01 {
    margin: 30px 0;
    font-size: 13px;
}
.headline01 span {
    display: block;
    font-size: 30px;
}

/* 中見出し */
.heading01 {
    margin-bottom: 10px;
    padding: 10px 0 5px 10px;
    border-bottom: 2px solid #143368;
    color: #143368;
    font-size: 17px;
    text-align: left;
    font-weight: 600;
}
.heading02 {
    margin-bottom: 20px;
    padding: 10px 0 5px 10px;
}
.heading03 {
    margin-bottom: 10px;
    font-size: 18px;
}

/*
ボタン
-----------------------------------*/
.button {
    width: 100%;
    padding: 15px;
    border: 1px solid #333;
  font-weight: 600;
}

/* 次へ */
.button_next:after {
    position: absolute;
    top: 50%;
    right: 15px;
    display: block;
    width: 9px;
    height: 16px;
    margin-top: -8px;
    background: url(/images/sp_common/sprite_arrow.png) no-repeat -50px 0px;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}

/* 戻る */
.button_prev {
    border-color: #999;
    background: #999;
}
.button_prev:after {
    position: absolute;
    top: 50%;
    left: 20px;
    display: block;
    width: 9px;
    height: 14px;
    margin-top: -7px;
    background: url(/images/sp_common/sprite_icon.png) no-repeat -150px -50px;
    background-size: 200px auto;



    content: " ";
    visibility: visible;
}
.button_prev:hover:after { background-position: -150px -50px; }



/* 閉じるボタン */
.button_close {
    position: relative;
    display: block;
    width: 90px;
    margin: 0 auto;
    padding: 10px 10px 9px 20px;
    background: #fff;
    color: #333;
    font-size: 13px;
    text-align: center;
}
.button_close:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url(/images/sp_common/sprite_icon.png) no-repeat -150px -100px;
    background-size: 500px auto;
    content: " ";
}

/* 見出し／見出し内ボタン */
.button_transition {
    margin: 10px;
}
.button_transition .button {
    border-color: #333;
    background: #333;
}

/*
戻るリンク
-----------------------------------*/
.link_back { display: none; }

/*
テーブル
-----------------------------------*/
/* ブロックタイプ：thが見出し風 */
.table_block {
    width: 100%;
    margin-bottom: 10px;
    border-bottom: 1px solid #d9d9d9;
}

.table_block th,
.table_block td {
    display: block;
    padding: 10px;
}
.table_block th {
    border-top: 1px solid #d9d9d9;
    background: #f5f5f5;
    font-weight: 300;
}
.table_block:first-child tr:first-child th { border-top: none; }

.table_block .supplement { font-size: 12px; }

/* ボックスタイプ */
.table_box {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_box th,
.table_box td {
    display: block;
    text-align: left;
}
.table_box th {
    padding: 10px 10px 0;
    font-weight: 500;
}
.table_box td {
    padding: 10px;
    border-bottom: 1px solid #ccc;
}

/* 通常テーブル */
.table_list  {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_list td {
    padding: 10px;
    border-bottom: 1px solid #ccc;
}

/*
タブ
-----------------------------------*/
.box_tab { position: relative; }
.wrap_tab { position: relative; }
.wrap_tab .tab_toggle_panel { display: none; }
.tab_toggle {
    position: relative;
    padding: 15px 40px 14px 20px; 
    background: #333;
    color: #fff;
    font-size: 15px;
    font-weight: 500;
    text-align: center;
}
.tab_toggle:before {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 16px;
    height: 9px;
    margin-top: -5px;
    background: url(/images/sp_common/sprite_arrow.png) no-repeat -100px -50px;
    background-size: 200px auto;
    content: " ";
}
.tab_toggle.opened:before { background-position: 0 -50px; }

.tab {
    position: absolute;
    top: 50px;
    left: 0;
    width: 100%;
    padding-bottom: 5px;
    background: #333;
    z-index: 10;
}
.tab a {
    display: block;
    margin-right: 5px;
    padding: 10px;
    background: #fff;
    border-top: 1px solid #d9d9d9;
}
.tab li:first-child a { border-top: none; }
.tab a br { display: none; }

.tab .recommend { border-left: 5px solid #5ba619; }
.tab .ladies { border-left: 5px solid #f24981; }
.tab .mens { border-left: 5px solid #0a83bf; }
.tab .foods { border-left: 5px solid #ffb31a; }
.tab .hobby { border-left: 5px solid #a621a6; }
.tab .campaign { border-left: 5px solid #ff791a; }
.tab .norengai { border-left: 5px solid #c00900; }
.tab .foodshow { border-left: 5px solid #24954b; }

/* tab・toggle切り替え版 */
.box_tab_toggle .heading01 { margin-bottom: 1px; }
.heading01 .toggle_sp,
.toggle_sp {
    position: relative;
    display: block;
    margin: -10px 0;
    padding: 15px 40px 15px 10px;
    background: #333;
    color: #fff;
    font-size: 15px;
    text-align: left;
    text-decoration: none;
}
.heading01 .toggle_sp { margin: -10px; }
.heading01 .toggle_sp:after,
.toggle_sp:after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 16px;
    height: 9px;
    margin-top: -5px;
    background: url(/images/sp_common/sprite_arrow.png) no-repeat -100px -50px;
    background-size: 200px auto;
    content: " ";
}
.heading01 .toggle_sp.opened:after,
.toggle_sp.opened:after { background-position: 0 -50px; }
.box_tab_toggle .tab,
.tab_toggle + .tab,
.toggle_sp_panel { display: none; }


/* jsをともなわないタブ */
.static_tab {
    position: relative;
    top: 0;
    margin-bottom: 10px;
    border-left: none;
    background: #fff;
    z-index: 0;
}

.static_tab:before {
    position: absolute;
    bottom: 5px;
    left: 0;
    display: block;
    width: 100%;
    height: 8px;
    background: url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
    z-index: 4;
    visibility: visible;
}

.static_tab li {
    float: left;
    display: table;
}
.static_tab a {
    display: table-cell;
    width: 100%;
    height: 36px;
    margin: 0;
    padding: 10px 10px 12px;
    border-top: 2px solid #333;
    border-left: 1px solid #fff;
    border-bottom: 8px solid #333;
    background: #f2f2f2;
    text-decoration: none;
    vertical-align: middle;
}
.static_tab li:first-child a { border-top: 2px solid #333; }
.static_tab li:first-child a { border-left: none; }
.static_tab .current {
    border-bottom-color: #333;
    background-color: #333;
    color: #fff;
    z-index: 3;
}

/*

共通：タグ
-----------------------------------*/

.tags li {
    display: inline-block;
    padding: 3px 5px 2px;
    background: #e6e6e6;
    font-size: 10px;
    line-height: 1.2;
}
.tags .tag_advance_notice {
    background-color: #f23524;
    color: #fff;
}

/*
リスト：トピックス
-----------------------------------*/
.list_topics > p {
    margin: 10px;
}
.list_topics .item {
    position: relative;
    min-height: 100px;
    padding: 5px 10px 5px 115px;
    border-bottom: 1px solid #ccc;
}
.list_topics .image_wrap {
    position: absolute;
    top: 5px;
    left: 5px;
    display: table;
    width: 100px;
    height: 100px;
}
.list_topics .image {
    display: table-cell;
    width: 100px;
    height: 100px;
    background: #f5f5f5 url(/images/common/bg_texture_bk.png) repeat left top;
    background-size: 15px 16px;
    text-align: center;
    vertical-align: middle;
}
.list_topics .image img {
    max-width: 100px;
    max-height: 100px;
}
.list_topics .title {
    margin: 0 0 5px;
    font-size: 16px;
}
.list_topics .title + p { display: none; }
.event_data li {
    padding-left: 12px;
    background: url(/images/common/ico_square.png) no-repeat left 5px;
    background-size: 8px;
    font-size: 12px;
}

/*
リスト：バナー
-----------------------------------*/
.list_banner { 
  margin-left: 10px; 
  display: flex;
  justify-content: center;
  flex-wrap: wrap
  }
.list_banner li {
  -webkit-box-sizing: border-box;
  box-sizing: border-box;
  margin-top: 10px;
  padding-right: 10px;
  text-align: center;
  width: calc((100% - 20px) / 3);
}
  .list_banner li:nth-of-type(3n){
  padding-right: 0;
}
.list_banner li:nth-child(-n+3) { margin-top: 0; }
.list_banner a { display: block; }

/*
関連サイトバナー
-----------------------------------*/
.list_relations {
    margin: 10px 0 20px;
    text-align: center;
}
.list_relations:last-child { margin-bottom: 0; }
.list_banner + .list_relations {
    position: relative;
    margin-top: 60px;
}
.list_banner + .list_relations:before {
    position: absolute;
    top: -30px;
    left: 50%;
    display: block;
    width: 180px;
    height: 2px;
    margin-left: -90px;
    border-radius: 2px;
    background: #e5e5e5 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
}
.list_relations li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: inline-block;
    width: 50%;
    margin-right: -3px;
    padding: 5px;
}
.list_relations a { display: block; }
.list_relations li.squarebanner {
   width: 33.33%;
}

/*
リスト：ショップ
-----------------------------------*/
.list_shop p {  font-size: 12px; }

/* ブロックタイプ */
.list_shop_block li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    display: table;
    width: 50%;
    margin: -1px 0 0 -1px;
    border: 1px solid #d9d9d9;
}
.list_shop_block li:nth-child(odd) {
    clear: left;
    border-right: 1px solid #d9d9d9;
}
.list_shop_block a {
    display: table-cell;
    height: 32px;
    padding: 10px;
    font-size: 13px;
    line-height: 1.2;
    vertical-align: middle;
}
.list_shop_block .image { display: none; }
.list_shop_block p { margin: 0; }


/*
共通注意事項
-----------------------------------*/
.footer_anounce {
    margin: 10px;
    font-size: 10px;
}

/*
ログイン機能
-----------------------------------*/
.box_login p,
.box_login .box_button {
 margin: 10px;
}
.box_login input[type="text"],
.box_login input[type="email"],
.box_login input[type="password"] {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display:block;
    width: 100%;
    padding: 8px 10px 7px;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
}

.box_login .reg {
    display: inline-block;
    margin-top: 5px;
    padding: 5px 10px;
    background: #e5e5e5;
    font-size: 11px;
}


/*
スマホ用フッター
-----------------------------------*/
.footer_nav_sp { margin-top: 30px; }
.footer_nav_sp li { margin-bottom: 1px; }
.footer_nav_sp a {
    position: relative;
    display: block;
    padding: 15px;
    background: #e6e6e6;
}
.footer_nav_sp li:first-child a { font-weight: 500; }
.footer_nav_sp a:after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 9px;
    height: 16px;
    margin-top: -8px;
    background: url(/images/common/sprite_arrow.png) no-repeat -50px 0;
    background-size: 200px auto;
    content: " ";
}


/*
店舗フッター
-----------------------------------*/
#shop_footer { padding: 5px 10px 75px; }

#shop_footer .information li {
    position: relative;
    margin-top: 10px;
    font-size: 14px;
    padding-left: 20px;
}
#shop_footer .information li:before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 15px;
    height: 15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
#shop_footer .information .address:before { background-position: -250px -100px; }
#shop_footer .information .tel:before { background-position: -300px -100px; }
#shop_footer .information .time:before { background-position: -350px -100px; }
#shop_footer .information .holiday:before { background-position: -400px -100px; }

#shop_footer .information p { margin: 0; }

.box_footer_notice {
    margin-top: 20px;
    padding: 10px 15px;
    font-size: 15px;
}

/*
グローバルフッター
-----------------------------------*/
footer.global { z-index: 1; }

.footer_anounce + footer.global { margin-top: 40px; }

.page_top {
    position: absolute;
    top: -30px;
    left: 50%;
    width: 70px;
    margin-left: -35px;
    text-align: center;
}
#button_page_top { display: none !important; }
.page_top a {
    position: relative;
    display: inline-block;
    width: 70px;
    height: 20px;
    border-top: 10px solid #666;
    background: #333;
    font-size: 10px;
    line-height: 20px;
}
.page_top a:before {
    position: absolute;
    top: -8px;
    left: 50%;
    display: block;
    margin-left: -8px;
    border-color: transparent transparent #333;
    border-style: solid;
    border-width: 0 8px 8px 8px;
    content: " ";
}
.footer_shop_list,
.footer_list  { padding-bottom: 30px; }
.footer_shop_list .title,
.footer_list .title  { padding-bottom: 10px; }
.footer_shop_list li,
.footer_list li {
    float: left;
    width: 50%;
    margin-top: 10px;
}
.footer_shop_list li:nth-child(odd) { clear: left; }

footer.global small { font-size: 9px; }

.box_important_notice li {
    font-size: 13px!important;
}

#longbanner {text-align:center;padding:0;margin:0 0 10px 0;width:100%;}
#longbanner .image{max-width:100%;}
#longbanner .image img{width:100%;}





/**/

.local_header .information .businessinfo_btn {

    position: absolute;
    top: 0;
    /* right: 0; */
    right: 45px;
    display: block;
    /* width: 50px; */
    width: 45px;
    height: 18px;
    padding-top: 35px;
    color: #fff;
    font-size: 8px;
    text-align: center;
}


.local_header .information .businessinfo_btn:after {
    position: absolute;
    top: 10px;
    left: 50%;
    display: block;
    width: 20px;
    height: 20px;
    margin-left: -10px;
    background: url(/images/sp_common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 500px auto;
    content: " ";
}
  
}


/*重要なお知らせ各店スライダより上*/

.box_important_notice ul:first-child, #main .box_important_notice ul:first-child {
     margin-top: 0; 
}

/*ローカルヘッダ固定*/

.local_header.m_fixed {
  position: fixed;
  top: 0;width:100%;z-index:100;
}
@media all and (max-width: 767px) {
#nav.m_fixed{z-index:120!important;}
#nav.m_fixed .title{position:fixed;top:5px!important;}
#nav.m_fixed #nav_panel{position:fixed;top:0;}
.title.app{z-index:1000;}
}



@media all and (min-width: 768px) and (max-width: 979px) {
/* +++++++++++++++++++++++++++++++

 common.css
 Tablet用

+++++++++++++++++++++++++++++++ */

/* layout */
body,
input,
button {
    font-size: 13px;
    line-height: 1.4;
}

p a.hover{ text-decoration: none; }

img { vertical-align: bottom; }
p { margin: 20px 0; }
.box > p { margin: 20px; }

/* headline */
h1, h2, h3, h4, h5 {
    font-size: 20px;
}
/*
グローバルヘッダー
-----------------------------------*/
header.global .logo {
    float: left;
    width: 170px;
    padding: 10px 0 10px 30px;
}
header.global .logo img { width: 100%; }


header.global .acc {
    position: relative;
    display: block;
    width: 70px;
    height: 18px;
    margin: 0 0 0 5px;
    padding-top: 42px;
    font-size: 8px;
    text-align: center;
    text-decoration: none;
}
header.global .acc.opened {
    background: #333;
    color: #fff;
}
header.global .header_ec_list { width: 100px; }

header.global .acc:after {
    position: absolute;
    top: 8px;
    left: 50%;
    display: block;
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background-image: url(/images/common/sprite_icon.png);;
    background-size: 500px auto;
    content: " ";
}
header.global .header_storelist:after { background-position: -250px -150px; }
header.global .header_storelist.opened:after { background-position: -250px -200px; }
header.global .header_shop_list:after { background-position: -250px -150px; }
header.global .header_shop_list.opened:after { background-position: -250px -200px; }
header.global .header_ec_list:after {
    top:  11px;
    background-position: -300px -150px;
}
header.global .header_ec_list.opened:after { background-position: -300px -200px; }
header.global .header_language:after {background-position: -50px 0; }
header.global .header_language.opened:after { background-position: -50px -50px; }

header.global .header_ec_list .en { display: none; }

/* ドロップダウン共通 */
.header_nav .box_button {
    margin: 20px 0;
}
.primary > ul > li { float: left; }

/* 店舗一覧 */
.primary .menu,
div.header_shop_list { display: none; }
#header_shop_list .inner {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 0;
}
#header_shop_list li {
    display: table;
    float: left;
    width: 20%;
}
#header_shop_list li.scsq {
    width: 60%;
}

#header_shop_list li a {
    display: table-cell;
    width: 100%;
    height: 50px;
    padding: 5px 0 4px 25px;
    background: url(/images/common/ico_circle.png) no-repeat 10px center;
    background-size: 10px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}
#header_shop_list li a.hover{
    background-color: #fff;
    color: #333;
}

/**/
#header_storelist .inner {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 10px 0;
}
#header_storelist li {
    display: table;
    float: left;
    width: 25%;
}
#header_storelist li.scsq {
    width: 50%;
}

#header_storelist li a {
    display: table-cell;
    width: 100%;
    height: 50px;
    padding: 5px 0 4px 25px;
    background: url(/images/common/ico_circle.png) no-repeat 10px center;
    background-size: 10px;
    color: #fff;
    text-decoration: none;
    vertical-align: middle;
}
#header_storelist li a.hover{
    background-color: #fff;
    color: #333;
}


/**/

#header_shop_list .mode_sp { display: none; }

/* ネットショッピング */
#header_ec_list ul {
    padding: 20px 0;
    text-align: center;
}
#header_ec_list li {
    display: inline-block;
    overflow: hidden;
    height: 140px;
    margin: 0 5px;
    border-radius: 3px;
    background: #fff;
    vertical-align: middle;
}
#header_ec_list li:first-child {
    display: block;
    width: 300px;
    margin: 0 auto 15px;
}
#header_ec_list li:first-child a {
    display: block;
    overflow: hidden;
    width: 260px;
    padding: 30px 20px;
    border-radius: 3px;
}
#header_ec_list .category {
    width: 140px;
    height: 140px;
}
#header_ec_list .category a {
    position: relative;
    display: block;
    width: 140px;
    height: 50px;
    padding-top: 90px;
    text-decoration: none;
}
#header_ec_list .category .image {
    position: absolute;
    top: -10px;
    left: -10px;
    display: block;
    width: 160px;
    height: 160px;
    z-index:1;
}
#header_ec_list .category img {
     -webkit-filter: blur(0);
     -moz-filter: blur(0);
     -ms-filter: blur(0);
     -o-filter: blur(0);
     filter: blur(0);
     transition: 0.1s linear;
}
#header_ec_list .category a.hoverimg {
     -webkit-filter: blur(0);
     -moz-filter: blur(0);
     -ms-filter: blur(0);
     -o-filter: blur(0);
     filter: blur(0);
}
#header_ec_list .category p {
    position: relative;
    display: table-cell;
    width: 140px;
    height: 36px;


    margin: 0;
    color: #fff;
    vertical-align: middle;
    text-shadow: 1px 1px 1px rgba(0,0,0, .8),
                          1px 0 1px rgba(0,0,0, .8),
                          0 1px 1px rgba(0,0,0, .8),
                          -1px 0 1px rgba(0,0,0, .8),
                          0 -1px 1px rgba(0,0,0, .8),
                          -1px -1px 1px rgba(0,0,0, .8);
    z-index: 2;
background:#fff;
}

/* Language */
#header_language {
    width: 240px;
    padding: 10px;
}
#header_language li a {
    display: block;
    padding: 10px;
    color: #fff;
    text-align: center;
    text-decoration: none;
}
#header_language li a.hover{
    background: #fff;
    color: #333;
}

/* 検索 */
.search {
    position: relative;
    top: 13px;
    width: 250px;
    border: 3px solid #ccc;
    background: #fff;
}
.search.active { border-color: #333; }
.search input[type=text] {
    width: 193px;
    height: 15px;
    padding: 6px 5px 5px;
    border: 1px solid #fff;
    line-height: 15px;
}
.search div + div {
    position: absolute;
    top: 0;
    bottom: 0;
    right: 0;
    width: 40px;
    height: 100%;
}
.search .button_ico_search {
    position: absolute;
    top: 50%;
    right: 0;
    width: 40px;
    height: 20px;
    margin-top: -10px;
    border: none;
    background: url(/images/common/sprite_icon.png) no-repeat -190px -100px;
    background-size: 500px auto;
    text-indent: -999px;
}
.search .active { background: #333; }
.search .active .button_ico_search { background-position: -190px -150px; }

.acc_panel .search{display:none;}

/*
重要なお知らせ
-----------------------------------*/
main .box_important_notice { margin-bottom: 40px; }
header + .box_important_notice,
.box_important_notice:first-child { margin-bottom: 10px; }
.box_important_notice ul {
    margin: 0 5px;
}
.box_important_notice ul:first-child,
#main .box_important_notice ul:first-child { margin-top: 40px; }
header + .box_important_notice ul:first-child,
.box_important_notice:first-child ul:first-child { margin-top: 0; }

.box_important_notice.headernotice { margin-bottom: 10px; }/*追加*/
.box_important_notice.headernotice ul:first-child { margin-top: 0; }/*追加*/

.box_important_notice:first-child ul:first-child { margin-top: 0; }
.box_important_notice ul + ul { padding-top: 0 !important; }
.box_important_notice li {
    position: relative;
    padding-left: /*105px*//*120px*/8em;
padding-right:8em;/*追加*/
}
/*追加
.box_important_notice li.notitle {
    padding-left: 10px;
}
*/
.box_important_notice .align_right{
    display:block;
	text-align:right;
}

.box_important_notice .title {
    position: absolute;
    top: 6px;
    left: 6px;
    margin: 0;
    padding: 3px 5px 2px;
    border-radius: 3px;
    background: #666;
    color: #fff;
    font-size: /*12px*/14px;
    font-weight: 400;
}
.box_important_notice.most_important .title { background: #e64545; }

.box_important_notice a { text-decoration: underline; }
.box_important_notice a:hover { text-decoration: none; }


.box_important_notice.headernotice ul.sougyou85 li {display:table;padding-left:8em!important;padding-right:8em!important;margin:auto}/*追加*/
.box_important_notice.headernotice ul.sougyou85 .image {display:table-cell;margin-right:10px;height:70px;}/*追加*/
.box_important_notice.headernotice ul.sougyou85 span {display:table-cell;vertical-align:middle}/*追加*/

.box_important_notice.headernotice ul.keishuku li {padding:18px 0;text-align:center;}/*追加*/
.box_important_notice.headernotice ul.keishuku li span{font-family: "Sawarabi Mincho",serif;font-size:22px;transform: rotate(.03deg);fonr-weight:800;}/*追加*/


/*
店舗ヘッダー
-----------------------------------*/
.local_header { position: sticky; }
.local_header .name {
    padding: 0 55px 0 10px;
    font-size: 22px;
    line-height: 63px;
}
.local_header .information {
    position: absolute;
    top: 0;
    right: 0;
}
.local_header .information .toggle_other {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 80px;
    height: 18px;
    padding-top: 45px;
    color: #fff;
    font-size: 8px;
    text-align: center;
}
.local_header .information .toggle_other.opened {
    background: #e6e6e6;
    color: #333;
}
.local_header .information .toggle_other:after {
    position: absolute;
    top: 10px;
    left: 50%;
    display: block;
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 500px auto;
    content: " ";
}
.local_header .information .toggle_other.opened:after { background-position: -100px 0; }


	/*トグルなし*/
	.local_header .information .businessinfo {
		position: absolute;
		top: 0;
		right: 0;
		display: block;
		width: 80px;
		height: 18px;
		padding-top: 45px;
		color: #fff;
		font-size: 8px;
		text-align: center;
	}
	.local_header .information .businessinfo:after {
		position: absolute;
		top: 10px;
		left: 50%;
		display: block;
		width: 30px;
		height: 30px;
		margin-left: -15px;
		background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
		background-size: 500px auto;
		content: " ";
	}
	
	
	/**/
.local_header .toggle_other_panel {
    position: relative;
    top: 63px;
    right: 0;
    left: 0;
    display: none;
    width: 350px;
    padding: 10px;
    border-bottom: 1px solid #fff;
    box-shadow: 0 2px 4px rgba(0, 0, 0, .35);
    background: #e6e6e6;
    color: #333;
    z-index: 50;
}

.local_header li {
    position: relative;
    margin: 0 0 10px;
    padding: 15px 10px 14px 50px;
    border-radius: 3px;
    background: #fff;
}
.local_header p {
    margin: 0;
    font-size: 13px;
}
.local_header li:last-child {
    padding: 0;
    background: transparent;
}
.local_header li:last-child > p,
.local_header li:last-child > a  { display: none; }

.local_header .address a { text-decoration: none; }
.local_header .address:before,
.local_header .tel:before,
.local_header .time:before,
.local_header .restaurant:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 30px;
    height: 30px;
    margin-top: -15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
.local_header .address:before { background-position: -250px -150px; }
.local_header .tel:before { background-position: -450px -150px; }
.local_header .time:before {
    left: 0;
    background-position: -350px -150px;
}
.local_header .restaurant:before {
    left: 0;
    background-position: -400px -150px;
}

/*
店舗共通レイアウト
-----------------------------------*/
main {
    position: relative;
}
#main {
    position: relative;
    padding: 0 0 40px 0;
    z-index: 1;
}
#nav {
    position: sticky;
    bottom: 0;
    left: 0;
    width: 50px;
    width: 290px;
    background: #fff;
    z-index: 2;
}

/*
ローカルメニュー
-----------------------------------*/
#nav .title,
#nav .search,
#nav .toggle_nav,
#nav .box_button { display: none; }


#nav a {
    position: relative;
    display: block;
    text-decoration: none;
     transition: 0.1s linear;
}
#nav.show a.hover{
    border-bottom-color: #333;
    background: #333;
    color: #fff;
}
#nav a:before {
    position: absolute;
    display: block;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
#nav .secondary a:before {
    top: 8px;
    left: 50%;
}
#nav .secondary li {
    float: left;
    width: 33.33%;
}
#nav .secondary a {
    height: 30px;
    padding: 45px 5px 5px;
    border-left: 1px solid #d9d9d9;
    font-size: 12px;
    text-align: center;
    line-height: 1.2;
}
#nav .secondary li:first-child a { border-left: none; }

/* アイコン表示 */

#nav .topics:before { background-position: -150px 0; }
#nav.show .topics.hover:before { background-position: -150px -50px; }

#nav .event:before { background-position: -200px 0; }
#nav.show .event.hover:before { background-position: -200px -50px; }

#nav .shops:before { background-position: -248px 0; }
#nav.show .shops.hover:before { background-position: -248px -50px; }

#nav .floor_map:before { background-position: -400px 0; }
#nav.show .floor_map.hover:before { background-position: -400px -50px; }

/* 東急フードショー追加 start */
#nav .column:before { background-position: -452px 0; }
#nav.show .column.hover:before { background-position: -452px -50px; }
/* 東急フードショー追加 end */

/* ショップブログ start */
#nav .shopblog:before { background-image: url(/images/common/sprite_icon2.png);    background-size: 250px auto;background-position: 0 0; }
#nav.show .shopblog.hover:before { background-position: 0 -50px; }
/* ショップブログ追加 end */

/* 電話番号リスト追加 start */
#nav .tellist:before { background-image: url(/images/common/sprite_icon2.png);    background-size: 250px auto;background-position: -50px 0; }
#nav.show .tellist.hover:before { background-position: -50px -50px; }
/* 電話番号リスト追加 end */


#nav .restaurant:before { background-position: 0 -195px; }
#nav .restaurant.hover:before { background-position: -50px -195px; }

#nav .service_guide:before { background-position: -300px 0; }
#nav.show .service_guide.hover:before { background-position: -300px -50px; }

#nav .access:before { background-position: -345px 0; }
#nav.show .access.hover:before { background-position: -345px -50px; }

#nav .foreign_customers:before { background-position: -50px 0; }
#nav.show .foreign_customers.hover:before { background-position: -50px -50px; }

#nav .information:before { background-position: -100px 0; }
#nav.show .information.hover:before { background-position: -100px -50px; }

#nav .noicon:before { background: none; }
#nav.show .noicon.hover:before { background: none; }


#nav .all_shops:before {
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background-position: 0 -100px;
}
#nav .all_shops.hover:before { background-position: 0 -150px; }

#nav .inquiry:before {
    top: 10px;
    width: 40px;
    height: 24px;
    margin-left: -20px;
    background-position: -50px -100px;
}
#nav .inquiry.hover:before { background-position: -50px -150px; }


#nav .shipping_inquiry:before {
    width: 45px;
    height: 30px;
    margin-left: -22.5px;
    background-position: -100px -100px;
}
#nav .shipping_inquiry.hover:before { background-position: -100px -150px; }

/* 通常時 */
#nav {
    position: sticky;
    bottom: 0;
    left: 0;
    width: 50px;
    height: 100%;
    overflow: hidden;
    transition: 0.3s linear;
}
#nav_panel {
    width: 50px;
    overflow: hidden;

}
#nav .name {
    position: relative;
    display: block;
    width: 210px;
    margin: 0;
    padding: 20px 20px 19px 40px;
    border-bottom: 1px solid #fff;
    color: transparent;
    font-size: 15px;
    white-space: nowrap;
}
#nav .name:before {
    position: absolute;
    top: 50%;
    left: 12px;
    display: block;
    width: 25px;
    height: 20px;
    margin-top: -10px;
    background: url(/images/common/sprite_icon.png) no-repeat 0 0;
    background-size: 500px auto;
    content: " ";
}

#nav .title.opened:before {
    width: 20px;
    margin-left: -10px;
    background-position: -150px -100px;
}
#nav .primary a {
    width: 210px;
    padding: 20px 20px 19px 40px;
    border-bottom: 1px solid #fff;
    color: transparent;
    font-size: 15px;
}
#nav .primary a:before {
    top: 50%;
    left: 10px;
    width: 30px;
    height: 30px;
    margin-top: -15px;
}
#nav .primary .foreign_customers,
#nav .primary .long { padding: 10px 20px 9px 60px; }

#nav .secondary {
    overflow: hidden;
    width: 290px;
    padding: 10px 0;
    border-bottom: 1px solid #fff;
    opacity: 0;
}

/* 展開時 */
#main.show {
  width: calc(100% - 290px);
}
#nav.show {
    overflow-x: hidden;
    width: 290px;
    box-shadow: 2px 0 4px rgba(0, 0, 0, .35);
}
#nav.show #nav_panel {
    width: 290px;
}

#nav.show .name {
    padding-left: 60px;
    border-bottom: 1px solid #d9d9d9;
    color: #333;
    text-indent: 0;
}
#nav.show .name:before {
    left: 20px;
    background-position: -150px -100px;
}
#nav.show .primary a {
    padding-left: 60px;
    border-bottom: 1px solid #d9d9d9;
    color: #333;
}

#nav.show .noicon.primary a {
    padding-left: 20px;
}

#nav.show .primary a.hover{ color: #fff; }
#nav.show .primary a:before {
    left: 20px;
}

#nav.show .secondary {
    width: 290px;
    border-bottom-color: #d9d9d9;
    opacity: 1;
}

/* アイコンなし版 */
#nav .simple .primary a,
#nav .primary .nav_title {
    width: 250px;
    padding: 20px 20px 19px;
}
#nav .simple .primary a:before { background: transparent; }
#nav .simple .primary .long { padding: 10px 20px 9px; }

#nav .simple .name:before { background-position: 0 -50px; }
#nav.show .simple .name:before { background-position: -150px -100px; }
#nav_panel.simple:before {
    position: absolute;
    top: 19px;
    left: 15px;
    display: block;
    width: 25px;
    height: 20px;
    background:  url(/images/common/sprite_icon.png) no-repeat 0 0;
    background-size: 500px auto;
    content: " ";
    z-index: 2;
}
#nav_panel.fixed:before { position: fixed; }
#nav.show #nav_panel.simple:before { display: none; }

/* ナビゲーション階層 */
#nav .primary a.nav_title {
    display: block;
    border-bottom: none;
    cursor: default;
    pointer-action: none;
}
#nav .primary .nav_title + ul {
    margin-top: -10px;
    padding-bottom: 10px;
    border-bottom: 1px solid #fff;
}
#nav.show .primary .nav_title + ul { border-color: #d9d9d9; }
#nav .primary .nav_title + ul a {
    padding: 10px 20px 9px 40px;
    border-bottom: none;
    font-size: 14px;
}
#nav .primary .txt_supplement {
    display: block;
    font-size: 13px;
}

/*
共通レイアウト
-----------------------------------*/
.box { margin-bottom: 50px; }

/*
見出し
-----------------------------------*/
/* 大見出し */
.headline01 {
    margin: 30px 0;
    font-size: 14px;
}
.headline01 span {
    display: block;
    margin-bottom: 5px;
    font-size: 34px;
}
/* 中見出し */
.heading02 {
    margin-bottom: 20px;
    padding: 10px;
}

/*
ボタン
-----------------------------------*/
.button {
    margin: 0 auto;
    padding: 20px;
    border: 1px solid #333;
    transition: 0.1s linear;
}
.button:hover,
.button.hover{
    background: #fff;
    color: #333;
}

/* 小サイズ */
.button_small { padding: 10px; }

/* 次へ */
.button_next:after {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 9px;
    height: 18px;
    margin-top: -9px;
    background: url(/images/common/sprite_arrow.png) no-repeat -50px -100px;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}
.button_next:hover:after,
.button_next.hover:after { background-position: -50px -100px; }

/* 戻る */
.button_prev {
    border-color: #999;
    background: #999;
}
.button_prev:after {
    position: absolute;
    top: 50%;
    left: 20px;
    display: block;
    width: 9px;
    height: 14px;
    margin-top: -7px;
    background: url(/images/common/sprite_arrow.png) no-repeat -150px -150px;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}
.button_prev:hover:after,
.button_prev.hover:after { background-position: -150px -100px; }


/* 閉じるボタン */
.button_close {
    position: relative;
    display: block;
    width: 90px;
    margin: 0 auto;
    padding: 10px 10px 9px 20px;
    background: #fff;
    color: #333;
    font-size: 13px;
    text-align: center;
}
.button_close:before {
    position: absolute;
    top: 50%;
    left: 10px;
    display: block;
    width: 20px;
    height: 20px;
    margin-top: -10px;
    background: url(/images/common/sprite_icon.png) no-repeat -150px -100px;
    background-size: 500px auto;
    content: " ";
}

/* 見出し／見出し内ボタン */
.button_transition .button {
    position: absolute;
    top: 10px;
    right: 15px;
    width: 200px;
    height: 40px;
    padding: 10px 20px;
    border-color: #333;
    background: #333;
    line-height: 20px;
}
.button_transition .button:hover,
.button_transition .button.hover { background: #fff; }


/*
戻るリンク
-----------------------------------*/
.link_back {
    max-width: 100%;
    margin: 0 20px;
}

/*
テーブル
-----------------------------------*/
/* SP時にブロックタイプ */
.table_block {
    width: 100%;
    border-top: 1px solid #d9d9d9;
}
.table_block th,
.table_block td {
    padding: 15px;
    border-bottom: 1px solid #d9d9d9;
    font-weight: 300;
}
.table_block th {
    width: 120px;
    background: #f5f5f5;
}
.table_block p { margin: 5px 0 0; }
.table_block p:first-child { margin-top: 0; }
.table_block .supplement { font-size: 11px; }

/* SP時にボックスタイプ */
.table_box {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_box th,
.table_box td {
    padding: 15px;
    border-bottom: 1px solid #ccc;
    font-size: 16px;
    text-align: left;
}
.table_box th {
    width: 200px;
    font-weight: 500;
}

/* SP時もテーブル */
.table_list {
    width: 100%;
    border-top: 1px solid #ccc;
}
.table_list td {
    padding: 15px;
    border-bottom: 1px solid #ccc;
    text-align: left;
}



/*
タブ
-----------------------------------*/
.tab_toggle { height: 0; }
.tab {
    position: relative;
    margin-bottom: 20px;
    text-align: center;
}
.tab:before {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 8px;
    background: #d9d9d9;
    content: " ";
    z-index: 2;
}
.tab:after {
    position: absolute;
    bottom: 0;
    left: 0;
    display: block;
    width: 100%;
    height: 8px;
    background: url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
    z-index: 4;
    visibility: visible;
}
.tab li {
    display: inline-block;
    margin-right: -1px;
    vertical-align: bottom;
}
.tab a {
    position: relative;
    display: table-cell;
    min-width: 92px;
    height: 40px;
    padding: 5px 3px 7px;
    border-top: 3px solid #333;
    border-bottom: 8px solid #f2f2f2;
    background: #f2f2f2;
    text-decoration: none;
    line-height: 1.2;
    z-index: 1;
    vertical-align: middle;
}
.tab .current {
    border-bottom-color: #333;
    background-color: #d9d9d9;
    z-index: 3;
}
.tab .recommend { border-color: #5ba619; }
.tab .ladies { border-color: #f24981; }
.tab .mens { border-color: #0a83bf; }
.tab .foods { border-color: #ffb31a; }
.tab .hobby { border-color: #a621a6; }
.tab .campaign { border-color: #ff791a; }
.tab .norengai {
    border-color: #c00900;
    background-image: url(/toyoko/images/tab_norengai.png);
    background-repeat: no-repeat;
    background-position: center 18px;
    background-size: 86px auto;
    text-indent: -9999px;
}
.tab .foodshow {
    border-color: #24954b;
    background-image: url(/toyoko/images/tab_foodshow.png);
    background-repeat: no-repeat;
    background-position: center 12px;
    background-size: 60px auto;
    text-indent: -9999px;
}
.wrap_tab { position: relative; }
.tab_panel,
.main_tab_panel,
.tab_toggle_panel {
    display: none;
    width: 100%;
}

/* tab・toggle切り替え版 */
.heading01 .toggle_sp {
    pointer-events: none;
    cursor: default;
}
.heading01 .toggle_sp.hover { text-decoration: none; }
/*
共通：タグ
-----------------------------------*/
.tags li {
    display: inline-block;
    padding: 3px 5px 2px;
    background: #e6e6e6;
    font-size: 10px;
    line-height: 1.2;
}
.tags .tag_advance_notice {
    background-color: #f23524;
    color: #fff;
}

/*
リスト：トピックス
-----------------------------------*/
.list_topics.list_resize .item {
    float: none !important;
    display: block !important;
    width: 100% !important;
    max-width: 100% !important;
    margin: 0;
}

.list_topics {
    min-width: 700px !important;
    max-width: 700px !important;
    margin: 0 auto;
}
.list_topics > p {
    text-align: center;
}
.list_topics .item {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    width: 100% !important;
    min-height: 181px;
    padding: 0 40px 0 200px;
    border-bottom: 1px solid #ccc;
}
.list_topics .item:first-child { border-top: 1px solid #ccc; }
.list_topics .item:before {
    position: absolute;
    top: 50%;
    right: 20px;
    display: block;
    width: 11px;
    height: 20px;
    margin-top: -10px;
    background:  url(/images/common/sprite_arrow.png) no-repeat -50px 0;
    background-size: 200px auto;
    content: " ";
    visibility: visible;
}
.list_topics a {
    display: block;
    height: 100%;
    min-height: 180px;
}
.list_topics .image_wrap {
    position: absolute;
    top: 0;
    left: 0;
    display: table;
    width: 180px;
    height: 180px;
}
.list_topics .image {
    display: table-cell;
    width: 180px;
    height: 180px;
    background: #f5f5f5 url(/images/common/bg_texture_bk.png) repeat left top;
    background-size: 15px 16px;
    text-align: center;
    vertical-align: middle;
}
.list_topics .image_wrap img {
    max-width: 180px;
	max-height: 180px;
}
.list_topics .title {
    margin: 0 0 10px;
    padding-top: 10px;
    font-size: 16px;
}
.list_topics .title + p { margin: 10px 0; }

/*
リスト：バナー
-----------------------------------*/
.list_banner {
   margin-top: -10px;
    text-align: center;
}
.list_banner li {
    display: inline-block;
    width: 140px;
    margin: 10px 3px 0;
}
.list_banner a {
    display: block;
    transition: 0.2s linear;
}
.list_banner a.hover{
    filter: alpha(opacity=60);
    opacity: 0.6;
}

/*
関連サイトバナー
-----------------------------------*/
.list_relations {
    width: 600px;
    margin: 40px auto;
    text-align: center;
}
.list_relations:last-child { margin-bottom: 0; }
.list_banner + .list_relations {
    position: relative;
    margin-top: 100px;
}
.list_banner + .list_relations:before {
    position: absolute;
    top: -20px;
    left: 50%;
    display: block;
    width: 360px;
    height: 2px;
    margin-left: -180px;
    border-radius: 2px;
    background: #e5e5e5 url(/images/common/bg_texture_w.png) repeat left top;
    background-size: 10px;
    content: " ";
}
.list_relations li {
    display: inline-block;
    width: 50%;
    margin-right: -3px;
    text-align: center;
}
.list_relations img { width: 250px; }
.list_relations .squarebanner img { width: 140px; }
/*
リスト：ショップ
-----------------------------------*/
.list_shop p { font-size: 13px; }


/* ブロックタイプ */
.list_shop_block {
    margin: 0 10px;
}
.list_shop_block li {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    width: 25%;
    margin: -1px 0 0 -1px;
    border: 1px solid #d9d9d9;
}
.list_shop_block a {
    position: relative;
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    display: table;
    width: 100%;;
    border: 4px solid #fff;
    text-align: center;
    transition: 0.1s linear;
}
.list_shop_block a.hover {
    border-color: #333;
    text-decoration: none;
}
.list_shop_block .image {
    position: absolute;
    top: 4px;
    left: 4px;
    right: 4px;
    display: block;
    height: 74px;
    background: #fff;
    text-align: center;

}
.list_shop_block img {
    position: absolute;
    top: 50%;
    left: 50%;
    max-width: 100px;
    max-height: 74px;
    -webkit-transform: translate(-50%, -50%);
    transform: translate( -50%, -50%);
}
.list_shop_block p {
    display: table-cell;
    margin: 0;
    line-height: 1.2;
    vertical-align: middle;
}
.list_shop_block p:first-child { height: 106px; }
.list_shop_block .image + p {
    height: 32px;
    padding-top: 78px;
  }

/*
共通注意事項
-----------------------------------*/
.footer_anounce {
    margin: 10px auto;
    padding: 0 10px;
    font-size: 11px;
}

/*
ログイン機能
-----------------------------------*/
.box_login p,
.box_login .table_block {
    max-width: 980px;
    margin: 20px auto;
}
.box_login p { font-size: 16px; }
.box_login input[type="text"],
.box_login input[type="email"],
.box_login input[type="password"] {
    display: inline-block;
    width: 300px;
    padding: 8px 10px 7px;
    border: 1px solid #d9d9d9;
    border-radius: 3px;
    background: #fff;
}

.box_login .reg {
    display: inline-block;
    margin-left: 10px;
    padding: 5px 10px;
    background: #e5e5e5;
    font-size: 11px;
}


/*
店舗フッター
-----------------------------------*/
#shop_footer .inner {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0 60px;
}
#shop_footer .information {
    float: left;
    width: 55%;
    max-width: 800px;
}
#shop_footer .information li {
    position: relative;
    margin-top: 10px;
    font-size: 14px;
    padding-left: 20px;
}
#shop_footer .information li:before {
    position: absolute;
    top: 2px;
    left: 0;
    display: block;
    width: 15px;
    height: 15px;
    background-image: url(/images/common/sprite_icon.png);
    background-size: 500px auto;
    content: " ";
}
#shop_footer .information .address:before { background-position: -250px -100px; }
#shop_footer .information .tel:before { background-position: -300px -100px; }
#shop_footer .information .time:before { background-position: -350px -100px; }
#shop_footer .information .holiday:before { background-position: -450px -100px; }

#shop_footer .information p { margin: 0; }

.box_footer_notice {
    float: right;
    width: 40%;
    max-width: 380px;
    padding: 20px 10px;
    font-size: 11px;
}

/*
グローバルフッター
-----------------------------------*/
main + footer.global { margin-top: 40px; }
footer.global .inner {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    padding: 20px 0;
}
.page_top {
    position: absolute;
    top: -30px;
    left: 50%;
    width: 70px;
    margin-left: -35px;
    text-align: center;
}
#button_page_top { display: none !important; }

.page_top a {
    position: relative;
    display: inline-block;
    width: 70px;
    height: 20px;
    border-top: 10px solid #666;
    background: #333;
    font-size: 12px;
    line-height: 20px;
}
.page_top a:before {
    position: absolute;
    top: -8px;
    left: 50%;
    display: block;
    margin-left: -8px;
    border-color: transparent transparent #333;
    border-style: solid;
    border-width: 0 8px 8px 8px;
    content: " ";
}
.footer_shop_list,
.footer_list  { padding-bottom: 50px; }
.footer_shop_list .title,
.footer_list .title  { padding-bottom: 20px; }
.footer_shop_list ul,
.footer_list ul { margin: 0 10px; }
.footer_shop_list li {
    float: left;
    width: 20%;
    margin-top: 20px;
}
.footer_shop_list li.scsq {
    width: 80%;
}

.footer_list {
    -webkit-box-sizing: border-box;
    box-sizing: border-box;
    float: left;
    width: 20%;
    max-width: 244px;
    padding-left: 15px;
}

.footer_shop_list + .footer_list { padding-left: 0; }

.footer_list li {
    margin-top: 10px;
    line-height: 1.2;
}

footer.global small {
    width: 96%;
    max-width: 1200px;
    margin: 0 auto;
    font-size: 12px;
}

#longbanner {text-align:center;padding:0;margin:0 0 10px 0;width:100%;}
#longbanner .image{max-width:100%;}
#longbanner .image img{width:100%;}


.local_header .information .businessinfo_btn {
    position: absolute;
    top: 0;
    right: 0;
    display: block;
    width: 80px;
    height: 18px;
    padding-top: 45px;
    color: #fff;
    font-size: 8px;
    text-align: center;
}
.local_header .information .businessinfo_btn:after {
    position: absolute;
    top: 10px;
    left: 50%;
    display: block;
    width: 30px;
    height: 30px;
    margin-left: -15px;
    background: url(/images/common/sprite_icon.png) no-repeat -100px -50px;
    background-size: 500px auto;
    content: " ";
}
}



