#visual {
	position: relative;
	z-index: 0;
	top: 0px;
	left: 0px;
	--vis-image-bindwrap: var(--bindwrap-width);
	--vis-flowsec: 0s;
	--vis-minheight: 200px;
	background-color: #e5e5e5;
}
/*scale*/
.flowface .vis-wrap {
	max-width: var(--vis-image-bindwrap);
	margin-left: auto;
	margin-right: auto;
	height: 100%;
	position: relative;
	z-index: 0;
}
.flowface[data-scale="wide"] .vis-wrap,
.flowface[data-scale="d"] .vis-wrap {
	max-width: none;
}
@media only screen and (min-width: 640px){
	#visual[data-scale="d"] {
		height: 80%;
	}
	#visual[data-scale="fit"] {
		height: auto;
	}
}
@media only screen and (max-width: 639px){
	#visual[data-scale="d"] {
		height: 72vh;
	}
	#visual[data-scale="fit"] {
		height: auto;
	}
}

@media only screen and (min-width:640px) {
	.flowface. vis-wrap {
		max-width: none;
	}
}
.flowface .cover {
	position: absolute;
	z-index: 1;
	background-image: url(/share/im/lgm_shop-white.svg);
	background-position: center center;
	background-size: 56% auto;
	width: 100%;
	height: 100%;
	top: 0px;
	left: 0px;
	transition: all 0.3s;
	-moz-transition: all 0.3s;
	-o-transition: all 0.3s;
	-webkit-transition: all 0.3s;
}
.flowface .ims {
	position: absolute;
	z-index: -10;
	width: 100%;
	height: 100%;
	overflow: hidden;
	top: 0px;
	left: 0px;
}
.flowface[data-scale="fit"] .ims {
	position: static;
	overflow: visible;
}
	.flowface .ims li {
		display: block;
		width: 100%;
		height: 100%;
		position: absolute;
		z-index: 0;
		top: 0;
		left: 0;
		line-height: 0;
		margin: 0;
		margin-bottom: 0;
	}
	.flowface .ims li[data-selected="true"] {
		
	}
	.flowface[data-scale="fit"] .ims li {
		height: auto;
		position: static;
	}
		.flowface .ims li::before {
			padding-top: 100%;
			content: "";
			position: absolute;
			z-index: 2;
			display: block;
			width: 100%;
		}
		.flowface .ims li > a.imcover {
			display: block;
			height: 100%;
			position: relative;
			z-index: 5;
		}
		.flowface .ims img {
			object-fit: cover;
			width: 100%;
			height: 100%;
		}
		.flowface .ims li.standby {
			opacity: 0;
		}
		
		.flowface[data-scale="fit"] .ims li::before {
			padding-top: 0;
		}
		.flowface[data-scale="fit"] .ims img {
			object-fit: fill;
			width: 100%;
			height: auto;
		}

.flowface .flowdots {
	position: absolute;
	z-index: 15;
	bottom: 0px;
	left: 0px;
	width: 100%;
	text-align: center;
	font-size: 2.4vw;
	line-height: 1em;
	padding: 4em 0;
	padding-bottom: 5em;
	white-space: nowrap;
}
.flowface[data-stat="loading"] .flowdots a {
	visibility: hidden;
}
.flowface[data-stat="loading"] .flowdots {
	background-image: url(/share/im/prl_ring.png);
	background-position: center center;
	background-size: auto 3em;
}
.flowface .flowdots a {
	display: inline-block;
	text-align: center;
	width: 1em;
	height: 1em;
	line-height: 1em;
	padding: 0;
	padding-left: 1em;
	padding-right: 2em;
}
.flowface .flowdots a[data-select="true"] {
	cursor: default;
}
.flowface .flowdots a::before {
	content: "";
	display: inline-block;
	width: 0.6em;
	height: 0.6em;
	line-height: 1em;
	padding: 0;
	margin: 0;
	border-radius: 16em;
	background-color: #000;
	border: solid 1px #fff;
	box-shadow: 0px 0px 4px rgba(0,0,0,1.0);
}
.flowface .flowdots a[data-select="true"]::before {
	content: "";
	display: inline-block;
	width: 0.6em;
	height: 0.6em;
	line-height: 1em;
	padding: 0;
	margin: 0;
	border-radius: 16em;
	background-color: #fff;
	border: solid 1px #fff;
	box-shadow: 0px 0px 8px rgba(255,255,255,1.0);
}
.flowface .flowdots a.disable {
	display: none;
}
@media only screen and (min-width:640px) {
	.flowface .cover {
		background-size: 26% auto;
		transition: all 0.3s;
		-moz-transition: all 0.3s;
		-o-transition: all 0.3s;
		-webkit-transition: all 0.3s;
	}
	
	.flowface .ims img {
		object-fit: cover;
		width: 100%;
		height: 100%;
	}
	
	.flowface .flowdots {
		font-size: 16px;
		padding: 4em 0;
	}
	.flowface[data-stat="loading"] .flowdots a {
		visibility: hidden;
	}
	.flowface[data-stat="loading"] .flowdots {
		background-size: auto 2em;
	}
	.flowface .flowdots a {
		display: inline-block;
		text-align: center;
		width: 1em;
		height: 1em;
		line-height: 1em;
		padding: 0;
		padding-left: 1em;
		padding-right: 2em;
	}
	.flowface .flowdots a::before {
		content: "";
		display: inline-block;
		width: 8px;
		height: 8px;
		line-height: 1em;
		padding: 0;
		margin: 0;
		border-radius: 16em;
		background-color: #000;
		border: solid 1px #fff;
		box-shadow: 0px 0px 4px rgba(0,0,0,1.0);
	}
	.flowface .flowdots a[data-select="true"]::before {
		content: "";
		display: inline-block;
		width: 8px;
		height: 8px;
		line-height: 1em;
		padding: 0;
		margin: 0;
		border-radius: 16em;
		background-color: #fff;
		border: solid 1px #fff;
		box-shadow: 0px 0px 8px rgba(255,255,255,1.0);
	}
}

/**/
.efxVisIn {
    animation-name: visFadeIn,visFlow;
    animation-duration: var(--vis-flowsec);
    animation-timing-function: linear;
    animation-iteration-count: 1;
    animation-fill-mode: forwards;
}
@keyframes visFadeIn {
	0% {
		opacity: 0;
	}
	10% {
		opacity: 1.0;
	}
}
@keyframes visFlow {
	0% {
		transform: scale(1.0);
	}
	100% {
		transform: scale(1.2);
	}
}
