@charset "UTF-8";

.castlist a{
	display:block;
	color:#000;
	
	box-sizing: border-box;
	padding:5px;
	
	height:100%;
}

.castlist a:hover{
	text-decoration: none;
	opacity: 0.8;
}

.castlist div.inner{
	box-sizing: border-box;
	padding:10px;
	
	background-color:#fff;
	color:#000;
	
	position: relative;
	
	height:100%;
}

.castlist div.inner p.attention{
	margin-bottom:10px;
	
	text-align: center;
	
	background-color:#000;
	color:#fff;
	
	font-weight:bold;
	
	font-size:0.8rem;
	line-height:30px;
}

.castlist div.inner p.type01{
	background-color:#a70012!important;
	color:#fff!important;
}

.castlist div.inner p.type02{
	background-color:#fff!important;
	color:#a70012!important;
}

.castlist div.inner p.type03{
	background-color:#fff!important;
	color:#a70012!important;
}

.castlist div.inner span.ol_top_left{
	position: absolute;
	top:0;
	left:0;
}

.castlist div.inner span.ol_top_left:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	top:0;
	left:0;
}

.castlist div.inner span.ol_top_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	top:0;
	left:0;
}

.castlist div.inner span.ol_top_right{
	position: absolute;
	top:0;
	right:0;
}

.castlist div.inner span.ol_top_right:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	top:0;
	right:0;
}

.castlist div.inner span.ol_top_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	top:0;
	right:0;
}

.castlist div.inner span.ol_bottom_left{
	position: absolute;
	bottom:0;
	left:0;
}

.castlist div.inner span.ol_bottom_left:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	left:0;
}

.castlist div.inner span.ol_bottom_left:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	left:0;
}

.castlist div.inner span.ol_bottom_right{
	position: absolute;
	bottom:0;
	right:0;
}

.castlist div.inner span.ol_bottom_right:before{
	display:block;
	content:"";
	
	width:30px;
	height:1px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	right:0;
}

.castlist div.inner span.ol_bottom_right:after{
	display:block;
	content:"";
	
	width:1px;
	height:30px;
	
	background-color:#444;
	position: absolute;
	bottom:0;
	right:0;
}

.castlist div.castimg{
	position: relative;
}

.castlist div.castimg p.thumbnail img{
	width:100%;
	vertical-align: bottom;
}

.castlist div.castimg p.icon-new{
	position: absolute;
	bottom: 23px;
	right: 0;
	z-index: 10;
}

.castlist div.castimg p.icon-new span.text{
	display:block;
	
	font-size:0.8rem;
	line-height:25px;
	font-weight: bold;
	
	text-align: center;
	
	width:80px;
	height:25px;
	
	background-color:rgba(0,0,0,0.90);
	color:#fff;
}

.castlist div.castimg p.icon-new img{
	width:80px;
	vertical-align: top;
}

.castlist div.castimg p.icon-rank{
	position: absolute;
	top:0;
	right:0;
	
	z-index: 10;
}

.castlist div.castimg p.icon-rank span.text{
	display:block;
	font-size:0.8rem;
	line-height:50px;
	font-weight: bold;
	
	text-align: center;
	
	width:50px;
	height:50px;
	
	background-color:rgba(0,0,0,0.90);
	color:#fff;
}

.castlist div.castimg p.icon-rank img{
	width:50px;
	vertical-align: bottom;
}

.castlist div.castimg p.standby{
	font-size:1.0rem;
	line-height:25px;
	font-weight:bold;
	
	text-align: center;
	
	width:100%;
	height:25px;
	
	background-color:rgba(0,0,0,0.90);
	color:#fff;
	
	position: absolute;
	bottom:0;
	left:0;
	
	z-index: 10;
	
	box-sizing: border-box;
	padding-left:0;
}

.castlist div.castimg p.standby span.note{
	position: absolute;
	top:-25px;
	left:0;
	
	font-size:0.8rem;
	line-height:25px;
	
	background-color:#444;
	color:#fff;
	
	width:70px;
}

.castlist div.castimg p.time{
	padding-left:0;
}

.castlist div.castimg p.time span.note{
	display:none;
}

@media only screen and (min-width: 720px){
	
	.castlist div.castimg p.standby{
		padding-left:70px;
	}
	
	.castlist div.castimg p.standby span.note{
		top:0;
	}
	
	.castlist div.castimg p.time{
		padding-left:0;
	}
	
}

.castlist div.casttext h4{
	font-weight:bold;
	color:#000;
	
	font-size:1.0rem;
	line-height:1.75em;
	
	text-align: center;
}

.castlist div.casttext h4 span.age{
	font-size:0.8rem;
	line-height:1.75em;
}

.castlist div.casttext h4 span.age:before{
	content:"（";
}

.castlist div.casttext h4 span.age:after{
	content:"）";
}

.castlist div.casttext p.copy{
	font-size:0.8rem;
	line-height:25px;
	height:25px;
	color:#444;
	
	text-align: center;
	
	white-space: nowrap;
	overflow:hidden;
	text-overflow: ellipsis;
}

.castlist div.casttext ul.size{
	font-size:0;
	line-height:1.0em;
	
	text-align: center;
}

.castlist div.casttext ul.size li{
	display:inline-block;
	font-size:0.8rem;
	line-height:1.75em;
}

.castlist div.casttext ul.size li:after{
	content:"/";
	
	box-sizing: border-box;
	padding:0 1.5px;
}

.castlist div.casttext ul.size li:last-child:after{
	display:none;
}

.castlist div.casttext ul.size li.tall:before{
	content:"T";
	
	box-sizing: border-box;
	padding-right:1.5px;
}

.castlist div.casttext ul.size li.bust:before{
	content:"B";
	
	box-sizing: border-box;
	padding-right:1.5px;
}

.castlist div.casttext ul.size li.bust span.cup{	
	font-size:0.6rem;
	line-height:1.75em;
}

.castlist div.casttext ul.size li.bust span.cup:before{
	content:"(";
	
	box-sizing: border-box;
	padding:0 1.5px;
}

.castlist div.casttext ul.size li.bust span.cup:after{
	content:")";
	
	box-sizing: border-box;
	padding:0 1.5px;
}

.castlist div.casttext ul.size li.waist:before{
	content:"W";
	
	box-sizing: border-box;
	padding-right:1.5px;
}

.castlist div.casttext ul.size li.hip:before{
	content:"H";
	
	box-sizing: border-box;
	padding-right:1.5px;
}

.castlist div.casttext ul.icon{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.castlist div.casttext ul.icon li{
	width:50%;
	
	text-align: center;
	margin-top:5px;
}

.castlist div.casttext ul.icon li:nth-child(odd){
	box-sizing: border-box;
	padding-right:2.5px;
}

.castlist div.casttext ul.icon li:nth-child(even){
	box-sizing: border-box;
	padding-left:2.5px;
}

.castlist div.casttext ul.icon li span.text{
	display:block;
	
	font-size:0.6rem;
	line-height:30px;
	font-weight: bold;
	
	text-align: center;
	
	background-color:rgba(0,0,0,0.90);
	color:#fff;
}

.castlist div.casttext ul.icon li img{
	width:100%;
	vertical-align: bottom;
}

/*----////////----SORT----////////----*/

.sort{
	
	box-sizing: border-box;
	padding:10px;
	
	width:100%;
	margin:0 auto;
	max-width: 1080px;
}

.sort p.nav-open{
	box-sizing: border-box;
	padding:0 10px;
	padding-left:30px;

	font-size:1.0rem;
	line-height:50px;
	font-weight: bold;
	
	background-color:#000;
	color:#fff;
	
	position: relative;
	
	border-radius:2.5px;
	
	background-image: url("../images/icon-search-white.png");
	background-repeat: no-repeat;
	background-size: 15px;
	background-position: center left 10px;
	
	max-width: 520px;
}

.sort p.nav-open.active{
	border-bottom-left-radius: 0;
	border-bottom-right-radius: 0;
}

.sort p.nav-open:hover{
	cursor: pointer;
}

.sort p.nav-open:before{
	content:"開ける";
	
	display:block;
	width:80px;
	
	background-color:#fff;
	
	font-size:0.6rem;
	line-height:25px;
	
	text-align: center;
	
	color:#000;
	
	position: absolute;
	top:12.5px;
	right:5px;
	
	border-radius:1.5px;
	
	background-image: url("../images/icon-arrow-down-black.png");
	background-repeat: no-repeat;
	background-size:15px;
	background-position: center left 5px;
}

.sort p.nav-open.active:before{
	content:"閉じる";
	
	display:block;
	width:80px;
	
	background-color:#fff;
	
	font-size:0.6rem;
	line-height:25px;
	
	text-align: center;
	
	color:#000;
	
	position: absolute;
	top:12.5px;
	right:5px;
	
	border-radius:2.5px;
	
	background-image: url("../images/icon-arrow-up-black.png");
	background-repeat: no-repeat;
	background-size:15px;
	background-position: center left 5px;
}

.sort div.post-content{
	display:none;
	
	box-sizing: border-box;
	padding:10px;
	
	font-size:0.8rem;
	line-height:1.75em;
	
	background-color:#fff;
	
	border-bottom-left-radius: 5px;
	border-bottom-right-radius: 5px;
}

.sort div.row{
	margin-bottom:20px;
}

.sort div.row:last-child{
	margin-bottom:0;
}

.sort ul.on_off{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	margin-top:10px;
}

.sort ul.on_off li{
	width:50%;
	
	box-sizing: border-box;
	padding:2.5px;
}

.sort label.label-checkbox{
	position: relative;
	cursor: default;
}

.sort label.label-checkbox input[type="checkbox"]{
	display:none;
}

.sort label.label-checkbox span.lever{
	display:block;
	color:#fff;
	
	box-sizing: border-box;
	padding:7.5px;
	border-radius:2.5px;
	text-align: center;
	cursor: pointer;
	
	background-color:#888;
}

.sort label.label-checkbox input[type="checkbox"]:checked + span.lever{
	background-color:#000;
}

.sort label.label-radio{
	position: relative;
	cursor: default;
}

.sort label.label-radio input[type="radio"]{
	display:none;
}

.sort label.label-radio span.lever{
	display:block;
	color:#fff;
	
	box-sizing: border-box;
	padding:7.5px 5px;
	border-radius:2.5px;
	text-align: center;
	cursor: pointer;
	
	background-color:#888;
}

.sort label.label-radio input[type="radio"]:checked + span.lever{
	background-color:#000;
}

@media only screen and (min-width: 720px){
	
	.sort ul.on_off li{
		width:calc(100%/3);
	}
	
}

@media only screen and (min-width: 960px){
	
	.sort ul.on_off li{
		width:25%;
	}
	
}

/*//////////----- CAST -----//////////*/

#cast div.content{
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

#cast article{
	width:50%;
}

@media only screen and (min-width: 720px){
	
	#cast article{
		width:calc(100%/3);
	}
	
}

@media only screen and (min-width: 960px){
	
	#cast article{
		width:25%;
	}
	
}

/*//////////----- NEWFACE -----//////////*/

#newface div.content{
	box-sizing: border-box;
	padding:5px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

#newface article{
	width:50%;
}

#newface article p.icon-new{
	display:none;
}

@media only screen and (min-width: 720px){
	
	#newface article{
		width:calc(100%/3);
	}
	
}

@media only screen and (min-width: 960px){
	
	#newface article{
		width:25%;
	}
	
}