@charset "UTF-8";

body{
	background-color:#005;
	color:#fff;
	
	font-size:1.0rem;
	line-height:2.0em;
}

h1{
	background-color:#c00;
	color:#fff;
	
	font-size:0.8rem;
	line-height:1.0em;
	padding:5px;
	white-space: nowrap;
	overflow:hidden;
	text-overflow: ellipsis;
}

h2{
	margin-bottom:10px;
}

h2 img{
	width:100%;
	vertical-align:bottom;
}

h3{
	margin-bottom:10px;
}

h3 img{
	width:100%;
	vertical-align:bottom;
}

#g-navi ul{
	margin-right:15%;
}

#g-navi li{
	width:20%;
	float:left;
}

#g-navi a{
	display:block;
	padding:5px 0;
}

#g-navi img{
	width:100%;
	vertical-align:bottom;
}

#header p.logo a{
	display:block;
}

#header p.logo img{
	width:100%;
	vertical-align:bottom;
}

#footer{
	border-top:solid 1px #fff;
}

#footer p.f-contact a{
	display:block;
}

#footer p.f-contact img{
	width:100%;
	vertical-align:bottom;
}

#footer address{
	font-size:0.6rem;
	line-height:1.0em;
	text-align:center;
	padding:10px 0;
}

#side-menu ul{
	margin-bottom:50px;
}

#side-menu a{
	display:block;
	padding:10px;
	border-top:solid 1px #f00;
	border-bottom:solid 1px #a00;
}

#side-menu a:hover{
	background-color:#f00;
	cursor:pointer;
}

#side-menu img{
	width:100%;
	vertical-align:bottom;
}

.castlist a{
	display:block;
	position:relative;
	margin:6px;
	margin-bottom:60px;
	padding:5px;
	border:solid 1px #fff;
	
	background-color:#f80;
	color:#fff;
	text-decoration:none;
}

.castlist p.thum img{
	width:100%;
	vertical-align:bottom;
}

.castlist div.states{
	position:absolute;
	bottom:-50px;
	left:0;
	
	width:95%;
	margin:0 2.5%;
	box-sizing:border-box;
	padding:5px;
	text-align:center;
	
	background-color:#c00;
	border:solid 1px #fff;
}

.castlist div.states p.name{
	font-size:0.7rem;
	line-height:1.0em;
	font-weight:bold;
	white-space: nowrap;
	overflow:hidden;
	text-overflow: ellipsis;
	
	padding-bottom:5px;
	border-bottom:solid 1px #fff;
	margin-bottom:5px;
}

.castlist div.states p.name span.age{
	display:inline-block;
	font-size:0.6rem;
	line-height:1.0em;
	font-weight:normal;
	margin:0 5px;
}

.castlist div.states p.size{
	font-size:0.4rem;
	line-height:1.5em;
	margin-bottom:5px;
}

.castlist div.states p.time{
	font-size:0.6rem;
	line-height:1.0em;
	font-weight:bold;
}

.castlist div.states p.time img{
	width:10px;
	height:10px;
	vertical-align:middle;
	margin-right:2.5px;
}

.castlist img.icon-new{
	position:absolute;
	top:-5px;
	left:-10px;
	width:40%;
	vertical-align:bottom;
}

.castlist img.icon-rank{
	position:absolute;
	top:-5px;
	left:-10px;
	width:40%;
	vertical-align:bottom;
}

.castlist div.states p.ready{
	font-size:0.6rem;
	line-height:2.0em;
	font-weight:bold;
}

.btn-detail{
	text-align:center;
	margin-bottom:20px;
}

.btn-detail a{
	display:block;
}

.btn-detail img{
	width:240px;
	vertical-align:bottom;
}

#pagetop{
    position: fixed;
    bottom: 20px;
    right: 20px;
}

#pagetop a{
    width: 50px;
    display: block;
}

#pagetop a:hover{
	opacity:0.8;
}

#pagetop img{
	width:100%;
	vertical-align:bottom;
}


.pager{
	margin:20px 0;
	text-align:center;
}

.pager li{
	display:inline-block;
	margin:0 2.5px;
}

.pager li span{
	display:block;
	width:40px;
	height:40px;
	line-height:40px;
	background-color:#c00;
	color:#fff;
	border-radius:5px;
	border:solid 2px #c00;
	font-weight:bold;
}

.pager li.active span{
	background-color:#fff;
	color:#c00;
}

.pager li a{
	display:block;
	color:#fff;
	text-decoration:none;
}

.pager li a:hover{
	text-decoration:none;
	background-color:#a00;
}

@media only screen and (min-width:800px){
	#wrap{
		width:100%;
		margin:0 auto;
		max-width:800px;
		border-right:solid 1px #c00;
		border-left:solid 1px #c00;
	}
}