@charset "utf-8";

/******************************************
visualZoom
******************************************/
.component-visual-zoom,
.component-visual-zoom-slide {
	overflow: hidden;
}
.component-visual-zoom .visual-image,
.component-visual-zoom-slide .visual-image {
	overflow: hidden;
}

.component-visual-zoom .visual-image img,
.component-visual-zoom-slide .visual-image img {
	-moz-transition: -moz-transform 10s linear;
	-webkit-transition: -webkit-transform 10s linear;
	-o-transition: -o-transform 10s linear;
	-ms-transition: -ms-transform 10s linear;
	transition: transform 10s linear;
}

.component-visual-zoom .visual-zoom .visual-image img,
.component-visual-zoom-slide .visual-zoom .visual-image img {
	-webkit-transform: scale(1.15);
	-moz-transform: scale(1.15);
	-o-transform: scale(1.15);
	-ms-transform: scale(1.15);
	transform: scale(1.15);
}

.no-zoom .component-visual-zoom .visual-zoom .visual-image img,
.no-zoom .component-visual-zoom-slide .visual-zoom .visual-image img {
	-webkit-transform: scale(1);
	-moz-transform: scale(1);
	-o-transform: scale(1);
	-ms-transform: scale(1);
	transform: scale(1);
}

/* ZOOM OFF 個別指定 */

.component-visual-zoom .visual-image img.no-zoom,
.component-visual-zoom-slide .visual-image img.no-zoom,
.component-visual-zoom .visual-image .no-zoom,
.component-visual-zoom-slide .visual-image .no-zoom {
	-moz-transition: -moz-transform 0s linear;
	-webkit-transition: -webkit-transform 0s linear;
	-o-transition: -o-transform 0s linear;
	-ms-transition: -ms-transform 0s linear;
	transition: transform 0s linear;
}

.component-visual-zoom .visual-zoom .visual-image img.no-zoom,
.component-visual-zoom-slide .visual-zoom .visual-image img.no-zoom,
.component-visual-zoom .visual-zoom .visual-image .no-zoom,
.component-visual-zoom-slide .visual-zoom .visual-image .no-zoom {
	-webkit-transform: scale(1.0);
	-moz-transform: scale(1.0);
	-o-transform: scale(1.0);
	-ms-transform: scale(1.0);
	transform: scale(1.0);
}

.no-zoom .component-visual-zoom .visual-zoom .visual-image img.no-zoom,
.no-zoom .component-visual-zoom-slide .visual-zoom .visual-image img.no-zoom,
.no-zoom .component-visual-zoom .visual-zoom .visual-image .no-zoom,
.no-zoom .component-visual-zoom-slide .visual-zoom .visual-image .no-zoom {
	-webkit-transform: scale(0);
	-moz-transform: scale(0);
	-o-transform: scale(0);
	-ms-transform: scale(0);
	transform: scale(0);
}

/******************************************
visualHeight
******************************************/
.set-height {
	overflow: hidden;
}
.set-height .visual-image {
	overflow: hidden;
}
@media screen and (max-width: 1024px) {
	.component-visual.set-height .visual-item .visual-text-inner .text-image img {
		width: 50%;
		height: auto;
	}
	.component-visual.set-height .visual-item {
		min-height: 0;
	}
	.component-visual.set-height .visual-item .visual-text-inner .text-copy {
		font-size: 100%;
	}
	.component-visual.set-height .visual-item .visual-text-inner .text-title {
		font-size: 175%;
	}
}


/******************************************
visualVideo
******************************************/
.component-video-wrap {
	position: fixed;
	top: 60px;
	left: 0;
	z-index: 0;
	width: 100%;
	overflow: hidden;
}
.component-video-bg:before {
	content: " ";
	position: absolute;
	z-index: 1;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0);
}
.visual-video.on-video .component-video-bg {
	position: relative;
	left: 50%;
	width: 100%;
	height: 100%;
	box-sizing: border-box;
	overflow: hidden;
}
.visual-video .component-video-bg iframe {
	visibility: hidden;
}
.visual-video.on-video .component-video-bg iframe {
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	visibility: visible;
}
.visual-video .component-video-text {
	display: none;
}
.visual-video.on-video .component-video-text {
	display: block;
	position: absolute;
	top: 100px;
	left: 0;
	z-index: 1;
	width: 100%;
	box-sizing: border-box;
}
.visual-video.on-video .component-video-text-inner {
	max-width: 1104px;
	margin: 0 auto;
	padding: 0 24px;
}
.visual-video.on-video .component-video-text dl {
	display: inline-block;
	margin-bottom: 20px;
	color: #fff;
	text-shadow: 0 0 3px rgba(0,0,0,1), 0 0 3px rgba(0,0,0,1);
}
.visual-video.on-video .component-video-text dt {
	margin-bottom: 8px;
	font-size: 140%;
	line-height: 1.5;
}
.visual-video.on-video .component-video-parts {
	position: relative;
	z-index: 1;
}
.visual-video.on-video .component-video-parts .component-video-parts-action {
	position: absolute;
	top: -80px;
	left: 0;
	width: 100%;
}
.visual-video.on-video .component-video-parts .component-video-parts-action-inner {
	max-width: 1104px;
	margin: 0 auto;
	text-align: right;
}
.visual-video.on-video .component-video-parts .btn-video {
	display: inline-block;
	margin: 0 24px;
	text-align: center;
}
.visual-video.on-video .component-video-parts .btn-video a {
	display: block;
	border: 1px solid #ec556d;
	display: block;
	height: 28px;
	text-indent: -9999px;
	width: 28px;
	background-color: #f00;
	background-position: 50% 50%;
	background-repeat: no-repeat;
}
.visual-video.on-video .component-video-parts .btn-video .video-stop {
	background-image: url(/resources/images/icon-video-stop.png);
}
.visual-video.on-video .component-video-parts .btn-video .video-start {
	display: none;
	background-image: url(/resources/images/icon-video-start.png);
}

.visual-video.on-video .component-video-parts .component-productbtn-list {
	margin-bottom: 0;
	background: url(/resources/images/bg-productbtn-list.png);
	background: rgba(255,255,255,.5);
}
.visual-video.on-video .component-video-parts .component-top-news {
	margin-top: 0;
}
.visual-video.on-video #contents {
	margin-top: 0 !important;
}

.visual-video.no-video-old .component-video-text,
.visual-video.no-video-old .component-video-parts-action {
	display: none;
}
.visual-video.no-video-old .component-video-parts {
	margin-top: 60px !important;
}
.visual-video.no-video .component-video-wrap,
.visual-video.no-video-old .component-video-wrap {
	display: none;
}
.visual-video #bottom-fixed {
	z-index: 1001;
}

@media screen and (min-width:1024px) {
	.visual-video {
		background: #000;
	}
	.visual-video.no-video,.visual-video.no-video-old {
		background: #fff;
	}
	.visual-video .component-visual {
		opacity: 0;
	}
	.visual-video.no-video .component-visual,
	.visual-video.no-video-old .component-visual {
		opacity: 1;
	}
	.visual-video.on-video .component-visual {
		visibility: hidden;
		opacity: 0;
		height: 0 !important;
		min-height: 0 !important;
	}
}
@media screen and (max-width:1024px) {
	.visual-video .component-video-text,
	.visual-video .component-video-parts-action {
		display: none;
	}
	.visual-video .component-video-parts {
		margin-top: 60px !important;
	}
}
@media screen and (max-width:580px) {
	.visual-video .component-video-parts,
	.visual-video.no-video-old .component-video-parts {
		margin-top: 45px !important; /* 言語切り替え調整 20200902 デフォルトは0 */
	}
}

