@charset "utf-8";

/*===========================================================
	メインビジュアル
===========================================================*/

#main-visual .layer {
	background-image: url(../images/index/main-visual.jpg);
}

#main-visual .logo {
	max-width: 498px;
	width: 31.125%;
	height: 118px;
	position: absolute;
	top: 50%;
	left: 5%;
	background: url(../images/index/fun-and-smile@2x.png) left center no-repeat;
	background-size: contain;
	text-indent: -9999px;
	overflow: hidden;
}

/*========== オープニング動作用のレイヤー ==========*/

#main-visual .opening {
	position: absolute;
	top: 0;
	right: 0;
	width: 100%;
	height: 100%;
	background-color: #3f3f3f;
}

/*===========================================================
	メインコンテンツ
===========================================================*/

main {
	background-color: #353231;
}

/*========== 斜め線 ==========*/

#wrapper_main::before {
	background-color: #353231;
}

/*========== メインカラム冒頭の画像 ==========*/

#main_header {
	margin-bottom: 0;
}

/*========== メニュー ==========*/

#menu {
	padding-bottom: 100px;
}

#menu ul {
	-ms-flex-wrap: wrap;
	-webkit-flex-wrap: wrap;
	flex-wrap: wrap;
	-ms-flex-align: flex-start;
	-webkit-align-items: flex-start;
	align-items: flex-start;
	margin: 0 -15px;
}

#menu li {
	width: calc(33.333% - 30px);
	overflow: hidden;
	background-color: #FFF;
	position: relative;
	margin: 0 15px -59px;
}

#menu ul li:nth-child(3n-1) {
	margin-top: 39px;
}

#menu ul li:nth-child(3n-2) {
	margin-top: 78px;
}

#menu .thumb {
	position: relative;
}

#menu .thumb a::before {
	content: "";
	width: 100%;
	height: 0;
	display: block;
	position: absolute;
	bottom: 0;
	left: 0;
	background: url(../images/index/content_icon.png) center no-repeat rgba(8,180,201,0.3);
	background-size: 60px;
	transition: all 0.2s cubic-bezier(0.45,0.79,0.45,1);
}

#menu .thumb a:hover::before {
	height: 100%;
}

#menu .thumb a::after {
	content: "";
	position: absolute;
	top: -53px;
	right: 0;
	width: 120%;
	height: 50px;
	margin: 0 -10%;
	-webkit-transform-origin: right bottom;
	-ms-transform-origin: right bottom;
	transform-origin: right bottom;
	-webkit-transform: rotate(-5deg);
	-ms-transform: rotate(-5deg);
	transform: rotate(-5deg);
	background-color: #353231;
}

#menu .text {
	background-color: #FFF;
	padding: 20px 14px 80px;
}

#menu .text p:nth-of-type(2):not(.sub-title){
	margin-top: 18px;
}

#menu .title {
	font-weight: bold;
	font-size: 2.94rem;
	line-height: 1;
}

#menu .sub-title {
	font-weight: bold;
	color: #888;
	font-size: 1.19rem;
	margin-bottom: 1.8rem;
}

#menu .button_more {
	width: 100%;
	background-color: #353231;
	position: absolute;
	left: 0;
	bottom: 0;
	overflow: hidden;
}

#menu .button_more a {	
	display: block;
	background: url(../images/index/menu_bg@2x.png) left bottom;
	background-size: cover;
	color: #c9bc9c;
	padding: 10px 20px 30px;
}

#menu .button_more span {
	font-weight: bold;
	position: relative;
}

#menu .button_more span::before{
	content: "";
	position: absolute;
	top: 50%;
	bottom: 0;
	right: -25px;
	width: 8px;
	height: 8px;
	margin: -8px auto 0;
	border-right: 4px solid #c9bc9c;
	border-bottom: 4px solid #c9bc9c;
	-webkit-transform: rotate(-45deg);
	-ms-transform: rotate(-45deg);
	transform: rotate(-45deg);
}

.inner.list_area {
	padding-bottom: 0;
}

/*========== THE MOVIE of FREE POWER ==========*/

section#the_movie {
	position: relative;
	overflow: hidden;
}

#container_movie h3.title {
	font-weight: bold;
	font-size: 2.66rem;
	line-height: 1.4;
	color: rgba(255,255,255,0.5);
	text-align: center;
	margin-bottom: 1.5rem;
}

#container_movie iframe {
	margin: 0 5%;
	width: 90%
}

@media print, screen and (max-width:750px) {

	/*===========================================================
		ヘッダー
	===========================================================*/

	h1 {
		display: block;
	}

	/*===========================================================
		メインビジュアル
	===========================================================*/

	#main-visual .layer {
		background-image: url(../images/index/sp_main-visual.jpg);
	}

	#main-visual .logo {
		width: 178px;
		height: 42px;
		left: auto;
		right: 13px;
		margin-top: -20px;
	}

	/*========== オープニング動作用のレイヤー ==========*/

	#main-visual .opening {
		display: none;
	}

	/*===========================================================
		メインコンテンツ
	===========================================================*/

	/*========== メインカラム冒頭の画像 ==========*/

	#main_header {
		margin-bottom: 0;
		height: 120px;
	}

	#main_header img {
		width: 115px;
		height: auto;
		margin-top: -50px;
	}

	/*========== メニュー ==========*/

	#menu {
		margin: 0 40px;
		padding-bottom: 0;
	}

	#menu ul {
		display: block;
		margin: 0;
	}

	#menu li {
		width: 100%;
		background-color: #FFF;
		position: relative;
		overflow: visible;
		margin: 30px 0 0;
	}

	#menu li::before {
		content: "";
		display: block;
		position: absolute;
		top: -1px;
		bottom: -1px;
		left: -1px;
		right: -1px;
		border: solid 2px #353231;
	}

	#menu ul li:nth-child(3n-1) {
		margin-top: 30px;
	}

	#menu ul li:nth-child(3n-2) {
		margin-top: 30px;
	}

	#menu ul li:first-child {
		margin-top: 0;
	}

	#menu .thumb {
		position: relative;
	}

	#menu .thumb a::before {
		display: none;
	}

	#menu .thumb a:hover::before {
		height: 100%;
	}

	#menu .thumb a::after {
		content: "";
		position: absolute;
		top: -60px;
		right: 0;
		width: 100%;
		height: 60px;
		margin: 0;
		-webkit-transform-origin: right bottom;
		-ms-transform-origin: right bottom;
		transform-origin: right bottom;
		-webkit-transform: scaleX(1.01) skewY(-5deg);
		-ms-transform: scaleX(1.01) skewY(-5deg);
		transform: scaleX(1.01) skewY(-5deg);
		background-color: #353231;
	}

	#menu .text {
		padding-bottom: 35px;
		background-color: #FFF;
		overflow: hidden;
		text-align: center;
	}

	#menu p {
		font-size: 1.3rem;
		line-height: 1.75em;
	}

	#menu p:not(.title) {
		margin-left: 25px;
		margin-right: 25px;
	}

	#menu .title {
		margin-top: 20px;
		font-weight: bold;
		font-size: 2.4rem;
		line-height: 1em;
	}

	#menu .sub-title {
		margin-top: 12px;
		margin-bottom: 18px;
		color: #9FA0A0;
		font-size: 1.4rem;
		line-height: 1.45em;
		font-weight: bold;
	}

	#menu .button_more {
		width: 100%;
		background-color: #353231;
		position: relative;
		left: 0;
		bottom: 0;
		overflow: hidden;
	}

	#menu .button_more a {
		padding: 20px 0 45px;
		font-size: 1.3rem;
		text-align: center;
		line-height: 1em;
	}

	#menu .button_more span {
		font-weight: bold;
		position: relative;
	}

	#menu .button_more span::before{
		display: none;
	}

	.inner.list_area {
		padding-bottom: 0;
	}

	/*========== THE MOVIE of FREE POWER ==========*/

	section#the_movie {
		margin-top: 120px;
	}

	#container_movie h3.title {
		font-weight: 700;
		font-size: 1.8rem;
		line-height: 1em;
		color: #DCDDDD;
		margin-bottom: 30px;
	}

	#container_movie iframe {
		margin: -56.25% 0 0;
		padding-top: 56.25%;
		width: 100%
	}

}
