/* 共通 */
.overlay {
	display:block;
	position:fixed;
	left:0;
	top:0;
	bottom:0;
	right:0;
	width:100%;
	height:100%;
	z-index:3000000000;
	background:rgba(0,0,0,0.5);
}
.overlay.bg01 {
	background:rgba(0,0,0,0.5);
}
.overlayContent {
	background:#FFF;
	position: absolute;
	width:90%;
	height:300px;
	left: 55%;
	top: 50%;
	margin-left: -50%;
	margin-top: -150px;
}
.overlayContent.wh01 , 
.overlayContent.wh03 {
	width:90%;
	height:300px;
	left: 55%;
	top: 50%;
	margin-left: -50%;
	margin-top: -150px;
}
@media only screen and (max-device-width: 767px)  and (orientation:portrait){
	.overlayContent.wh01 , 
	.overlayContent.wh03 {
		height:400px;
		margin-top: -200px;
	}
}
.overlayContent.wh02 {
	width:90%;
	height:160px;
	left: 55%;
	top: 50%;
	margin-left: -50%;
	margin-top: -80px;
}
.overlayClose {
	width:40px;
	height:40px;
	position:absolute;
	top:0;
	right:0;
}
.overlayClose span {
	height:100%;
	display:block;
	background:url(../../img/icn/icn_close.png) no-repeat center center;
	background-size:24px 24px;
}
.overlayClose span:hover {
	cursor: pointer;
}
.overlaySections {
	width:100%;
	position:relative;
}
.overlaySection {
}
.overlaySection .overlaySectionHeader {
	padding:5px 5px 5px 5px;
}
.overlaySection .overlaySectionContent {
	padding:5px 5px 5px 5px;
}
.overlaySection.mp > .overlaySectionHeader , 
.overlaySection.mp > .overlaySectionContent {
	padding:0;
}
.overlaySection.LV1 > .overlaySectionHeader {
	border-bottom:1px solid #333;
	position:absolute;
	top:0;
	left:0;
	right:0;
	height:40px;
	line-height:40px;
	padding:0 40px 0 5px;
	font-size:1.3em;
	white-space: nowrap;
	overflow: hidden;
	text-overflow: ellipsis;
	-webkit-text-overflow: ellipsis;
	-o-text-overflow: ellipsis;
}
.overlaySection.LV1 > .overlaySectionContent ,
.overlayContent.wh03 .overlaySection.LV1 > .overlaySectionContent {
	position:absolute;
	top:40px;
	left:0;
	right:0;
	height:260px;
	overflow:auto;
}
@media only screen and (max-device-width: 767px)  and (orientation:portrait){
	.overlaySection.LV1 > .overlaySectionContent ,
	.overlayContent.wh03 .overlaySection.LV1 > .overlaySectionContent {
		height:360px;
	}
}
.overlayContent.wh02 .overlaySection.LV1 > .overlaySectionContent {
	height:120px;
}
.overlaySection.LV2 {
	border-bottom:1px solid #EAEAEA;
}
.overlaySection.LV2:last-child {
	border-bottom:none;
}
.overlaySection.LV2 > .overlaySectionHeader {
	font-size:1.2em;
}
.overlaySection.LV2 > .overlaySectionContent {
}
.overlaySubSections {
	display:table;
	width:100%;
}
.overlaySubSections > .overlaySection {
	display:table-cell;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1279px) {
	.overlayContent {
		width:700px;
		height:500px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -250px;
	}
	.overlayContent.wh01 {
		width:700px;
		height:500px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -250px;
	}
	.overlayContent.wh02 {
		width:700px;
		height:160px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -80px;
	}
	.overlayContent.wh03 {
		width:700px;
		height:400px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -200px;
	}
	.overlaySection {
	}
	.overlaySection .overlaySectionHeader {
		padding:10px 10px 10px 10px;
	}
	.overlaySection .overlaySectionContent {
		padding:10px 10px 10px 10px;
	}
	.overlaySection.LV1 > .overlaySectionHeader {
		height:40px;
		line-height:40px;
		padding:0 40px 0 10px;
		font-size:1.4em;
	}
	.overlaySection.LV1 > .overlaySectionContent {
		top:40px;
		height:460px;
	}
	.overlayContent.wh02 .overlaySection.LV1 > .overlaySectionContent {
		height:120px;
	}
	.overlayContent.wh03 .overlaySection.LV1 > .overlaySectionContent {
		height:360px;
	}
}
@media only screen and (min-device-width: 1280px) {
	.overlayContent {
		width:700px;
		height:500px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -250px;
	}
	.overlayContent.wh01 {
		width:700px;
		height:500px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -250px;
	}
	.overlayContent.wh02 {
		width:700px;
		height:160px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -80px;
	}
	.overlayContent.wh03 {
		width:700px;
		height:400px;
		left: 50%;
		top: 50%;
		margin-left: -350px;
		margin-top: -200px;
	}
	.overlaySection {
	}
	.overlaySection .overlaySectionHeader {
		padding:10px 10px 10px 10px;
	}
	.overlaySection .overlaySectionContent {
		padding:10px 10px 10px 10px;
	}
	.overlaySection.LV1 > .overlaySectionHeader {
		height:40px;
		line-height:40px;
		padding:0 40px 0 10px;
		font-size:1.4em;
	}
	.overlaySection.LV1 > .overlaySectionContent {
		top:40px;
		height:460px;
	}
	.overlayContent.wh02 .overlaySection.LV1 > .overlaySectionContent {
		height:120px;
	}
	.overlayContent.wh03 .overlaySection.LV1 > .overlaySectionContent {
		height:360px;
	}
}
/* /共通 */


/* セット一覧 */
.overlaySetTitles , 
.overlaySetDetails {
	height:100%;
}
.overlaySetTitles ul.overlaySetTitleLists {
}
.overlaySetTitles ul.overlaySetTitleLists li.overlaySetTitleList {
	float:left;
	margin:0 1em 1em 0;
}
.overlaySetTitles .overlaySetTitleLists .overlaySetTitleList:after {
	content:"/";
}
.overlaySetTitles .overlaySetTitleLists .overlaySetTitleList:last-child:after {
	content:"";
}
.overlaySetTitles .overlaySetTitleLists .overlaySetTitleList div {
	display:inline-block;
}
.overlaySetTitles .overlaySetTitleLists .overlaySetTitleList div a {
	margin-right:1em;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1279px) {
	.overlaySetTitles ,
	.overlaySetDetails  {
		height:100%;
	}
	.overlaySetTitles ul.overlaySetTitleLists li.overlaySetTitleList {
		margin:0 1em 1em 0;
	}
}
@media only screen and (min-device-width: 1280px) {
	.overlaySetTitles , 
	.overlaySetDetails {
		height:100%;
	}
	.overlaySetTitles ul.overlaySetTitleLists li.overlaySetTitleList {
		margin:0 1em 0.5em 0;
	}
}
/* /セット一覧 */


/* 書籍詳細  */
.overlaySection.LV3.bookThumbs {
	width:100px;
	vertical-align:top;
	text-align:center;
}
.overlaySection.LV3.bookThumbs .bookThumb {
	width:90px;
	display:inline-block;
}
.overlaySection.LV3.bookThumbs .bookThumb a{
  text-decoration: none;
}
.overlaySection.LV3.bookThumbs .bookThumb img {
	max-width:100%;
	max-height:100%;
	-moz-box-shadow:0px 0px 5px rgba(0, 0, 0, 0.2);
	-webkit-box-shadow:0px 0px 5px rgba(0, 0, 0, 0.2);
	box-shadow:0px 0px 5px rgba(0, 0, 0, 0.2);
	border-width: 1px;
	border-style: solid;
	border-color: #EEE #DDD #DDD #EEE;
}
.overlaySection.LV3.bookThumbs .bookStatusProperty {
	margin-top:5px;
}
.overlaySection.LV3.bookThumbs .bookStatusProperty li {
	float:left;
	margin-right:3px;
	margin-top:5px;
}
.overlaySection.LV3.bookSaleInfos > .overlaySectionContent > .overlaySection {
	border-bottom:1px dotted #eaeaea;
}
.overlaySection.LV3.bookSaleInfos > .overlaySectionContent > .overlaySection:last-child {
	border-bottom:none;
}
.overlaySection.LV3.bookSaleInfos .bookAuthor ,
.overlaySection.LV3.bookSaleInfos .bookPublisher {
	display:inline-block;
	margin-right:10px;
}
.overlaySection.LV3.bookSaleInfos .bookAuthor a , 
.overlaySection.LV3.bookSaleInfos .bookPublisher a {
	margin-right:10px;
}
.overlaySection.LV4.free p {
	font-size:0.85em;
}
.overlaySection.LV4.free p .strong {
	font-weight: bold;
	color: #FF7556;
}
.overlaySection.LV4 .bookBtns {
	margin:10px 0 0 0;
}
.overlaySection.LV4 .bookBtns ul.bookBtnLists li {
	margin:0 0 10px 0;
}
.overlaySection.LV4 .bookBtns ul.bookBtnLists li:last-child {
	margin:0 0 0 0;	
}
.overlaySection.LV4 .bookBtns ul.bookBtnLists li.bookBtnListBuy > p {
	margin:0 0 5px 0;
	text-align:left;
	font-size:0.85em;
	color: #FF6735;
	font-weight:bold;
	line-height:1.3em;
}
.overlaySection.LV4.relate .overlaySectionContent ul li {
    display: inline-block;
    margin: 0px 10px 0px 0px;
    line-height: 1.5em;
}
.overlaySection.LV4 .bookPrices {
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists {
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li {
  display: inline-block;
  margin: 0;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li .title {
	display:inline-block;
	width:40px;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li .data {
	display:inline;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPrice .data {
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPrice .data.strong {
	color:#FF7556;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPrice .data .price {
	font-size:1.3em;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPrice .data.strong .price {
	font-weight:bold;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint {
  margin-bottom: 15px;
  font-weight: bold;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .title{
  width: auto;
  font-size: 0.7em;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .data{
  font-size: 0.9em;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .data.strong {
	font-weight:bold;
	color:#FF7556;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookOff .data {
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookOff .data .offPrice {
	font-size:1.1em;
	margin:0 10px 0 0;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookOff .data.strong  .offPrice {
	color:#FF7556;
	font-weight:bold;
}
.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookOff .data .basePrice {
	display:inline-block;
	font-size:0.85em;
	color:#999;
	text-decoration:line-through;
}
.overlaySection.LV4.paid p.endDate {
	font-size:0.8em;
	margin:10px 0 0 0;
	color:#999;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1279px) {
	.overlaySection.LV3.bookThumbs {
		width:150px;
	}
	.overlaySection.LV3.bookThumbs .bookThumb {
		width:130px;
	}
	.overlaySection.LV4 .bookInfos {
		margin:0;
		display:table;
		width:100%;
	}
	.overlaySection.LV4 .bookInfos .bookInfo {
		display:table-cell;
	}
	.overlaySection.LV4.free p {
		font-size:1.1em;
		line-height:1.5em;
	}
	.overlaySection.LV4 .bookBtns {
		display:table-cell;
		width:180px;
		padding:0 10px;
		text-align:right;
	}
	.overlaySection.LV4 .bookPrices > div {
		display:table;
	}

	.overlaySection.LV4 .bookPrices ul.bookPriceLists li {
	  display: block;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li .title {
		width:60px;
		display:table-cell;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li .data {
		display:table-cell;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint {
	  margin-left: 60px;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .title {
	  font-size: 1em;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .data {
	  padding-left: 2px;
	  font-size: 1.2em;
	}

}
@media only screen and (min-device-width: 1280px) {
	.overlaySection.LV3.bookThumbs {
		width:150px;
	}
	.overlaySection.LV3.bookThumbs .bookThumb {
		width:130px;
	}

	.overlaySection.LV4 .bookInfos {
		margin:0;
		display:table;
		width:100%;
	}
	.overlaySection.LV4 .bookInfos .bookInfo {
		display:table-cell;
	}
	.overlaySection.LV4.free p {
		font-size:1.1em;
		line-height:1.5em;
	}	
	.overlaySection.LV4 .bookBtns {
		display:table-cell;
		width:180px;
		padding:0 10px;
		text-align:right;
	}
	.overlaySection.LV4 .bookPrices > div {
		display:table;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li .title {
		width: 60px;
		display:table-cell;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li .data {
		display:table-cell;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint {
	  margin-left: 60px;
	  margin-top: -5px;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .title {
	  font-size: 1em;
	}
	.overlaySection.LV4 .bookPrices ul.bookPriceLists li.bookPoint .data {
	  padding-left: 2px;
	  font-size: 1.2em;
	}

}
/* /書籍詳細 */


/* レビューオーバーレイ */
.overlayReviewBtns {
	margin:10px 0 0 0;
	text-align:center;
}
.overlayReviewBtns ul li {
	display:inline-block;
}
.overlayReviewBtns ul li a.btn {
	min-width:120px;
}

@media only screen and (min-device-width: 768px) and (max-device-width: 1279px) {
}
@media only screen and (min-device-width: 1280px) {	
}
/* /レビューオーバーレイ */


/* 利用規約オーバーレイ */
.overlayTerms {
}
.overlayTerms > ul {
	list-style:inside disc;
	margin:0 0 10px 0;
}
.overlayTerms > p {
	text-align:center;
	margin:0 0 5px 0;
}
.overlayTermBtns {
	text-align:center;
	margin:0 0 10px 0;
}
.overlayTermBtns > ul > li {
	vertical-align:top;
	display:inline-block;
	text-align:center;
}
.overlayTermBtns > ul > li:first-child {
	margin-right:5px;
}
.overlayTermBtns > ul > li > p {
	font-size:0.85em;
	color:#555;
	width:130px;
}
.overlayTermInput {
	text-align:center;
}
.overlayTermInput input {
	vertical-align:middle;
}
.overlayTermInput label {
	font-size:0.9em;
}
@media only screen and (min-device-width: 768px) and (max-device-width: 1279px) {
	.overlayTerms > ul {
		margin:0 0 20px 0;
	}
	.overlayTermBtns {
		margin:0 0 20px 0;
	}
	.overlayTermBtns > ul > li > p {
		width:240px;
	}
}
@media only screen and (min-device-width: 1280px) {
	.overlayTerms > ul {
		margin:0 0 20px 0;
	}
	.overlayTermBtns {
		margin:0 0 20px 0;
	}
	.overlayTermBtns > ul > li > p {
		width:240px;
	}
}
/* /利用規約オーバーレイ */