@charset 'utf-8';

/*------------------------------------------------------------------------------
 video
 ------------------------------------------------------------------------------*/
video {
	max-width: 100%;
	max-height: 100%;
}

/* playHolder */
.playHolder {
	display: block;
	position: relative;
}
.playHolder .playIcon {
	position: absolute;
	top: 50%;
	left: 50%;
	transform: translate(-50%, -50%);
	display: block;
	width: 25%;
	opacity: 0.8;
}
.diary .playHolder .playIcon {
	width: 40%;
}

/*------------------------------------------------------------------------------
 girlSmovie
 ------------------------------------------------------------------------------*/
.girlSmovie {
	display: flex;
	flex-wrap: wrap;
	gap: 5px;
	margin: 12px 8px;
}
.girlSmovie .box {
	flex: 0 0 calc((100% - 5px) / 2);
}

#PC .girlSmovie {
	gap: 10px;
}
#PC .girlSmovie .box {
	flex: 0 0 calc((100% - 20px) / 3);
}

.girlSmovie .playHolder {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	padding-top: 140%;
}
.girlSmovie img:not(.playIcon) {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

.girlSmovie .datas {
	display: flex;
	flex-direction: column;
	gap: 5px;
	padding: 5px;
	background: #E1E1E1;
}
.girlSmovie .datas .mssg {
	line-height: 1.4;
}
.girlSmovie .datas .date {
	display: block;
	text-align: right;
}

/*------------------------------------------------------------------------------
 smovieList
 ------------------------------------------------------------------------------*/
.smovieList {
	margin: 0 8px;
}
.smovieList._PC {
	display: flex;
	flex-wrap: wrap;
	gap: 12px;
	margin: 15px 0;
}

/* box */
.smovieList .box {
	display: flex;
	gap: 10px;
	margin: 12px 0;
	padding: 10px;
	background: #F9FAFB;
	box-shadow: 0 1px 3px 0 rgba(0,0,0,.1), 0 1px 2px 0 rgba(0,0,0,.06);
	border-top: 1px solid #E2E8F0;
	border-bottom: 1px solid #E2E8F0;
	border-radius: 3px;
}
.smovieList._PC .box {
	flex: 0 0 calc((100% - 15px) / 2);
	margin: 0;
}

/* photo */
.smovieList .photo {
	flex: 0 0 35%;
}
.smovieList .photoWrap {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	padding-top: 100%;
}
.smovieList .photoWrap img:not(.playIcon) {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* datas */
.smovieList .datas {
	flex: 1;
	min-width: 0;

	display: flex;
	flex-direction: column;
	gap: 8px;
}

/* name */
.smovieList .name {
	display: flex;
	align-items: center;
	gap: 7px;
}
.smovieList .nameL {
	flex: 1;
	min-width: 0;
}
.smovieList .nameL .girl a {
	font-size: 15px;
	font-weight: bold;
	color: crimson;
	text-decoration: none;
}
.smovieList .nameL .girl .age {
	display: inline-block;
	margin: 0 3px;
	font-size: 14px;
}
.smovieList .nameL .shop {
	margin: 8px 0 0;
}
.smovieList .nameL .shop a {
	font-size: 15px;
	font-weight: bold;
	color: darkblue;
	text-decoration: none;
}
.smovieList .nameR {
	flex: 0 0 50px;
}
.smovieList .nameR .holder {
	overflow: hidden;
	position: relative;
	display: block;
	width: 100%;
	padding-top: 100%;
	border-radius: 50%;
}
.smovieList .nameR .holder img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}

/* mssg */
.smovieList .mssg {
	line-height: 1.4;
	overflow-wrap: break-word;
	word-break: break-all;
}

/* date */
.smovieList .date {
	margin-top: auto;
	text-align: right;
	font-size: 92%;
}

/*------------------------------------------------------------------------------
 smovieCaption
 ------------------------------------------------------------------------------*/
.smovieCaptionWrap {
	display: none;
}
.smovieCaption {
	display: flex;
	flex-direction: column;
	align-items: center;
	gap: 8px;
	color: #FFF;
}
.smovieCaption .mssg {
	;
}

/* person */
.smovieCaption .person {
	display: flex;
	align-items: center;
	justify-content: center;
	gap: 8px;
}
.smovieCaption .person .photo {
	flex: 0 0 40px;
}
.smovieCaption .person .photoWrap {
	overflow: hidden;
	position: relative;
	display: block;
	width: 40px;
	height: 40px;
	border-radius: 50%;
}
.smovieCaption .person .photoWrap img {
	position: absolute;
	top: 0;
	left: 0;
	display: block;
	width: 100%;
	height: 100%;
	object-fit: cover;
}
.smovieCaption .person .name {
	display: flex;
	flex-direction: column;
	gap: 5px;
}
.smovieCaption .person .name .girl a {
	color: #FF60B0;
}
.smovieCaption .person .name .shop a {
	color: #04BFE5;
}
.smovieCaption .person .work {
	margin-left: 5px;
}

/* pm */
.smovieCaption .pm_title {
	line-height: 1.2;
}
.smovieCaption .pm_caption {
	line-height: 1.4;
}
.smovieCaption .pm_tags {
	line-height: 1.2;
}
