@charset "utf-8";
/* CSS Document */
/*ポップアップ*/
/*remodal上書き*/
.remodal-overlay{
	background: rgba(18, 23, 26, 0.9);
	}
.remodal-wrapper{
	padding: 3vw 3vw;
	}
.remodal{
	background-color: rgba(0,0,0,0.8);
	color: rgba(255,255,255,0.96);
	margin-bottom: 5rem;
	padding: 6vw 4vw;
	max-width: 640px;
	}
.remodal-close{
	right: 0;
	left: auto;
	width: 40px;
	height: 40px;
	}
.remodal-close:before{
	font-size: 28px;
	line-height: 40px;
	width: 40px;
	}


/*モーダル内書誌情報*/
.remodal figure.books{
	display: flex;
	flex-direction: column;
	align-items: center;
	align-content: center;
	}
.remodal figure.books>figcaption{
		width: 100%;
	}
.remodal figure.books img{
	display: block;
	width: 70%;
	margin: 0 auto;
	box-shadow: 0px 2px 1px -1px rgba(0, 0, 0, 0.4), 0px 1px 1px 0px rgba(0, 0, 0, 0.28), 0px 1px 3px 0px rgba(0, 0, 0, 0.24);
	border: 1px solid rgba(255,255,255,0.12);
	border-radius: 1px;
	}
.remodal .books h4 {
	position: relative;
	padding: .5rem 1rem;
	width: calc(80% - 2px);
	margin: 1rem auto 0.75rem;
	text-align:center;
	min-height: 3rem;
	letter-spacing: 1px;
	}
.remodal .books h4 small{
	display: block;
	font-size: 0.8em;
	}
.remodal .books h4 span{
	display: block;
	font-weight: 900;
	font-size: 1.75em;
	word-break: keep-all;
	overflow-wrap: break-word;
	width: auto;
	/*max-width: calc(100% - 1rem);*/
	line-height: 1.162;
	/*margin-top: .41em;*/
	}
.remodal .books h4 b{
	display: block;
	margin: .5em auto;
	}
.remodal .books h4::before,.remodal .books h4::after {
	content: "";
	width: .38em;
	height: 100%;
	position: absolute;
	}
.remodal .books h4::before {
	border-left: solid 1px rgba(255, 255, 255, 0.6);
	border-top: solid 1px rgba(255, 255, 255, 0.6);
	border-bottom: solid 1px rgba(255, 255, 255, 0.6);
	top: 0;
	left: 0;
	}
.remodal .books h4::after {
	border-right: solid 1px rgba(255, 255, 255, 0.6);
	border-top: solid 1px rgba(255, 255, 255, 0.6);
	border-bottom: solid 1px rgba(255, 255, 255, 0.6);
	top: 0;
	right: 0;
	}
.remodal .books p{
	margin: 1.41em auto;
	padding: 0 1rem;
	}
.remodal .books .booklead{
	font-weight: 600;
	line-height: 1.62;
	margin: 1.62em auto;
	word-break: keep-all;
	overflow-wrap: break-word;
	/*font-size: 1.25rem;*/
	}
.remodal .books .author{
	letter-spacing: 1px;
	padding: 0 0.25em;
	}
.remodal .books .price{
	font-weight: 300;
	font-size: .85rem;
	}

	/*横長*/
	@media screen and (orientation: landscape) {
		.remodal{
			max-width: 1320px;
			padding: 3rem 2rem;
			}
		.remodal figure.books{
			flex-direction: row;
			justify-content: center;
			}
		.remodal figure.books>figcaption{
			width: 50%;
			}
		.remodal figure.books>div{
			width: 50%;
			max-height: 96vh;
			}
		.remodal figure.books img{}
		.remodal .btns{
			flex-direction: column;
			}
		}
/*横長かつ、横幅がXXXpx以上の場合*/
	@media screen and (orientation: landscape) and (min-width: 1024px) {
		.remodal .books h4 {
			font-size: 1.25rem;
		}
		.remodal .books p{
			font-size: 1.125rem;
			}
		
		
		}

/*ラインナップリスト内書誌情報*/
.lu figure.books{
	display: flex;
	border-bottom: 1px solid rgba(38, 50, 56,0.12);
	padding: 3.8vw 0;
	}
.lu figure.books>div{
	width: 30%;
	}
.lu figure.books>figcaption{
	width: 70%;
	}
.lu figure.books img{
	display: block;
	width: 70%;
	margin: 0 auto;
	border: 1px solid rgba(38, 50, 56,0.12);
	}
.lu .books h4 {
	position: relative;
	margin-bottom: .62rem;
	font-size: 1rem;
	}
.lu .books h4 small{
	font-size: 0.75em;
	display: block;
	}
.lu .books h4 b{
	margin-top: .41em;
	margin-right: .5em;
	font-size: 0.85rem;
	}
.lu .books h4 span{
	font-weight: 800;
	font-size: 1.125em;
	word-break: keep-all;
	overflow-wrap: break-word;
	line-height: 1.162;
	margin-top: .41em;
	}
.lu .books p{
	font-size: .9rem;
	margin-bottom: .41em;
	}
.lu .books .booklead{
	font-size: .8rem;
	line-height: 1.41;
	word-break: keep-all;
	overflow-wrap: break-word;
	}
.lu .books .author{
	margin-bottom: .62rem;
	}
.lu .books .price{
	font-weight: 300;
	font-size: .8rem;
	}
.lu .books .btns{
  flex-direction: row;
	justify-content: flex-end;
	padding: .31rem 0 0 0;
	}
.lu .books .btns a.btn{
	width: 42%;
	border: 1px solid #555;
	letter-spacing:normal; 
	font-size: 0.8rem;
	margin: .31rem .31rem 0 .31rem;
	}

/*ポップアップ動画　モーダル不使用*/
/*
#movie .remodal-close{
	top: -40px;
	}
#movie.remodal{
	margin: 0;
	padding: 0;
	max-width: inherit;
	}
*/


