@charset "UTF-8";

/*/////////////////////////////
 common parts
 /////////////////////////////*/

/* position
 * ------------------------- */

/* float */
.left {
	float: left;
}
.right {
	float: right;
}

/* align */
.al_center {
	text-align: center;
}
.al_left {
	text-align: left;
}
.al_right {
	text-align: right;
}

/* accordion 20140818
 * ------------------------- */
/* accordion */
.accordion_block{
	padding-bottom:1px;
	margin:0 0 19px;
}
dl.accordion {
	background: #fafafa;
	padding:25px 30px 1px;
	margin: 0 auto 30px;
}
dl.accordion dt {
	color:#07AF9B;
	font-size:15px;
	line-height:1.2em;
	padding-left:26px;
	background: url(../img/books/desc/icon_oc_sprite.png) no-repeat left top;
	cursor: pointer;
	margin:0 0 20px;
}
dl.accordion dt.open {
	background-position: left -21px;
}
dl.accordion dd {
	display: none;
}
dl.accordion dd img{
	margin:0 0 24px;
}
dl.accordion dd img p{
	margin:0 0 24px;
}
/*/////////////////////////////
 background
 /////////////////////////////*/

/* bg
 * ------------------------- */

/*  */

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

/*/////////////////////////////
 radius
 /////////////////////////////*/

/* radius
 * ------------------------- */
.radius {
	position: relative;
	border-radius: 5px;
	-webkit-border-radius: 5px;
	-moz-border-radius: 5px;
}

/*/////////////////////////////
 shadow
 /////////////////////////////*/

/* shadow
 * ------------------------- */
.shadow_black01 {
	position: relative;
	box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 4px 4px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 4px 4px;
	-moz-box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 4px 4px;
}
.shadow_black02 {
	position: relative;
	box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 2px 2px;
	-webkit-box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 2px 2px;
	-moz-box-shadow: rgba(0, 0, 0, 0.0470588) 0px 0px 2px 2px;
}

/*/////////////////////////////
 mark,icon
 /////////////////////////////*/

/* icon
 * ------------------------- */

/* mark
 * ------------------------- */

/* before */
.mark_before:before {
	display: inline-block;
	width: 16px;
	height: 16px;
	vertical-align: middle;
	margin-right: 5px;
	content: "";
	background: url() no-repeat left center;
}
/* pad */
.mark_pad {
	cursor: pointer;
	padding-left: 11px;
	background: url() no-repeat left 5px;
}

/*/////////////////////////////
 title
 /////////////////////////////*/

/* pagetitle
 * ------------------------- */
.pagetitle {
	font-size: 36px;
	font-weight: normal;
	padding-left: 63px;
	margin-bottom: 30px;
	line-height: 1em;
}

/* titlebg 20140805
 * ------------------------- */
/* titlebg_black01 20140805 */
.titlebg_black01 {
	height: 55px;
	padding: 18px 0 0 20px;
	box-sizing: border-box;
	line-height: 1em;
	border: 0px;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	font-size: 21px;
	font-weight: normal;
	color: #fff;
	margin: 0 0 30px;
	background: url(../img/common/bg_title.png) repeat left top;
}
/* titlebg_black01 have_nav 20140806 */
.titlebg_black01.have_nav {
	border-radius: 10px 10px 0px 0px;
	-webkit-border-radius: 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px;
	margin: 0 0 -1px;
}
/* title_leftline
 * ------------------------- */
.title_leftline_green{
	color:#07AF9B;
	font-size:20px;
	font-weight:normal;
	line-height:1em;
	padding: 0 0 0 20px;
	border-left:2px solid #07AF9B;
	margin:0 0 30px;
}
.title_leftline_green span{
	font-size:15px;
}

/*/////////////////////////////
 pagehead 20140806
 /////////////////////////////*/
.pagehead {
	margin: 0 0 30px;
	z-index: 99;
}
/* pagehead_nav 20140806
 * ------------------------- */
.pagehead_nav {
	background: url(../img/common/bg_title_gray.png) repeat left top;
	border-radius: 0px 0px 10px 10px;
	-webkit-border-radius: 0px 0px 10px 10px;
	-moz-border-radius: 0px 0px 10px 10px;
	z-index: 100;
}
/* pagehead_nav li 20140806
 * ------------------------- */
.pagehead_nav ul {
	padding: 12px 20px 13px;
}
.pagehead_nav ul li {
	float: left;
	z-index: 9999;
}
.pagehead_nav ul li a {
	display: block;
	margin-right: 20px;
	line-height: 1em;
	color: #fff;
}
/* pagehead_nav item 20140806
 * ------------------------- */
.pagehead_nav .item01 a:before {
	display: inline-block;
	vertical-align: middle;
	width: 17px;
	height: 15px;
	content: "";
	margin-right: 7px;
}
.pagehead_nav .item01 a:before {
	background: url(../img/contents/index/icon_check_sprite.png) no-repeat left top;
}
.pagehead_nav .item01 a.active {
	font-weight: bold;
}
/* item hover */
.pagehead_nav .item01 a:hover:before {
	background-position: left -20px;
}
/* item active */
.pagehead_nav .item01 a.active:before {
	background-position: left -20px;
}
/* index(have_child) */
.pagehead_nav.have_child {
	border-radius: 0px 0px 0px 0px;
	-webkit-border-radius: 0px 0px 0px 0px;
	-moz-border-radius: 0px 0px 0px 0px;
}
/* #dropmenu item 20140818
 * ------------------------- */
#dropmenu {
	padding: 12px 20px 0;
}
#dropmenu li {
	position: relative;
}
#dropmenu li a:before {
	display: none;
}
#dropmenu > li > a {
	padding: 0px 0 13px 23px;
	line-height: 1.3em;
	color: #fff;
	background: url(../img/contents/index/icon_check2_sprite.png) no-repeat left 0px;
}
#dropmenu > li:hover > a,
#dropmenu > li:hover > a.active {
	background-position: left -76px;
}

#dropmenu > li > a.active {
	background-position: left -113px;
}

#dropmenu li ul {
	list-style: none;
	position: absolute;
	min-width: 215px;
	top: 100%;
	left: 0;
	margin: 0;
	padding: 0 0 0 0px;
}
#dropmenu li ul li {
	float: none;
	overflow: hidden;
	height: 0;
	color: #fff;
	background: url(../img/common/bg_title_gray.png) repeat left top;
	-moz-transition: .3s;
	-webkit-transition: .3s;
	-o-transition: .3s;
	-ms-transition: .3s;
	transition: .3s;
}
#dropmenu li ul li a {
	padding: 11px 0px 11px 38px;
	background: url(../img/contents/index/icon_check3_sprite.png) no-repeat left top;
	text-align: left;
	font-size: 13px;
	font-weight: normal;
	margin: 0;
}
#dropmenu li ul li a:hover {
	background-position: left -40px;
}
#dropmenu li ul li a.active {
	background-position: left -40px;
}

#dropmenu li:hover ul li {
	overflow: visible;
	height: 34px;
}
#dropmenu li ul li.lastchild {
	position: relative;
	border-radius: 0px 0px 10px 10px;
	-webkit-border-radius: 0px 0px 10px 10px;
	-moz-border-radius: 0px 0px 10px 10px;
	margin-top: -2px;
}
#dropmenu li ul li.lastchild a {
	padding: 11px 15px 4px 41px;
	background: url(../img/contents/index/icon_check4_sprite.png) no-repeat left -3px;
}
#dropmenu li ul li.lastchild a:hover {
	background-position: left -34px;
}
/*/////////////////////////////
 pagehead_banner
 /////////////////////////////*/
.pagehead_banner {
	margin: 0 0 30px;
}
.pagehead_banner ul {
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	margin: 0 -8px 0 0;
}
.pagehead_banner ul li {
	display: inline-block;
	letter-spacing: normal; /* 文字間を通常に戻す */
	margin: 0 8px 0 0;
}

/*/////////////////////////////
 mini_nav
 /////////////////////////////*/
.mini_nav {
	background: #fff;
	border-radius: 0px 0px 10px 10px;
	-webkit-border-radius: 0px 0px 10px 10px;
	-moz-border-radius: 0px 0px 10px 10px;
}
/* pagehead_nav li 20140806
 * ------------------------- */
.mini_nav ul {
	padding: 20px 15px 15px;
}
.mini_nav ul li {
	float: left;
}
/* pagehead_nav item 20140806
 * ------------------------- */
.mini_nav ul li a {
	display: inline-block;
	margin: 0 5px 5px 0;
	line-height: 1em;
	padding: 6px 10px 3px;
	color: #333;
	background: #f6f6f6;
}
.mini_nav ul li a.active {
	color: #ba0000;
	background: #fff5f5;
	font-weight: bold;
}
.mini_nav ul li a:hover {
	color: #ba0000;
	background: #fff5f5;
	text-decoration: none;
}

/*/////////////////////////////
 list_block
 /////////////////////////////*/

/* list_block
 * ------------------------- */
.list_block {
	background: #fff;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	margin-bottom: 30px;
	position: relative;
	z-index: 1;
}
.link_block {
	cursor: pointer;
}
/* type 20140805 */
.list_block .news {
	background: #d9d9d9;
}
.list_block .topics {
	background: #f37e7e;
}
.list_block .software {
	background: #8bd5ed;
}
.list_block .column {
	background: #fb964c;
}
.list_block .contest {
	background: #bce477;
}
.list_block .hardware {
	background: #707de0;
}
.list_block .apple {
	background: #b383c5;
}
.list_block .event {
	background: #fecf5f;
}
.list_block .book {
	background: #8be3de;
}
.list_block .printing {
	background: #8be3de;
}
.list_block .supply {
	background: #8be3de;
}

/* list_block_head
 * ------------------------- */
.list_block_head {
	cursor: pointer;
}
/* list_block_title 20140805 */
.list_block_title {
	height: 68px;
	padding: 27px 0 0 20px;
	box-sizing: border-box;
	line-height: 1em;
	font-size: 19px;
	font-weight: normal;
	border-radius: 10px 10px 0px 0px;
	-webkit-border-radius: 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px;
}
.list_block_title.recommend {
	height: 53px;
	padding: 21px 0 0 17px;
	font-size: 15px;
	font-weight: bold;
	background: #e0e0e0;
}
.list_block_title.related {
	height: 53px;
	padding: 21px 0 0 17px;
	font-size: 15px;
	font-weight: bold;
	background: #f3e3e3;
}
.list_block_title.special {/* 20140806 */
	background: #e0e0e0;
}
.list_block_title.pink {/* 20140806 */
	background: #f3e3e3;
}
.list_block_title .link_button {
	float: right;
	display: inline-block;
	padding: 6px 10px 4px;
	vertical-align: middle;
	font-size: 12px;
	background: #f2f2f2;
	margin: -5px 15px 0 0;
}
.list_block_title .link_button:hover {
	text-decoration: none;
}
.list_block_title .button {
	float: right;
	display: inline-block;
	padding: 4px 5px 2px;
	vertical-align: middle;
	font-size: 12px;
	margin: -5px 15px 0 0;
	cursor: pointer;
}
/* left_title */
.list_block_head .left_title {
	position: relative;
	float: left;
	width: 50%;
	height: 226px;
	padding: 37px 30px 0;
	box-sizing: border-box;
	border-radius: 10px 0px 0px 0px;
	-webkit-border-radius: 10px 0px 0px 0px;
	-moz-border-radius: 10px 0px 0px 0px;
}
.list_block_head .left_title .title {
	text-align: center;
	font-size: 24px;
	padding-bottom: 20px;
	border-bottom: 1px solid #000;
	margin-bottom: 20px;
}
.list_block_head .left_title .text {
	margin-bottom: 30px;
	font-weight: bold;
}
.list_block_head .left_title .links span {
	float: left;
	display: block;
	font-weight: bold;
	padding: 5px 0 3px;
}
.list_block_head .left_title .links a {
	float: right;
	display: block;
	font-weight: bold;
	background: #fff;
	padding: 5px 10px 3px;
}
.list_block_head .left_title .links a:hover {
	text-decoration: none;
}
/* right_img */
.list_block_head .right_img {
	position: relative;
	float: right;
	width: 50%;
	height: 226px;
	text-align: right;
	overflow: hidden;
}
.list_block_head .right_img img {
	position: relative;
	float: right;
	vertical-align: bottom;
	border-radius: 0 10px 0 0;
	-webkit-border-radius: 0 10px 0 0;
	-moz-border-radius: 0 10px 0 0;
}
/* list_block_body
 * ------------------------- */
/* -- add print_detail -- */
.print_detail {
	padding: 30px;
	font-size: 15px;
}
.print_detail a {
	color: #ee9194;
	text-decoration: underline;
}
.print_detail a:hover {
	text-decoration: none;
}
.print_detail_head {
	margin: 0 0 20px;
}
.print_detail_head .img {
	float: left;
	width: 120px;
}
.print_detail_head .img img {
	width: 100%;
}
.print_detail_head .text {
	float: right;
	width: 390px;
}
.print_detail_head .text table {
	width: 100%;
}
.print_detail_head .text table th {
	font-weight: bold;
	padding: 5px 0px;
}

/* -- print_table -- */
.print_table {
	width: 100%;
}
.print_table th {
	width: 125px;
	background: #ededed;
	padding: 15px;
	vertical-align: top;
	font-weight: bold;
	border-top: 1px solid #e0e0e0;
	border-left: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}
.print_table th.sub {
	width: 120px;
	background: #fafafa;
	padding: 15px;
	vertical-align: top;
	border-top: 1px solid #e0e0e0;
	border-left: 0px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}
.print_table td {
	padding: 15px;
	vertical-align: top;
	border-top: 1px solid #e0e0e0;
	border-right: 1px solid #e0e0e0;
	border-bottom: 1px solid #e0e0e0;
}

/* --list_img-- */
.list_block_body .list_img {
}
.list_block_body .list_img li {
	float: left;
	width: 50%;
	height: 130px;
	border-bottom: 2px solid #faf9f2;
	overflow: hidden;
}
.list_block_body .list_img li.noline {
	border-right: 0px !important;
}
.list_block_body .list_img .img {
	float: left;
	display: inline-block;
	width: 150px;
	height: 130px;
	text-align: center;
	overflow: hidden;
	position:relative;
}

.topics_category .list_block_body .list_img .img {
	width:170px;
}

.list_block_body .list_img .img img {
	vertical-align: bottom;
	width:110%;
	position:relative;
	left:-5%;

}
.topics_category .list_block_body .list_img .img img {
	width:100%;
	position:static;
}

.list_block_body .list_img .text {
	float: left;
	display: inline-block;
	width: 170px;
	height: 130px;
	padding: 15px 12px 0;
	box-sizing: border-box;
}
.list_block_body .list_img .text .label {/* 20140806 */
	display: inline-block;
	font-weight: bold;
	background: #ba0000;
	font-size: 11px;
	color: #fff;
	padding: 3px 10px 1px;
	margin: 0 0 15px;
}
.list_block_body .list_img .text .title {
	line-height: 1.3em;
	margin-bottom: 10px;
}
.list_block_body .list_img .text .body {/* 20140806 */
	margin-bottom: 15px;
}
.list_block_body .list_img .text .links span {
	float: left;
	display: block;
	font-weight: bold;
	font-size: 11px;
	color: #999;
	padding: 3px 0 1px;
}
.list_block_body .list_img .text .links a {
	float: right;
	display: block;
	font-weight: bold;
	background: #f2f2f2;
	font-size: 11px;
	padding: 3px 10px 1px;
}
.list_block_body .list_img .text .links a:hover {
	text-decoration: none;
}
/* -- list_img (add fullsize)20140805 -- */
.list_block_body .list_img.fullsize {
	padding: 0 0;
	border-top: 2px solid #faf9f2;
}
.list_block_body .list_img.fullsize li {
	float: none;
	width: 100%;
}
.list_block_body .list_img.fullsize .text {
	width: 490px;
	padding: 15px 30px 0 25px;
	position: relative;
}

.topics_category .list_block_body .list_img.fullsize .text {
	width: 470px;
}

.list_block_body .list_img.fullsize .text .title {
	margin-bottom: 0;
	font-size: 15px;
}
.list_block_body .list_img.fullsize .text .links span {
	float: none;
	padding: 0;
}
.list_block_body .list_img.fullsize .text .links a {
	float: none;
	position: absolute;
	left: 25px;
	bottom: 20px;
}
/* -- list_img (add special)20140806 -- */
.list_block_body .list_img.special {
	padding: 0 0;
	border-top: 1px solid #faf9f2;
}
.list_block_body .list_img.special li {
	float: none;
	width: 100%;
	height: 320px;
	border-bottom: 0px;
}
.list_block_body .list_img.special .img {
	width: 320px;
	height: 320px;
	border-radius: 0 0 0 10px;
	-webkit-border-radius: 0 0 0 10px;
	-moz-border-radius: 0 0 0 10px;
}

.list_block_body .list_img.special .img img{
	width:100%;
}

.list_block_body .list_img.special .text {
	width: 320px;
	height: 320px;
	padding: 15px 30px 0;
	box-sizing: border-box;
}
.list_block_body .list_img.special .text .title {
	font-size: 17px;
}
/* -- list_img (add half)20140806 -- */
.list_block_body .list_img.half {
	padding: 0 0;
	border-top: 0px solid #faf9f2;
}
.list_block_body .list_img.half li {
	width: 319px;
	height: 350px;
	border-top: 2px solid #faf9f2;
	border-bottom: 0px;
	border-right: 2px solid #faf9f2;
}
.list_block_body .list_img.half .img {
	float: none;
	width: 319px;
	height: 225px;
	margin: 0 0 -6px;
}
.list_block_body .list_img.half .text {
	float: none;
	width: 319px;
	height: 125px;
	padding: 15px 15px 0;
	position: relative;
}
.list_block_body .list_img.half .text .title {
	font-size: 15px;
}
.list_block_body .list_img.half .text .label {
	background: none;
	color: #ba0000;
	padding: 0;
	margin: 0 0 3px;
}
.list_block_body .list_img.half .text .links {
	position: absolute;
	width: 289px;
	left: 15px;
	bottom: 15px;
}
/* -- list_img (add nolabel)20140806 -- */
.list_block_body .list_img.half.nolabel li {
	width: 319px;
	height: 325px;
	border-top: 2px solid #faf9f2;
	border-bottom: 0px;
	border-right: 2px solid #faf9f2;
}
.list_block_body .list_img.half.nolabel .text {
	height: 100px;
}

/* -- list_img (add triple)20140806 -- */
.list_block_body .list_img.triple {
	padding: 0 0;
	border-top: 0px solid #faf9f2;
}
.list_block_body .list_img.triple li {
	width: 212px;
	height: auto;
	border-top: 2px solid #faf9f2;
	border-bottom: 0px;
	border-right: 2px solid #faf9f2;
	position: relative;
	padding-bottom: 40px;
}
.list_block_body .list_img.triple .img {
	float: none;
	width: 212px;
	height: 152px;
	margin: 0 0;
}
.list_block_body .list_img.triple .text {
	float: none;
	width: 212px;
	height: auto;
	padding: 10px 15px 0px;
}
.list_block_body .list_img.triple .text .title {
}
.list_block_body .list_img.triple .text .label {
	background: none;
	color: #ba0000;
	padding: 0;
	margin: 0 0 0px;
}
.list_block_body .list_img.triple .text .links {
	position: absolute;
	width: 182px;
	left: 15px;
	bottom: 15px;
}
.list_block_body .list_img.triple li.link_li {
	clear: both;
	width: 100%;
	padding: 15px 25px 10px;
	box-sizing: border-box;
	border-right: 0px;
}
.list_block_body .list_img.triple li.link_li a {
	display: block;
	padding-left: 15px;
	margin-bottom: 5px;
	color: #bb0000;
	font-weight: bold;
	background: url(../img/contents/index/icon_arrow_red.png) no-repeat left 3px;
}
/* -- list_img (add print)20140812 -- */
.list_block_body .list_img.print {
	padding: 0 0;
	border-top: 0px solid #faf9f2;
}
.list_block_body .list_img.print li {
	width: 212px;
	height: auto;
	border-top: 2px solid #faf9f2;
	border-bottom: 0px;
	border-right: 2px solid #faf9f2;
}
.list_block_body .list_img.print li.noline {
	border-right: 0px;
}
.list_block_body .list_img.print .img {
	float: none;
	width: 212px;
	height: 150px;
}
.list_block_body .list_img.print .text {
	float: none;
	width: 212px;
	height: auto;
	padding: 10px 15px 20px;
	position: relative;
}
.list_block_body .list_img.print .text .title {
	font-size: 15px;
	color: #ba0000;
}
.list_block_body .list_img.print .text table {
	margin: 0 0 5px;
	font-size: 12px;
}
.list_block_body .list_img.print .text table th {
	font-weight: bold;
	padding: 0 0 3px;
	vertical-align: top;
}
.list_block_body .list_img.print .text table td {
	vertical-align: top;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
.list_block_body .list_img.print .text table td span {
	display: inline-block;
	padding: 3px 2px 2px;
	line-height: 1em;
	margin-right: 2px;
	background: #383838;
	color: #fff;
	letter-spacing: normal; /* 文字間を通常に戻す */
}
.list_block_body .list_img.print .text table td span.none {
	background: #ccc;
}
.list_block_body .list_img.print .text p {
	margin: 0 0 15px;
}
.list_block_body .list_img.print .text .links {
	position: relative;
	width: auto;
	text-align: center;
	left: auto;
	bottom: auto;
}
.list_block_body .list_img.print .text .links a {
	float: none;
	display: inline-block;
}
.list_block_body .list_img.print li.contact_li {
	clear: both;
	width: 100%;
	padding: 40px 0;
	box-sizing: border-box;
	border-right: 0px;
	text-align: center;
}
.list_block_body .list_img.print li.contact_li p {
	margin: 0 0 20px;
}
.list_block_body .list_img.print li.contact_li .button {
	display: inline-block;
	width: 320px;
	padding: 20px 0;
	color: #fff;
	font-weight: bold;
	font-size: 16px;
	background: #bb0000;
}
.list_block_body .list_img.print li.contact_li .button:hover {
	text-decoration: none;
	background: url(../img/common/icon_arrow.png) no-repeat 290px center #bb0000;
}
/* -- list_img (add four_print)20140812 -- */
.list_block_body .list_img.four_print {
	padding: 0 0;
	border-top: 0px solid #faf9f2;
}
.list_block_body .list_img.four_print li {
	width: 158px;
	height: auto;
	border-top: 2px solid #faf9f2;
	border-bottom: 0px;
	border-right: 2px solid #faf9f2;
	position: relative;
	padding-bottom: 40px;
}
.list_block_body .list_img.four_print li.noline {
	border-right: 0px;
}
.list_block_body .list_img.four_print .img {
	float: none;
	width: 120px;
	height: 60px;
	padding:10px 0 0 10px;
}
.list_block_body .list_img.four_print .text {
	float: none;
	width: 158px;
	height: auto;
	padding: 10px 12px 0px;
}
.list_block_body .list_img.four_print .text .title {
	font-size: 15px;
	color: #ba0000;
}
.list_block_body .list_img.four_print .text table {
	margin: 0 0 5px;
	font-size: 12px;
}
.list_block_body .list_img.four_print .text table th {
	font-weight: bold;
	padding: 0 0 3px;
	vertical-align: top;
}
.list_block_body .list_img.four_print .text table td {
	vertical-align: top;
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
}
.list_block_body .list_img.four_print .text table td span {
	display: inline-block;
	padding: 3px 2px 2px;
	line-height: 1em;
	margin-right: 2px;
	background: #383838;
	color: #fff;
	letter-spacing: normal; /* 文字間を通常に戻す */
}
.list_block_body .list_img.four_print .text table td span.none {
	background: #ccc;
}
.list_block_body .list_img.four_print .text p {
	margin: 0 0 15px;
}
.list_block_body .list_img.four_print .text .links {
	position: absolute;
	width: 128px;
	text-align: center;
	left: 15px;
	bottom: 20px;
}
.list_block_body .list_img.four_print .text .links a {
	float: none;
	display: inline-block;
}
.list_block_body .list_img.four_print li.contact_li {
	clear: both;
	width: 100%;
	padding: 40px 0;
	box-sizing: border-box;
	border-right: 0px;
	text-align: center;
}
.list_block_body .list_img.four_print li.contact_li p {
	margin: 0 0 15px;
	font-weight: bold;
	font-size: 15px;
}
.list_block_body .list_img.four_print li.contact_li .button {
	display: inline-block;
	width: 320px;
	padding: 20px 0;
	color: #fff;
	font-weight: bold;
	font-size: 17px;
	background: url(../img/common/icon_arrow.png) no-repeat 295px center #bb0000;
}
.list_block_body .list_img.four_print li.contact_li .button:hover {
	text-decoration: none;
}

/* --list_text-- */
.list_block_body .list_text li {
	padding: 18px 18px 18px 38px;
	background: url(../img/common/icon_dot_gray.png) no-repeat 18px 21px;
	border-top: 2px solid #faf9f2;
}
.list_block_body .list_text li:first-child {
	border-top: 0px;
}
.list_block_body .list_text li span {
	margin-left: 0px;
	color: #999;
	font-size: 11px;
}
.list_block_body .list_text li.link_all {
	padding: 18px 18px 18px 38px;
	background: url(../img/common/icon_arrow_red.png) no-repeat 21px center;
	border-top: 2px solid #faf9f2;
}
.list_block_body .list_text li.link_all a {
	color: #bb0000;
	font-weight: bold;
}
/* -- list_text  (add noborder) 20140805 -- */
.list_block_body .list_text.noborder {
	padding: 25px 0;
}
.list_block_body .list_text.noborder li {
	padding: 5px 70px 5px 38px;
	background-position: 18px 8px;
	border-top: 0px;
}
.list_block_body .list_text.noborder li span {
	margin-left: 0px;
	color: inherit;
	font-size: inherit;
}
/* -- list_text  (add detail_list) 20140805 -- */
.list_block_body .list_text.detail_list {
	padding: 15px 0;
}
.list_block_body .list_text.detail_list li {
	padding: 5px 70px 5px 38px;
	background-position: 18px 8px;
	border-top: 0px;
}
.list_block_body .list_text.detail_list li span {
	margin-left: 0px;
	color: inherit;
	font-size: inherit;
}
/* -- list_text  (add step_list) 20140812 -- */
.list_block_body .subtitle_p {
	padding: 20px 30px 0px;
	font-weight: bold;
}
.list_block_body .title_h {
	padding: 5px 0px 10px;
	font-size: 17px;
	color: #be1616;
	margin: 0 30px;
	border-bottom: 1px solid #333;
}
.list_block_body .list_text.step_list {
	padding: 15px 0 25px;
}
.list_block_body .list_text.step_list li {
	background: none;
	padding: 5px 30px 5px 30px;
	border-top: 0px;
}
.list_block_body .list_text.step_list li span {
	margin-left: 0px;
	background: #383838;
	color: #fff;
	font-size: 12px;
	padding: 2px 5px 0px;
	margin: 0 10px 0 0;
}

/* explain_icon
 * ------------------------- */
.explain_icon {
	width: 100%;
	margin: -10px 0 25px;
}
.explain_icon th {
	width: 80px;
	vertical-align: top;
	font-weight: bold;
}
.explain_icon td {
	vertical-align: top;
}
.explain_icon td p {
	display: inline-block;
	margin: 0 10px 5px 0;
}
.explain_icon td p span {
	display: inline-block;
	padding: 3px 2px 2px;
	line-height: 1em;
	font-size: 12px;
	margin-right: 2px;
	background: #383838;
	color: #fff;
	letter-spacing: normal;
}

/*/////////////////////////////
 detail_block 20140805
 /////////////////////////////*/
/* detail_block
 * ------------------------- */
.detail_block {
	padding: 30px;
	background: #fff;
	border-radius: 10px;
	-webkit-border-radius: 10px;
	-moz-border-radius: 10px;
	margin-bottom: 30px;
	position: relative;
}
/* detail_block_head
 * ------------------------- */
.detail_block_head {
}
/* detail_block_title */
.detail_block_title {
	padding: 0 0 25px;
	border-bottom: 1px solid #000;
	margin: 0 0 25px;
	line-height: 1.2em;
	font-size: 21px;
	color: #333;
}
/* detail_block_body
 * ------------------------- */
/* text */
.detail_block_body .text {
/*
	float: left;
	width: 285px;
*/
}
.detail_block_body .text .body {
	margin: 0 0 20px;
}


@-moz-document url-prefix() {
	@media screen and (min-width: 730px) {
	.articles .box-image-double {
		width:644px;
	}
	.articles .box-text {
		width:644px;
	}

	}
}

.detail_block_body .text .link,
.detail_block_body .text .read_more a {
	display: inline-block;
	background: #bb0000;
	color: #fff;
	font-weight: bold;
	padding: 6px 30px 4px;
}
.detail_block_body .text .link:hover,
.detail_block_body .text .read_more a:hover {
	text-decoration: none;
}
/* img */
.detail_block_body .img {
	float: right;
	display: inline-block;
	width: 275px;
	height: 194px;
	text-align: center;
	overflow: hidden;
}
.detail_block_body .img img {
	vertical-align: bottom;
}
/* detail_block_body
 * -- add detail_all --
 * ------------------------- */
/* text */
.detail_block_body.detail_all .text {
	float: none;
	width: auto;
	font-size: 15px;
	line-height: 1.8em;
	padding: 0 0 10px;
	word-wrap: break-word;
}
/* img */
.detail_block_body.detail_all .img {
	float: none;
	width: 100%;
	height: auto;
	margin: 0 0 -6px;
}
.detail_block_body.detail_all .detail_reference {
	padding: 20px;
	background: #f9f9f9;
}
.detail_block_body.detail_all .detail_reference a {
	color: #ba0909;
}

/* detail_sns_buttons
 * ------------------------- */
.detail_sns_buttons {
	text-align: center;;
	margin: 0 0 35px;
	clear:both;
}


/* detail_banners
 * ------------------------- */
.detail_banners {
	text-align: center;
	margin: 0 0 30px;
}
.detail_banners a {
	display: inline-block;
}
.detail_banners a img {
	vertical-align: bottom;
}

/* detail_amazon
 * ------------------------- */
.detail_amazon {
	margin: 0 0 30px;
}
.detail_amazon .title {
	padding: 2px 10px;
	background: #cccccc;
	color: #fff;
	font-size: 11px;
	text-align: right;
}
.detail_amazon .body {
	padding: 20px;
	text-align: center;
	background: #fff;
}
.detail_amazon .body p a {
	color: #666;
	font-size: 11px;
}

/*/////////////////////////////
 offer_block 20140811
 /////////////////////////////*/
.offer_block {

}
/* offer_block_tab
 * ------------------------- */
/* ul,li */
.offer_block_tab ul {
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	border-bottom: 5px solid #b70812;
}
.offer_block_tab ul.profile {
	letter-spacing: -.40em; /* 文字間を詰めて隙間を削除する */
	border-bottom: 5px solid #383838;
}
.offer_block_tab ul li {
	display: inline-block;
	vertical-align: bottom;
	letter-spacing: normal; /* 文字間を通常に戻す */
}
/* item */
.offer_block_tab ul li a {
	display: block;
	width: 319px;
	height: 0px;
	padding-top: 50px;
	overflow: hidden;
	vertical-align: bottom;
}
.offer_block_tab ul li.item01 a {
	margin-right: 2px;
	background: url(../img/offer/tab_sprite.png) no-repeat left top;
}
.offer_block_tab ul li.item02 a {
	background: url(../img/offer/tab_sprite.png) no-repeat -321px top;
}
.offer_block_tab ul li.item01 a:hover, .offer_block_tab ul li.item01 a.active {
	background-position: left -55px;
}
.offer_block_tab ul li.item02 a:hover, .offer_block_tab ul li.item02 a.active {
	background-position: -321px -55px;
}

/* offer_block_head
 * ------------------------- */
.offer_block_head {
	padding: 20px;
	background: #e0e0e0;
}
.offer_block_head .subtitle {
	font-weight: bold;
	margin: 0 0 5px;
}
.offer_block_head > .title {
	font-size: 19px;
}
.offer_block_head > .title a {
	text-decoration: underline;
}
.offer_block_head > .title a:hover {
	text-decoration: none;
}

/* offer_block_body
 * ------------------------- */
.offer_block_body {
	padding: 25px 30px 40px;
	background: #fff;
	margin: 0 0 4px;
}
/* img */
.offer_block_body > .img {
	float: left;
	width: 212px;
}
.offer_block_body > .img img {
	width: 100%;
	margin-bottom: -3px;
}
/* text */
.offer_block_body > .text {
	float: right;
	width: 340px;
}
.offer_block_body > .text > .title {
	font-size: 15px;
	color: #ba0000;
	margin: 0 0 20px;
}
.offer_block_body > .text table {
	margin: 0 0 20px;
}
.offer_block_body > .text table th {
	padding: 10px 0 10px 10px;
	background: #ededed;
	width: 80px;
	text-align: left;
	font-weight: bold;
	border: 1px solid #e0e0e0;
}
.offer_block_body > .text table td {
	padding: 10px;
	vertical-align: top;
	border: 1px solid #e0e0e0;
}
.offer_block_body > .text .link_button {
	text-align: right;
}
.offer_block_body > .text .link_button a {
	display: inline-block;
	text-align: center;
	width: 180px;
	height: 40px;
	padding-top: 14px;
	line-height: 1em;
	box-sizing: border-box;
	background: #bb0000;
	color: #fff;
	font-weight: bold;
}
.offer_block_body > .text .link_button a:hover {
	text-decoration: none;
}

/* offer_block_body(add pickup)
 * ------------------------- */
.offer_block_body.pickup {
	padding: 25px 30px;
	border-radius: 10px 10px 0px 0px;
	-webkit-border-radius: 10px 10px 0px 0px;
	-moz-border-radius: 10px 10px 0px 0px;
}
.offer_block_body.pickup .title {
	margin: 0 0 10px;
}
/* slide_block */
.offer_slide_block {
	margin: 0 0 20px;
}
/* slider */
.offer_slider {
	float: left;
	display: table;
	width: 420px;
	height:135px;
	overflow:hidden;
}
.offer_slider .prev, .offer_slider .next {
	display: table-cell;
	width: 25px;
	text-align: center;
	vertical-align: middle;
	background: #383838;
	cursor: pointer;
}
.offer_slider .slide {
	width: 370px;
	padding: 20px 10px 20px 20px;
	box-sizing: border-box;
	background: #f9f9f9;
}
.offer_slider .slide > .img {
	float: left;
	width: 120px;
	height: 85px;
	overflow: hidden;
	text-align: center;
}
.offer_slider .slide > .img img {
	width: 100%;
}
.offer_slider .slide > .text {
	float: right;
	padding: 5px 0;
	box-sizing: border-box;
	width: 205px;
}
.offer_slider .slide > .text h4 {
	margin: 0 0 5px;
}
.offer_slider .slide > .text h4 a {
	color: #ba0000;
	font-size: 15px;
	text-decoration: underline;
}
/* banner */
.offer_slide_block .offer_banner {
	float: right;
	width: 140px;
}
.offer_slide_block .offer_banner p {
	font-size: 12px;
	color: #bb0000;
	line-height: 1.3em;
}
/* label */
.offer_label_block {
	display: table;
	width: 100%;
	margin: 0 0 5px;
}
.offer_label_block .type {
	display: table-cell;
	padding: 5px 0 0;
	vertical-align: top;
	text-align: center;
	width: 65px;
	color: #fff;
	font-weight: bold;
	background: #383838;
}
.offer_label_block .lists {
	margin: 0 0 -5px;
}
.offer_label_block .lists ul {
	padding: 0 5px;
	display:inline-block;
	width:100%;
	box-sizing:border-box;
	margin-bottom: -6px;
}
.offer_label_block .lists ul li {
	float: left;
}
.offer_label_block .lists ul li a {
	display: inline-block;
	margin: 0 5px 5px 0;
	line-height: 1em;
	padding: 8px 10px 6px;
	color: #333;
	background: #f6f6f6;
}
.offer_label_block .lists ul li a.active {
	color: #ba0000;
	background: #f9f9f9;
	font-weight: bold;
}
.offer_label_block .lists ul li a:hover {
	color: #ba0000;
	background: #fff5f5;
	text-decoration: none;
}

/* offer_block_body(add last)
 * ------------------------- */
.offer_block_body.last {
	padding: 25px 30px;
	background: #fff;
	border-radius: 0px 0px 10px 10px;
	-webkit-border-radius: 0px 0px 10px 10px;
	-moz-border-radius: 0px 0px 10px 10px;
}

/*/////////////////////////////
 book_list
 /////////////////////////////*/
.book_list {
	margin-bottom: 20px;
}

/* book_list_head
 * ------------------------- */
.book_list_head {
	padding: 20px 25px;
	background: #eaf7f5;
	margin-bottom: 30px;
}
.book_list_head .icon_month {
	float: left;
}
/* content */
.book_list_head .content {
	float: right;
	width: 495px;
}
.book_list_head .content .img {
	float: left;
	width: 160px;
}
.book_list_head .content .img img {
	max-width: 100%;
	vertical-align: bottom;
}
.book_list_head .content .img img:hover {
	text-decoration: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 0.8;
}
.book_list_head .content .text {
	float: right;
	width: 320px;
}
.book_list_head .content .text .title {
	font-size: 19px;
	color: #fc498c;
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
	margin-bottom: 15px;
	line-height: 1.5em;
}
.book_list_head .content .text .title a {
	color: #fc498c;
}
.book_list_head .content .text .title span {
	display: block;
	font-size: 15px;
}

/* book_list_nav 20140811
 * ------------------------- */
.book_list_nav {
	margin: 0 0 25px;
}
/* ul,li */
.book_list_nav ul {
	padding: 0px;
}
.book_list_nav ul li {
	float: left;
}
.book_list_nav.all ul li {
	font-size: 12px;
}
/* item */
.book_list_nav ul li a {
	display: inline-block;
	margin: 0 5px 5px 0;
	line-height: 1em;
	padding: 8px 10px 5px;
	color: #333;
	background: #eaf7f5;
}
.book_list_nav ul li a.active {
	color: #fff;
	background: #08b09c;
	font-weight: bold;
}
.book_list_nav ul li a:hover {
	color: #fff;
	background: #08b09c;
	text-decoration: none;
}
/* item(add all) */
.book_list_nav.all ul li a {
	padding: 8px 10.2px 6px;
}

/* book_list_body
 * ------------------------- */

/* li */
.book_list_body li {
	float: left;
	position: relative;
	width: 213px;
	padding: 30px 21px 20px;
	box-sizing: border-box;
	background: #fcfcfc;
}
.book_list_body li.colored {
	background: #f5f5f5;
}
/* figure,p */
.book_list_body li figure {
	height: 213px;
	text-align: center;
	padding-bottom: 20px;
	margin-bottom: 15px;
	overflow: hidden;
	background: url(../img/common/line_pink.png) no-repeat left bottom;
}
.book_list_body li.none figure {/*20140811*/
	background-image: none;
}
.book_list_body li figure img {
	height: 213px;
}
.book_list_body li figure img:hover {
	text-decoration: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 0.8;
}
.book_list_body li .text {
	font-weight: bold;
}
.book_list_body li .text span {
	color: #ff0064;
}
/* add label */
.book_list_body.label li {
	padding: 40px 21px 20px;
}
.book_list_body li .label_mark {
	position: absolute;
	top: 0px;
	left: 0px;
	padding: 3px 5px 2px;
	background: #4d4d4d;
	color: #fff;
	font-size: 12px;
}
/* read more */
.readmore {
	display: block;
	padding: 10px;
	margin-bottom: 20px;
	text-align: center;
	color: #fff;
	font-size: 15px;
	background: #06ae9a;
	cursor: pointer;
}
.readmore:hover {
	text-decoration: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 0.8;
}
#loading {
	display: none;
	text-align: center;
}
#pics {
	display: none;
}

/*/////////////////////////////
 book_detail 20140818
 /////////////////////////////*/

/* book_detail_head
 * ------------------------- */
.book_detail_head {
	padding: 30px 30px 15px;
	background: #eaf7f5;
	margin: 0 0 25px;
}
.book_detail_head .pagetitle {
	padding-bottom: 15px;
	border-bottom: 1px solid #ccc;
	background-position: left top;
	font-size: 28px;
}
.book_detail_head .detail_img {
	text-align: center;
	margin: 0 0 25px;
}
.book_detail_head .detail_img img {
	max-width:300px;
	/*border:1px solid #efefef;*/
}

/* text */
.book_detail_head .text {
	padding: 0 0 20px;
	margin: 0 0 20px;
	border-bottom: 1px solid #ccc;
}
.book_detail_head .title {
	font-size: 19px;
	color: #19b9a6;
	margin: 0 0 10px;
}
.book_detail_head .body {
	margin: 0 0 10px;
	font-size: 12px;
}
/* label */
.book_detail_label {
	display: table;
	width: 100%;
	margin: 0 0 15px;
}
.book_detail_label .type {
	display: table-cell;
	padding: 10px 10px 7px;
	vertical-align: top;
	text-align: left;
	line-height: 1em;
	width: 70px;
	color: #fff;
	font-weight: bold;
	background: #4d4d4d;
}
.book_detail_label .lists {
	margin: 0 -3px -5px 0;
}
.book_detail_label .lists ul {
	padding: 0 0 0 10px;
	display:inline-block;
	width:100%;
	box-sizing:border-box;
	margin-bottom: -6px;
}
.book_detail_label .lists ul li {
	float: left;
}
.book_detail_label .lists ul li a {
	display: inline-block;
	width: 158px;
	box-sizing: border-box;
	margin: 0 3px 5px 0;
	line-height: 1em;
	padding: 10px 0 8px;
	text-align: center;
	font-weight: bold;
}
.book_detail_label .lists ul li a:hover {
	text-decoration: none;
	filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80);
	opacity: 0.8;
}

/* ebook_affiliate_link */
.book_detail_label .lists ul.ebook_affiliate_link li a {
	width:117px;
}


/* label color */
.book_detail_label .amazon {
	background: #fa9a2f;
	color: #fff;
}
.book_detail_label .kindle {
	background: #666;
	color: #fff;
}
.book_detail_label .rakutenbooks {
	background: #be0711;
	color: #fff;
}
.book_detail_label .yodobashibooks {
	background: #006633;
	color: #fff;
}

.book_detail_label .rakutenkobo {
	background: #666;
	color: #fff;
}
.book_detail_label .magastore {
	background: #666;
	color: #fff;
}
.book_detail_label .zasshionline {
	background: #666;
	color: #fff;
}
.book_detail_label .newsstand {
	background: #666;
	color: #fff;
}
.book_detail_label .iBooks {
	background: #666;
	color: #fff;
}
.book_detail_label .yodobashi {
	background: #666;
	color: #fff;
}

/* book_detail_body
 * ------------------------- */
.book_detail_body{}
/* text */
.book_detail_body > .text{
	padding:15px 30px 20px;
}
.book_detail_body > .text .body{
	margin:0 0 30px;
	line-height:2em;
	font-size:15px;
}
.book_detail_body > .text .links{
	margin:0 0 30px;
	line-height:2em;
	font-size:15px;
}
.book_detail_body > .text .links li{
	padding-left:13px;
	background:url(../img/books/desc/icon_arrow_green.png) no-repeat left 7px;
}
.book_detail_body > .text .links li a{
	color:#07af9b;
	text-decoration:underline;
}
.book_detail_body > .text .links li a:hover{
	text-decoration:none;
}
/* book_review */
.book_review{
	margin:0 0 50px;
}
/* book_recommend
 * ------------------------- */
.book_recommend{
	padding:20px 15px 5px;
	margin:0 0 50px;
	background:#fafafa;
}
.book_recommend ul{
	margin-right:-10px;
}
.book_recommend ul li{
	float:left;
	margin:0 10px 10px 0;
	width:300px;
}
.book_recommend ul li figure{
	text-align:center;
	margin:0 0 10px;
}
.book_recommend ul li figure img{
	height:80px;
}
.book_recommend ul li p{
	line-height:1.5em;
	font-weight:bold;
}
.book_recommend ul li p span{
	display:inline-block;
	height:auto;
	line-height:1.2em;
	padding:1px 10px 0px;
	margin-right:5px;
	color:#fff;
	font-weight;bold;
	font-size:12px;
	background:#07AF9B;
}


.side_ranking {
/*
	background-color:#fff;
	-webkit-box-shadow:rgba(0, 0, 0, 0.0470588) 0px 0px 4px 4px;
	-webkit-border-radius:0 0 5px 5px;
	border-radius:0 0 5px 5px;
	box-sizing:border-box;
	padding:0px 0px 5px;
*/
}

.side-banner div[id^="google_ads_iframe"] {
	margin-bottom:10px;
}

body.index .dpf_large {
background-color:#faf9f2;
}

/* microad */
#contents #contentsHeader {
	margin-bottom:0;
}

.article_microad_unit {
	padding:10px 20px;
	margin-bottom:10px;
}

.news_micro_add_unit {
	zoom:1;
	margin-left:15px;
	margin-bottom:10px;
}

.news_micro_add_unit:after {
	content: "."; display: block; clear: both; height: 0px; visibility: hidden;
}

.news_micro_add_unit .left_unit {
	float:left;
}

.news_micro_add_unit .right_unit {
	margin-left:5px;
	float:left;
}

.header_buttons .buttons a.to_sp_btn {
	width:160px;
	background:#BB0000;
	color:#FFF;
	text-align:center;
	position:relative;
	font-weight:bold;
}

.header_buttons .buttons a.to_sp_btn::before {
	display:none;
}

/*
body.special_contents .link_block figure.img {
	border:2px solid #dfdfdf;
	
}
*/

/* 白地対応 */
@media screen and (-ms-high-contrast: active), (-ms-high-contrast: none) {
	.articles .article_section {
		width:640px;
	}
}

.articles .detail_block .detail_block_body {
	zoom:0.9;

-moz-transform:
  scale(0.921,0.921);
-moz-transform-origin:top left;

}

body.articles .text .article_section a {
	color:#0000EE;
}

body.articles .text .article_section strong {
	font-weight:bold;
}


.to_contents_list_sidebar {
	position:absolute;
	top:12px;left:240px;
	color:#FFF;padding:3px;
}

.to_contents_list_contents_page {
	position:absolute;
	top:15px;left:520px;
	color:#FFF;padding:3px;
	font-size:14px;
}

body.books .additional_text a {
	color:#0000EE;

}

body.news_detail .text .article_section a {
	color:#0000EE;
}


.side_contents_section_group {
	
}
.snav_body .side_contents_section_group li {
	display:inline;
	background:none;
	padding-left:0;
}

.snav_body .side_contents_section_group li a {
	display:inline;
	font-size:80%;
	text-decoration:underline;
}

.list_block_body .list_img.four_print .img img {
		width:100%;
        position:relative;
        left:0;
}

.microad_compass_unit:after {
	content: "."; display: block; clear: both; height: 0px; visibility: hidden;
}

.microad_compass_unit .microad_compass_box {
	float:left;
	margin:0 10px;
}
