/* Minification failed. Returning unminified contents.
(131,1): run-time error CSS1019: Unexpected token, found '@charset'
(131,10): run-time error CSS1019: Unexpected token, found '"UTF-8"'
(131,17): run-time error CSS1019: Unexpected token, found ';'
(269,1): run-time error CSS1019: Unexpected token, found '@charset'
(269,10): run-time error CSS1019: Unexpected token, found '"UTF-8"'
(269,17): run-time error CSS1019: Unexpected token, found ';'
 */
@charset "UTF-8";
* { margin: 0; padding: 0; zoom: 1; }
* html .clearfix, * html .group { height: 1%; }
* + html .clearfix, * + html .group { display: inline-block; }

html { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif; line-height: 1.5; text-align: left; -webkit-text-size-adjust: none; -moz-text-size-adjust: none; text-size-adjust: none; -webkit-tap-highlight-color: transparent; }

body { max-width: 1024px; margin: 0 auto; background: #f0f0ea url(../images/store_background_ptn_2x.png) repeat 0 0; background-size: 256px auto; }

ol li { zoom: normal; }

a, button, #submit, #submit2 { text-decoration: none; cursor: pointer; }

a:link { color: #333; text-decoration: none; }

a.textlink:hover { text-decoration: underline; }

ul, ol { list-style: none; }

img { vertical-align: middle; border: none; }

b, strong, dfn { font-weight: bold; }

em, i, dfn { font-style: italic; }

img.centered, .aligncenter, div.aligncenter { display: block; margin-left: auto; margin-right: auto; }

img.alignright, img.alignleft, .d_inline { display: inline; }

.alignright, .alignleft { float: left; }

a, b, span, strong, div, i, em, s, sub, sup, p, img, h1, h2, h3, h4, h5, h6, ul, ol, li, dl, dt, dd, label, input, textarea, article, aside, footer, header, hgroup, nav, section, figure, figcaption, .d_block { display: block; }

select, button { font-family: "ヒラギノ角ゴ Pro W3", "Hiragino Kaku Gothic Pro", "メイリオ", "Meiryo", "ＭＳ Ｐゴシック", sans-serif; }

h1, h2, h3, h4, h5, h6, pre, code, address, caption, cite, code, em, strong, figcaption { font-size: 1em; font-weight: normal; font-style: normal; }

h1 { font-size: 17px; line-height: 1.76em; }

h2 { font-size: 16px; line-height: 1.6em; }

h3 { font-size: 14px; line-height: 1.578em; }

h4 { font-size: 13px; line-height: 1.62em; }

li { font-size: 13px; line-height: 1.5294em; }

p { font-size: 12px; line-height: 1.466em; }

a { font-size: 13px; line-height: 1.4em; }

strong { font-weight: bold; }

fieldset, iframe { border: none; }

table { border-collapse: collapse; border-spacing: 0; }

input[type='text'], input[type='password'] { text-indent: .5em; }

input, textarea { margin: 0; position: 0; font-size: 0; line-height: 0; border: none; border-radius: 0; background: transparent; }

input:before, input:after { content: ''; margin: 0; position: 0; font-size: 0; line-height: 0; border: none; }

input[type=radio] { display: none; float: none; visibility: hidden; width: 0; height: 0; margin: 0; position: absolute; top: 0; }

input.search_bar { height: 30px; padding: 0 16.2px; -webkit-appearance: none; border-radius: 16.2px; border: 1px solid #bfbfbf; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px white; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.4), 0 1px 1px white; background: white; font-size: 13px; line-height: 27px; position: relative; text-indent: 0; }

#centering_wrapper { margin: 0; width: 100%; height: auto; }

.clearfix:after, .group:after { content: ""; display: block; height: 0; clear: both; visibility: hidden; }

.clearfix { clear: both; }

.red, div.validation-summary-errors, div.validation-summary-errors * { color: #eb212e; }

.right { text-align: right; }

.center { text-align: center; }

#header-bar { width: 100%; height: 44px; position: fixed; top: 0; left: 0; overflow: hidden; z-index: 5; background: #ebebde url(../images/bar_background_ptn_2x.png) repeat 0 0; background-size: auto 44px; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.65); -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.65); }
#header-bar a, #header-bar h1 { display: block; text-align: center; overflow: hidden; }
#header-bar a { height: 32px; width: 58px; margin-top: 6px; display: block; height: 30px; width: 56px; border-radius: 5px; border: 1px solid #8c8c8c; background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0) -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: rgba(0, 0, 0, 0) -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 1px 1px white; -webkit-box-shadow: 0 1px 1px white, inset 0 1px 1px white; text-align: center; font-weight: bold; color: #666666; line-height: 32px; text-shadow: #fff 0 1px 0; }
#header-bar a:active { background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0) -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: rgba(0, 0, 0, 0) -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
#header-bar h1 { width: auto; height: 100%; margin-right: 58px; line-height: 44px; color: #8c8c8c; font-size: 18px; font-weight: bold; line-height: 2.5em; text-align: center; text-shadow: #fff 0 1px 0; }
#header-bar .header-wrapper { width: 96.875%; margin: 0 auto; clear: both; }
#header-bar .header-wrapper .flexible-wrapper { width: 100%; height: 100%; clear: both; float: left; overflow: hidden; }
#header-bar .header-wrapper .flexible-wrapper a.left-button { float: left; }
#header-bar .header-wrapper a.right-button { float: right; margin-left: -58px; }

#header-bar a { width: 56px; }
#header-bar a.left-button:after { text-align: center; content: "戻る"; display: block; width: 100%; }
#header-bar a.right-button:after { text-align: center; content: "ストア"; display: block; width: 100%; }

footer #tab-bar { position: fixed; bottom: 0; left: 0; width: 100%; height: 44px; background: #ebebde url(../images/bar_background_ptn_2x.png) repeat 0 0; background-size: auto 44px; box-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4); -webkit-box-shadow: 0 -1px 1px rgba(0, 0, 0, 0.4); z-index: 5; }
footer #tab-bar ul { height: 100%; }
footer #tab-bar ul li { width: 25%; float: left; height: 100%; margin: 0; padding: 0; position: relative; }
footer #tab-bar ul li a { display: block; height: 100%; line-height: 10px; font-size: 10px; text-align: center; padding: 0; color: #4a4a4a; text-shadow: 0 1px 1px #fff; border-left: 1px solid rgba(0, 0, 0, 0.4); }
footer #tab-bar ul li a:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
footer #tab-bar ul li a:before { content: "　"; display: block; height: 33px; width: 33px; margin: 0 auto; }
footer #tab-bar ul li a.member:before { background: url(../images/tab_member_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.myconts:before { background: url(../images/tab_myconts_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.store:before { background: url(../images/tab_store_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.cart:before { background: url(../images/tab_cart_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.selected, footer #tab-bar ul li a:active { height: 101%; color: #237dd0; background-color: #237dd0; text-shadow: 0 -1px 0 rgba(255, 255, 255, 0.4), 0px 1px 1px rgba(0, 0, 0, 0.7); box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.45); -webkit-box-shadow: inset 0 2px 8px rgba(0, 0, 0, 0.45); }
footer #tab-bar ul li a.selected.member:before, footer #tab-bar ul li a:active.member:before { background: url(../images/tab_member_hl_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.selected.myconts:before, footer #tab-bar ul li a:active.myconts:before { background: url(../images/tab_myconts_hl_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.selected.store:before, footer #tab-bar ul li a:active.store:before { background: url(../images/tab_store_hl_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li a.selected.cart:before, footer #tab-bar ul li a:active.cart:before { background: url(../images/tab_cart_hl_2x.png) no-repeat left center; background-size: 33px auto; }
footer #tab-bar ul li:first-child a { border-left: 0px; }
footer #tab-bar ul li span.badge { display: block; width: auto; min-width: 20px; height: 20px; float: right; position: absolute; top: -12px; right: 6%; color: white; font-family: "Helvetica Neue", Arial, "Lucida Grande", sans-serif; font-size: 15px; font-weight: bold; text-align: center; line-height: 1.3; background: #ff0056; border-radius: 14.4px; border: 2px solid white; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.75); -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.75); }

@media screen and (min-width: 768px) { #header-bar .header-wrapper a.right-button { margin-left: -94px; }
  #header-bar a { width: 92px; }
  #header-bar a.right-button:after { content: "ストアトップ"; }
  h1 { font-size: 24px; }
  p { font-size: 15px; }
  footer #tab-bar { height: 49px; background: #ebebde url(../images/bar_background_ptn_2x.png) repeat 0 0; background-size: auto 49px; }
  footer #tab-bar ul li a { font-size: 13px; line-height: 53px; font-weight: bold; }
  footer #tab-bar ul li a:before { display: inline-block; margin-right: 4px; height: 100%; }
  #header-bar { height: 65px; background: #ebebde url(../images/bar_background_ptn_2x.png) repeat 0 0; background-size: auto 65px; }
  #header-bar .header-wrapper a.right-button { margin-left: -110px; }
  #header-bar a { height: 39px; margin-top: 13px; display: block; height: 37px; width: 106px; border-radius: 5px; border: 1px solid #8c8c8c; background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0) -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: rgba(0, 0, 0, 0) -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: rgba(0, 0, 0, 0) linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 1px 1px white; -webkit-box-shadow: 0 1px 1px white, inset 0 1px 1px white; text-align: center; font-weight: bold; color: #666666; line-height: 39px; text-shadow: #fff 0 1px 0; }
  #header-bar a:active { background: rgba(0, 0, 0, 0); background: rgba(0, 0, 0, 0) -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: rgba(0, 0, 0, 0) -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: rgba(0, 0, 0, 0) linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
  #header-bar h1 { margin-right: 108px; line-height: 65px; font-size: 27px; }
  input.search_bar { font-size: 13px; } }
div.validation-summary-errors { margin: 3% 6%; border: 1px solid red; background: #FFE; padding: 10px; }
div.validation-summary-errors:before { color: #eb212e; content: 'リクエスト処理中に問題が発生しました。'; font-weight: bold; display: block; }

.message-info { text-align: center; margin: 20px 10px; }

@charset "UTF-8";
a p { line-height: 1.2857em; }

#content { width: 93.75%; margin: 0 auto; margin-top: 64px; margin-bottom: 54px; background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; }
#content.continue { margin-top: 0; position: relative; }
#content.continue:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }
#content #content-header { padding: 8px 0 10px 0; width: 94.666%; margin: 0 auto; display: block; position: relative; }
#content #content-header div.search-category-select-cell, #content #content-header button.search-button, #content #content-header input.search_bar { font-size: 13px; height: 26px; margin: 5px 0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; }
#content #content-header div.search-category-select-cell { margin-top: 36px; padding-right: 60px; width: 100%; }
#content #content-header div.search-category-select-cell select { width: 100%; height: 100%; background: #fff; border: 1px solid #888; border-radius: 5px; font-size: 13px; }
#content #content-header input.search_bar { position: absolute; width: 100%; top: 5px; }
#content #content-header button.search-button { float: right; margin-top: -31px; display: block; text-align: center; width: 50px; height: 26px; text-decoration: none; color: white; line-height: 26px; text-shadow: 0px -1px 0px rgba(0, 0, 0, 0.6); border-radius: 10px; border: 1px solid #4a86c1; border-top-color: #a0cff2; border-bottom-color: #1d569b; box-shadow: 0 1px 1px white, 0 0px 1px rgba(0, 0, 0, 0.6); -webkit-box-shadow: 0 1px 1px white, 0 0px 1px rgba(0, 0, 0, 0.6); background: #4090db; background: #4090db -webkit-gradient(linear, left top, left bottom, from(#51a8e6), to(#2f78d0)); background: #4090db -webkit-linear-gradient(top, #51a8e6, #2f78d0); background: #4090db -moz-linear-gradient(top, #51a8e6, #2f78d0); background: #4090db -o-linear-gradient(top, #51a8e6, #2f78d0); background: #4090db -ms-linear-gradient(top, #51a8e6, #2f78d0); background: #4090db linear-gradient(top, #51a8e6, #2f78d0); padding-right: 5px; }
#content #content-header button.search-button:active { background: #4090db; background: #4090db -webkit-gradient(linear, left top, left bottom, from(#2f78d0), to(#51a8e6)); background: #4090db -webkit-linear-gradient(top, #2f78d0, #51a8e6); background: #4090db -moz-linear-gradient(top, #2f78d0, #51a8e6); background: #4090db -o-linear-gradient(top, #2f78d0, #51a8e6); background: #4090db -ms-linear-gradient(top, #2f78d0, #51a8e6); background: #4090db linear-gradient(top, #2f78d0, #51a8e6); }
#content #content-header a.button { float: left; display: block; height: 27px; width: 64px; border-radius: 4px; border: 1px solid #0076a0; background: #00afec; background: #00afec -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: #00afec -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); text-align: center; font-weight: bold; color: white; line-height: 29px; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; width: 23%; }
#content #content-header a.button:active { background: #00afec; background: #00afec -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: #00afec -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
#content #content-header a.button:before { content: "すべて"; }
#content #content-header h1 { display: block; overflow: hidden; float: right; width: 73%; height: 29px; line-height: 29px; color: #4d4d4d; font-size: 17px; text-align: left; text-shadow: #fff 0 1px 0; position: absolute; top: 9px; left: 27%; }
#content #content-header p { visibility: hidden; width: 0; height: 0; }
#content #content-header:before, #content #content-header:after { content: ""; display: block; width: 105.7%; height: 1px; border: 1px; position: absolute; left: -2.8%; background: #d9d9d9; box-shadow: 0px 1px 1px white; -webkit-box-shadow: 0px 1px 1px white; }
#content #content-header:before { bottom: 2px; }
#content #content-header:after { bottom: -1px; }
#content #sort-bar { position: relative; }
#content #sort-bar ul:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
#content #sort-bar ul li { width: 50%; float: left; text-align: center; }
#content #sort-bar ul li.sort-button a { border-right: 1px dotted #bfbfbf; color: #4d4d4d; line-height: 3.25em; font-size: 12px; }
#content #sort-bar ul li.sort-button a.selected, #content #sort-bar ul li.sort-button a:active { color: #00afec; background: url(../images/blue_circle_2x.png) no-repeat center center; background-size: auto 92%; }
#content #sort-bar ul li.sort-button + li.sort-button a { border-right: none; }
#content #sort-bar ul li a.button { margin: 5px 7px auto 5px; display: block; height: 28px; width: auto-2px; border-radius: 4px; border: 1px solid #cccccc; background: #f2f2f2; background: #f2f2f2 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: #f2f2f2 -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #f2f2f2 -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #f2f2f2 -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #f2f2f2 -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #f2f2f2 linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); text-align: center; font-weight: bold; color: #4d4d4d; line-height: 30px; text-shadow: white 0 1px 0; font-weight: normal; font-size: 12px; }
#content #sort-bar ul li a.button:active { background: #f2f2f2; background: #f2f2f2 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: #f2f2f2 -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #f2f2f2 -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #f2f2f2 -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #f2f2f2 -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #f2f2f2 linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
#content #sort-bar:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 200% auto; }
#content #book-list { width: 100%; }
#content #book-list ul { position: relative; }
#content #book-list ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 200% auto; }
#content #book-list ul li { display: block; overflow: hidden; box-shadow: white 0 -1px 1px; -webkit-box-shadow: white 0 -1px 1px; border-top: 1px solid #d9d9d9; }
#content #book-list ul li:first-child { border: none; }
#content #book-list ul li a { padding: 10px 8px 10px 8px; display: block; }
#content #book-list ul li a:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
#content #book-list ul li a img { display: block; float: left; width: 62px; border: 2px solid white; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 1px; margin-right: 5px; }
#content #book-list ul li a h4 { font-weight: bold; color: #237dd0; position: relative; text-shadow: #fff 0 1px 0; }
#content #book-list ul li a p.author { color: #4d4d4d; font-size: 12px; padding-bottom: 4px; }
#content #book-list ul li a p.price { color: #8c8c8c; font-size: 11.5px; font-style: italic; font-weight: bold; height: 1.7em; text-align: right; padding-right: 5px; }
#content #book-list ul li a p.price:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
#content #book-list ul li a p.description { color: #333333; height: 2.6em; overflow: hidden; font-size: 11px; }
#content #book-list ul li a:active { background: #00afec; }
#content #book-list ul li a:active h4, #content #book-list ul li a:active p.author, #content #book-list ul li a:active p.price, #content #book-list ul li a:active p.description { color: white; text-shadow: none; }
#content #book-list #not-found { height: 279px; width: 100%; position: relative; }
#content #book-list #not-found p { display: block; font-size: 14px; font-weight: bold; color: #8c8c8c; text-shadow: white 0 1px 0; width: 90%; padding: 0 5%; text-align: center; position: absolute; top: 50%; margin-top: -0.5em; }

#bottom { width: 93.75%; height: 500px; margin: 0 auto; margin-top: 6px; margin-bottom: 64px; }
#bottom.finished { height: 30px; margin-top: 1px; background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; position: relative; }
#bottom.finished:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }
#bottom.not-finished:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
#bottom.not-finished ul { background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; }
#bottom.not-finished.continue { margin-bottom: 24px; height: 100px; }
#bottom.not-finished.continue ul { position: relative; position: relative; }
#bottom.not-finished.continue ul:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }
#bottom.not-finished.continue ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 200% auto; }
#bottom.not-finished.continue ul li { width: 49%; height: 46px; margin: 0 auto; margin-top: 7px; display: inline-block; }
#bottom.not-finished.continue ul li#prev a { width: 46px; height: 46px; margin: 0 auto; display: block; background: url(../images/prev_page_2x.png) no-repeat center center; background-size: 46px auto; }
#bottom.not-finished.continue ul li#next a { width: 46px; height: 46px; margin: 0 auto; display: block; background: url(../images/next_page_2x.png) no-repeat center center; background-size: 46px auto; }
#bottom.not-finished.continue ul li:not(:last-child) { border-right: 1px dotted #bfbfbf; }
#bottom.not-finished.has-preview-page { height: 50px; }
#bottom.not-finished.has-preview-page ul { position: relative; }
#bottom.not-finished.has-preview-page ul:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }
#bottom.not-finished.has-preview-page ul li#prev { width: 100%; height: 46px; margin: 0 auto; margin-top: 7px; display: inline-block; }
#bottom.not-finished.has-preview-page ul li#prev a { width: 46px; height: 46px; margin: 0 auto; display: block; background: url(../images/prev_page_2x.png) no-repeat center center; background-size: 46px auto; }
#bottom.not-finished.has-preview-page ul li#next { visibility: hidden; width: 0; height: 0; }
#bottom.not-finished ul li a:active { position: relative; }
#bottom.not-finished ul li a:active:before { content: ""; display: block; width: 44px; height: 44px; position: absolute; top: -3px; left: -3px; border-radius: 60%; border: 4px solid white; background: rgba(0, 0, 0, 0.25); box-shadow: inset 0 2px 1px rgba(0, 0, 0, 0.4); -webkit-box-shadow: inset 0 2px 1px rgba(0, 0, 0, 0.4); }
#bottom.continue div.end { width: 100%; height: 20px; margin-top: 6px; background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; position: relative; }
#bottom.continue div.end:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }

#top-of-list { width: 93.75%; margin: 0 auto; margin-bottom: 6px; }
#top-of-list div.end { width: 100%; height: 60px; margin-bottom: 6px; background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; position: relative; }
#top-of-list div.end:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 200% auto; }
#top-of-list ul { background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; position: relative; position: relative; }
#top-of-list ul:before { content: ""; display: block; height: 3px; width: 100%; position: absolute; top: -3px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 200% auto; }
#top-of-list ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 200% auto; }
#top-of-list ul li { width: 49%; height: 46px; margin: 0 auto; margin-top: 7px; display: inline-block; }
#top-of-list ul li#prev a { width: 46px; height: 46px; margin: 0 auto; display: block; background: url(../images/prev_page_2x.png) no-repeat center center; background-size: 46px auto; }
#top-of-list ul li#next a { width: 46px; height: 46px; margin: 0 auto; display: block; background: url(../images/next_page_2x.png) no-repeat center center; background-size: 46px auto; }
#top-of-list ul li:not(:last-child) { border-right: 1px dotted #bfbfbf; }

@media screen and (min-width: 481px) { #top-of-list div.end { position: relative; }
  #top-of-list div.end:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 100% auto; }
  #top-of-list ul { position: relative; position: relative; }
  #top-of-list ul:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; }
  #top-of-list ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 100% auto; }
  #content.continue { position: relative; }
  #content.continue:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; }
  #content #sort-bar { position: relative; }
  #content #sort-bar:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 100% auto; }
  #content #book-list ul { position: relative; }
  #content #book-list ul li { position: relative; }
  #content #book-list ul li a h4, #content #book-list ul li a p.author, #content #book-list ul li a p.description { width: 68%; }
  #content #book-list ul li a p.price { display: block; float: none; position: absolute; top: 0; right: 2.5%; width: 13%; font-size: 13px; padding-top: 36px; padding-bottom: 31px; border-style: none none none dotted; border-width: 1px; border-color: #d9d9d9; }
  #content #book-list ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 100% auto; }
  #bottom.finished { position: relative; }
  #bottom.finished:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; }
  #bottom.not-finished.continue ul { position: relative; position: relative; }
  #bottom.not-finished.continue ul:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; }
  #bottom.not-finished.continue ul:after { content: ""; height: 6px; width: 100%; position: absolute; left: 0; bottom: -6px; background: url(../images/cutting_bottom_2x.png) no-repeat left top; background-size: 100% auto; }
  #bottom.not-finished.has-preview-page ul { position: relative; }
  #bottom.not-finished.has-preview-page ul:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; }
  #bottom.continue div.end { position: relative; }
  #bottom.continue div.end:before { content: ""; display: block; height: 2px; width: 100%; position: absolute; top: -2px; left: 0; background: url(../images/cutting_top_2x.png) no-repeat left top; background-size: 100% auto; } }
@media screen and (min-width: 569px) { #book-list ul li a h4, #book-list ul li a p.author, #book-list ul li a p.description { width: 74.5%; } }
@media screen and (min-width: 768px) { a p { line-height: 1.2857em; }
  header h1:before { content: "　"; display: inline; font-size: 50px; line-height: 65px; margin-right: 4px; vertical-align: top; background: url(../images/tab_store_2x.png) no-repeat center center; background-size: 50px auto; }
  #top-of-list { width: 682px; }
  #top-of-list div.end { height: 80px; }
  #content { width: 682px; margin-top: 85px; margin-bottom: 64px; box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 2px 3px, inset white 0 1px 1px; }
  #content #content-header { padding: 9px 0 9px 0; height: 38px; width: 654px; margin: 0 auto; display: block; position: relative; }
  #content #content-header button.search-button, #content #content-header div.search-category-select-cell, #content #content-header input.search_bar { margin: 5px 0; float: left; position: relative; top: 0; }
  #content #content-header div.search-category-select-cell { width: 120px; padding: 0; }
  #content #content-header div.search-category-select-cell select { border-radius: 10px 0 0 10px; }
  #content #content-header input.search_bar { width: 349px; border-radius: 0; }
  #content #content-header button.search-button { border-radius: 0 10px 10px 0; }
  #content #content-header a.button { display: block; height: 36px; width: 64px; border-radius: 4px; border: 1px solid #0076a0; background: #00afec; background: #00afec -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: #00afec -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #00afec linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 1px 0 rgba(255, 255, 255, 0.4); text-align: center; font-weight: bold; color: white; line-height: 38px; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; width: 153px; }
  #content #content-header a.button:active { background: #00afec; background: #00afec -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: #00afec -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #00afec linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
  #content #content-header a.button:before { content: "すべてのカテゴリ"; }
  #content #content-header h1 { width: 349px; height: 38px; line-height: 38px; font-size: 21px; text-align: center; left: 167px; }
  #content #content-header p { visibility: visible; display: block; float: right; width: 128px; height: 26px; margin-top: 6px; text-align: center; line-height: 27px; color: white; border-radius: 15.6px; background: #00afec; }
  #content #content-header:before, #content #content-header:after { content: ""; display: block; width: 104%; height: 1px; border: 1px; position: absolute; left: -13px; background: #d9d9d9; box-shadow: 0px 1px 1px white; -webkit-box-shadow: 0px 1px 1px white; }
  #content #content-header:before { bottom: 2px; }
  #content #content-header:after { bottom: -1px; }
  #content #sort-bar ul li a:not(.button) { font-size: 14px; }
  #content #sort-bar ul li a.button { margin: 8px 12px auto 17px; font-size: 14px; }
  #content #book-list ul li { height: auto; }
  #content #book-list ul li a { padding: 16px 29px 16px 29px; }
  #content #book-list ul li a img { width: 88px; margin-right: 10px; }
  #content #book-list ul li a h4 { font-size: 17px; min-height: 1.8em; }
  #content #book-list ul li a p.price { font-size: 16px; text-align: right; height: 100%; line-height: 108px; }
  #content #book-list ul li a p.price:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
  #content #book-list ul li a p.description { height: 6em; font-size: 14px; }
  #content #book-list #not-found p { font-size: 20px; }
  #bottom { width: 682px; } }

@charset "UTF-8";
#content-top { width: 93.75%; margin: 0 auto; margin-top: 64px; background: #fafafa; box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; -webkit-box-shadow: rgba(0, 0, 0, 0.25) 0 1px 2px, inset white 0 1px 1px; border-radius: 1px; padding-top: 20px; }

#top-of-list { width: 100%; margin: 0; }
#top-of-list div.end { box-shadow: none; -webkit-box-shadow: none; height: 60px; }

#banner { border-radius: 2px; box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5); -webkit-box-shadow: 0 1px 4px rgba(0, 0, 0, 0.5); margin: 0 auto; width: 100%; }
#banner img { border-radius: 3px; max-width: 100%; }

#description { margin: 60px 60px 0 60px; }

#content { margin-bottom: 0; }
#content #content-header h1 { width: 100%; margin-bottom: 0; left: 0; position: relative; top: 0; float: none; text-align: center; }

#bottom.not-finished.continue { height: 50px; }

@media screen and (max-width: 900px) { div#banner { width: 90%; }
  div#top-of-list div.end { height: 20px; }
  div#description { margin: 20px 20px 0 20px; } }
@media screen and (min-width: 900px) { /* タブレット横 & デスクトップ */
  div#banner { width: 768px; }
  #bottom.not-finished.continue { height: 100px; } }

