@charset "UTF-8";


/* ==================================================================

	table.css

================================================================== */


/* --------------------------------------------------
	table style config
-------------------------------------------------- */

#mainCell .cmnTable,
#mainCell .cartTable,
#mainCell .cartCheckTable,
#mainCell .searchTable,
#mainCell .orderTable,
#mainCell .publisherTable,
#mainCell .reviewTable,
#mainCell .pointTable
{border-top: 1px solid #DDD; margin-bottom: 40px;}

#mainCell .cmnTable th,
#mainCell .cartTable th,
#mainCell .cartCheckTable th,
#mainCell .searchTable th,
#mainCell .orderTable th,
#mainCell .publisherTable th,
#mainCell .reviewTable th,
#mainCell .pointTable th
{border-bottom: 1px solid #DDD; padding: 15px; background:#F4F4F4; font-weight: bold; vertical-align: top;}

#mainCell .cmnTable td,
#mainCell .cartTable td,
#mainCell .cartCheckTable td,
#mainCell .searchTable td,
#mainCell .orderTable td,
#mainCell .publisherTable td,
#mainCell .reviewTable td,
#mainCell .pointTable td
{border-bottom: 1px solid #DDD; padding: 15px;}

#mainCell p.required { color: #900;}
#mainCell span.required { color: #900; font-size:11px; margin-left: 5px;}
#mainCell span.notes { color: #666; font-size:12px; margin-left: 20px;}

/* --------------------------------------------------
	cmnTable
-------------------------------------------------- */

#mainCell .cmnTable th {width: 200px;}

/* input width config */
#mainCell .cmnTable td.creditCardNumber input {width: 50px;}
#mainCell .cmnTable td.securityCode input {width: 50px;}
#mainCell .cmnTable td .inpMail {width: 250px;}
#mainCell .cmnTable td .inpPass {width: 250px;}
#mainCell .cmnTable td .inpName {width: 250px;}
#mainCell .cmnTable td .inpCouponCode {width: 250px;}
#mainCell .cmnTable td .inpPoint {width: 150px;}
#mainCell .cmnTable td .inpCreditName {width: 250px;}
#mainCell .cmnTable td .inpTtl {width: 90%;}
#mainCell .cmnTable td .inpTxt {width: 90%;}

#mainCell .cmnTable td.creditCardNumber input,
#mainCell .cmnTable td.securityCode input,
#mainCell .cmnTable td .inpMail,
#mainCell .cmnTable td .inpPass,
#mainCell .cmnTable td .inpName,
#mainCell .cmnTable td .inpCouponCode,
#mainCell .cmnTable td .inpPoint,
#mainCell .cmnTable td .inpCreditName,
#mainCell .cmnTable td .inpTtl,
#mainCell .cmnTable td .inpTxt {
}

/* contact */
#mainCell .cmnTable td.privacyCell p { margin: 0;}
#mainCell .cmnTable td.privacyCell .privacyCheck { display: inline-block; margin-top: 10px; background: #F7ECEC; padding: 10px 15px;}
#mainCell .cmnTable td.privacyCell .privacyCheck input {margin-right: 8px;}

/* point */
#mainCell .cmnTable td.pointCell {color: #900; font-size: 18px; font-weight: bold; line-height: 1;}

/* payment */
#mainCell #creditForm {display: none;}

#mainCell .cmnTable td.radioCell input {margin-right: 5px;}
#mainCell .cmnTable td.radioCell ul li {display: inline; margin-right: 10px;}

#mainCell .cmnTable td.radioListCell input {margin-right: 5px;}
#mainCell .cmnTable td.radioListCell ul li {margin-top: 5px;}
#mainCell .cmnTable td.radioListCell ul li:first-child {margin-top: 0;}

#mainCell .cmnTable td span.couponBtn {
	margin-left: 15px;
}
#mainCell .cmnTable td.securityCode div.hint {
	position: relative;
	display: inline;
}
#mainCell .cmnTable td.securityCode div.hint span {
	color: #37778B;
	font-size: 12px;
	margin-left: 10px;
	cursor: pointer;
}
#mainCell .cmnTable td.securityCode div.hint span:hover {
	text-decoration: underline;
}
#mainCell .cmnTable td.securityCode div.hintBox {
	display: none;
	position: absolute;
	width: 230px;
	background: #FFF;
	border: 1px solid #DDD;
	padding: 20px;
	top: -230px;
	right: -340px;
	z-index: 30;
}
#mainCell .cmnTable td.securityCode div.hintBox p {
	color: #666;
	font-size: 12px;
	line-height: 1.6;
	margin: 15px 0 0 0;
}

/* resign */
#mainCell .resignTxt {
	font-size: 16px;
	font-weight: bold;
	text-align: center;
	padding-top: 30px;
}
#mainCell .cmnTable td.inquiry ul li {
	clear: both;
	margin-bottom: 2px;
}
#mainCell .cmnTable td.inquiry ul li label input {
	margin-right: 5px;
}

/* review */
#mainCell .cmnTable td.rating {
	padding: 22px 15px 25px 15px;
}

/* --------------------------------------------------
	cartTable
-------------------------------------------------- */

#mainCell .cartTable th {
	font-size: 12px;
	padding: 12px 15px;
}

#mainCell .cartTable td.col1 {
	width: 90px;
	text-align: center;
}

#mainCell .cartTable td.col1 .inner {
	display: block;
	width: 80px;
	height: 80px;
	margin: 0 auto;
}
#mainCell .cartTable td.col1 .inner:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}
#mainCell .cartTable td.col1 .inner img {
	max-width: 80px;
	max-height: 80px;
}

#mainCell .cartTable td.col2 span.parent {
	display: block;
	color: #999;
	font-size: 12px;
}
#mainCell .cartTable td.col2 span.title {
	line-height: 1.6;
}

#mainCell .cartTable th.col3,
#mainCell .cartTable td.col3 {
	width: 80px;
	text-align: right;
}
#mainCell .cartTable th.col4,
#mainCell .cartTable td.col4 {
	width: 50px;
	text-align: center;
}

#mainCell .cartTable td.colTotal {
	text-align: right;
	padding: 15px 15px;
}
#mainCell .cartTable td.colTotal em {
	font-size: 18px;
	font-weight: bold;
	margin-left: 20px;
}
#mainCell .cartTable td.colTotal.point em {
	color: #900;
}

/* --------------------------------------------------
	cartCheckTable
-------------------------------------------------- */

#mainCell .cartCheckTable {
	font-size: 12px;
	line-height: 1.6;
}

#mainCell .cartCheckTable th {
	padding: 12px 15px;
}

#mainCell .cartCheckTable td {
	padding: 12px 15px;
}

#mainCell .cartCheckTable td.col2 {}
#mainCell .cartCheckTable th.col3,
#mainCell .cartCheckTable td.col3 {
	width: 80px;
	text-align: right;
}

#mainCell .cartCheckTable td.useCoupon,
#mainCell .cartCheckTable td.usePoint {
	color: #900;
	font-weight: bold;
}

#mainCell .cartCheckTable td.colTotal {
	text-align: right;
	padding: 15px;
}
#mainCell .cartCheckTable td.colTotal em {
	font-size: 18px;
	font-weight: bold;
	margin-left: 20px;
}
#mainCell .cartCheckTable td.colTotal.point em {
	color: #900;
}

/* --------------------------------------------------
	orderTable
-------------------------------------------------- */

#mainCell .orderTable td.col1 {
	width: 90px;
	text-align: center;
}

#mainCell .orderTable td.col1 .inner {
	display: block;
	width: 80px;
	height: 80px;
	margin: 0 auto;
}

#mainCell .orderTable td.col1 .inner:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

#mainCell .orderTable td.col1 .inner img {
	max-width: 80px;
	max-height: 80px;
}

#mainCell .orderTable td.col2 span.parent {
	display: block;
	color: #999;
	font-size: 12px;
	font-weight: bold;
}

#mainCell .orderTable td.col3 {
	width: 80px;
	text-align: right;
}

#mainCell .orderTable td.col4 {
	width: 110px;
	text-align: right;
}

#mainCell .orderTable td.col5 {
	font-size: 11px;
	width: 120px;
	text-align: center;
}

#mainCell .orderTable td.col5 span.bookshelfTrue {
	display: none;
	color: #666;
	background: #EEE;
	padding: 5px 10px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	behavior: url(/pie/PIE.htc);
	z-index: 1;
	text-align: center;
	margin-bottom: 8px;
}

#mainCell .orderTable td.col5 a.bookshelf {
	display: block;
	color: #FFF;
	background: #37778B;
	padding: 5px 10px;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	behavior: url(/pie/PIE.htc);
	cursor: pointer;
	z-index: 1;
	text-align: center;
	margin-bottom: 8px;
}

#mainCell .orderTable td.col5 a.bookreviewTrue {
	display: block;
	color: #666;
	background-image: url(/images/common/icon_s_review_check.png);
	background-repeat: no-repeat;
	background-position: 10px center;
	background-color: #EEE;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	behavior: url(/pie/PIE.htc);
	cursor: pointer;
	z-index: 1;
	text-align: center;
	padding: 5px 10px 5px 25px;
	margin-bottom: 8px;
}

#mainCell .orderTable td.col5 a.bookreview {
	display: block;
	color: #FFF;
	background-image: url(/images/common/icon_s_review.png);
	background-repeat: no-repeat;
	background-position: 10px center;
	background-color: #37778B;
	-webkit-border-radius: 4px;
	-moz-border-radius: 4px;
	border-radius: 4px;
	behavior: url(/pie/PIE.htc);
	cursor: pointer;
	z-index: 1;
	text-align: center;
	padding: 5px 10px 5px 25px;
	margin-bottom: 8px;
}

#mainCell .orderTable td.col5 a.bookshelf:hover,
#mainCell .orderTable td.col5 a.bookreview:hover {
	color: #FFF;
	text-decoration: none;
	background-color: #73A0AE;
}

#mainCell .orderTable td.col5 a.bookreviewTrue:hover {
	color: #666;
	text-decoration: none;
	background-color: #DDD;
}

/* --------------------------------------------------
	searchTable
-------------------------------------------------- */

#mainCell .searchTable th {
	width: 140px;
	padding: 25px;
	vertical-align: top;
}

#mainCell .searchTable td {
	padding: 25px;
}

#mainCell .searchTable td ul.radiobtn li,
#mainCell .searchTable td ul.checkbox li {
	float: left;
	margin-right: 14px;
}

#mainCell .searchTable td ul.radiobtn li input,
#mainCell .searchTable td ul.checkbox li label input {
	margin-right: 5px;
}

#mainCell .searchTable td ul.radiobtn li.listStyle1PC,
#mainCell .searchTable td ul.checkbox li.listStyle1PC {
	clear:both;
	margin-right: 0;
}


/* --------------------------------------------------
	publisherTable
-------------------------------------------------- */

#mainCell .publisherTable th {
	width: 120px;
	padding: 25px;
	vertical-align: top;
}

#mainCell .publisherTable td {
	padding: 25px;
}

#mainCell .publisherTable td ul {}

#mainCell .publisherTable td ul li {
	float: left;
	width: 46%;
	margin-right: 4%;
}

/* --------------------------------------------------
	reviewTable
-------------------------------------------------- */

#mainCell .reviewTable td.col1 {
	width: 200px;
	padding: 25px 15px;
	text-align: center;
}

#mainCell .reviewTable td.col1 .inner {
	display: block;
	width: 135px;
	height: 135px;
	margin: 0 auto;
}

#mainCell .reviewTable td.col1 .inner:before {
    content: "";
    display: inline-block;
    vertical-align: middle;
    height: 100%;
}

#mainCell .reviewTable td.col1 .inner img {
	max-width: 135px;
	max-height: 135px;
}

#mainCell .reviewTable td.col2 {
	padding-bottom: 25px;
}

#mainCell .reviewTable td.col2 span.parent {
	display: block;
	color: #999;
	font-size: 12px;
	font-weight: bold;
}

/* --------------------------------------------------

	セル幅 汎用クラス
	<colgroup>の<col>に付与

-------------------------------------------------- */

col.colw5 {width:5%;}
col.colw10 {width:10%;}
col.colw15 {width:15%;}
col.colw20 {width:20%;}
col.colw25 {width:25%;}
col.colw30 {width:30%;}
col.colw35 {width:35%;}
col.colw40 {width:40%;}
col.colw45 {width:45%;}
col.colw50 {width:50%;}
col.colw55 {width:55%;}
col.colw60 {width:60%;}
col.colw65 {width:65%;}
col.colw70 {width:70%;}
col.colw75 {width:75%;}
col.colw80 {width:80%;}
col.colw85 {width:85%;}
col.colw90 {width:90%;}
col.colw95 {width:95%;}
col.colw100 {width:100%;}

/* --------------------------------------------------

	th、tdのテキスト揃え 汎用クラス

-------------------------------------------------- */

/* text-align */
th.alignL, td.alignL {text-align:left !important;}
th.alignC, td.alignC {text-align:center !important;}
th.alignR, td.alignR {text-align:right !important;}
/* vertical-align */
th.alignT, td.alignT {vertical-align:top !important;}
th.alignM, td.alignM {vertical-align:middle !important;}
th.alignB, td.alignB {vertical-align:bottom !important;}
/* center & middle */
th.alignCM, td.alignCM {text-align:center !important; vertical-align:middle !important;}
/* bg sub color */
th.sub, td.sub {background: #F9F9F9 !important; font-weight: normal !important;}

/* --------------------------------------------------
	ul.totalBox
-------------------------------------------------- */

#mainCell ul.totalBox {
	border: 1px solid #DDD;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
	border-radius: 5px;
	behavior: url(/pie/PIE.htc);
	margin-bottom: 25px;
}
#mainCell ul.totalBox li {
	text-align: center;
}
#mainCell ul.totalBox li.main {
	font-size: 14px;
	line-height: 1;
	padding: 20px 0;
	background-image: url(/images/common/bg_dotted.png);
	border-bottom: 1px solid #DDD;
}
#mainCell ul.totalBox li.main em {
	font-weight: bold;
	color: #900;
	font-size: 26px;
	margin-left: 15px;
}
#mainCell ul.totalBox li.sub {
	color: #444;
	padding: 10px 0;
}
#mainCell ul.totalBox li.sub em {
	font-weight: bold;
	font-size: 16px;
	margin-left: 15px;
}

/* --------------------------------------------------
	pointTable
-------------------------------------------------- */

#mainCell .pointTable {
	border-right: 1px solid #DDD;
}

#mainCell .pointTable th {
	font-size: 12px;
	padding: 8px 15px;
	border-left: 1px solid #DDD;
}
#mainCell .pointTable th.none {
	border-left: none;
}

#mainCell .pointTable td {
	padding: 8px 15px;
	border-left: 1px solid #DDD;
}

#mainCell .pointTable span.plus {color: #900; font-weight: bold;}
#mainCell .pointTable span.minus {color: #039; font-weight: bold;}

