@charset "utf-8";

/*===========================================================
	アニメーション設定
===========================================================*/

@-webkit-keyframes slidein {
	from {
		transform: translateY(100vh);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@keyframes slidein {
	from {
		transform: translateY(100vh);
		opacity: 0;
	}
	to {
		transform: translateY(0);
		opacity: 1;
	}
}

@-webkit-keyframes fadein {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

@keyframes fadein {
	from {
		opacity: 0;
	}
	to {
		opacity: 1;
	}
}

/*===========================================================
	メインビジュアル
===========================================================*/

#main-visual .layer {
	background-image: url("../images/benefit/benefit_top-1.jpg");
}

/*========== オープニング動作用のレイヤー ==========*/

#main-visual .opening {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background: url("../images/benefit/benefit_top-1.jpg") no-repeat center center;
	background-size: cover;
}

#main_header img {
	width: 287px;
}

#main_header p {
	position: absolute;
	top: -15px;
	left: calc(50% + 160px);
	font-weight: bold;
	text-align: left;
}

section#benefit {
	
}

#benefit_wrapper {
	display: flex;
	justify-content: space-between;
	position: relative;
}

#benefit_wrapper #img_box {
	margin-right: 10%;
	flex: 0 0 43%;
}

#img_wrapper figure {
	width: 100%;
	position: relative;
	padding-top: 98%;
}

#img_wrapper figure img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: none;
}

.show01 #img_wrapper figure img.image01,
.show02 #img_wrapper figure img.image02,
.show03 #img_wrapper figure img.image03,
.show04 #img_wrapper figure img.image04,
.show05 #img_wrapper figure img.image05 {
	display: block;
	-webkit-animation: fadein 1000ms ease-in;
	animation: fadein 1000ms ease-in;
}

#benefit_list {
	flex: 1 1 auto;
}

#benefit_list li {
	margin-top: 40px;
	visibility: hidden;
}

#benefit_list li:first-child {
	margin-top: 0;
}

#benefit_list li.show {
	visibility: visible;
	-webkit-animation: slidein 1000ms;
	animation: slidein 1000ms;
}

#benefit_list li img {
	margin-right: 2.3em;
	width: auto;
	height: 43px;
	vertical-align: middle;
}

#benefit_list h4 {
	color: #000000;
	font-size: 2.45rem;
	font-weight: bold;
	line-height: 1.2em;
}

#free_power_fg1 {
	margin: 114px auto 0;
	max-width: 770px;
}

#free_power_fg1 h3 {
	color: #000000;
	font-size: 2.45rem;
	font-weight: bold;
}

#free_power_fg1 p {
	margin-top: 24px;
	color: #595757;
	font-size: 1.4rem;
}

section#benefit_movie {
	margin-top: 100px;
}

section#benefit_movie iframe {
	width: 100%;
}

@media print, screen and (max-width:750px) {

/*===========================================================
	メインビジュアル
===========================================================*/

#main-visual .layer {
	background-image: url("../images/benefit/sp_benefit_top.jpg");
}

/*========== オープニング動作用のレイヤー ==========*/

#main-visual .opening {
	display: none;
}

#main_header img {
	width: 175px;
}

#main_header p {
	margin-top: 40px;
	position: relative;
	top: auto;
	left: auto;
	font-size: 1.6rem;
	text-align: center;
	line-height: 2.333em;
}

section#benefit {
	padding-bottom: 120px;
	background: url("../images/benefit/vertical_line.png") no-repeat bottom center;
	background-size: auto 60px;
}

#benefit_wrapper {
	margin: 60px 110px 0;
	display: block;
}

#benefit_wrapper #img_box {
	margin-right: 0;
}

#img_wrapper {
	position: relative !important;
	top: 0 !important;
	left: 0 !important;
	right: 0 !important;
	bottom: 0 !important;
	width: 100% !important;
}

#img_wrapper figure {
	width: 100%;
	position: relative;
	padding-top: 100%;
}

#img_wrapper figure img {
	width: 100%;
	position: absolute;
	top: 0;
	left: 0;
	display: block;
}

.show01 #img_wrapper figure img.image01,
.show02 #img_wrapper figure img.image02,
.show03 #img_wrapper figure img.image03,
.show04 #img_wrapper figure img.image04,
.show05 #img_wrapper figure img.image05 {
	animation: none;
}

#benefit_list {
	margin-top: 60px;
}

#benefit_list li {
	margin-top: 30px;
	visibility: visible;
	text-align: center;
	animation: none;
}

#benefit_list li:first-child {
	margin-top: 0;
}

#benefit_list li.show {
	animation: none;
}

#benefit_list li img {
	margin-right: 0;
	margin-bottom: 20px;
	height: 30px;
	vertical-align: middle;
}

#benefit_list h4 {
	color: #3E3A39;
	font-size: 1.5rem;
}

#free_power_fg1 {
	margin: 60px auto 0;
	max-width: initial;
}

#free_power_fg1 h3 {
	color: #3E3A39;
	font-size: 1.6rem;
	line-height: 2em;
	text-align: center;
}

#free_power_fg1 p {
	margin: 50px 30px 0;
	font-size: 1.3rem;
	line-height: 1.923em;
}

#benefit_movie iframe {
	margin: -56.25% 0 0;
	padding-top: 56.25%;
	width: 100%
}
}