@charset "UTF-8";
/* CSS Document */

/*//////////----- PAGE -----//////////*/

.page{
	width:100%;
	
	background-color:#fafafa;
	color:#000;
}

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

@media only screen and (min-width: 760px){
	
	.page div.wrap{
		padding:20px;
	}
	
}

@media only screen and (min-width: 960px){
	
	.page div.wrap{
		padding:40px 20px;
	}
	
}

/*//////////----- PAGE-CONTENT-TWIN -----//////////*/

.content-twin{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

.content-twin div.page-child{
	width:100%;
	
	margin-bottom:40px;
}

#sidebar{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
}

#sidebar div.sidebar-child{
	width:100%;
	
	margin-bottom:40px;
}

@media only screen and (min-width: 760px){
	
	#sidebar div.sidebar-child{
		width:50%;
		
		box-sizing: border-box;
	}
	
	#sidebar div.sidebar-child:nth-child(odd){
		padding-right:15px;
	}
	
	#sidebar div.sidebar-child:nth-child(even){
		padding-left:15px;
	}
	
}

@media only screen and (min-width: 960px){
	
	.content-twin div.page-child{
		width:calc(100% - 360px);
		
		box-sizing: border-box;
		padding-right:20px;
		
		margin-bottom:0;
	}
	
	#sidebar{
		display:block;		
		width:360px;
	}
	
	#sidebar div.sidebar-child{
		width:100%;
		height:auto;
		padding:0!important;
	}
	
}

@media only screen and (min-width: 1080px){
	
	.content-twin div.page-child{
		padding-right:40px;
	}
	
}

.page-content-child{
	margin-bottom:30px;
}

.page-content-child:last-child{
	margin-bottom:0;
}

@media only screen and (min-width: 760px){
	
	.page-content-child{
		margin-bottom:40px;
	}
	
}

/*//////////----- PAGE-HEADER -----//////////*/

.page-header{
	margin-bottom:20px;
}

.page-header h2{
	font-size:1.5rem;
	line-height:50px;
	font-weight:bold;
	
	background-color:#000;
	color:#fff;
	
	box-sizing: border-box;
	padding:0 15px;
	
	position: relative;
}

.page-header h2:after{
	display:block;
	content:"";
	
	width:calc(100% - 4px);
	height:calc(100% - 4px);
	
	background-color: transparent;
	box-sizing: border-box;
	border:solid 1px #fff;
	
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	
	margin:auto;
	z-index: 5;
}

.page-header h2 span.note{
	display:block;
	
	font-size:0.8rem;
	line-height:50px;
	font-weight:bold;
	
	position: absolute;
	top:0;
	bottom:0;
	
	margin:auto 0;
	
	right:12.5px;
}

/*//////////----- PAGE-FOOTER -----//////////*/

.page-footer{
	box-sizing: border-box;
	padding:20px;
}

.page-footer p.btn-detail{
	width:180px;
	margin:0 auto;
	
	text-align: center;
}

.page-footer p.btn-detail a{
	display:block;
	
	font-size:0.8rem;
	line-height:40px;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	border:solid 1px #000;
	
	transition:0.25s;
	
	position: relative;
}

.page-footer p.btn-detail a:hover{
	background-color:#000;
	color:#fff;
	
	text-decoration: none;
}

.page-footer p.btn-detail a:before{
	display:block;
	content:"";
	
	width:15px;
	height:15px;
	
	position: absolute;
	top:0;
	bottom:0;
	right:10px;
	
	margin:auto 0;
	
	background-image: url("../images/icon-arrow-right-black.png");
	background-repeat: no-repeat;
	background-size:10px;
	background-position: center;
}

.page-footer p.btn-detail a:hover:before{
	background-image: url("../images/icon-arrow-right.png");
}

/*//////////----- INNER-FOOTER -----//////////*/

.inner-footer{
	box-sizing: border-box;
	padding:20px;
}

@media only screen and (min-width: 760px){
	
	.inner-footer{
		padding:30px;
	}
	
}

.pager-archive{
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	
	width:100%;
}

.pager-archive li{
	width:40px;
	height:40px;
	
	margin:0 5px;
	
	font-size:0.8rem;
	line-height:38px;
}

.pager-archive li span.note{
	display:block;
	
	box-sizing: border-box;
	border:solid 1px #000;
	
	text-align: center;
	
	/*border-radius:5px;*/
}

.pager-archive li a{
	display:block;
	
	background-color:#000;
	color:#fff;
}

.pager-archive li a:hover{
	opacity: 0.8;
	text-decoration: none;
}

.pager-single{
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: center;
	
	width:100%;
}

.pager-single li{
	width:90px;
	height:40px;
	
	margin:0 5px;
	
	font-size:0.8rem;
	line-height:38px;
}

.pager-single li span.note{
	display:block;
	
	box-sizing: border-box;
	border:solid 1px #000;
	
	text-align: center;
	
	/*border-radius:5px;*/
}

.pager-single li a{
	display:block;
	
	background-color:#000;
	color:#fff;
}

.pager-single li a:hover{
	opacity: 0.8;
	text-decoration: none;
}


/*//////////----- SIDEBAR-CHILD -----//////////*/

.sidebar-child h3{
	font-size:1.25rem;
	line-height:50px;
	font-weight:bold;
	
	background-color:#000;
	color:#fff;
	
	box-sizing: border-box;
	padding:0 15px;
	
	position: relative;
	
	margin-bottom:20px;
}

.sidebar-child h3:after{
	display:block;
	content:"";
	
	width:calc(100% - 4px);
	height:calc(100% - 4px);
	
	background-color: transparent;
	box-sizing: border-box;
	border:solid 1px #fff;
	
	position: absolute;
	top:0;
	left:0;
	right:0;
	bottom:0;
	
	margin:auto;
	z-index: 5;
}

.sidebar-child h3 span.note{
	display:block;
	
	font-size:0.6rem;
	line-height:50px;
	font-weight:bold;
	
	position: absolute;
	top:0;
	bottom:0;
	
	margin:auto 0;
	
	right:12.5px;
}

.sidebar-child p.btn-detail{
	width:100%;
	
	margin-top:20px;
	text-align: right;
}

.sidebar-child p.btn-detail a{
	display:inline-block;
	width:120px;
	
	font-size:0.6rem;
	line-height:30px;
	
	text-align: center;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	border:solid 1px #000;
	
	transition:0.25s;
	
	position: relative;
}

.sidebar-child p.btn-detail a:hover{
	background-color:#000;
	color:#fff;
	
	text-decoration: none;
}

.sidebar-child p.btn-detail a:before{
	display:block;
	content:"";
	
	width:15px;
	height:15px;
	
	position: absolute;
	top:0;
	bottom:0;
	right:5px;
	
	margin:auto 0;
	
	background-image: url("../images/icon-arrow-right-black.png");
	background-repeat: no-repeat;
	background-size:10px;
	background-position: center;
}

.sidebar-child p.btn-detail a:hover:before{
	background-image: url("../images/icon-arrow-right.png");
}

/*//////////----- SIDEBAR-PICKUP -----//////////*/

#pickup article{
	margin-bottom:10px;
}

#pickup article:last-child{
	margin-bottom:0;
}

@media only screen and (min-width: 960px){
	
	#pickup article{
		margin-bottom:15px;
	}
	
}

/*//////////----- CASTLIST-PICKUP -----//////////*/

.castlist-pickup a{
	display:block;
	
	color:#000;
	
	transition:0.25s;
}

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

.castlist-pickup div.inner{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	position: relative;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	padding:5px;
}

.castlist-pickup div.castimg{
	width:160px;
	
	position: relative;
}

.castlist-pickup div.castimg p.thumbnail{
	width:100%;
}

.castlist-pickup div.castimg p.thumbnail:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:150%;
}

.castlist-pickup div.castimg p.thumbnail img{
	width:100%;
	height:100%;
	vertical-align: bottom;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
}

.castlist-pickup div.castimg span.today{
	width:100%;
	
	font-size:0.8rem;
	line-height:30px;
	font-weight:bold;
	
	text-align: center;
	
	background-color: rgba(0,70,140,0.90);
	color:#fff;
	
	position: absolute;
	left:0;
	bottom:0;
}

.castlist-pickup div.castimg p.icon-newface{
	display:block;
	
	width:40px;
	height:40px;
	
	position: absolute;
	top:5px;
	right:5px;
}

.castlist-pickup div.castimg p.icon-newface img{
	width:100%;
	vertical-align: bottom;
	
	background-color:#048;
	color:#fff;
	
	box-sizing: border-box;
	padding:10px;
}

.castlist-pickup div.castimg p.icon-newface span.note{
	display:block;
	width:100%;
	
	background-color:#048;
	color:#fff;
	
	font-size:0.6rem;
	line-height:20px;
	font-weight:bold;
	
	text-align: center;
}

.castlist-pickup div.castimg p.icon-grade{
	display:block;
	
	width:40px;
	height:40px;
	
	position: absolute;
	bottom:35px;
	left:5px;
}

.castlist-pickup div.castimg p.icon-grade img{
	width:100%;
	vertical-align: bottom;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	padding:10px;
}

.castlist-pickup div.castimg p.icon-grade span.note{
	display:block;
	width:100%;
	
	background-color:#fff;
	color:#000;
	
	font-size:0.6rem;
	line-height:20px;
	font-weight:bold;
	
	margin-top:20px;
	
	text-align: center;
}

.castlist-pickup div.casttext{
	background-color:#fff;
	color:#000;
	
	width:calc(100% - 160px);
	
	box-sizing: border-box;
	padding-left:10px;
}

.castlist-pickup div.casttext h4{
	font-size:1.0rem;
	line-height:30px;
	font-weight:bold;
}

.castlist-pickup div.casttext h4 span.age{
	font-size:0.8rem;
	line-height:25px;
	font-weight:normal;
}

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

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

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

.castlist-pickup div.casttext ul.size li{
	font-size:0.8rem;
	line-height:25px;
}

.castlist-pickup div.casttext ul.size li:after{
	content:"/";
	
	font-size:0.6rem;
	line-height:25px;
	
	box-sizing: border-box;
	padding:0 1.5px;
}

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

.castlist-pickup div.casttext ul.size li:before{
	font-size:0.6rem;
	line-height:25px;
}

.castlist-pickup div.casttext ul.size li.tall:before{
	content:"T:";
}

.castlist-pickup div.casttext ul.size li.bust:before{
	content:"B:";
}

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

.castlist-pickup div.casttext ul.size li.bust span.cup:before{
	content:"_";
}

.castlist-pickup div.casttext ul.size li.waist:before{
	content:"W:";
}

.castlist-pickup div.casttext ul.size li.hip:before{
	content:"H:";
}

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

.castlist-pickup div.casttext ul.feature li{
	width:calc(50% - 2.5px);
	max-width: 80px;
	
	font-size:0.6rem;
	line-height:15px;
	
	text-align: center;
	
	background-color:#048;
	color:#fff;
}

.castlist-pickup div.casttext ul.feature li:nth-child(odd){
	margin-right:2.5px;
}

.castlist-pickup div.casttext ul.feature li:nth-child(even){
	margin-left:2.5px;
}

.castlist-pickup div.casttext p.excerpt{
	font-size:0.8rem;
	line-height:1.75em;
	
	margin-top:10px;
}

/*//////////----- SIDEBAR-MOVIE -----//////////*/

#movie div.post-content{
	width:100%;
}

#movie video{
	width:100%;
	vertical-align: bottom;
}

/*//////////----- SIDEBAR-RANKING -----//////////*/

#ranking article{
	margin-bottom:10px;
}

#ranking article:last-child{
	margin-bottom:0;
}

@media only screen and (min-width: 960px){
	
	#ranking article{
		margin-bottom:15px;
	}
	
}

/*//////////----- RANKINGROW -----//////////*/

.rankingrow div.inner{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	position: relative;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	padding:5px;
}

.rankingrow div.castimg{
	width:120px;
	
	position: relative;
}

.rankingrow div.castimg p.thumbnail{
	width:100%;
}

.rankingrow div.castimg p.thumbnail:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:150%;
}

.rankingrow div.castimg p.thumbnail img{
	width:100%;
	height:100%;
	vertical-align: bottom;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
}

.rankingrow div.casttext{
	background-color:#fff;
	color:#000;
	
	width:calc(100% - 120px);
	
	box-sizing: border-box;
	padding-left:10px;
}

.rankingrow div.casttext p.icon-rank{
	width:100%;
	max-width: 120px;
	
	text-align: center;
	font-weight:bold;
	
	font-size:0.8rem;
	line-height:20px;
	
	background-color:#f44;
	color:#fff;
	
	margin-bottom:5px;
}

.rankingrow div.casttext h4{
	font-size:1.0rem;
	line-height:30px;
	font-weight:bold;
}

.rankingrow div.casttext h4 span.age{
	font-size:0.8rem;
	line-height:25px;
	font-weight:normal;
}

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

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

.rankingrow div.casttext ul.size{
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	
	width:100%;
}

.rankingrow div.casttext ul.size li{
	font-size:0.8rem;
	line-height:25px;
}

.rankingrow div.casttext ul.size li:after{
	content:"/";
	
	font-size:0.6rem;
	line-height:25px;
	
	box-sizing: border-box;
	padding:0 1.5px;
}

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

.rankingrow div.casttext ul.size li:before{
	font-size:0.6rem;
	line-height:25px;
}

.rankingrow div.casttext ul.size li.tall:before{
	content:"T:";
}

.rankingrow div.casttext ul.size li.bust:before{
	content:"B:";
}

.rankingrow div.casttext ul.size li.bust span.cup{
	font-size:0.6rem;
	line-height:25px;
}

.rankingrow div.casttext ul.size li.bust span.cup:before{
	content:"_";
}

.rankingrow div.casttext ul.size li.waist:before{
	content:"W:";
}

.rankingrow div.casttext ul.size li.hip:before{
	content:"H:";
}

.rankingrow div.casttext ul.feature{
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	
	width:100%;
}

.rankingrow div.casttext ul.feature li{
	width:calc(50% - 2.5px);
	max-width: 80px;
	
	font-size:0.6rem;
	line-height:15px;
	
	text-align: center;
	
	background-color:#048;
	color:#fff;
}

.rankingrow div.casttext ul.feature li:nth-child(odd){
	margin-right:2.5px;
}

.rankingrow div.casttext ul.feature li:nth-child(even){
	margin-left:2.5px;
}

.rankingrow div.casttext ul.btn{
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	
	width:100%;
	
	margin-top:10px;
}

.rankingrow div.casttext ul.btn li{
	width:100%;
	max-width: 120px;
	
	font-size:0.8rem;
	line-height:25px;
	
	margin-bottom:5px;
	margin-right:10px;
}

.rankingrow div.casttext ul.btn li:last-child{
	margin-bottom:0;
	margin-right:0;
}

.rankingrow div.casttext ul.btn li a{
	display:block;
	
	background-color:#000;
	color:#fff;
	
	box-sizing: border-box;
	padding:0 10px;
	
	background-image: url("../images/icon-arrow-right.png");
	background-repeat: no-repeat;
	background-size: 10px;
	background-position: center right 5px;
	
	border-radius:2.5px;
}

.rankingrow div.casttext ul.btn li a:hover{
	opacity: 0.8;
	text-decoration: none;
}

/*//////////----- SIDEBAR-LINK -----//////////*/

#link ul.link-banner{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	box-sizing: border-box;
	padding:0 15px;
}

#link ul.link-banner li{
	width:100%;
	margin-bottom:10px;
}

#link ul.link-banner li:last-child{
	margin-bottom:0;
}

#link ul.link-banner li a{
	display:block;
}

#link ul.link-banner li img{
	width:100%;
	vertical-align: bottom;
}
