/*=================================================
 * CSS for PC
 * ================================================= */


main{
}


/** companion **/

#companion{
	text-align: center;
}

#companion ul{
	font-size: 0;
	line-height: 0;
	padding: 0 15px;
}

#companion li{
	position: relative;
	display: inline-block;
	vertical-align: top;
	margin: 0 12px 25px 12px;
}

figure{
	position: relative;
	display: inline-block;
	width: 276px;
	margin: 0;
	padding: 3px;
	cursor: pointer;
	box-shadow: none !important;
	-webkit-transform: translateZ(0);
	transform: translateZ(0);
	-webkit-box-sizing: border-box;
	box-sizing: border-box;
}
figure > img{
	width: 270px;
	vertical-align: top;
	-webkit-transition	: 0.4s ease-in-out;
	-moz-transition	: 0.4s ease-in-out;
	-o-transition	: 0.4s ease-in-out;
	transition		: 0.4s ease-in-out;
}

figure:hover > img{
	opacity: 0.7;
	filter: alpha(opacity=70);
}

figure .border{
	position: absolute;
	opacity: 0.45;
}
figure .border:before,
figure .border:after,
figure .border div:before,
figure .border div:after{
	background-color: #b28702; /** LINE COLOR !!!!!! **/
	position: absolute;
	content: "";
	display: block;
	-webkit-transition: all 0.4s ease-in-out;
	transition: all 0.4s ease-in-out;
}
figure .border:before,
figure .border:after{
	width: 0;
	height: 1px;
}
figure .border div:before,
figure .border div:after{
	width: 1px;
	height: 0;
}
figure .border.one{
	left: 0;
	top: 0;
	right: 5px;
	bottom: 5px;
}
figure .border.one:before,
figure .border.one div:before{
	left: 0;
	top: 0;
}
figure .border.one:after,
figure .border.one div:after{
	bottom: 0;
	right: 0;
}
figure .border.two{
	left: 5px;
	top: 5px;
	right: 0;
	bottom: 0;
}
figure .border.two:before,
figure .border.two div:before{
	right: 0;
	top: 0;
}
figure .border.two:after,
figure .border.two div:after{
	bottom: 0;
	left: 0;
}

figure:hover .border:before,
figure.hover .border:before,
figure:hover .border:after,
figure.hover .border:after{
	width: 100%;
}
figure:hover .border div:before,
figure.hover .border div:before,
figure:hover .border div:after,
figure.hover .border div:after{
	height: 100%;
}

#companion .name{
	font-size: 18px;
	line-height: 20px;
	text-align: left;
	padding: 8px 5px 2px 5px;
}
#companion .name a{	color: #fff;}

#companion .prof{
	font-size: 11px;
	line-height: 20px;
	text-align: left;
	padding: 0 5px;
}
#companion .prof span{
	color: #ffdf49;
	font-size: 10px;
	letter-spacing: -0.4px;
}
#companion .prof br{	display: none;}
#companion .prof i{	font-style: normal;}

#companion .icon{
	font-size: 12px;
	line-height: 14px;
	text-align: right;
	position: absolute;
	bottom: -24px;
	right: 5px;
}


/*=================================================
 * CSS for SP
 * ================================================= */

@media screen and (max-width: 650px) {
	/** companion **/
	#companion{
		text-align: center;
		padding: 0 2.5px 0 2.5px;
	}
	#companion ul{	padding: 0;}
	#companion li{
		width: calc(100% / 3 - 5px);
		height: auto;
		margin: 0 2.5px 10px 2.5px;
	}
	#companion li:after{	display: none;}
	#companion li:nth-of-type(4n){	margin-right: 1.5px;}
	#companion .photo{
	}
	#companion .photo img{
		width: 100%;
		height: auto;
	}
	figure{
		width: 100%;
		margin: 0;
		padding: 0;
	}
	figure > img{
		width: 100%;
		height: auto;
	}
	figure .border{	display: none;}
	#companion .name{
		font-size: 12px;
		line-height: 12px;
		text-align: center;
		padding: 3px 0 2px 0;
	}
	#companion .prof{
		font-size: 10px;
		line-height: 12px;
		text-align: center;
		padding: 0;
		letter-spacing: -0.4px;
	}
	#companion .prof span{	color: #ffdf49;}
	#companion .prof br{	display: inline;}
	#companion .icon{
		width: 100%;
		font-size: 10px;
		line-height: 12px;
		text-align: center;
		background: rgba(59, 5, 7, 0.9);
		position: absolute;
		top: auto;
		bottom: 0;
		right: 0;
	}
}
