/* http: //jigsaw.w3.org/css-validator/ */

/* Scroll bar fix for Firefox */
html{
	height: 100%;
}

/* body */
body{
	color: #333;
	font-size: 17px;
	line-height: 1.7;
	position: relative;
	font-family:
		"ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro",
		"Yu Gothic Medium", "游ゴシック Medium", "Yu Gothic", YuGothic, "游ゴシック", "游ゴシック体",
		"メイリオ", Meiryo,
		Osaka,
		"ＭＳ Ｐゴシック", "MS PGothic",
		sans-serif;
	background: url('../images/wood_tile.jpg');
}

dl, p, ul, ol {
	line-height: 1.6;
}

img{
	max-width: 100%;
	height: auto;
}

.wrapper{
	position: relative;
	margin:0 auto;
	padding-top: 1px;
	padding-bottom: 1px;
}

body, html{
	height: 100%;
}

.container{
	display: flex;
	flex-wrap: wrap;
}

.book_box{
	margin-top: 10px;
	margin-bottom: 15px;
}

.book_box .cmt,
.cmt{
	margin-top: 8px;
	margin-right: 4px;
	margin-left: 4px;
	border: none;
	background: url('../images/paper_tile2.jpg');
	box-shadow: 0px 1px 3px 2px rgba(0,0,0,0.2);
}

.book_box .cmt{
	min-height: 150px;
}

.cover_image{
	display: block;
	margin: 0 auto;
	box-shadow: 0px 3px 5px 3px rgba(0,0,0,0.15);
}

h1#site_title{
	color: #fff;
	text-shadow: 1px 2px 3px rgb(0,0,0);
	text-align: center;
}

h2{
	position: relative;
	margin-top: 100px;
	padding: 0.5em;
	background: #bb3322;
	color: white;
}

h2::before {
	position: absolute;
	content: '';
	top: 100%;
	left: 0;
	border: none;
	border-bottom: solid 15px transparent;
	border-right: solid 20px rgb(50, 30, 25);
}

#copyright{
	text-align: center;
}

.ads_name{
	display: none;
}

a{
	word-break: break-word;
}

/* ### for PC and tablet ### */
@media (min-width: 769px){
	body{
		font-family: 'Noto Sans JP', sans-serif;
	}
	body .pc{
		display: block;
	}
	body .sp{
		display: none;
	}
	.wrapper{
		width:1000px;
	}
	.book_box{
		width: 200px;
	}
	form#login_form{
		width: 400px;
		margin-left: auto;
		margin-right: auto;
		margin-top: 300px;
	}
}

/* ### for smartphone ### */
@media (max-width: 768px){
	body .pc{
		display: none;
	}
	body .sp{
		display: block;
	}
	h1#site_title{
		font-size: 1.4em;
	}
	.wrapper{
		width:96%;
	}
	.cover_image{
		width: 60%;
		height: auto;
	}
	.book_box{
		width: 50%;
	}
	.book_box .cmt{
		min-height: 200px;
	}
	form#login_form{
		margin-top: 50px;
		width: 92%;
		margin-left: auto;
		margin-right: auto;
	}
	form#login_form input[type="text"],
	form#login_form input[type="password"]
	{
		box-sizing: border-box;
		width: 100%;
	}
}


body .mt0{
	margin-top: 0 !important;
}

body .mt5{
	margin-top: 5px !important;
}

body .mt10{
	margin-top: 10px !important;
}

body .mt15{
	margin-top: 15px !important;
}

body .mt20{
	margin-top: 20px !important;
}

body .mt30{
	margin-top: 30px !important;
}

body .mt40{
	margin-top: 40px !important;
}

body .mt50{
	margin-top: 50px !important;
}

body .mt60{
	margin-top: 60px !important;
}

body .mt70{
	margin-top: 70px !important;
}

body .mt80{
	margin-top: 80px !important;
}

body .mt90{
	margin-top: 90px !important;
}

body .mt100{
	margin-top: 100px !important;
}

body .mb0{
	margin-bottom: 0 !important;
}

body .mb5{
	margin-bottom: 5px !important;
}

body .mb10{
	margin-bottom: 10px !important;
}

body .mb15{
	margin-bottom: 15px !important;
}

body .mb20{
	margin-bottom: 20px !important;
}

body .mb30{
	margin-bottom: 30px !important;
}

body .mb40{
	margin-bottom: 40px !important;
}

body .mb50{
	margin-bottom: 50px !important;
}

body .mb60{
	margin-bottom: 60px !important;
}

body .mb70{
	margin-bottom: 70px !important;
}

body .mb80{
	margin-bottom: 80px !important;
}

body .mb90{
	margin-bottom: 90px !important;
}

body .mb100{
	margin-bottom: 100px !important;
}

.book_eyecatch{
	text-align: center;
}

.book_eyecatch img{
	box-shadow: 0px 3px 5px 3px rgba(0,0,0,0.15);
}

.book_eyecatch a:hover{
/*	opacity: 0.8;*/
}

.click_cover{
	font-weight: 700;
	font-size: 1.2em;
	text-align: center;
}

.clear{
	clear: both;
}

.bold{
	font-weight: bold;
}

.small_font{
	font-size: 0.7em;
}

.login_link{
	text-align: center;
	margin-top: 50px;
}

.scroll-fade-up {
	opacity: 0;
	transform: translateY(80px);
	transition: opacity 0.8s ease, transform 0.8s ease;
}

.scroll-fade-up.is-show {
	opacity: 1;
	transform: translateY(0);
}



/* clearfix */
.clearfix:after{
	content: ".";
	display: block;
	height: 0;
	font-size:0;
	clear: both;
	visibility:hidden;
	line-height:0;
}

.clearfix{display: inline-block;}

/* Hides from IE Mac \*/
* html .clearfix {height: 1%;}
.clearfix{display:block;}
/* End Hack */
