/* 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 ';'
 */
@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";
#content { width: 95.3125%; height: auto; max-width: 732px; margin: 0 auto; margin-bottom: 64px; margin-top: 64px; }

#book-info { width: 100%; height: auto; border: 2px solid #fff; border-radius: 5px; background: #fbfbfb; background: #fbfbfb -webkit-gradient(linear, left top, left bottom, from(#fbfbfb), to(whitesmoke)); background: #fbfbfb -webkit-linear-gradient(top, #fbfbfb, whitesmoke); background: #fbfbfb -moz-linear-gradient(top, #fbfbfb, whitesmoke); background: #fbfbfb -o-linear-gradient(top, #fbfbfb, whitesmoke); background: #fbfbfb -ms-linear-gradient(top, #fbfbfb, whitesmoke); background: #fbfbfb linear-gradient(top, #fbfbfb, whitesmoke); box-shadow: rgba(0, 0, 0, 0.5) 0 1px 2px; -webkit-box-shadow: rgba(0, 0, 0, 0.5) 0 1px 2px; margin: 0; margin-left: -2px; padding-top: 10px; clear: both; position:relative; z-index:1; }
#book-info:after { content: ""; display: block; width: 100%; height: 8px; position: relative; bottom: -10px; background: url(../images/paper_shadow_2x.png) no-repeat left 0; background-size: 100% 8px; }

div.info-wrapper { max-width: 522px; overflow: hidden; }

div.product-block, div.title-block, div.sub-content-block { width: 95%; height: auto; margin: 0 auto; margin-bottom: 10px; }

div.product-block img.book-cover { height: auto; border: 2px solid white; margin-top: -2px; margin-left: -2px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.45); -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.45); float: left; width: 170px; }
div.product-block ul { height: auto; margin-left: 180px; text-shadow: white 0 1px 0; }
div.product-block ul:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
div.product-block ul li { text-align: right; }
div.product-block ul li:before { color: #666666; display: block; text-align: left; }
div.product-block ul li.publish:before { content: "出版社："; }
div.product-block ul li.released:before { content: "配信開始日："; }
div.product-block ul li.update:before { content: "更新日："; }
div.product-block ul li.size:before { content: "容量："; }
div.product-block ul li.price:before { content: "価格："; }

div.title-block h1 { width: 100%; padding-top: .5em; padding-bottom: .5em; color: #404040; font-weight: bold; line-height: 1.5em; text-align: center; margin-bottom: 10px; text-shadow: white 0 1px 0; display: block; position: relative; }
div.title-block h1:before, div.title-block h1:after { content: ""; display: block; width: 100%; height: 100%; border: 1px; position: absolute; left: 0; }
div.title-block h1:before { bottom: -3px; border-style: double none; border-width: 4px; border-color: #d9d9d9; }
div.title-block h1:after { bottom: -4px; border-style: double none; border-width: 4px; border-color: white; }
div.title-block p { width: 100%; text-align: center; color: #666666; font-size: .9em; display: block; position: relative; }
div.title-block p.author { font-size: 1.0em; color: #404040; margin-bottom: 8px; }
div.title-block p.category:before { content: "カテゴリ："; }
div.title-block p:after { content: ""; display: block; width: 100%; height: 0px; border: 1px; position: absolute; left: 0; bottom: -5px; border-bottom: 1px solid white; border-top: 1px solid #d9d9d9; }

div.sub-content-block { color: #666666; }
div.sub-content-block #file-type { width: 100%; margin-top: 14px; margin-bottom: 12px; border-radius: 2px; box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.25), 0 1px 1px white; -webkit-box-shadow: inset 0 1px 1px rgba(0, 0, 0, 0.25), 0 1px 1px white; background: #fcfcfc; }
div.sub-content-block h4, div.sub-content-block ul { margin-left: 8px; }
div.sub-content-block h4 { font-weight: bold; line-height: 2.5em; }
div.sub-content-block ul:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
div.sub-content-block ul li { font-size: .9em; color: #1792c3; float: left; margin-right: .5em; margin-bottom: 8px; text-indent: 1.7em; }
div.sub-content-block ul li.app { background: url(../images/app_symbol_2x.png) no-repeat left 0; background-size: 1.4em 1.4em; }
div.sub-content-block ul li.epub { background: url(../images/epub_symbol_2x.png) no-repeat left 0; background-size: 1.4em 1.4em; }
div.sub-content-block ul li.pdf { background: url(../images/pdf_symbol_2x.png) no-repeat left 0; background-size: 1.4em 1.4em; }
div.sub-content-block #go-authors-list, div.sub-content-block #trial { display: block; width: 99%; height: 29px; text-align: center; font-weight: bold; color: white; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; border: 1px solid #0076a0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 17.4px; 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 2px 1px rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); font-size: .9em; font-weight: normal; line-height: 29px; margin: 0 auto; }
div.sub-content-block #go-authors-list:active, div.sub-content-block #trial:active { box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; -webkit-box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; }
div.sub-content-block #go-authors-list { margin-bottom: 1em; overflow: hidden; white-space: nowrap; text-overflow: ellipsis; -webkit-box-sizing: border-box; box-sizing: border-box; padding: 0 10px; }
div.sub-content-block #trial { margin-bottom: 1em; display: block; width: 99%; height: 29px; text-align: center; font-weight: bold; color: white; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; border: 1px solid #c55500; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 17.4px; background: #ff7912; background: #ff7912 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: #ff7912 -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); }
div.sub-content-block #trial:active { box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; -webkit-box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; }

#under-area { width: 100%; margin: 0 auto; margin-top: -18px; padding-top: 28px; padding-bottom: 28px; background: #f7f7f7; border-radius: 1px; box-shadow: 0 1px 2px rgba(0, 0, 0, 0.45), inset 0 -1px 1px white; -webkit-box-shadow: 0 1px 2px rgba(0, 0, 0, 0.45), inset 0 -1px 1px white; background: #f7f7f7; background: #f7f7f7 -webkit-gradient(linear, left bottom, left top, from(#eeeeee), to(rgba(238, 238, 238, 0))); background: #f7f7f7 -webkit-linear-gradient(top, #eeeeee, rgba(238, 238, 238, 0)); background: #f7f7f7 -moz-linear-gradient(top, #eeeeee, rgba(238, 238, 238, 0)); background: #f7f7f7 -o-linear-gradient(top, #eeeeee, rgba(238, 238, 238, 0)); background: #f7f7f7 -ms-linear-gradient(top, #eeeeee, rgba(238, 238, 238, 0)); background: #f7f7f7 linear-gradient(top, #eeeeee, rgba(238, 238, 238, 0)); position: relative; z-index: 0; }
#under-area #description p { margin: 12px; font-size: .9em; color: #404040; }
#under-area #description a { color: #1792c3; text-decoration: underline; display:inline; }
#under-area #description:before, #under-area #description:after { content: ""; display: block; width: 100%; height: 0px; border: 1px; border-bottom: 1px solid white; border-top: 1px solid #d9d9d9; }
#under-area:after { content: ""; display: block; width: 100%; height: 10px; position: relative; bottom: -38px; background: url(../images/floating_shadow_2x.png) no-repeat left 0; background-size: 100% 10px; }

footer #tool-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.25); -webkit-box-shadow: 0 -1px 1px rgba(0, 0, 0, 0.25); z-index: 5; clear: both; }
footer #tool-bar:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }
footer #tool-bar a.back-button { display: block; width: 46px; height: 100%; float: left; overflow: hidden; background: url(../images/back_button_2x.png) no-repeat left center; background-size: auto 100%; }
footer #tool-bar a.back-button:active { background: url(../images/back_button_hl_2x.png) no-repeat left center; background-size: auto 100%; }
footer #tool-bar div.centering-wrapper { width: auto; height: 100%; overflow: hidden; padding-left: 2%; }
footer #tool-bar div.centering-wrapper a { float: left; display: block; margin-top: 4px; font-size: .75em; line-height: 34px !important; }
footer #tool-bar div.centering-wrapper #to-cart { display: block; width: 31%; height: 34px; text-align: center; font-weight: bold; color: white; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; border: 1px solid #c55500; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 20.4px; background: #ff7912; background: #ff7912 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: #ff7912 -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: #ff7912 linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); margin-left: 2px; margin-right: 2%; }
footer #tool-bar div.centering-wrapper #to-cart:active { box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; -webkit-box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; }
footer #tool-bar div.centering-wrapper #quick-buy { display: block; width: 31%; height: 34px; text-align: center; font-weight: bold; color: white; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; border: 1px solid #0076a0; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 20.4px; 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 2px 1px rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); margin-left: 2px; margin-right: 2%; }
footer #tool-bar div.centering-wrapper #quick-buy:active { box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; -webkit-box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; }
footer #tool-bar div.centering-wrapper #sel-sub { display: block; width: 31%; height: 34px; text-align: center; font-weight: bold; color: white; text-shadow: rgba(0, 0, 0, 0.45) 0 -1px 0; border: 1px solid #1d44b8; -moz-box-sizing: border-box; -webkit-box-sizing: border-box; box-sizing: border-box; border-radius: 20.4px; background: royalblue; background: royalblue -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.1))); background: royalblue -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: royalblue -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: royalblue -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: royalblue -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); background: royalblue linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.1)); box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 1px white, inset 0 2px 1px rgba(255, 255, 255, 0.4); }
footer #tool-bar div.centering-wrapper #sel-sub:active { box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; -webkit-box-shadow: inset 0 10px 20px rgba(0, 0, 0, 0.3), white 0 1px 0; }

.selectSubscription p { font-size: 1em; margin: 0 20px; }

div.input-wrapper { width: 95%; max-width: 250px; height: auto; margin: 12px auto; }
div.input-wrapper .custom-input { width: 26px; height: 26px; position: relative; float: left; vertical-align: middle; margin-right: 10px; }
div.input-wrapper .custom-input label.radiomark { border-radius: 100px; }
div.input-wrapper .custom-input label.radiomark:after { top: 7px; left: 7px; border: 6px solid #000; width: 0; height: 0; border-radius: 100px; }
div.input-wrapper .custom-input label.checkmark { border-radius: 2px; }
div.input-wrapper .custom-input label.checkmark:after { top: 5px; left: 5px; width: 12px; height: 7px; border: 4px solid black; border-top: none; border-right: none; -webkit-transform: rotate(-45deg); -moz-transform: rotate(-45deg); transform: rotate(-45deg); background: transparent; }
div.input-wrapper .custom-input label.checkmark, div.input-wrapper .custom-input label.radiomark { position: absolute; width: 26px; height: 26px; top: 0; left: 0; border: 1px solid #8c8c8c; box-shadow: 0 1px 0 white, inset 0 1px 0 rgba(255, 255, 255, 0.4); -webkit-box-shadow: 0 1px 0 white, inset 0 1px 0 rgba(255, 255, 255, 0.4); background: #e6e6e6; background: #e6e6e6 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.2))); background: #e6e6e6 -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #e6e6e6 -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #e6e6e6 -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #e6e6e6 -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #e6e6e6 linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); }
div.input-wrapper .custom-input label.checkmark:after, div.input-wrapper .custom-input label.radiomark:after { content: ''; position: absolute; box-shadow: -1.5px 1.5px 0 white; -webkit-box-shadow: -1.5px 1.5px 0 white; opacity: 0.25; }
div.input-wrapper .custom-input label.checkmark:active, div.input-wrapper .custom-input label.radiomark:active { background: #4090db; background: #4090db -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.2)), to(rgba(0, 0, 0, 0))); background: #4090db -webkit-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #4090db -moz-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #4090db -o-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #4090db -ms-linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); background: #4090db linear-gradient(top, rgba(0, 0, 0, 0.2), rgba(0, 0, 0, 0)); }
div.input-wrapper .custom-input input:checked ~ label.checkmark, div.input-wrapper .custom-input input:checked ~ label.radiomark { background: #4090db; background: #4090db -webkit-gradient(linear, left top, bottom top, from(rgba(0, 0, 0, 0)), to(rgba(0, 0, 0, 0.2))); background: #4090db -webkit-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #4090db -moz-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #4090db -o-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #4090db -ms-linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); background: #4090db linear-gradient(top, rgba(0, 0, 0, 0), rgba(0, 0, 0, 0.2)); }
div.input-wrapper .custom-input input:checked ~ label.checkmark:after, div.input-wrapper .custom-input input:checked ~ label.radiomark:after { border-color: white; box-shadow: -1.5px 1.5px 0 rgba(0, 0, 0, 0.45); -webkit-box-shadow: -1.5px 1.5px 0 rgba(0, 0, 0, 0.45); opacity: 1; }
div.input-wrapper .custom-input input:checked ~ label.checkmark:active, div.input-wrapper .custom-input input:checked ~ label.radiomark:active { background: #b3b3b3; background: #b3b3b3 -webkit-gradient(linear, left top, left bottom, from(rgba(0, 0, 0, 0.4)), to(rgba(0, 0, 0, 0))); background: #b3b3b3 -webkit-linear-gradient(top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0)); background: #b3b3b3 -moz-linear-gradient(top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0)); background: #b3b3b3 -o-linear-gradient(top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0)); background: #b3b3b3 -ms-linear-gradient(top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0)); background: #b3b3b3 linear-gradient(top, rgba(0, 0, 0, 0.4), rgba(0, 0, 0, 0)); }
div.input-wrapper .custom-input input:checked ~ label.checkmark:active:after, div.input-wrapper .custom-input input:checked ~ label.radiomark:active:after { border-color: #e6e6e6; }
div.input-wrapper .label { text-align: left; line-height: 30px; }
div.input-wrapper .label:after { content: ""; display: block; clear: both; height: 0; visibility: hidden; }

@media screen and (min-width: 480px) { div.product-block { width: 170px; float: left; }
  div.product-block img.book-cover { float: none; margin-top: 0; margin-left: 10px; }
  div.product-block ul { width: 100%; height: auto; padding-top: 16px; margin-left: 14px; }
  div.product-block ul li { text-align: left; }
  div.product-block ul li:before { display: inline; }
  div.title-block { width: auto; overflow: hidden; margin-left: 198px; padding: 6px 10px 26px 0; }
  div.title-block h1 { padding-top: .5em; padding-bottom: .5em; text-align: left; min-height: 3em; }
  div.title-block p { text-align: left; }
  div.title-block p.author { line-height: 1em; margin-bottom: 26px; display: block; position: relative; }
  div.title-block p.author:after { content: ""; display: block; width: 100%; height: 0px; border: 1px; position: absolute; left: 0; bottom: -25px; border-bottom: 1px solid white; border-top: 1px solid #d9d9d9; }
  div.sub-content-block { width: auto; margin-left: 198px; padding-right: 10px; }
  div.sub-content-block #file-type { height: 56px; overflow: hidden; }
  footer #tool-bar div.centering-wrapper a:before { content: "　"; margin-right: 4px; line-height: 1.5em; font-size: 2em; vertical-align: top; margin-left: -4px; }
  footer #tool-bar div.centering-wrapper #to-cart:before, footer #tool-bar div.centering-wrapper #sel-sub:before { background: url(../images/cart_icon_2x.png) no-repeat center right; background-size: auto 20px; }
  footer #tool-bar div.centering-wrapper #quick-buy:before { background: url(../images/quick_buy_icon_2x.png) no-repeat center right; background-size: auto 20px; } }
@media screen and (min-width: 569px) { #next-page-header { height: 5px; }
  div.info-wrapper { margin: 0 auto; }
  div.info-wrapper #book-info { padding: 0; }
  div.info-wrapper #book-info div.product-block, div.info-wrapper #book-info div.title-block, div.info-wrapper #book-info div.sub-content-block { padding: 0; margin: 0; }
  div.info-wrapper #book-info div.title-block, div.info-wrapper #book-info div.sub-content-block { width: auto; max-width: 322px; } }
@media screen and (min-width: 768px) { #content { margin-top: 85px; margin-bottom: 80px; }
  footer #tool-bar { height: 60px; background: #ebebde url(../images/bar_background_ptn_2x.png) repeat 0 0; background-size: auto 60px; }
  footer #tool-bar a.back-button { display: block; width: 87px; margin-left: 20px; position: absolute; left: 0; background: url(../images/back_button_2x.png) no-repeat left center; background-size: auto 100%; }
  footer #tool-bar a.back-button:active { background: url(../images/back_button_hl_2x.png) no-repeat left center; background-size: auto 100%; }
  footer #tool-bar div.centering-wrapper { width: 640px; margin: 0 auto; padding-left: 87px; text-align: center; }
  footer #tool-bar div.centering-wrapper a { font-size: 18px; line-height: 50px !important; }
  footer #tool-bar div.centering-wrapper a#to-cart, footer #tool-bar div.centering-wrapper a#quick-buy { margin-left: 0; margin-right: 20px; }
  footer #tool-bar div.centering-wrapper a#to-cart, footer #tool-bar div.centering-wrapper a#quick-buy, footer #tool-bar div.centering-wrapper a#sel-sub { width: 200px; height: 50px; float: none; display: inline-block; border-radius: 30px; }
  footer #tool-bar div.centering-wrapper a:before { background-size: auto 30px !important; }
  h1 { font-size: 21px; }
  div.info-wrapper { margin-top: 10px; margin-bottom: 20px; }
  div.product-block ul { margin-top: 4px; }
  div.product-block ul li { font-size: 14px; line-height: 1.7em; }
  div.title-block h1 { padding-top: .25em; padding-bottom: .25em; }
  div.title-block p { font-size: 1em; }
  div.title-block p.author { font-size: 1.1em; line-height: 1.1em; margin-bottom: 28px; }
  div.sub-content-block #file-type { margin-top: -6px; margin-bottom: 16px; }
  div.sub-content-block h4, div.sub-content-block ul { margin-left: 12px; }
  div.sub-content-block h4 { font-size: 1em; line-height: 2em; }
  div.sub-content-block ul li { font-size: 1em; }
  div.sub-content-block #go-authors-list, div.sub-content-block #trial { font-size: 1em; width: 99%; height: 35px; border-radius: 32.6px; line-height: 35px; }
  #under-area { margin-top: -1px; }
  #under-area #description p { font-size: 18px; }  
  #under-area #description a { font-size: 18px; }
}

footer #tool-bar div.centering-wrapper a.support-link {
    line-height: 1 !important;
    display: inline !important;
    float: none !important;
    margin: 0px !important;
    padding: 0px !important;
    text-decoration:underline;
}

    a.support-link:before,
    a.support-link:after {
        display:none;
    }
