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

/*//////////----- PROFILE -----//////////*/

#profile div.content-inner{
	margin-bottom:15px;
	
	background-color:#fff;
	color:#000;
	
	box-sizing: border-box;
	padding:10px;
}

#profile div.content-inner:last-child{
	margin-bottom:0;
}

@media only screen and (min-width: 760px){
	
	#profile div.content-inner{
		margin-bottom:20px;
	}
	
}

#profile h3{
	width:100%;
	
	background-color:#048;
	color:#fff;
	
	font-size:1.25rem;
	line-height:50px;
	font-weight:bold;
	
	box-sizing: border-box;
	padding:0 10px 0 20px;
	
	position: relative;
	border-radius:2.5px;
}

#profile h3:before{
	display:block;
	content:"";
	
	width:2.5px;
	height:20px;
	
	position: absolute;
	top:0;
	bottom:0;
	left:10px;
	
	margin:auto 0;
	
	background-color:#fff;
}

/*//////////----- PROFILE-CASTIMG -----//////////*/

.summary div.castimg{
	width:100%;
	position: relative;
}

.summary div.castimg p.icon-newface{
	display:block;
	
	width:60px;
	height:60px;
	
	position: absolute;
	top:5px;
	left:5px;
}

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

.summary 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;
}

.summary div.castimg p.icon-grade{
	display:block;
	
	width:60px;
	height:60px;
	
	position: absolute;
	top:5px;
	left:70px;
}

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

.summary 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;
}


/*//////////----- SLIDER-PROFILE -----//////////*/

.slider-profile-for{
	line-height:0;
}

.slider-profile-for li img{
	width:100%;
	vertical-align: bottom;
}

.slider-profile-nav{
	box-sizing: border-box;
	padding:2.5px;
	
	line-height: 0;
	
	background-color:#f0f0f0;
}

.slider-profile-nav li{	
	width:100%;
	position: relative;
}

.slider-profile-nav li:before{
	display:block;
	content:"";
	
	box-sizing: border-box;
	padding-top:100%;
}

.slider-profile-nav li img{
	width:100%;
	height:100%;
	
	position: absolute;
	top:0;
	left:0;
	
	object-fit: cover;
	object-position: center;
	
	box-sizing: border-box;
	padding:2.5px;
}

/*//////////----- PROFILE-SUMMARY -----//////////*/

.summary div.casttext{
	box-sizing: border-box;
	padding:10px 0 0;
	
	/*text-align: center;*/
}

.summary div.casttext p.icon-new{
	width:100%;
	max-width: 160px;
	
	text-align: center;
	font-weight:bold;
	
	font-size:1.0rem;
	line-height:25px;
	
	background-color:#f44;
	color:#fff;
	
	margin:0 auto;
	margin-bottom:5px;
}

.summary div.casttext h4{
	font-size:1.5rem;
	line-height:40px;
	font-weight:bold;
	
	text-align: center;
}

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

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

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

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

.summary div.casttext ul.size li{
	font-size:1.25rem;
	line-height:30px;
}

.summary div.casttext ul.size li:after{
	content:"/";
	
	font-size:1.0rem;
	line-height:30px;
	
	box-sizing: border-box;
	padding:0 2.5px;
}

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

.summary div.casttext ul.size li:before{
	font-size:1.0rem;
	line-height:30px;
}

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

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

.summary div.casttext ul.size li.bust span.cup{
	font-size:1.0rem;
	line-height:30px;
}

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

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

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

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

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

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

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

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

.summary div.casttext ul.btn li{
	width:calc(50% - 5px);
	
	font-size:1.0rem;
	line-height:35px;
	
	text-align: center;
	
	margin-bottom:5px;
}

.summary div.casttext ul.btn li:nth-child(odd){
	margin-right:5px;
}

.summary div.casttext ul.btn li:nth-child(even){
	margin-left:5px;
}

.summary 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;
}

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

.summary div.casttext div.comment{
	margin-top:10px;
}

@media only screen and (min-width: 760px){
	
	.summary div.post-content{
		display:flex;
		flex-flow: row wrap;
		align-items: stretch;
		justify-content: flex-start;
		
		width:100%;
	}
	
	.summary div.post-content div.castimg{
		width:calc(50% - 10px);
		
		margin-right:10px;
	}
	
	.summary div.post-content div.casttext{
		width:calc(50% - 10px);
		
		margin-left:10px;
		
		padding:0;
	}
	
	.summary div.casttext p.icon-new{
		margin:0;
		margin-bottom:5px;
	}
	
	.summary div.casttext h4{
		text-align: left;
	}
	
	.summary div.casttext ul.size{
		justify-content: flex-start;
	}
	
	.summary div.casttext ul.feature{
		justify-content: flex-start;
	}
	
}

@media only screen and (min-width: 960px){
	
	.summary div.post-content div.castimg{
		width:calc(50% - 15px);
		margin-right:15px;
	}
	
	.summary div.post-content div.casttext{
		width:calc(50% - 15px);
		margin-left:15px;
	}
	
}

/*//////////----- PROFILE-GREETING -----//////////*/

.greeting div.post-content{
	box-sizing: border-box;
	padding:10px 0;
}

/*//////////----- PROFILE-QA -----//////////*/

.qa div.post-content{
	box-sizing: border-box;
	padding:10px 0;
}

.qa div.row{
	box-sizing: border-box;
	padding-bottom:10px;
	border-bottom:solid 1px #888;
	margin-bottom:10px;
}

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

.qa div.row p.que{
	margin-bottom:10px;
	
	box-sizing: border-box;
	padding-left:30px;
	position: relative;
}

.qa div.row p.que:before{
	display:block;
	content:"Q";
	
	width:25px;
	height:25px;
	
	font-size:0.8rem;
	line-height:25px;
	
	font-weight:bold;
	text-align: center;
	
	background-color:#048;
	color:#fff;
	
	position: absolute;
	top:0;
	left:0;
	bottom:0;
	
	margin:auto 0;
	
	border-radius:2.5px;
}

.qa div.row p.ans{	
	box-sizing: border-box;
	padding-left:30px;
	position: relative;
}

.qa div.row p.ans:before{
	display:block;
	content:"A";
	
	width:25px;
	height:25px;
	
	font-size:0.8rem;
	line-height:25px;
	
	font-weight:bold;
	text-align: center;
	
	background-color:#084;
	color:#fff;
	
	position: absolute;
	top:0;
	left:0;
	bottom:0;
	
	margin:auto 0;
	
	border-radius:2.5px;
}

/*//////////----- PROFILE-DIARY -----//////////*/

.diary div.post-content{
	box-sizing: border-box;
	padding:10px 0;
}

.diary .diaryrow div.text ul.postdata li.author{
	display:none;
}


/*//////////----- PROFILE-WEEKLY -----//////////*/

.weekly div.post-content{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	box-sizing: border-box;
	padding:10px 0 0;
}

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

.weekly div.row p.date{
	width:120px;
	
	text-align: center;
	
	font-size:1.0rem;
	line-height:40px;
	
	background-color:#000;
	color:#fff;
	
	box-sizing: border-box;
	padding:5px;
}

.weekly div.row p.date span.note{
	display:inline-block;
	
	font-size:0.8rem;
	line-height:40px;
}

.weekly div.row p.date span.note:before{
	content:"（";
}

.weekly div.row p.date span.note:after{
	content:"）";
}

.weekly div.row p.time{
	width:calc(100% - 120px);
	
	font-size:1.0rem;
	line-height:40px;
	
	box-sizing: border-box;
	padding:5px;
	border-left:solid 5px #fff;
	
	background-color:#f0f0f0;
	color:#000;
	
	position: relative;
}

.weekly div.row p.time span.btn-reserve{
	display:block;
	width:80px;
	height:25px;
	
	font-size:0.8rem;
	line-height:25px;
	
	text-align: center;
	
	background-color:#888;
	color:#444;
	
	border-radius:2.5px;
	
	position: absolute;
	top:12.5px;
	bottom:0;
	right:10px;
}

.weekly div.row p.time span.btn-reserve a{
	display:block;
	
	background-color:#f44;
	color:#fff;
	
	border-radius:2.5px;
}

.weekly div.row p.time span.btn-reserve a:hover{
	opacity: 0.8;
	text-decoration: none;
}

@media only screen and (min-width: 760px){
	
	.weekly div.post-content{
		padding:15px 0;
	}
	
	.weekly div.row{
		width:calc(100%/4);
		
		border:none;
		
		text-align: center;
		margin-bottom:5px;
		
		box-sizing: border-box;
		border-left:solid 2.5px #fff;
		border-right:solid 2.5px #fff;
	}
	
	.weekly div.row:nth-child(1){
		width:calc(100%/3);
		
		border-left:none;
	}
	
	.weekly div.row:nth-child(1) p.date{
		line-height:40px;
	}
	
	.weekly div.row:nth-child(2){
		width:calc(100%/3);
	}
	
	.weekly div.row:nth-child(2) p.date{
		line-height:40px;
	}
	
	.weekly div.row:nth-child(3){
		width:calc(100%/3);
		
		border-right:none;
	}
	
	.weekly div.row:nth-child(4){
		border-left:none;
	}
	
	.weekly div.row:nth-child(7){
		border-right:none;
	}
	
	.weekly div.row p.date{
		width:100%;
		line-height:20px;
	}
	
	.weekly div.row p.date span.note{
		display:block;
		line-height:20px;
	}
	
	.weekly div.row p.time{
		width:100%;
		border-left:none;
		
		box-sizing: border-box;
		padding-bottom:35px;
	}
	
	.weekly div.row p.time span.btn-reserve{
		bottom:10px;
		top:auto;
		left:0;
		right:0;
		
		margin:0 auto;
	}
	
}

/*//////////----- PROFILE-OPTION -----//////////*/

.option div.post-content{
	box-sizing: border-box;
	padding:10px 0 0;
}

.option ul{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	box-sizing: border-box;
	padding:2.5px;
}

.option ul li{
	width:calc(50% - 5px);
	
	margin:2.5px;
	
	font-size:1.0rem;
	line-height:30px;
	
	text-align: center;
	
	background-color:#888;
	color:#444;
	
	border-radius:2.5px;
}

.option ul li.active{
	background-color:#000000;
	color:#fff;
}

@media only screen and (min-width: 760px){
	
	.option ul li{
		width:calc(100%/3 - 10px);
		
		margin:5px;
	}
	
}

/*//////////----- PROFILE-MOVIE -----//////////*/

.movie div.post-content{
	box-sizing: border-box;
	padding:10px 0;
}

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

/*//////////----- PROFILE-REVIEW -----//////////*/

.review div.post-content{
	box-sizing: border-box;
	padding:10px 0 0;
}

.review p.result{
	font-size:0.8rem;
	line-height:20px;
	
	font-weight:bold;
	margin-bottom:10px;
}

.review div.row{
	box-sizing: border-box;
	padding:10px;
	border:solid 5px #f0f0f0;
	
	margin-bottom:10px;
}

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

.review div.row ul.postdata{
	font-size:0.6rem;
	line-height:20px;
	
	display:flex;
	flex-flow: row wrap;
	align-items: center;
	justify-content: flex-start;
	
	width:100%;
	margin-bottom:5px;
}

.review div.row ul.postdata li{
	margin-right:10px;
	
	position: relative;
}

.review div.row ul.postdata li:after{
	display:block;
	content:"";
	
	width:1px;
	height:10px;
	
	background-color:#000;
	
	position: absolute;
	top:5px;
	right:-5px;
	
}

.review div.row ul.postdata li:nth-child(1):before{
	content:"投稿日：";
}

.review div.row ul.postdata li:nth-child(2):before{
	content:"投稿者：";
}

.review div.row ul.postdata li:last-child:after{
	display:none;
}

.review div.row ul.stars{
	display:flex;
	flex-flow: row wrap;
	align-items: stretch;
	justify-content: flex-start;
	
	width:100%;
	
	margin-bottom:10px;
}

.review div.row ul.stars li{
	width:calc(20% - 2.5px);
	
	font-size:0.8rem;
	line-height:30px;
	
	text-align: center;
	
	margin-right:2.5px;
}

.review div.row ul.stars li:last-child{
	width:20%;
	margin-right:0;
}

.review div.row ul.stars li span.note{
	display:block;
	
	font-size:0.6rem;
	line-height:30px;
	
	background-color:#f0f0f0;
	color:#000;
	
	margin-bottom:2.5px;
}

.review div.row ul.stars li span.judge{
	display:block;
	
	font-size:0.6rem;
	line-height:30px;
	
	background-color:#f8f8f8;
	color:#000;
}

.review div.row p.comment{
	font-size:0.8rem;
	line-height:1.75em;
}

.review div.row div.reply{
	margin-top:10px;
	
	box-sizing: border-box;
	padding:5px 10px;
	
	background-color:#f8f8f8;
	color:#000;
	
	font-size:0.8rem;
	line-height:1.75em;
}

.review div.row div.reply h6{
	font-weight:bold;
	margin-bottom:5px;
}
