@charset "UTF-8";

/* -------------------------- */
/* content */
/* -------------------------- */

.mainVisual {
	position: relative;
}
	.mainVisual p.mainTxt {
		color: #fff;
		font-size: 2rem;
		font-family: "FOT-ニューセザンヌ Pro DB";
		position: absolute;
		top: 50%;
		left: 50%;
		transform: translateY(-50%) translateX(-50%);
		-webkit- transform: translateY(-50%) translateX(-50%);
		text-shadow: 0px 0px 8px #000;
		z-index: 2;
		white-space: nowrap;
	}

/* bnrArea */
.bnrArea {
	padding: 15px;
}
.bnrArea > .container {
	position: relative;
	text-align: center;
}
.bnrArea .btn {
	display: block;
	padding: 10px;
	width: 100%;
	border-radius: 4px;
	background: #008206;
}
.bnrArea .btn .sp {
	max-width: 250px;
}
.bnrArea .btn .pc {
	display: none;
}

/* topNavi */
.topNavi {
	background: url(/images/bg/bg_content.jpg);
}

/* categoryList */
.categoryList {
	/* margin-bottom: 60px; */
	text-align: center;
}
	.categoryList .categoryBox {
		padding-bottom: 30px;
		display: block;
	}
		.categoryList .categoryBox .categoryImg {
			margin-bottom: 15px;
		}
		.categoryList .categoryBox .contentsTitle {
			margin: 0 15px 10px;
		}
		.categoryList .categoryBox p {
			margin: 0 15px;
			padding-top: 15px;
			border-top: 1px dotted #999;
			display: inline-block;
		}

/* videoList */
.videoList {
	background: url(/images/bg/bg_content.jpg);
}
	.videoList .videoBox {
		position: relative;
		padding-bottom: 56.25%;
		height: 0;
		width: 100%;
		overflow: hidden;
	}
		.videoList .videoBox iframe {
			position: absolute;
			top: 0;
			left: 0;
			width: 100%;
			height: 100%;
		}

/* companyBox */
.companyBox {
	background: url(/images/top/bg_company.jpg) no-repeat center;
	background-size: cover;
	text-align: center;
}
	.companyBox .companyBoxTitle {
		margin-bottom: 25px;
		font-size: 2.8rem;
		font-family: "リュウミン M-KL";
	}
	.companyBox .companyBoxTxt {
		margin-bottom: 20px;
	}

/* infoBox */
.infoBox {
	text-align: center;
}
	.infoBox .infoList {
		text-align: left;
	}


/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media only screen and (min-width:1024px) {

/* -------------------------- */
/* pageHeader */
/* -------------------------- */

.pageHeader {
	border: none;
	position: relative;
}
	.pageHeader .container .logo a {
		background: url(/images/top/logo_top.svg) no-repeat left center;
		background-size: auto;
		display: block;
		overflow: hidden;
		text-indent: 100%;
		white-space: nowrap;
	}
		.pageHeader .headerNaviBox .grobalNavi_list {
			max-width: 480px;
			overflow: hidden;
			white-space: nowrap;
		}


/* -------------------------- */
/* content */
/* -------------------------- */

.mainVisual {
	margin-top: -100px;
	position: relative;
	z-index: -1;
}
	.mainVisual .slides::before {
		width: 100%;
		height: 100%;
		background: url(/images/top/bg_slider.png) no-repeat center bottom;
		background-size: 100% auto;
		content: "";
		position: absolute;
		bottom: 0;
		z-index: 3;
	}
	.mainVisual p.mainTxt {
		font-size: 4rem;
	}

/* bnrArea */
.bnrArea {
	padding: 0;
}
.bnrArea .btn {
	position: absolute;
	top: 0;
	right: 0;
	z-index: 500;
	transform: translateY(-100%);
	padding: 0;
	width: auto;
	background: none;
}
.bnrArea .btn .sp {
	display: none;
}
.bnrArea .btn .pc {
	display: block;
}

/* topNavi */
.topNavi {
}
	.topNavi .container {
		padding: 0 25px;
		display: flex;
		align-items: center;
		justify-content: center;
	}
		.topNavi .container .logo {
			width: 250px;
			margin-right: 30px;
		}
		.topNavi .container .siteNavi {
			padding: 25px 0;
			border-color: #999;
			border-style: dotted;
			border-width: 1px 0;
			display: flex;
			flex-wrap: wrap;
			font-size: 1.5rem;
		}
			.topNavi .container .siteNavi li:not(:last-child) {
				margin-right: 40px;
			}

/* categoryList */
.categoryList {
	display: flex;
	flex-wrap: wrap;
	justify-content: center;
}
	.categoryList .categoryBox {
		width: 50%;
		padding-bottom: 40px;
	}
		.categoryList .categoryBox .categoryImg {
			margin-bottom: 30px;
		}
		.categoryList .categoryBox .contentsTitle01 {
			margin-bottom: 10px;
		}

/* videoList */
.videoList {
}

/* companyBox */
.companyBox {
}
	.companyBox .companyBoxTitle {
		margin-bottom: 50px;
		font-size: 4rem;
	}
	.companyBox .companyBoxTxt {
		margin-bottom: 35px;
		font-size: 2rem;
	}


}


/* ================================================================================================================================================================================== */
/* pc */
/* ================================================================================================================================================================================== */

@media only screen and (min-width:1280px) {

/* -------------------------- */
/* content */
/* -------------------------- */

.topNavi {
}
	.topNavi .container {
		justify-content: space-between;
	}
		.topNavi .container .logo {
			width: 323px;
		}


}
