@charset "UTF-8";

/* reset
----------------------------------------------------------------------------------------------*/
html     { font-size: 62.5%; }
body     { font-size: 10px; font-size: 1rem; font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif; color: #333; }
*        { margin: 0; padding: 0; box-sizing: border-box; }
img      { display: block; border: 0; line-height: 1; }
a        { text-decoration: none; background-color: transparent; outline: 0; }
a:active,
a:hover  { outline: 0; }
h2,
h3  { padding: 8px 10px; font-size: 1.4rem; line-height: 1; color: #fff; background: #666; border-left: 5px solid #c03; }
h4  { padding: 9px 10px; font-size: 1.2rem; line-height: 1; color: inherit; background: #ececec; }
li  { list-style-type: none; }

.center         { text-align: center; }
.clearfix:after { content: ""; clear: both; display: block; }

select,input { font-size: 1.6rem; font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif; }

/* Colors
----------------------------------------------------------------------------------------------*/
.txtRed      { color: #c03; }

/*黒バック 白テキスト*/
.fgTextColor { color: #fff; }      /* 共通TEXT色 */
.main_wrap   { background: #000; } /* 背景色 */

/*白バック #333テキスト*/
.fgTextColor { color: #333; }      /* 共通TEXT色 */
.main_wrap   { background: #fff; } /* 背景色 */

/* text型リンク */
a.textLink       { color: #3cf; text-decoration: underline; }
a.textLink:hover { opacity: .75; }

/* ボタン類 */
select { color: #000; border: none; outline: 0; height: 38px; padding: 5px; border: 3px solid #fff; background: url(../img/btn_pulldown.png) right 50% no-repeat #fff; background-size: 32px, 100%; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
select::-ms-expand    { display: none; }
select:-moz-focusring { color: transparent; }
input                 { -webkit-appearance: none; -moz-appearance: none; appearance: none; }

input[type=button].btn_ylw {padding: 14px 0px;width: 100%;max-width: 240px;font-weight: bold; color: #333; font-size: 1.4rem;text-align: center;background: #f4c433;border: 3px solid #fff;border-radius: 5px;text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff;box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2);}

input[type=button].btn_login { padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_lock_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
input[type=button].btn_logout { padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_unlock_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }

input[type=button].btn_ble { padding: 10px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; background: #90cce9; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }

input[type=button].btn_recart { padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); white-space: normal; }

input[type=button]:hover { opacity: .75; cursor: pointer; color: rgba( 51,51,51,.75); }

p.btn_recart { margin: 0 auto; padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; color: rgba( 51,51,51,.75); background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); opacity: .65; cursor: default; }

/* .main_wrap
----------------------------------------------------------------------------------------------*/
.main_wrap  { width: 100%; margin: 0 auto; padding: 0; overflow: hidden; clear: both; }
.main_left  { margin-top: 15px; display: block; }
.main_right { display: none; }

/* メイン先頭のメッセージ 2017.08.26追加 */
.main_left .top_alert   { padding: 0 10px; }
.main_left .top_alert p { margin-bottom: 15px; font-size: 1.6rem; font-weight: bold; }

/* 警告メッセージ */
.warning_msg { padding: 25px; background-color: #FFF5E5; text-align: center; }
.warning_msg p { margin-bottom: 15px; font-size: 2rem; font-weight: bold; }
.txt_message { display: none; }

/* layout
----------------------------------------------------------------------------------------------*/
.wrap_body { margin-bottom: 80px; width: 100%; background: #ececec; }
iframe     { width:100%; height:100%; border:none; display:block; }

/* header
----------------------------------------------------------------------------------------------*/
header                     { background: #E3E300; }
header .header_pad         { margin: 0 auto; padding: 10px; width: 100%; height: 58px; position: relative; }
header h1                  { float: left; text-align: left; }
header h1 a                { display: block; }
header h1 a img            { height: 38px; }
header .header_pad > p     { display: none; }
header .header_links_sp    { width: 96px; }
header ul                  { float: right; position: relative; }
header ul li               { float: left; }
header ul li               { display: table-cell; text-align: center; font-size: 1rem; line-height: 1; width: 48px; height: 38px; color: #000; }
header ul a                { color: #fff; }
header ul .nav_history     { padding-top: 28px; width: 48px; height: 38px; background: url(../img/icon_history.png) top no-repeat; background-size: 22px; }
header ul .nav_cart        { padding-top: 28px; width: 48px; height: 38px; background: url(../img/icon_cart.png) top no-repeat; background-size: 24px; }
header ul li.item_num      { position: absolute; top: 3px; right: 0; width: 48px; display: block; text-align: right; }
header ul li.item_num p    { display: inline; padding: 3px; font-size: .9rem; color: #fff; background: #f00; border: 1px solid #fff; border-radius: 10px; }
header ul li.item_num      { /*display: none;*/ }

/* カートアイコンメッセージ */
/* 吹き出し */
header ul .baloon { position: absolute; top: 50px; left: -140px; width: 230px; z-index: 1000; color: #c03; text-align: left; font-size: 1.5em; font-weight: bold; }
header ul .baloon_inner { padding: 5px 5px; border: 2px solid #ddd; background: #fff; box-sizing: border-box; border-radius: 5px; box-shadow: 2px 2px 4px black; }
/* 三角の部分 */
header ul .baloon:before { content: ""; display: block; width: 0; height: 0; position: absolute; top: -10px; left: 210px; border-style: solid; border-width: 0 6px 12px 6px; border-color: transparent transparent #ddd transparent; }
/* 閉じるボタン */
header ul .baloon_close { font-size: 100%; font-weight: bold; border: 1px solid #999; color: #999; display: flex; justify-content: center; align-items: center; border-radius: 100%; width: 22px; line-height: 20px; cursor: pointer; transition: .2s; }
header ul .baloon_close:hover { background: #333; border-color: #333; color: #FFF; }
/* 各エリア */
header ul .baloon_contents { display: table-cell; vertical-align: middle; padding: 3px; }

/* #langheader
----------------------------------------------------------------------------------------------*/
#langheader                { color: #fff; background: #666; }
#langheader .langheader_pad { margin: 0 auto; padding: 10px; width: 100%; height: 100%; text-align: center; font-size: 1.4rem;}
#langheader a               { color: #ddd; }

/* #subheader
----------------------------------------------------------------------------------------------*/
#subheader                { color: #fff; background: #E3E300; height: 58px; }
#subheader .subheader_pad { margin: 0 auto; padding: 10px; width: 100%; height: 100%; position: relative; }
#subheader p              { position: absolute; top: 50%; left: 20px; color: #000; font-size: 1.4rem; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); padding-right: 70px ; }
#subheader span.login,
#subheader span.logout    { float: right; }
#subheader span.logout a  { display: table-cell; vertical-align: bottom; text-align: center; /*width: 48px;*/ height: 38px; color: #000; background: url(../img/icon_unlock_wh.png) top no-repeat; background-size: 22px; line-height: 1; }
#subheader span.login a   { display: table-cell; vertical-align: bottom; text-align: center; /*width: 48px;*/ height: 38px; color: #000; background: url(../img/icon_login.png) top no-repeat; background-size: 22px; line-height: 1; }

/* トップ
----------------------------------------------------------------------------------------------*/
#frequentshop           { background: #fbf5c9; margin: 0 15px 15px; padding: 10px; text-align: center; }
#frequentshop p         { font-size: 1.4rem; margin: 0 0 10px; }
#frequentshop p a       { font-size: 1.2rem; }
#frequentshop div       { margin: 0 auto; width: 180px; text-align: center; }
#frequentshop div a     { padding: 15px 0; display: block; color: #333; background: #f4c433; font-weight: bold; font-size: 1.4rem; line-height: 1; text-shadow: -3px 0 5px #fff, 0px -3px 5px #fff, 0px 3px 5px #fff, 3px 0 5px #fff; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#frequentshop div a:hover { opacity: .75; }

/* 検索 indexのみ */
#search                    { margin: 0 15px 15px; }
#search h2                 { margin: 0 0 10px; }
#prime_search_btns         { margin-left: -10px; }
#prime_search_btns li      { float: left; width: 33.33%; }
#prime_search_btns section { float: left; width: 100%; padding: 0 0 0 10px; position: relative; }
#prime_search_btns #zip.active section:after,
#prime_search_btns #area.active section:after { content: '▲'; font-size: 16px; color: #dcdcdc; position: absolute; bottom: -8px; left: 50%; }

.prime_search_btn   { border: 3px solid #fff; background: #f4c433; text-align: center; height: 100px; position: relative; margin: 0 0 14px; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.prime_search_btn a { display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
.prime_search_btn img            { position: absolute; top: 0; left: 50%; -webkit-transform: translate(-50%, -7px); transform: translate(-50%, -7px); }
.prime_search_btn img.icon_pos   { width: 70px; }
.prime_search_btn img.icon_post  { width: 50px; }
.prime_search_btn img.icon_japan { width: 70px; }
.prime_search_btn p              { line-height: 1; position: absolute; width: 100%; bottom: 5px; left: 50%; font-size: 1.4rem; -webkit-transform: translate(-50%, 0); transform: translate(-50%, 0); text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
.prime_search_btn p strong       { font-size: 2rem; margin: 0 0 5px; display: block; }
.prime_search_btn:hover          { opacity: .75; box-shadow: 0px 0px 1px 1px rgba(0,0,0,0.2); }

/* 郵便番号から探す indexのみ */
.zipcode           { margin-bottom: 10px; padding: 8px; background: #dcdcdc; }
.zipcode dl        { width: 100%; display: table; background: #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.zipcode dl dt,
.zipcode dl dd     { display: table-cell; vertical-align: top; }
.zipcode dl dt     { width: 85%; }
.zipcode dl dd     { width: 15%; }
.zipcode dl input  { width: 100%; height: 38px; padding: 5px; border: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 5px; font-size: 1.6rem; }
.zipcode dl button { border: none; width: 100%; min-width: 90px; height: 38px; border: 3px solid #fff; padding: 0 16px 0 0; display: block; color: #333; font-size: 1.4rem; font-weight: bold; background: url(../img/icon_magnify.png) right 16px center no-repeat #f4c433; background-size: 16px; cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }

/* 地域から探す indexのみ */
.area_list    { margin-bottom: 10px; padding: 8px; font-size: 1.4rem; background: #dcdcdc; }
.area_list ul { margin: 0; width: 100%; background: #fff; }
.area_list li { border-bottom: #dcdcdc; }

.area_list h3                  { padding: 16px 0 16px 10px; font-weight:normal; font-size: 1.6rem; display: block; color: #333; background-color: #fff; border: none; border-bottom: 1px solid #dcdcdc; position: relative; cursor: pointer; }
.area_list h3:after            { position: absolute; right: 10px; content: url(../img/icon_arrow14.png); -webkit-transform: rotate(90deg); transform: rotate(90deg); -webkit-transition: all, 0.25s, linear; transition: all, 0.25s, linear; }
.area_list h3.mainOpened:after { right: 7px; -webkit-transform: translate(0, 50%); transform: translate(0, 50%); -webkit-transform: rotate(-90deg); transform: rotate(-90deg); }
.area_list h3[no_shops_region="true"] { background: #eee; }

dt.pref                     { padding: 16px 0 16px 10px; text-indent: 1.2rem; border-bottom: 1px solid #dcdcdc; position: relative; }
dt.pref:after               { position: absolute; right: 10px; content: '>'; font-size: 14px; top: 10px; -webkit-transform: rotate(90deg); transform: rotate(90deg); -webkit-transition: all, 0.25s, linear; transition: all, 0.25s, linear; }
dl.subList dt               { position: relative; cursor: pointer; }
dl.subList dd               { border-bottom: 1px solid #dcdcdc; background: #fff; display: block; }
dl.subList dd a             { padding: 16px 0 16px 10px; text-indent: 2.4rem; display: block; color: #333; border-bottom: 1px solid #dcdcdc; }
dl.subList dd a:last-child  { border: none; }
dl.subList dd a:hover       { cursor: pointer; }
dl.subList dd a:hover:after { padding-left: 10px; content: '→'; }
dt[no_shops="true"].pref { cursor: default; background: #eee; }
dt[no_shops="true"].pref:after { content: ''; }

/* 注文履歴から探す indexのみ */
.history        { margin-bottom: 10px; padding: 8px; background: #dcdcdc; }
.history select { font-size: 1.6rem; width: 100%; }

/* フリーワードから探す */
.freeword           { margin: 0 0 10px; padding: 8px; background: #dcdcdc; }
.freeword dl        { width: 100%; display: table; background: #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.freeword dl dt,
.freeword dl dd     { display: table-cell; vertical-align: top; }
.freeword dl dt     { width: 85%; }
.freeword dl dd     { width: 15%; }
.freeword dl input  { width: 100%; height: 38px; padding: 5px; border: none; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 5px; font-size: 1.6rem; }
.freeword dl button { border: none; width: 100%; min-width: 90px; height: 38px; border: 3px solid #fff; padding: 0 16px 0 0; display: block; color: #333; font-size: 1.4rem; font-weight: bold; background: url(../img/icon_magnify.png) right 16px center no-repeat #f4c433; background-size: 16px; cursor: pointer; -webkit-appearance: none; -moz-appearance: none; appearance: none; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }

/* バナー */
.banner_l_col     { margin: 0 0 20px; }
.banner_l_col p   { margin: 0 0 10px; }
.banner_l_col img { width: 100%; }
.banner_top       { margin: 0 0 20px; }
.banner_top img   { width: 100%; }

/* footer
----------------------------------------------------------------------------------------------*/
footer         { width: 100%; }
footer ul      { font-size: 0; }
footer ul li   { font-size: 1.4rem; width: 50%; border: 1px solid #fff; display: inline-block; }
footer ul li a { font-size: 1.4rem; padding: 16px 0 16px 10px; display: block; color: #fff; background: url(../img/icon_arrow.png) right 10px center no-repeat #666; background-size: 14px; }
.copyright     { font-size: 1rem; padding: 15px 0; text-align: center; color: #666; background: #fff; }

/* SP フッタ部分固定カート */
.footer_amount       { padding:10px; position: fixed; Z-index: 100; bottom: 0; left: 0; width: 100%; height: 76px; background: #ececec; }
.footer_amount dl    { float: left; margin: 6px 20px 0 0; }
.footer_amount dl dt { font-size: 1.2rem; color: #999; }
.footer_amount dl dd { font-size: 1.8rem; }
.footer_amount .btn_cart       { position: absolute; top: 50%; right: 10px; font-size: 1.4rem; padding: 0 12px; border: 3px solid #fff; background: #f4c433; text-align: center; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.footer_amount .btn_cart a     { padding: 12px 10px 12px 30px; display: block; color: #333; font-weight: bold; background: url(../img/icon_cart_wh.png) left 0 center no-repeat; background-size: 29px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
.footer_amount .btn_cart:hover { opacity: .75; }

.footer_amount .btn_cart_na p  { padding: 12px 20px 12px 45px; position: absolute; top: 50%; right: 10px; font-size: 1.4rem; border: 3px solid #fff; text-align: center; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2);  display: block; color: #333; font-weight: bold; background: #f4c433 url(../img/icon_cart_wh.png) left 15px center no-repeat; background-size: 29px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; opacity: .25; }

/* 店舗検索結果
----------------------------------------------------------------------------------------------*/
.cat_list                      { padding: 0 15px; }
.shop_list                     { margin: 0 0 20px 0; }
.shop_list h3                  { margin: 0 0 10px 0; }
.shop_list .shop_info          { padding: 0 0 2px 0; overflow: hidden; clear: both; }
.shop_list .shop_info p        { margin-bottom: 10px; font-size: 1.4rem; }
.shop_list .shop_info p span   { font-weight: bold; }
.shop_list .shop_info table    { margin: 0 0 10px 0; width: 100%; cell-spacing: 0; border-collapse: collapse; }
.shop_list .shop_info table th { padding: 7px; font-size: 1.4rem; line-height: 1.3; border: 1px solid #999; background: #dcdcdc; white-space: nowrap; width: 72px; }
.shop_list .shop_info table td { padding: 7px; font-size: 1.4rem; line-height: 1.3; border: 1px solid #999; background: #fff; word-break: break-all; }
.shop_list .shop_info table a  { margin: 0; font-size: 1.2rem; }
.shop_list .btn_enter          { margin: 0 auto; border: 3px solid #fff; background: #f4c433; text-align: center; max-width: 240px; font-size: 1.4rem; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.shop_list .btn_enter a        { display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
.shop_list .btn_enter a        { padding: 8px 10px; }
.shop_list .btn_enter:hover    { opacity: .75; }

/* 店舗トップ（カテゴリー）
----------------------------------------------------------------------------------------------*/
#order h2             { margin: 0 -15px; position: relative; border: none; border-top: 3px solid #c03; font-size: 1.6rem; padding: 15px 5px; text-align: center; clear: both; overflow: hidden; line-height: 1.3; }

#order #shop_info     { margin: 0 0; }
#order #shop_info p   { font-size: 1.6rem; font-weight: normal; margin: 15px 0; padding: 0 15px; }
#order #shop_info p a { font-size: 1.4rem; }
#order #shop_info .data_time                 { margin: 0 15px 15px; padding: 10px; background: #dcdcdc; }
#order #shop_info .data_time table           { width: 100%; border-collapse: collapse; }
#order #shop_info .data_time table th        { width: 10%; font-weight: normal; font-size: 1.2rem; line-height: 1.3; }
#order #shop_info .data_time table td        { width: 45%; padding: 0 0 0 10px; }
#order #shop_info .data_time table td select { width: 100%; font-size: 1.2rem; }
#order #shop_info .data_time p               { display: inline; font-size: 1.6rem; padding: 0 1em 0 0; }
#order #shop_info p.order_status             { font-size: 1.8rem; font-weight: bold; margin: 15px 0; text-align: center; }
#order #shop_info p.order_status:before      { content: "【"; }
#order #shop_info p.order_status:after       { content: "】"; }

#order #cat_list           { margin: 0 15px; }
#order #cat_list p.caution { font-size: 1.4rem; }
#order h2 span             { position: absolute; top: 50%; left: 0; -webkit-transform: translate(15px, -50%); transform: translate(15px, -50%); }
#order h2 span a           { display: block; padding: 20px 0 20px 20px; margin: 0 0 0 15px; background: url(../img/icon_turn.png) 0 center no-repeat; background-size: 14px 15px; font-weight: normal; }
#order h2 span a:hover     { opacity: .75; }
#order #cat_list h2 span a { margin: 0; }

#order #cat_list .cat_list_pad            { margin: 0 -15px; }
#order #cat_list ul li                    { border-bottom: 1px solid #dcdcdc; }
#order #cat_list ul li a                  { display: block; width: 100%; color: #333; }
#order #cat_list ul li a:hover            { opacity: .75; }
#order #cat_list ul li .easy_entry        { display: flex; display:-moz-box; display:-ms-flexbox; display:-webkit-box; display:-webkit-flex; align-items:center; }
#order #cat_list ul li .easy_entry a      { display: inline-block; vertical-align: middle; width: 130px; color: #333; }
#order #cat_list ul li div.grayscale      { filter: grayscale(100%); background: #b4b3b3; color: #e0dfdf}
#order #cat_list ul li .sale              { background: #fff; display: flex; flex-direction: row; align-items: center; }
#order #cat_list ul li .notsale           { background: #ececec; }
#order #cat_list ul li .cat_list_pic      { position: relative; height: 80px; width: 130px; flex-shrink: 0; }
#order #cat_list ul li .cat_list_pic img  { max-height: 100%; max-width: 100%; }
#order #cat_list ul li .cat_list_pic span { padding: 4px 2px; line-height: 1; position: absolute; bottom: 2px; right: 6px; left: 6px; background: #ececec; border-radius: 3px; font-size: 1.4rem; border: 2px solid #7c7c7c; text-align: center; }

#order #cat_list ul li .cat_list_txt                { padding: 5px 29px 5px 10px; width: 100%; background: url(../img/icon_arrow.png) center right 15px no-repeat; background-size: 14px; font-size: 1.4rem; line-height: 1.5; word-break: break-word; }
#order #cat_list ul li .cat_list_menu_txt           { padding: 5px 1px; display: inline-block; vertical-align: middle; top: 30px; font-size: 1.4rem; line-height: 1.5; width: 30%; word-break: break-word; }

#order #cat_list ul li .cat_list_numBox                { display: inline-block; vertical-align: middle; width: 29%; }
#order #cat_list ul li .cat_list_numBox .numBox        { display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; justify-content: space-between;}
#order #cat_list ul li .cat_list_numBox .numBox span,
#order #cat_list ul li .cat_list_numBox .numBox a              { width: 30%; text-align: center; display: block; align-items: center; border: 2px solid #e5e5e5; }
#order #cat_list ul li .cat_list_numBox .numBox a              { background: #ececec; font-size: 14px; font-weight: bold; }
#order #cat_list ul li .cat_list_numBox .numBox .increment_btn { color: red; }
#order #cat_list ul li .cat_list_numBox .numBox                { font-size: 14px; outline: none; }
#order #cat_list ul li .cat_list_numBox .numBox .disabled      { color: white; pointer-events:none; }
#order #cat_list ul li .cat_list_numBox .numBox span.errBorder { border-color: #da1929; border-width: 2px;}
#order #cat_list ul li .cat_list_numBox .numBox a:hover        { text-decoration: none; opacity: 0.7;}
#order #cat_list ul li .cat_list_numBox .numBox a              { background: #ececec;}

#order .btn_back         { border: 3px solid #fff; background: #90cce9; text-align: center; max-width: 240px; font-size: 1.4rem; margin: 20px auto; clear: both; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#order .btn_back a       { padding: 12px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#order .btn_back:hover   { opacity: .75; }

#order .btn_my_menu         { border: 3px solid #fff; background: #f4c433; text-align: center; width: fit-content; font-size: 1.4rem; margin: 0 15px 15px 17px; clear: both; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#order .btn_my_menu a       { padding: .5em 2em; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#order .btn_my_menu:hover   { opacity: .75; }

/* 直リンクカートクリア
----------------------------------------------------------------------------------------------*/
#directlink_cartclear { height: 320px; }

/* 商品詳細
----------------------------------------------------------------------------------------------*/
#cat_list .cat_detail .item                { padding: 10px 0; }
#cat_list .cat_detail .item_pic            { padding-bottom: 10px; }
#cat_list .cat_detail .item_pic img        { width: 100%; }
#cat_list .cat_detail .item_price          { padding-bottom: 10px; text-align: center; }
#cat_list .cat_detail .item_price p        { font-size: 1.4rem; }
#cat_list .cat_detail .item_price p span   { font-size: 1.8rem; }
#cat_list .cat_detail .item_txt p          { font-size: 1.2rem; }
#cat_list .cat_detail .item_txt p.overtime { text-align: right; font-weight: bold; font-size: 1.6rem; }
#cat_list .cat_detail .item_option         { margin: 0 0 10px 0; }
#cat_list .cat_detail .item_option h4      { margin-top: 10px; color: #fff; background: #aaa; position: relative; }
/* セレクト開閉ボタン */
#cat_list .cat_detail .item_option h4 a.option_disp_btn { position: absolute; top: 3px; right: 3px; border: 1px solid #fff; background-color: #f4c433; color: #cc0033; width:74px; padding: 5px 15px 5px 5px; text-align:center}
#cat_list .cat_detail .item_option h4 a.option_open::after { position: absolute; content:'▼'; color:#333; right: 3px; }
#cat_list .cat_detail .item_option h4 a.option_close::after { position: absolute; content:'▲'; color:#333; right: 3px; }
/* セレクト非表示 */
#cat_list .cat_detail .item_option h4 + div.hide { display: none; }
/******************/
#cat_list .cat_detail .item_option ul      { padding: 10px 10px 10px 10px; background: #dcdcdc; }
#cat_list .cat_detail .item_option ul li                   { margin-top: 10px; font-size: 1.4rem; border: none;  }
#cat_list .cat_detail .item_option ul li:nth-child(1)      { margin-top: 0px; }
#cat_list .cat_detail .item_option ul li.active            { background: rgba( 255,255,255,.5); }
#cat_list .cat_detail .item_option ul li label             { margin: 0; padding: .5em 1em 1em 1em ; cursor: pointer; background: #fff; border-radius: 5px; }
#cat_list .cat_detail .item_option ul li label span        { display: inline-block; margin-top: 6px; }
#cat_list .cat_detail .item_option ul li input[type=radio] { display: none; }
#cat_list .cat_detail .item_option ul li .radio_pt         { margin-right: 26px; padding-left: 26px; position: relative; }
#cat_list .cat_detail .item_option ul li .radio_pt:before  { content: ""; display: block; position: absolute; top: 0; left: 0; width: 20px; height: 20px; border: 1px solid #999; border-radius: 50%; }
#cat_list .cat_detail .item_option ul li input[type=radio]:checked + .radio_pt::after { content: ""; display: block; position: absolute; top: 4px; left: 4px; width: 14px; height: 14px; background: #090; border-radius: 50%; }
#cat_list .cat_detail .item_option .option_num        { padding: 10px; background: #dcdcdc; overflow: hidden; clear: both; }
#cat_list .cat_detail .item_option .option_num select { font-size: 1.4rem; width: 100%; }
#cat_list .cat_detail .item_option .option_check       { padding: 10px; background: #fff; border: 10px solid #dcdcdc; overflow: hidden; clear: both; }
#cat_list .cat_detail .item_option .option_check label { display: inline; margin: 5px; }
#cat_list .cat_detail .item_option .option_check label input span.checkbox01-parts { font-size: 1.4rem; }
#cat_list .cat_detail .item_option .option_check ul                      { padding: 0; background: #fff; }
#cat_list .cat_detail .item_option .option_check ul li                   { float: left; margin-top: 0; border: none!important; }
#cat_list .cat_detail .item_option .option_check ul li:nth-child(1)      {  }
#cat_list .cat_detail .item_option .option_check ul li input[type=radio] { display: none; }
#cat_list .cat_detail .item_option .option_check ul li .checkbox01-parts { margin-right: 0; }
#cat_list .cat_detail .item_option .option_check ul li label             { margin-left: 0; padding-left: 0; }
/* チェックボックス無効 */
#cat_list .cat_detail .item_option .option_check ul li .checkbox01-input:disabled + .checkbox01-parts::before {border: 1px solid #dcdcdc;}
/* チェックボックス縦並び */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical { /* float: leftで横並びになっているのでこれを外す */ float: none; display: flex; margin-bottom: 10px; }
#cat_list .cat_detail .item_option .option_check ul li.list_vertical label { margin: 0px;	padding: 0px;}
#cat_list .cat_detail .item_option .option_check ul li.list_vertical label span        { display: inline-block; margin-top: 0; } /* 横並び時の"margin-top: 6px"を打ち消す*/
/* 単価 */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical .option_price { margin-left: auto; flex-shrink: 0;}
/* 数量（input） */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical .option_quantity { font-size: 1.4rem; margin: 0px 3px 0px 3px; height: 20px; width: 20px; border: none; text-align: center; }
/* 数量欄（input）クリック時の外枠を非表示とする */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical .option_quantity:focus-visible { outline: none; }
/* 数量入力時セレクトメニュー名 */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical .quantity_option_name { margin-left: 7px; /*margin-bottom: 5px;*/}
/* +-ボタン */
#cat_list .cat_detail .item_option .option_check ul li.list_vertical button { border: none; border-radius: 50%; width: 22px; height: 22px; flex-shrink: 0; cursor: pointer; }
#cat_list .cat_detail .item_option .option_check ul li.list_vertical button.quantity_increment_zero_style { background: url(../img/quantity_plus.svg) no-repeat #C0C0C0 }
#cat_list .cat_detail .item_option .option_check ul li.list_vertical button.quantity_increment_style { background: url(../img/quantity_plus.svg) no-repeat #3333CC }
#cat_list .cat_detail .item_option .option_check ul li.list_vertical button.quantity_decrement { background: url(../img/quantity_minus.svg) no-repeat #FF6666 }
#cat_list .cat_detail .item_option .option_check ul li.list_vertical .hide { display: none; }
/*********************/
#order #cat_list .btn_cart_blue         { margin: 0 auto; font-size: 1.4rem; padding: 0 12px; border: 3px solid #fff; background: #90cce9; text-align: center; max-width: 240px; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#order #cat_list .btn_cart_blue a       { display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#order #cat_list .btn_cart_blue a       { background: url(../img/icon_cart_wh.png) left 0 center no-repeat; background-size: 29px; padding: 12px 0 12px 30px; }
#order #cat_list .btn_cart_blue a:hover { opacity: .75; }

#cat_list .cat_detail .item_subtotal         { margin: 10px auto; padding: 10px 2px; overflow: hidden; clear: both; position: relative; }
#cat_list .cat_detail .item_subtotal dt      { font-size: 1.4rem; }
#cat_list .cat_detail .item_subtotal select  { margin-left: 5px; font-size: 1.8rem; width: 80px; }
#cat_list .cat_detail .item_subtotal dd      { margin-top: 10px; font-size: 1.4rem; }
#cat_list .cat_detail .item_subtotal dd span { font-size: 1.8rem; }
#cat_list ul li div.nonsale                  { display: table; width: 100%; color: #333; }

.cart_in .cat_detail { text-align: center; }
.cart_in .add_cart   { text-align: center; }
.cart_in .add_cart input[type=button].btn_cartin { padding: 14px 0px; width: 240px; font-weight: bold; color: #000; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
.cart_in .add_cart p.btn_cartin                  { margin: 0 auto; padding: 14px 0px; width: 240px; font-weight: bold; font-size: 1.4rem; text-align: center; color: rgba( 51,51,51,.75); background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); opacity: .65; cursor: default; }

/* カート
----------------------------------------------------------------------------------------------*/
#cat_list .order_menu                       { margin: 10px 0; padding-bottom: 10px; border-bottom: 1px solid #dadada; }
#cat_list .menu_list .order_menu:last-child { margin-bottom: 15px; }
#cat_list .order_menu_item ul               { float: right; width: 60%; }
#cat_list .order_menu_item li               { padding: 0 0 .25em 0; font-size: 1.4rem; border-bottom: 0!important; }
#cat_list .order_menu_item .order_menu_pic                { padding: 0 10px 10px 0; float: left; width: 40%; }
#cat_list .order_menu_item .order_menu_pic img            { width: 100%; }
#cat_list .order_menu_item .order_menu_title p            { font-size: 1.4rem; }
#cat_list .order_menu_item .order_menu_title .grand_price { text-align: right; }
#cat_list .order_menu_item .order_menu_option             { font-size: 1.2rem; }
#cat_list .order_menu_item .order_menu_option table       { margin-bottom: 5px; width: 100%; border-collapse: collapse; color: #333; background: #fff; border: 1px solid #ccc; border-left: 0; border-right: 0; }
#cat_list .order_menu_item .order_menu_option tr          { border-bottom: 1px solid #ccc; }
#cat_list .order_menu_item .order_menu_option th          { padding: 5px 0 5px 5px; font-weight: normal; text-align: left; }
#cat_list .order_menu_item .order_menu_option td          { padding: 5px 5px 5px 15px; }
#cat_list .order_menu_item .order_menu_option .select_row      { display:flex; }
#cat_list .order_menu_item .order_menu_option .select_quantity { flex-shrink: 0; margin-right: 1rem; }
#cat_list .order_menu_item .order_menu_option .select_item:nth-child(1) { margin-left: auto; }
#cat_list .order_menu_item p.overtime                     { text-align: right; font-weight: bold; font-size: 1.6rem; }

#cat_list table.item_total                        { padding: 10px 0; width: 100%; border-collapse: collapse; table-layout: fixed; }
#cat_list table.item_total td                     { padding: 10px; background: #dcdcdc; }
#cat_list table.item_total td:nth-child(2)        { padding-left: 0; }
#cat_list table.item_total td:nth-child(3)        { padding-left: 0; width: 130px; }
#cat_list table.item_total td:nth-child(3) span   { font-size: 1.4rem; line-height: 40px; }
#cat_list table.item_total td select              { float: right; margin-right: 2px; width: 75px; font-size: 1.4rem; }
#cat_list table.item_total td p                   { font-size: 1.4rem; white-space: normal; }
#cat_list table.item_total td p span.txtRed       { font-size: 1.8rem; }
#cat_list table.item_total td p span.inline_block { display: inline-block; }
#cat_list table.item_total td.item_delete         { padding-left: 10px; text-align: left; white-space: pre; width: 69px;  }
#cat_list table.item_total td.item_delete a       { padding: 13px 0 13px 1.5em; font-size: 1.4rem; color: #666; background: url(../img/icon_del.png) left no-repeat; background-size: 14px; }
#cat_list table.item_total td.item_delete a:hover { opacity: .75; }
#cat_list table.item_total td.charge              { text-align: right; white-space: pre; }
#cat_list table.item_total td.item_num            { text-align: right; padding-left: 0; width: 70px; }
#cat_list table.item_total td.item_num p          { text-align: right; }

#cat_list .cat_detail_pad         { margin: 20px 0; padding: 10px; background: #d3eaf6; }
#cat_list .cat_detail_pad ul      { display: table; width: 100%; }
#cat_list .cat_detail_pad li      { padding: .25em 0; display: table; width: 100%; text-align: center; font-size: 1.4rem; border-bottom: 0!important; }
#cat_list .cat_detail_pad li span { font-size: 1.8rem; }

#cat_list div.privacy             {width:100%;height:120px;padding:5px;border:1px solid #dadada;background-color:#F9F9F9;border-radius: 5px;margin-bottom:15px;overflow:auto;-webkit-overflow-scrolling:touch;}

#cat_list ul li div.nonsale { display: table; width: 100%; color: #333; }
#cat_list .order_option     { margin-bottom: 10px; }
#cat_list .order_option h3  { margin-bottom: 10px; }
#cat_list .order_option .payment                 { margin-bottom: 10px; padding: 10px; background: #dcdcdc; }
#cat_list .order_option .payment li              { margin-top: 10px; padding: ; font-size: 1.2rem; border: none; }
#cat_list .order_option .payment li:nth-child(1) { margin-top: 0px; }
#cat_list .order_option .payment li label             { margin: 0; padding: .5em 1em; cursor: pointer; background: #fff; border-radius: 5px; }
#cat_list .order_option .payment li label span        { display: inline-block; margin-top: 6px; margin-bottom: 8px; width: 100%; }
#cat_list .order_option .payment li label span#credit { padding-bottom: 45px; background: url(../img/credit_img.png) left 26px bottom no-repeat; }
#cat_list .order_option .payment li label span#paypay { padding-bottom: 45px; background: url(../img/paypaylogo3.png) left 26px bottom no-repeat; background-size: 38px; }
#cat_list .order_option .payment li label span#merpay { padding-bottom: 45px; background: url(../img/merpaylogo.png) left 26px bottom no-repeat; background-size: 38px; }
#cat_list .order_option .payment li input[type=radio] { display: none; }
#cat_list .order_option .payment li .radio_pt         { margin-right: 0; padding-left: 26px; position: relative; }
#cat_list .order_option .payment li .radio_pt:before  { content: ""; display: block; position: absolute; top: -2px; left: 0; width: 20px; height: 20px; border: 1px solid #999; border-radius: 50%; }
#cat_list .order_option .payment li input[type=radio]:checked + .radio_pt::after { content: ""; display: block; position: absolute; top: 2px; left: 4px; width: 14px; height: 14px; background: #090; border-radius: 50%; }
#cat_list .order_option .recipt    { margin-bottom: 10px; }
#cat_list .order_option .recipt h4 { padding: 0 0 10px 0; background: none; }
#cat_list .order_option .recipt .check             { padding: 10px; background: #dcdcdc; }
#cat_list .order_option .recipt .check label       { margin: 0; padding: 10px; font-size: 1.4rem; background: rgba( 255,255,255,1); border-radius: 5px; }
#cat_list .order_option .recipt .check label:hover { opacity: .75; cursor: pointer; }
.checkbox01-input         { display: none; }
.checkbox01-parts         { margin-right: 20px; padding-left: 30px; position: relative; }
.checkbox01-parts::before { content: ""; display: block; position: absolute; top: -4px; left: 0; background: #fff; width: 20px; height: 20px; border: 1px solid #999; border-radius: 4px; }
.checkbox01-input:checked + .checkbox01-parts::after { content: ""; display: block; position: absolute; top: -8px; left: 8px; width: 7px; height: 20px; transform: rotate(40deg); border-bottom: 4px solid #009a00; border-right: 4px solid #009a00; }

#cat_list .order_option .hide_user_info { display: none; }
#cat_list .order_option h3 a            { font-size: 1.4rem; }
/*#cat_list .order_option .customer table { margin-bottom: 10px; padding: 10px 0; font-size: 1.6rem; width: 100%; border-collapse: collapse; }
#cat_list .order_option .customer th    { padding: 7px; font-weight: normal; text-align: left; line-height: 1.3; background: #ececec; border: 1px solid #ccc; white-space: nowrap; }
#cat_list .order_option .customer td    { padding: 7px; background: #fff; border: 1px solid #ccc; word-break: break-all; }*/

#cat_list .order_option .customer_edit table { margin-bottom: 10px; padding: 10px 0; font-size: 1.6rem; width: 100%; border-collapse: collapse; table-layout: fixed; }
#cat_list .order_option .customer_edit th    { padding: 7px; font-weight: normal; text-align: left; line-height: 1.3; background: #ececec; border: 1px solid #ccc; white-space: normal; }
#cat_list .order_option .customer_edit .login_user td { padding: 7px; }
#cat_list .order_option .customer_edit td    { padding: 2px; background: #fff; border: 1px solid #ccc; word-break: break-all; }

#cat_list .order_option .customer_edit th               { width: 7em; }
#cat_list .order_option .customer_edit tr:last-child td { height: 100%; }
#cat_list .order_option .customer_edit table input      { padding: 4px; font-size: 1.6rem; width: 100%; height: 38px; -webkit-appearance: none; -moz-appearance: none; appearance: none; white-space: normal; border-radius: 5px; border: 1px solid #ababab; background: #ffffe0; }
#cat_list .order_option .customer_edit table input[readonly="readonly"]  { padding: 5px; border: none; outline: 0; background: #fff; }

#cat_list .contact p        { margin-bottom: 10px; font-weight: bold; font-size: 1.4rem; }
#cat_list .contact textarea { padding: 5px; font-size: 1.6rem; width: 100%; height: 90px; resize: vertical; border: 1px solid #ababab; border-radius: 5px; margin-bottom: 5px;}

#cat_list .order_option .car_info table { margin-bottom: 10px; padding: 10px 0; font-size: 1.6rem; width: 100%; border-collapse: collapse; table-layout: fixed; }
#cat_list .order_option .car_info td.car_info_img   { border: none; width: 20%; text-align: center; vertical-align: middle;}
#cat_list .order_option .car_info td.car_info_data   { border: none}
#cat_list .order_option .car_info td.car_info_img img {display: inline; width: 50px; margin-right: 10px;}
#cat_list .order_option .car_info table input      { padding: 4px; font-size: 1.6rem; width: 100%; height: 38px; -webkit-appearance: none; -moz-appearance: none; appearance: none; white-space: normal; border-radius: 5px; border: 1px solid #ababab; background: #ffffe0; }
#cat_list .order_option .car_info table input[readonly="readonly"] { padding: 5px; font-size: 1.6rem; width: 100%; resize: vertical; border: 1px solid #ababab; border-radius: 5px; background: #fff; }
#cat_list .order_option .car_info textarea { padding: 5px; font-size: 1.6rem; width: 100%; height: 90px; resize: vertical; border: 1px solid #ababab; border-radius: 5px; }

#order .shop_message        { margin: 15px; }
#order .shop_message p      { padding: 10px; font-size: 1.6rem; background: #fbf5c9; border-radius: 5px; }

#order .err_message         { margin: 15px; }
#order .err_message p       { font-size: 1.4rem; }

#order #user_info          { margin: 15px; font-size: 1.4rem; }
#order #user_info table    { width: 100%; border-collapse: collapse; border: 1px solid #ccc; }
#order #user_info table tr { border-bottom: 1px solid #ccc; }
#order #user_info table th { padding: 10px; text-align: left; background: #ececec; border-right: 1px solid #ccc; }
#order #user_info table td { padding: 10px; text-align: left; background: #fff; }
#order #user_info table td { padding: 10px; text-align: left; background: #fff; word-break: break-all;}
#order #user_info  .locker_link { color: #c03; }

#order #cat_list .btn_cart { margin: 0 auto; text-align: center; }

#order #cat_list ul#btn_order                  { padding-bottom : 10px; border-bottom: 1px solid #dcdcdc; }
#order #cat_list ul#btn_order li               { margin-top: 10px; border: none; }
#order #cat_list ul#btn_order li:nth-child(1)  { margin-top: 0px; }
#order #cat_list .btn_cart h4.title            { width: 100%; font-size: 1.4rem; text-align: left; }
#order #cat_list .btn_cart div.comment         { padding: 9px 10px; width: 100%; font-size: 1.2rem; text-align: left; line-height: 1.5; }

#order #cat_list .cat_detail_pad li .btn_cart p   { margin: 0 auto; text-align: center; }
#order #cat_list .cat_detail_pad li .btn_cart p a { margin: 0 auto;  padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }

/* カートメニュー */
#cat_list .cart_menu         { margin: 0 0 10px 0; }
#cat_list .cart_menu h4      { margin-top: 10px; color: #fff; background: #aaa; }
#cat_list .cart_menu ul      { padding: 10px 10px 10px 10px; background: #dcdcdc; }
#cat_list .cart_menu ul li                   { margin-top: 10px; font-size: 1.4rem; border: none;  }
#cat_list .cart_menu ul li:nth-child(1)      { margin-top: 0px; }
#cat_list .cart_menu ul li label             { margin: 0; padding: .5em 1em 1em 1em ; cursor: pointer; background: #fff; border-radius: 5px; }
#cat_list .cart_menu ul li label span        { display: inline-block; margin-top: 6px; }
#cat_list .cart_menu .option_check label { display: inline; margin: 5px; }
#cat_list .cart_menu .option_check       { padding: 10px; background: #fff; border: 10px solid #dcdcdc; overflow: hidden; clear: both; }
#cat_list .cart_menu .option_check label input span.checkbox01-parts { font-size: 1.4rem; }
#cat_list .cart_menu .option_check ul                      { padding: 0; background: #fff; }
#cat_list .cart_menu .option_check ul li                   { float: left; margin-top: 0; border: none!important; }
#cat_list .cart_menu .option_check ul li:nth-child(1)      {  }
#cat_list .cart_menu .option_check ul li .checkbox01-parts { margin-right: 0; }
#cat_list .cart_menu .option_check ul li label             { margin-left: 0; padding-left: 0; }
#cat_list .cart_menu .option_check .cart_menu_disabled {color: #ccc;}
#cat_list .cart_menu .introduction { margin-bottom: 10px; text-align:center; }
#cat_list .cart_menu input[type=button].btn_update_amount { padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_update_amount_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); white-space: normal; }

/* カートメニュー(カート画面以外) */
#cat_list .cart_menu_other         { margin: 0 0 10px 0; }
#cat_list .cart_menu_other h4      { margin-top: 10px; color: #fff; background: #aaa; }
#cat_list .cart_menu_other ul      { padding: 10px 10px 10px 10px; background: #dcdcdc; }
#cat_list .cart_menu_other ul li                   { margin-top: 10px; font-size: 1.4rem; border: none;  }
#cat_list .cart_menu_other ul li label             { margin: 0; padding: .5em 1em 1em 1em ; background: #fff; border-radius: 5px; }
#cat_list .cart_menu_other ul li label span        { display: inline-block; margin-top: 6px; }
#cat_list .cart_menu_other .option_check label { display: inline; margin: 5px; }
#cat_list .cart_menu_other .option_check       { padding: 10px; background: #fff; border: 10px solid #dcdcdc; overflow: hidden; clear: both; }
#cat_list .cart_menu_other .option_check ul                      { padding: 0; background: #fff; }
#cat_list .cart_menu_other .option_check ul li                   { float: left; margin-top: 0; border: none!important; }
#cat_list .cart_menu_other .option_check ul li label             { margin-left: 0; padding-left: 0; }

/* 会員登録チェックボックス */
#cat_list .order_option .customer_edit .regist_check            { margin-top: 15px !important; margin-bottom: 15px !important; cursor: pointer; }
#cat_list .order_option .customer_edit .regist_parts            { font-size: 1.6rem; margin-left: 7px; margin-right: 20px; padding-left: 30px; position: relative; width: 100%;}
#cat_list .order_option .customer_edit .regist_parts::before    { content: ""; display: block; position: absolute; top: 0; left: 0; background: #fff; width: 20px; height: 20px; border: 1px solid #999; border-radius: 4px; }
#cat_list .order_option .customer_edit .regist_input            { display: none; }
#cat_list .order_option .customer_edit .regist_input:checked + .regist_parts::after { content: ""; display: block; position: absolute; top: -4px; left: 8px; width: 7px; height: 20px; transform: rotate(40deg); border-bottom: 4px solid #009a00; border-right: 4px solid #009a00; }
#cat_list .disp_none {display: none}
#cat_list .password.regist_enabled {display: table-row}
#cat_list #btn_regist_order.regist_enabled {display: block}

/* マイメニュー登録チェックボックス */
#cat_list .check_my_menu { text-align: center; }
#cat_list .check_my_menu .regist_check            { margin-top: 15px !important; margin-bottom: 15px !important; cursor: pointer; }
#cat_list .check_my_menu .regist_parts            { font-size: 1.6rem; margin-left: 7px; margin-right: 20px; padding-left: 30px; position: relative; width: 100%;}
#cat_list .check_my_menu .regist_parts::before    { content: ""; display: block; position: absolute; top: 0; left: 0; background: #fff; width: 20px; height: 20px; border: 1px solid #999; border-radius: 4px; }
#cat_list .check_my_menu .regist_input            { display: none; }
#cat_list .check_my_menu .regist_input:checked + .regist_parts::after { content: ""; display: block; position: absolute; top: -4px; left: 8px; width: 7px; height: 20px; transform: rotate(40deg); border-bottom: 4px solid #009a00; border-right: 4px solid #009a00; }

/* カート保存ボタン */
#cat_list input[type=button].btn_cart_save { padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_cart_save_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); white-space: normal; margin-bottom: 20px;}
#cat_list p.btn_cart_save { margin: 0 auto 20px auto; padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; font-size: 1.4rem; text-align: center; color: rgba( 51,51,51,.75); background: #f4c433 url(../img/icon_cart_save_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); opacity: .65; cursor: default; }

/*注文履歴一覧
----------------------------------------------------------------------------------------------*/
#history_list           { margin: 0 10px; }
#history_list h2        { margin: 0 -15px; position: relative; border: none; border-top: 3px solid #c03; font-size: 1.8rem; padding: 15px 0; text-align: center; clear: both; overflow: hidden; }
#history_list h2 span   { position: absolute; top: 50%; left: 0; -webkit-transform: translate(15px, -50%); transform: translate(15px, -50%); }
#history_list h2 span a { display: block; padding: 20px 0 20px 20px; margin: 0 0 0 0px; background: url(../img/icon_turn.png) 0 center no-repeat; background-size: 14px 15px; font-weight: normal; }
#history_list h2 span a:hover { opacity: .75; }

#history_list .order_part         { margin: 15px 0; }
#history_list .order_part table   { margin-bottom: 15px; padding: 10px 0; font-size: 1.4rem; width: 100%; border-collapse: collapse; }
#history_list .order_part caption { font-weight: bold; font-size: 1.6rem; width: 100%; text-align: left; }
#history_list .order_part th      { padding: 7px; font-weight: bold; text-align: left; line-height: 1.3; background: #ececec; border: 1px solid #ababab; }
#history_list .order_part td      { padding: 7px; background: #fff; border: 1px solid #ababab; }
#history_list .order_part .order_detail a       { margin: 15px auto; padding: 12px; display: block; text-align: center; font-weight: bold; font-size: 1.4rem; max-width: 240px; color: #333; background: #f4c433; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#history_list .order_part .order_detail a:hover { opacity: .75; }
#history_list .btn_back          { border: 3px solid #fff; background: #90cce9; text-align: center; max-width: 240px; font-size: 1.4rem; margin: 20px auto; clear: both; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#history_list .btn_back a        { padding: 12px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#history_list .btn_back:hover    { opacity: .75; }

/*注文履歴詳細
----------------------------------------------------------------------------------------------*/
p span.history_num:before  { content: '\A'; white-space: pre; }
p span.history_date { float: right; }
/* チェックインボタン */
#order #cat_list .btn_checkin  a { margin: 0 auto;  padding: 14px 0px; width: 100%; max-width: 240px; font-weight: bold; font-size: 1.4rem; text-align: center; background: #f4c433 url(../img/icon_checkin_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#order #cat_list .btn_checkin  a.disabled { opacity: .25; }
/* ロッカー受取QRコード */
#order #locker_qrcode { font-size: 1.6rem; border: 1px solid #dadada; padding: 10px 30px;  margin-top: 10px; }
#order #locker_qrcode #contents{ text-align: center; }

/* マイメニュー一覧
----------------------------------------------------------------------------------------------*/
#order #my_menu_info      { margin: 20px 0 0 0; font-size: 1.4rem; }
#order #my_menu_info table    { width: 100%; border-collapse: collapse; border: 1px solid #ccc; }
#order #my_menu_info table tr { border-bottom: 1px solid #ccc; }
#order #my_menu_info table th { padding: 10px; text-align: left; background: #ececec; border-right: 1px solid #ccc; }
#order #my_menu_info table td { padding: 10px; text-align: left; background: #fff; word-break: break-all;}
#order #my_menu_list { border: 1px solid #ccc; border-top: none; margin-bottom: 10px;}
#order #my_menu_list table    { width: 100%; border: none; }
#order #my_menu_list table td   { padding: 10px; }
#order #my_menu_list table td.button   { width: 42px; padding: 10px 3px;; }
#order #my_menu_list ul.my_menu_list_header { padding: 10px; float: right; }
#order #my_menu_list .my_menu_name {font-size: 1.6rem; font-weight: bold;}
#order #my_menu_list .edit      { display:block; width: 36px; height: 36px; background: url(../img/my_menu_edit.png) no-repeat; }
#order #my_menu_list .delete  { display:block; width: 36px; height: 36px; background: url(../img/my_menu_delete.png) top no-repeat; }
#order #my_menu_list .quantity {text-align: right; margin-right: 0px;}
#order #my_menu_list p.amount_alert { text-align: center; margin-bottom: 15px; }
#order #my_menu_list p.amount_alert span.txtRed       { font-size: 1.5rem; font-weight: bold;}
.btn_ans p.btn_regist { float: left; }
#mfp_my_menu_edit .my_menu_name     { margin-bottom:20px;  padding: 4px; font-size: 1.6rem; width: 100%; height: 38px; -webkit-appearance: none; -moz-appearance: none; appearance: none; white-space: normal; border-radius: 5px; border: 1px solid #ababab; background: #ffffe0; }


/*新規会員登録(本登録),退会申請
----------------------------------------------------------------------------------------------*/
#membership    { margin: 0 15px 15px 15px; }
#membership h2 { margin: 0 -15px; position: relative; border: none; border-top: 3px solid #c03; font-size: 1.8rem; padding: 15px 0; text-align: center; clear: both; overflow: hidden; }
#membership p  { margin-top: 10px; font-size: 1.4rem; }
#membership .regist_area         { margin: 0; font-size: 1.4rem; }
#membership .regist_area dl      { margin-top: 10px; padding-top: 10px; border-top: 1px solid #dadada; }
#membership .regist_area dt      { padding: 5px 0; font-weight: bold; }
#membership .regist_area dt span { font-weight: normal; }
#membership .regist_area dd      { padding: 10px 0; position: relative; }
#membership .regist_area dd input[type=text],
#membership .regist_area dd textarea,
#membership .regist_area dd input[type=tel],
#membership .regist_area dd input[type=number],
#membership .regist_area dd input[type=email],
#membership .regist_area dd input[type=password]   { height: 38px; padding: 5px; border: none; outline: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); font-size: 1.6rem; }
#membership .regist_area dd label textarea,
#membership .regist_area dd label input[type=text] { position: absolute; top: 0; right: 0; margin-left: 5px; width: 86%; }
#membership .regist_area dd textarea   { height: 65px; background: #fff; resize: none; font-family: "Hiragino Kaku Gothic ProN", "メイリオ", sans-serif; }
#membership .regist_area dd.g_dd                   { padding-top: 0; }
#membership .regist_area dd.g_dd label             { margin-left: 14%; display: inline-block; cursor: pointer; }
#membership .regist_area dd.g_dd input[type=radio] { display: none; }
#membership .regist_area dd.g_dd .radio_pt         { margin-right: 0; padding-left: 26px; position: relative; }
#membership .regist_area dd.g_dd .radio_pt:before  { content: ""; display: block; position: absolute; top: -2px; left: 0; width: 20px; height: 20px; background-color: #fff; border: 1px solid #999; border-radius: 50%; }
#membership .regist_area dd.g_dd input[type=radio]:checked + .radio_pt::after { content: ""; display: block; position: absolute; top: 2px; left: 4px; width: 14px; height: 14px; background: #090; border-radius: 50%; }
#membership .regist_area dd.y_dd             { padding-top: 0; }
#membership .regist_area dd.y_dd label       { margin-right: 3px; display: inline-block; }
#membership .regist_area dd.y_dd label:last-child { margin-right: 0; }
#membership .regist_area dd input.s_year       { width: 60px; }
#membership .regist_area dd input.s_month,
#membership .regist_area dd label .s_day        { width: 40px; }
#membership .regist_area dd select           { font-size: 1.6rem; }
#membership .regist_area dd select.s_year    { width: 88px; }
#membership .regist_area dd select.s_month,
#membership .regist_area dd select.s_day     { width: 66px; }
#membership .regist_area dd.f_dd             { padding-top: 0; }
#membership .regist_area dd.f_dd input       { width: 100%; background: #fff; }
#membership .regist_area dd.f_dd2            { }
#membership .regist_area dd.f_dd2 textarea   { max-width: 550px; width: 100%; height: 100px; background: #fff; resize: none; font-size: 1.8rem; }
#membership .regist_area dd.f_dd3            { height: 65px; }
#membership .regist_area dd.z_dd             { padding-top: 0; }
#membership .regist_area dd.z_dd input       { margin-left: 5px; }
#membership .regist_area dl.add_dl dt        { padding-bottom: 0; }
#membership .regist_area dl.add_dl dd        { padding-top: 0; }
#membership .regist_area dl.add_dl dd select { margin-top: 5px; width: 50%; }
#membership .regist_area dl.add_dl dd textarea,
#membership .regist_area dl.add_dl dd input  { width: 100%; }
#membership .regist_area dt p a              { padding-left: .5em; font-weight: normal; font-size: 1.4rem; }

#membership .regist_area dl.ag_dl dt,
#membership .regist_area dl.ag_dl dt p { margin-top: 0; }
#membership .regist_area dl.ag_dl dt p { margin-bottom: 10px; }
#membership .regist_area dl.ag_dl > p { margin-top: 0; padding: 10px; font-size: 1.6rem; background: #fbf5c9; border-radius: 5px; }
#membership .regist_area dd textarea[disabled="disabled"] {box-shadow: none ; background-color: #eee; }
#membership .regist_area dd input[disabled="disabled"] {box-shadow: none ; background-color: #eee; }
#membership .regist_area dd textarea[readonly="readonly"] {box-shadow: none ; background-color: #eee; }
#membership .regist_area dd input[readonly="readonly"] {box-shadow: none ; background-color: #eee; }
#membership .regist_area dd.g_dd input[readonly="readonly"]:checked + .radio_pt::after { background: #000;  }
/* 確認番号入力欄 */
#membership .verification_code_data { display:flex;align-items:center;margin:1rem 0 }
#membership .btn_send_verification_mail {margin-left:1rem;padding: 10px 0px;width: 100%;max-width: 240px; font-weight: bold; color: #333; font-size: 1.4rem;text-align: center;background: #f4c433;border: 3px solid #fff;border-radius: 5px;text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff;box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2);white-space: normal;}
#membership .verification_code_input { padding:4px;font-size:1.6rem;width:100%;height:38px;-webkit-appearance:none;-moz-appearance:none;appearance:none;white-space:normal;border-radius:5px;border:1px solid #ababab;background:#ffffe0; }

#membership .btn_regist         { margin: 20px auto; max-width: 240px; }
#membership .btn_regist input   { padding: 20px 0; }

#membership .btn_regist#registBtn_na p      { margin: 20px auto; text-align: center; background: #f4c433; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); opacity: .25; }
#membership .btn_regist#registBtn_na p span { padding: 20px 0; display: block; font-weight: bold; font-size: 1.4rem; color: #333; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }

#membership .btn_quit { text-align: center; }
#membership .btn_quit input { margin: 20px auto; }
#membership .btn_quit p       { margin: 20px auto; max-width: 240px; text-align: center; background: #90cce9; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#membership .btn_quit p a     { padding: 10px 0; display: block; font-weight: bold; font-size: 1.4rem; color: #333; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#membership .btn_quit p:hover { opacity: .75; }

#membership div.privacy {width:100%;height:120px;padding:5px;border:1px solid #dadada;background-color:#F9F9F9;border-radius: 5px;margin-bottom:15px;overflow:auto;-webkit-overflow-scrolling:touch;}
#membership .info_message  { margin-top: 10px; font-size: 1.4rem; color: #c03; font-weight: bold; }

/*ログイン
 ----------------------------------------------------------------------------------------------*/
#login    { margin: 0 15px 15px 15px; }
#login h2 { margin: 0 -15px; position: relative; border: none; border-top: 3px solid #c03; font-size: 1.8rem; padding: 15px 0; text-align: center; clear: both; overflow: hidden; }
#login #login_contents   { margin: 20px auto; width: 80%; }
#login #login_contents p { padding: 10px 0; font-size: 1.4rem; }
#login_contents .login_part             { margin: 20px 0; font-size: 1.2rem; }
#login_contents .login_part input       { width: 100%; border: none; outline: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#login_contents .login_part input[type=text],
#login_contents .login_part input[type=password] {height: 38px; }

#login #login_contents .login_part .check      { padding: 10px 0; }
#login #login_contents .login_part .check span { font-size: 1.2rem; }
#login #login_contents .btn_login p            { margin: 0 auto; position: relative; max-width: 240px; border: 3px solid #fff; background: #f4c433; text-align: center; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#login #login_contents .btn_login p a          { padding: 10px 0; line-height: 1; font-size: 1.4rem; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#login #login_contents .btn_login p a:before   { position: absolute; display: block; content: ""; top: 50%; left: 46px; width: 21px; height: 24px; background: url(../img/icon_lock_wh.png) center center no-repeat; background-size: cover; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); }
#login #login_contents .btn_login p:hover      { opacity: .75; }

/*新規会員登録(仮),パスワード再発行,メールアドレス変更
 ----------------------------------------------------------------------------------------------*/
#repass    { margin: 0 15px 15px 15px; }
#repass h2 { margin: 0 -15px; position: relative; border: none; border-top: 3px solid #c03; font-size: 1.8rem; padding: 15px 0; text-align: center; clear: both; overflow: hidden; }
#repass #login_contents                    { margin: 20px auto; width: 90%; }
#repass #login_contents p                  { padding: 10px 0; font-size: 1.4rem; }
#repass #login_contents p.message          { font-size: 1.6rem; }
#repass #login_contents p.user_email       { padding: 0 0 10px 0; font-weight: bold; font-size: 1.6rem; word-break: break-all; }

#repass #login_contents .login_part        { margin: 20px 0; }
#repass #login_contents .login_part input[type=text],
#repass #login_contents .login_part input[type=tel],
#repass #login_contents .login_part input[type=password]  { width: 100%; height: 38px; padding: 5px; border: none; outline: 0; -webkit-appearance: none; -moz-appearance: none; appearance: none; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }

div.btn_login        { text-align: center; }

/*
ご注文方法
 ----------------------------------------------------------------------------------------------*/

#order-chart{
  padding: 15px;
  clear: both;
  font-size: 1.4rem;
  line-height: 1.5;
}
#order-chartd li{
  width: 100%;
  float: left;
  display: table;
}
#order-chart li:not(:last-child){
  padding: 0 0 25px 0;
  margin: 0 0 10px 0;
  background: url(../img/icon_arrow-red-down.png) bottom center no-repeat;
  background-size: 30px 15px;
}

.order-text{
  padding: 0 0 15px;
  font-size: 1.4rem;
}
.wrap_step{
  height: 110px;
  padding: 0 0 0 120px;
  display: table-cell;
  vertical-align: middle;
}
.wrap_step strong{
  font-weight: bold;
  font-size: 1.6rem;
}
.wrap_step strong span{
  color: #c03;
  padding: 0 10px 0 0;
}

.step1{
  background: url(../img/icon_order-chart_1.png) left center no-repeat;
  background-size:  110px;
}
.step2{
  background: url(../img/icon_order-chart_2.png) left center no-repeat;
  background-size:  110px;
}
.step3{
  background: url(../img/icon_order-chart_3.png) left center no-repeat;
  background-size:  110px;
}
.step4{
  background: url(../img/icon_order-chart_4.png) left center no-repeat;
  background-size:  110px;
}
.step5{
  background: url(../img/icon_order-chart_5.png) left center no-repeat;
  background-size:  110px;
}
/*会員メニュー
 ----------------------------------------------------------------------------------------------*/
#login #member_contents .member_btn                    { margin-top: 20px; }
#login #member_contents .member_btn li                 { float: left; width: 50%; }
#login #member_contents .member_btn li:nth-child(2n-1) { padding: 0 10px 20px 0; }
#login #member_contents .member_btn li:nth-child(2n)   { padding: 0 0 20px 10px; }
#login #member_contents .member_btn li p               { margin: 0; font-size: 1.4rem; text-align: center; background: #f4c433; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#login #member_contents .member_btn li p a             { padding: 40px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#login #member_contents .member_btn li p:hover         { opacity: .75; }
#login .quit       { margin: 0 auto 20px auto; text-align: center; max-width: 240px; font-size: 1.4rem; clear: both; background: #90cce9; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#login .quit a     { padding: 10px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#login .quit:hover { opacity: .75; }

/*メッセージ
 ----------------------------------------------------------------------------------------------*/
#message                    { margin: 40px 15px; }
#message .title_essage      { margin: 0 auto; font-size: 1.6rem; }
#message .title_essage p    { margin: 20px auto; text-align: center; }
#message .reguler_message   { margin: 0 auto; font-size: 1.4rem; }
#message .reguler_message p { margin: 10px auto; text-align: center; }

#message .title_essage p.payment     { text-align: left; }
#message .reguler_message p.payment  { text-align: left; }

#message .btn_back          { border: 3px solid #fff; background: #90cce9; text-align: center; max-width: 240px; font-size: 1.4rem; margin: 20px auto; clear: both; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); }
#message .btn_back a        { padding: 12px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#message .btn_back:hover    { opacity: .75; }

/*popup メッセージ
 ----------------------------------------------------------------------------------------------*/
.mfp-bg,.mfp-wrap      { min-width: 100%; }
.mfp-close             { display: none; }
.mfp-content           { max-width: 400px; }
.popup_window          { padding: 20px; background: #fff; }
.popup_window .message { padding: 20px; text-align: center; font-size: 1.6rem; }

.btn_ans p         { margin: 0 auto; text-align: center; background: #90cce9; border: 3px solid #fff; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); width: 120px; }
.btn_ans p a       { padding: 10px; display: block; font-weight: bold; font-size: 1.4rem; color: #333; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
.btn_ans p:hover   { opacity: .75; }
.btn_ans p         { float: right; }
.btn_ans p.btn_del { float: left; }

/*緊急停止
  ----------------------------------------------------------------------------------------------*/
.main_left .body-pad          { height: 100%; margin: 0 50px; }
#body-pad #under-maintenance  { display: block; margin: 0 0 30px 20px; text-align: center; padding:15px; width: 90%; background: #fff; border-radius: 10px; border: 4px solid #ccc; }
#body-pad #under-maintenance p{ display: inline-block; font-size: 1.4rem; text-align: left; }

#body-pad #under-maintenance strong,
#body-pad #under-maintenance img,
#body-pad #under-maintenance p     { margin: 0 auto; clear: both; }
#body-pad #under-maintenance strong{ color: #d45e5e; display: block; margin-bottom:  10px; line-height: 1.25; font-size: 2.8rem; font-weight: bold; }
#body-pad #under-maintenance img   { margin-bottom: 10px; width: 90px; }
#body-pad #under-maintenance p     { display: inline-block; font-size: 1.4rem; text-align: left; }

/*特定商取引
  ----------------------------------------------------------------------------------------------*/
#order #commercial_info          { margin: 15px; font-size: 1.4rem; }
#order #commercial_info table    { width: 100%; border-collapse: collapse; border: 1px solid #ccc; }
#order #commercial_info table tr { border-bottom: 1px solid #ccc; }
#order #commercial_info table th { padding: 10px; text-align: left; background: #ececec; border-right: 1px solid #ccc; }
#order #commercial_info table td { padding: 10px; text-align: left; background: #fff; word-break: break-all;}
#order #commercial_info table ul           { margin-left: 15px;  }
#order #commercial_info table ul li        { list-style-type: square; }

/*サイトポリシー
  ----------------------------------------------------------------------------------------------*/
#order #siteprivacy           { margin: 15px; font-size: 1.4rem; }
#order #siteprivacy ol        { margin-left: 15px; }
#order #siteprivacy ol li     { margin-left: 10px; list-style-type: decimal; }
#order #siteprivacy div       { padding: 5px 0; }
#order #siteprivacy p         { padding: 5px 0; }
#order #siteprivacy div.header{ padding: 0; margin-bottom: 10px; }
#order #siteprivacy .header p { padding: 0 0 10px 0; }
#order #siteprivacy .section  { padding-top: 10px ; font-weight: bold; }
#order #siteprivacy .note     {  }
#order #siteprivacy .comment  { font-size: 1.0rem; }
#order #siteprivacy a.textLink{ font-size: 1.4rem; padding: 16px 16px 16px 10px; background: url(../img/icon_arrow.png) right 0 center no-repeat; background-size: 14px; }

/*よくある質問
  ----------------------------------------------------------------------------------------------*/
#order #faq                    { margin: 15px; font-size: 1.4rem; }
#order #faq div                { padding: 5px 0; }
#order #faq p                  { padding: 5px 0; }
#order #faq .section           { margin-top: 5px ; padding-left: 5px ; padding-top: 10px ; font-weight: bold; border-left: 1px solid #666; border-bottom: 1px solid #666;display: block;  }
#order #faq .question          { padding-top: 10px ; padding-left: 5px ; font-weight: bold; font-size: 1.4rem; border-bottom: 1px solid #ececec;display: block; color: #c03; }
#order #faq .answer            { margin-left: 5px; }
#order #faq .question:before   { content: "Q."; }
#order #faq .annotation        { font-weight: bold;  }

/*非表示改行
----------------------------------------------------------------------------------------------*/
.br-pc     { display:none; }

/* 受取日時変更モーダル
----------------------------------------------------------------------------------------------*/
/* モーダル背景 */
.datetime_modal_bg { width: 100%;  height: 100%; background-color: rgba(0,0,0,0.6); position: fixed; top: 0; left: 0; z-index: 10; display: none; }
/* モーダル本体 */
.datetime_modal_main { width: 100%; height: 79%; padding: 16px; bottom: -79%; left: 0; background: #fff; border-radius:4px 4px 0 0 ; position: fixed; z-index: 110; opacity: 0; }
#order #shop_info .datetime_modal_main p { text-align: center; }
#order #shop_info .datetime_modal_main .datetime_block { margin-top: 20px; }
#order #shop_info .datetime_modal_main .datetime_block p { font-weight: bold;}
#order #shop_info .datetime_modal_main .datetime_block p:first-child { margin-bottom: 5px; }
#order #shop_info .datetime_modal_main .datetime_block p:nth-child(2) { margin-top: 5px; }
#order #shop_info .datetime_modal_main .description_block { margin: 30px 0; }
#order #shop_info .datetime_modal_main .description_block p:first-child { margin-bottom: 5px; }
#order #shop_info .datetime_modal_main .description_block p:nth-child(2) { margin-top: 5px; }
/* 閉じる（✕）ボタン */
.datetime_modal_icon_close { width: 30px; height: 30px; position: absolute; top: 0px; right: 5px; z-index: 101; cursor:pointer; -webkit-tap-highlight-color:rgba(100,0,0,0); }
.datetime_modal_icon_close:before{ content:""; width: 20px; height: 20px; border-right:3px solid #333; transform: rotate(-45deg); position: absolute; top:12px; left:-3px; }
.datetime_modal_icon_close:after{ content:""; width: 20px; height: 20px; border-right:3px solid #333; transform: rotate(45deg); position: absolute; top:-2px; left:-3px; }
/*下から上*/
@keyframes SlideUp { 0% { opacity: 0; transform: translateY(-1%); } 100% { opacity: 1; transform: translateY(-100%); } }
/*上から下*/
@keyframes SlideDown { 0% { opacity: 1;  transform: translateY(-100%); } 100% { opacity: 0; transform: translateY(-1%); } }
.datetime_modal_main._slideUp { animation: SlideUp .5s ease-in-out forwards; }
.datetime_modal_main._slideDown { animation: SlideDown .5s ease-in-out forwards; }
/* 確定ボタン */
#order #shop_info .datetime_modal_main .btn_finalize { background: #f4c433; margin: 35px auto 20px auto; }
#order #shop_info .datetime_modal_main .btn_finalize p { margin: 0; padding: 12px 0; display: block; color: #333; font-weight: bold; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; }
#order #shop_info .datetime_modal_main .btn_disable{ display: block; opacity: .25; }
#order #shop_info .datetime_modal_main .btn_hide{ display: none; }
/* 受取日時変更欄 */
#order #shop_info .datetime_modal_main .modal_datetime { margin: 0 25px;}
/* エラーメッセージ */
#order #shop_info .datetime_modal_main .modal_alert   { padding: 0 10px; }
#order #shop_info .datetime_modal_main .modal_alert p { margin-top: 20px; font-size: 1.6rem; font-weight: bold; }

@media (min-width: 960px) {
 .wrap_body                { margin-bottom: 0; }

 /* header
 ----------------------------------------------------------------------------------------------*/
 header .header_pad        { width: 960px; }

 /* #langheader
 ----------------------------------------------------------------------------------------------*/
 #langheader                { display: none; }
 #langheader .langheader_pad { width: 960px; }

 /* #subheader
 ----------------------------------------------------------------------------------------------*/
 #subheader                { display: none; }
 #subheader .subheader_pad { width: 960px; }

 /* .main_wrap
 ----------------------------------------------------------------------------------------------*/
 .main_wrap    { width: 960px; padding: 20px 0 0; }
 .main_left    { margin: 0; padding: 0 20px; width: 680px; float: left; }
 #frequentshop { margin: 0 0 10px; }
 #search       { margin: 0 0 20px; }
 .banner_l_col { display: none; }

/* メイン先頭のメッセージ 2017.08.26追加 */
.main_left .top_alert   { padding: 0; }

 /* .main_right
 ----------------------------------------------------------------------------------------------*/
 .main_right                 { padding-right: 20px; width: 280px; float: right; display: block; }
 .main_right .user_info      { margin: 0 0 10px; padding: 10px; background: #ccc; }
 .main_right .personal_info  { margin: 0; }
 .main_right ul li           { margin: 0 0 1px; font-size: 1.2rem; background: #fff; display: block; }
 .main_right ul li a         { padding: 10px; width: 100%; color: #333; display: block; }
 .main_right ul li:hover     { opacity: .75; }
 .main_right ul li .item_num { display: block; float: right; }
 .main_right .btn_logout     { padding: 10px; background: #fff; }
 .main_right .btn_cart       { padding: 10px; background: #fff; }

 .main_right input[type=button].btn_login,
 .main_right input[type=button].btn_logout { padding: 10px 0; }
 .main_right .btn_cart p a              { padding: 10px 0; width: 100%; font-weight: bold; font-size: 1.4rem; text-align: center; color: #333; background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); display: block; }
 .main_right .btn_cart p a:hover        { opacity: .75; }

 .main_right .btn_cart p.btn_cart_na    { padding: 10px 0; width: 100%; font-weight: bold; font-size: 1.4rem; text-align: center; color: #333; background: #f4c433 url(../img/icon_cart_wh.png) 10px center no-repeat; border: 3px solid #fff; border-radius: 5px; text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff; box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2); display: block; opacity: .25; }

 .main_right .btn_logout .newmember     { margin-top: 10px; text-align: center; }
 .main_right .btn_logout .newmember a   { margin: 0; font-size: 1.2rem; }

 .main_right .cart          { margin-top: 10px; width: 240px; overflow: hidden; }
 .main_right .cart h4       { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }
 .main_right .cart > table    { width: 240px; font-size: 1.2rem; cell-spacing: 0; border-collapse: collapse; table-layout: fixed; }
 .main_right .cart > table tr { background: #fff; border-bottom: 1px solid #ececec; }
 .main_right .cart > table td { width: 101px; padding: 10px 6px; }
 .main_right .cart > table td.item_num { width: 38px; }
 .main_right .cart > table td.item_name { width: 202px; }
 .main_right .cart > table td div { width: 182px; }
 .main_right .cart > table td.select_name { padding-left: 18px; }
 .main_right .cart > table td.select_name div { width: 170px; }
 .main_right .cart > table td .excl { overflow: hidden; white-space: nowrap; text-overflow: ellipsis; }

 .main_right .amount dl    { margin: 0 0 1px; padding: 10px 6px; font-size: 1.2rem; background: #fff; clear: both; overflow: hidden; }
 .main_right .amount dl dt,
 .main_right .amount dl dd             { margin: 0; padding: 0 2px; float: left; display: inline-block; }

 .main_right .amount table    { width: 240px; font-size: 1.2rem; cell-spacing: 0; border-collapse: collapse; border-bottom: 1px solid #ececec; }
 .main_right .amount table tr { background: #fff; border: none; }
 .main_right .amount table th { padding: 4px 6px 2px 6px; font-weight: normal; text-align: left; }
 .main_right .amount table td { padding: 4px 6px 2px 6px; font-weight: normal; text-align: right; }

  .main_right select { width: 100%; }

 .banner_r_col         { margin: 0 0 20px; }
 .banner_r_col > div {margin-bottom:10px;}
 .banner_r_col div.slide{margin-bottom:0px;}
 .banner_r_col a:hover { opacity: .75; }
 .banner_r_col img     { width: 100%; }

 /* 店舗検索結果
 ----------------------------------------------------------------------------------------------*/
 .cat_list                          { padding: 0; }
 .cat_list .shop_list               { margin: 0 0 20px 0; width: 310px; float: left; }
 .cat_list .shop_list:nth-child(2n) { float: right; }
 .shop_list .shop_info              { padding: 0 0 2px 0; }

 /* 店舗トップ（カテゴリー）
 ----------------------------------------------------------------------------------------------*/
 #order h2                    { margin: 0 0 20px 0; padding-left: 10px; text-align: left; }
 #order h2 span               { display: none; }
 #order #shop_info p          { padding: 0; }
 #order #shop_info .data_time { margin: 0 0 20px; }
 #order #cat_list             { margin: 0; }

 #order #cat_list .cat_list_pad { margin: 0 0 0 -10px; clear: both; }
 #order #cat_list .cat_list_pad ul { display:flex; flex-direction: row; flex-wrap:wrap; }
 #order #cat_list .cat_list_pad ul li         { width: 33.33%; padding: 0 0 10px 10px; border: none; }
 #order #cat_list .cat_list_pad ul li a       { display: inline-block; vertical-align: middle; width: 100%; color: #333; }
 #order #cat_list .cat_list_pad ul li>a       { height: 100%; }  /* 簡易投入以外 */
 #order #cat_list .cat_list_pad li div.sale    { width: 100%; height: 100%; display: flex; flex-direction: column; padding: 10px; margin: 0 0 10px; text-align: center; background: #fff; box-shadow: 0px 0px 2px 2px rgba(204,204,204,1); }
 #order #cat_list .cat_list_pad li div.notsale { background: #ececec; box-shadow: 0px 0px 2px 2px rgba(204,204,204,1); }
 #order #cat_list .cat_list_pad li .cat_list_pic      { margin: 0 0 10px; height: 114px; width: 100%; display: block; }
 #order #cat_list .cat_list_pad li .cat_list_pic img  { max-height: 100%; max-width: 100%; }
 #order #cat_list .cat_list_pad li div.grayscale      { filter: grayscale(100%); background: #b4b3b3; color: #e0dfdf}
 #order #cat_list .cat_list_pad li .cat_list_txt      { height:100%; padding: 0 16px 0 0; position: static; display: block; background: url(../img/icon_arrow.png) center right 2px no-repeat; background-size: 14px; }
 #order #cat_list .cat_list_pad li .cat_list_menu_txt { padding: 0; position: static; display: block; width: 100%; }
 #order #cat_list .cat_list_pad li .cat_list_pic span  { right: 10px; left: 10px; font-size: 1.8rem;  }

 #order #cat_list .item:after       { clear: both; display: block; content:''; }
 #order #cat_list .item .item_pic   { padding-right: 10px; width: 40%; float: left; }
 #order #cat_list .item .item_price { width: 60%; float: left; text-align: left; }

 #order #cat_list .cat_list_pad li .cat_list_numBox           { width: 100%; margin-top: auto; }
 #order #cat_list .cat_list_pad li .cat_list_numBox .numBox   { display: flex; display: -webkit-box; display: -moz-box; display: -ms-flexbox; display: -webkit-flex; justify-content: space-between; padding: 5px; position: static; width: 100%; }
 #order #cat_list .cat_list_pad li .cat_list_numBox .numBox span,
 #order #cat_list .cat_list_pad li .cat_list_numBox .numBox a { width: 30%; text-align: center; display: block; align-items: center; border: 2px solid #e5e5e5; padding: 5px; }
 #order .btn_my_menu { margin: 0 15px 15px 2px; }

 /* 商品詳細
 ----------------------------------------------------------------------------------------------*/
 #cat_list .cart_in                                            { margin-top: 20px; padding: 10px; background: #fbf5c9; position: relative; }
 #cat_list .cart_in .cat_detail .item_subtotal                 { float: left; position: absolute; top: 0; width: 390px; }
 #cat_list .cart_in .cat_detail .item_subtotal dt              { margin: 0 5px 0 0; width: 40%; font-size: 1.4rem; line-height: 1; vertical-align: middle; }
 #cat_list .cart_in .cat_detail .item_subtotal select          { font-size: 1.8rem; width: 80px; }
 #cat_list .cart_in .cat_detail .item_subtotal dd              { position: absolute; float: right; right: 0; top: 30%; -webkit-transform: translate(0, -50%); transform: translate(0, -50%); }
 #cat_list .cart_in .cat_detail .item_subtotal dd span.txtRed  { font-size: 1.8rem; }
 #cat_list .cart_in div.add_cart                               { float: right; width: 220px; }
 #cat_list .cart_in div.add_cart p.btn_cartin,
 #cat_list .cart_in div.add_cart input[type=button].btn_cartin { width: 100%; }
 #cat_list .btn_cart                                           { right: 0px; width: 220px; }

 /* カート
 ----------------------------------------------------------------------------------------------*/
 #cat_list .order_menu_item ul                       { width: 55%; }
 #cat_list .order_menu_item .order_menu_pic          { width: 45%; }
 #cat_list .order_menu_item .order_menu_option th    { font-weight: normal; text-align: left; max-width: 100%; }
 #cat_list .order_menu_item .order_menu_option th p  { padding-left: 0; text-indent: 0; }

 #cat_list .cart_detail                              { padding-bottom: 10px; }
 #cat_list .cart_detail .cart_option:nth-child(2n-1) { width: 310px; float: left; }
 #cat_list .cart_detail .cart_option:nth-child(2n)   { width: 310px; float: right; }

 #cat_list .cat_detail_pad                 { padding: 10px; background: #d3eaf6; position: relative; }
 #cat_list .cat_detail_pad ul              { width: 100%; }
 #cat_list .cat_detail_pad li              { padding: 0; display: table-cell; text-align: left; font-size: 1.8rem; }
 #cat_list .cat_detail_pad .aggreyment li { padding: 0; display: table-cell; text-align: center; font-size: 1.8rem; }
 #cat_list .cat_detail_pad li:nth-child(1) { padding-top: 10px; width: 20%; }
 #cat_list .cat_detail_pad li:nth-child(2) { width: 45%; }

 #cat_list .cat_detail_pad ul.order_detail    { width: 100%; }
 #cat_list .cat_detail_pad ul.order_detail li:nth-child(1) { padding-bottom: 10px; width: 50%; text-align: center; }
 #cat_list .cat_detail_pad ul.order_detail li:nth-child(2) { width: 50%; text-align: center; }

 #cat_list div.privacy {height:200px;}


 #cat_list .order_option .order_op_left      { width: 310px; float: left; }
 #cat_list .order_option .order_op_right     { width: 310px; float: right; }
 #cat_list .order_option .recipt             { margin-bottom: 0; }
 #cat_list .menu_list .order_menu:last-child { margin-bottom: 20px; }

 #order #user_info      { margin: 20px 0; }
 #order .shop_message   { margin: 20px 0; }
 #order .shop_message p { padding: 10px; font-size: 1.6rem; background: #fbf5c9; border-radius: 5px; }

 #order .btn_back       { max-width: 220px; }

 #order #cat_list ul#btn_order li               { margin-top: 0; float: left ; width: 50%; }
 #order #cat_list ul#btn_order li:nth-child(1)  { padding-right: 10px; }
 #order #cat_list ul#btn_order li:nth-child(2)  { padding-left: 10px; }
 #order #cat_list ul#btn_order .btn_cart        { margin: 0; width: 100%; }
 #order #cat_list .btn_cart#btn_order_guest     { width: 100%; }
 #order #cat_list .btn_cart#btn_order_guest p   { width: 220px; margin: 0 auto; }

 /*注文履歴一覧
 ----------------------------------------------------------------------------------------------*/
 #history_list                 { margin: 0; }
 #history_list h2              { margin: 0 0 20px 0; padding-left: 10px; text-align: left; }
 #history_list h2 span         { display: none; }
 #history_list .order_detail a { margin: 20px auto; }

/*注文履歴詳細
 ----------------------------------------------------------------------------------------------*/
 p span.history_num { /*padding-right: 0; float: right;*/ }

/* マイメニュー一覧
----------------------------------------------------------------------------------------------*/
 #order #my_menu_list #cat_list { margin: 0 15px; }

 /*新規会員登録(本登録)
 ----------------------------------------------------------------------------------------------*/
 #membership               { margin: 0; }
 #membership h2            { margin: 0 0 20px 0; padding-left: 10px; text-align: left; }
 #membership .btn_regist   { text-align: center; }
 #membership .btn_regist p { max-width: 240px; }
 #membership .btn_regist input { margin: 20px 0; padding: 20px 0; }
 #membership .regist_area dl.a_dl                { text-align: center; }
 #membership .regist_area dd.y_dd                { padding-left: 14%; }
 #membership .regist_area dd.y_dd label          { margin-right: 10px; }
 #membership .regist_area dd select.s_year       { width: 110px; }
 #membership .regist_area dd select.s_month,
 #membership .regist_area dd select.s_day        { width: 90px; }
 #membership .regist_area dl.ag_dl               { text-align: center; }
 #membership .regist_area dl.ag_dl dd.g_dd       { padding-top: 0; }
 #membership .regist_area dl.ag_dl dd.g_dd label { margin-left: 0; display: inline-block; }
 #membership .regist_area dl.ag_dl dd.g_dd label:first-child { margin-right: 20px; }
 #membership .regist_area dd.f_dd                { text-align: right; }
 #membership .regist_area dd.f_dd2               { text-align: right; }
 #membership .regist_area dd.f_dd input          { width: 86%; }
 #membership .regist_area dd.f_dd2 textarea      { width: 86%; }
 #membership .regist_area dd.z_dd                { margin-left: 14%; }
 #membership .regist_area dl.add_dl dd select    { margin-left: 14%; width: 200px; }
 #membership .regist_area dl.add_dl dd textarea,
 #membership .regist_area dl.add_dl dd input     { margin-left: 14%; width: 86%; }

 #membership .btn_regist         { margin: 0 auto; max-width: 240px; }
 #membership .btn_regist input   { padding: 20px 0; }

 #membership div.privacy {height:200px;}
 #membership .info_message  { margin: 0 0 20px 0; }

 /*ログイン
 ----------------------------------------------------------------------------------------------*/
 #login                   { margin: 0; }
 #login h2                { margin: 0 0 20px 0; padding-left: 10px; text-align: left; }
 #login #login_contents   { margin: 20px auto; width: 60%; }
 #login #login_contents p { font-size: 1.4rem; }
 #login #login_contents .login_part { margin-bottom: 10px; }
 #login #login_contents .login_part input[type=text],
 #login #login_contents .login_part input[type=password] { width: 100%; }

 /*新規会員登録(仮),パスワード再発行,メールアドレス変更
 ----------------------------------------------------------------------------------------------*/
 #repass    { margin: 0; }
 #repass h2 { margin: 0 0 20px 0; padding-left: 10px; text-align: left; }

#repass #login_contents                    { width: 80%; }

/*
 ご注文方法
  ----------------------------------------------------------------------------------------------*/

 #order-chart{
   padding: 10px 30px 30px;
 }

 .order-text{
   padding: 0 0 30px;
 }

 #order-chart li:not(:last-child){
   background: url(../img/icon_arrow-red-down.png) bottom left 40px no-repeat;
   background-size: 30px 15px;
 }

/*緊急停止
  ----------------------------------------------------------------------------------------------*/
#body-pad #under-maintenance{ display: block; margin: 0 0 50px 0; text-align: center; padding:15px; width: 100%; background: #fff; border-radius: 10px; border: 4px solid #ccc; }

 /* footer
 ----------------------------------------------------------------------------------------------*/
 footer               { background: #666; }
 footer .footer_pad   { margin: 0 auto; width: 960px; }
 footer ul            { font-size: 0; padding: 20px 0; }
 footer ul li         { border: none; display: inline-block; width: auto; }
 footer ul li a       { margin: 0 10px 0 0; padding: 0 19px 0 0; font-size: 1rem; color: #fff; background: url(../img/icon_arrow.png) right 0px center no-repeat; background-size: 14px; }
 footer ul li a:hover { opacity: .75; }
 .copyright           { padding-top: 0; width: 100%; margin: 0 auto; color: #fff; background: #666; }
 .footer_amount       { display: none; }

 /* PC 右カラム Scroll & 固定
 ----------------------------------------------------------------------------------------------*/
 /* 親要素 */
 .main_wrap { position: relative; }
 /*固定したい子要素*/
 .scrollfix { }
 /*子要素を固定する位置（TOPからの距離）*/
 .fixed { margin: 0 0 0 680px; position: fixed; top: 20px; }

 /*特定商取引
 ----------------------------------------------------------------------------------------------*/
 #order #commercial_info      { margin: 20px 0; }
 #order #commercial_info table ul  { margin-left: 20px;  }

 /*サイトポリシー
 ----------------------------------------------------------------------------------------------*/
 #order #siteprivacy           { margin: 20px 0; }
 #order #siteprivacy ol        { margin-left: 20px; }
 #order #siteprivacy ol li     { margin-left: 15px; }

 /*よくある質問
  ----------------------------------------------------------------------------------------------*/
#order #faq           { margin: 20px 0; }

 /*非表示改行
 ----------------------------------------------------------------------------------------------*/
 .br-sp     { display:none; }
 .br-pc     { display:inline; }
 /*メッセージ
 ----------------------------------------------------------------------------------------------*/
 #message .title_essage p.payment     { text-align: center; }
 #message .reguler_message p.payment  { text-align: center; }

 /* 受取日時変更モーダル
 ----------------------------------------------------------------------------------------------*/
 /* 受取日時変更欄 */
 #order #shop_info .datetime_modal_main .modal_datetime { margin: 0 300px }
}

#order_form_select .order_option                 { margin-bottom: 10px; padding: 10px; background: #dcdcdc; }
#order_form_select .order_option li              { margin-top: 10px; padding: ; font-size: 1.2rem; border: none; }
#order_form_select .order_option li:nth-child(1) { margin-top: 0px; }
#order_form_select .order_option li label             { margin: 0; padding: .5em 1em; cursor: pointer; background: #fff; border-radius: 5px; }
#order_form_select .order_option li label span        { display: inline-block; margin-top: 6px; margin-bottom: 8px; width: 100%; }
#order_form_select .order_option li label span#credit { padding-bottom: 45px; background: url(../img/credit_img.png) left 26px bottom no-repeat; }
#order_form_select .order_option li input[type=radio] { display: none; }
#order_form_select .order_option li .radio_pt         { margin-right: 0; padding-left: 26px; position: relative; }
#order_form_select .order_option li .radio_pt:before  { content: ""; display: block; position: absolute; top: -2px; left: 0; width: 20px; height: 20px; border: 1px solid #999; border-radius: 50%; }
#order_form_select .order_option li input[type=radio]:checked + .radio_pt::after { content: ""; display: block; position: absolute; top: 2px; left: 4px; width: 14px; height: 14px; background: #090; border-radius: 50%; }

/* 受取方法選択
  ----------------------------------------------------------------------------------------------*/
/* 受取方法選択アコーディオン全体 */
.accordion			{ height: auto; }
/* 分類 */
.ac_label p			{ margin: 1px 0 1px 0; }
.ac_label img		{ display: inline; width: 35px; vertical-align: middle; margin-right: 10px; }
.ac_label			{ font-weight: bold; padding: 5px 0 5px 10px; cursor: pointer; font-size: 2rem; height: 60px; box-shadow: 0px 0px 4px 2px rgb(0 0 0 / 20%); margin: 12px 8px 8px 8px; display: flex; align-items: center; }
/* 分類選択時 */
.ac_label_select	{ box-shadow: 0px 0px 4px 3px rgb(255 185 29 / 51%); }
/* 項目全体 */
.ac_group			{ display: flex; padding: 5px; margin: 0 8px 18px 8px; }
/* 項目 */
.ac_item			{ width:50%; margin: 0 10px !important; color: #333; background: #f4c433; font-weight: bold; line-height: 1; font-size: 1.7rem; text-shadow: -3px 0 5px #fff, 0px -3px 5px #fff, 0px 3px 5px #fff, 3px 0 5px #fff; border: 3px solid #fff !important; border-radius: 5px; box-shadow: 0px 0px 2px 2px rgb(0 0 0 / 20%); display: flex; align-items: center; text-align: center; border: 0; user-select: none; }
.ac_item a			{ color: #333; width: 100%; padding: 30px 7px; }
.ac_item:hover		{ opacity: .75; cursor: pointer; color: rgba( 51,51,51,.75); }
.ac_item:focus		{ outline: 0; background: #d0a62a; box-shadow: 0px 0px 0px 2px rgb(169 169 169 / 39%) }

/* 注文内容確認
  ----------------------------------------------------------------------------------------------*/
#order #cat_list .contact .info { margin-top: -10px; margin-bottom: 10px; font-size: 14px; }
#order #cat_list .contact .table_no { font-weight: initial; }
/* 会員登録チェック */
#order #user_info .regist_check            { margin: 10px 0 !important; }
#order #user_info .regist_parts            { margin-right: 20px; padding-left: 30px; position: relative; width: 100%;}
#order #user_info .regist_parts::before    { content: ""; display: block; position: absolute; left: 0; background: #fff; width: 20px; height: 20px; border: 1px solid #999; border-radius: 4px; }
#order #user_info .regist_parts::after { content: ""; display: block; position: absolute; top: -4px; left: 8px; width: 7px; height: 20px; transform: rotate(40deg); border-bottom: 4px solid #009a00; border-right: 4px solid #009a00; }
/* 確認番号入力欄 */
#order .verification_code { font-size: 1.4rem; }
#order .verification_code .title { font-weight: bold; }
#order .verification_code_data { display:flex;align-items:center;margin:5px 0 }
#order .btn_send_verification_mail {margin-left:1rem;padding: 10px 0px;width: 100%;max-width: 240px;font-weight: bold; color: #333; font-size: 1.4rem;text-align: center;background: #f4c433;border: 3px solid #fff;border-radius: 5px;text-shadow: -3px 0 5px #fff,0px -3px 5px #fff,0px 3px 5px #fff,3px 0 5px #fff;box-shadow: 0px 0px 2px 2px rgba(0,0,0,0.2);white-space: normal;}
#order .verification_code_input { padding:4px;font-size:1.6rem;width:100%;height:38px;-webkit-appearance:none;-moz-appearance:none;appearance:none;white-space:normal;border-radius:5px;border:1px solid #ababab;background:#ffffe0; }
#order .verification_code_introduction { margin-top: 0; padding: 10px; font-size: 1.6rem; background: #fbf5c9; border-radius: 5px; }
#order .aggreyment .disabled { display: none !important; }
