
@charset "utf-8";

/* +++++++++++++++++++++++++++++++

 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 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_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: 80%;
}

#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_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; }

/*
重要なお知らせ
-----------------------------------*/
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: relative; }
.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 .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;
    display: block;
}
#main {
    position: relative;
    padding: 0 0 40px 50px;
    z-index: 1;
}
#nav {
    position: absolute;
    top: 0;
    left: 0;
    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 */

#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: absolute;
    top: 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;
}

/* 展開時 */
#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 -150px;
    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;
}



