/* @charset "UTF-8";
.box-mainvisual {
	position: relative;
}
.box-mainvisual__slide{
	display: none;
}
.box-mainvisual__slide--pc{
	display: block;
}
.box-mainvisual__slide--sp{
	display: none;
}
.box-mainvisual__image > img {
	width: 100%;
	height: auto;
	max-width: none;
}
.box-mainvisual__text {
	position: absolute;
	max-width: 1180px;
	margin: 0 auto;
	left: 0;
	right: 0;
	top: 50%;
	-webkit-transform: translateY(-50%);
	transform: translateY(-50%);
}
.box-mainvisual__button {
	position: absolute;
	max-width: 1180px;
	margin: 0 auto;
	left: 0;
	right: -25px;
	bottom: 5px;
	text-align: right;
	z-index: 10;
}
.box-mainvisual__button a {
	display: inline-block;
}
.box-mainvisual__button a:hover {
	opacity: 0.7;
}
.box-mainvisual__text__inner {
	display: inline-block;
	position: relative;
}
.box-mainvisual__text__button {
	position: absolute;
	left: 0;
	right: 0;
	margin: 0 auto;
	bottom: -45px;
	text-align: center;
}
.box-mainvisual__slide .slick-dots {
	text-align: center;
	margin-top: 20px;
}
.box-mainvisual__slide .slick-dots li{
	display: inline-block;
	padding: 0 5px;
}
.box-mainvisual__slide .slick-dots li.slick-active button {
	background: #0075c2;
}
.box-mainvisual__slide .slick-dots li button {
	color: transparent;
	line-height: 1;
	width: 10px;
	height: 10px;
	background: #758fa0;
	border-radius: 50%;
}
.box-mainvisual__attention{
	font-size: 16px;
	text-align: right;
	padding-right: 30px;
	margin-top: -2em;
	display: inline-block;
	float: right;
	position: relative;
	z-index: 10;
}
@media only screen and (max-width: 1024px) {
	#l-document{
		overflow: hidden;
	}
	.box-mainvisual {
		margin-bottom: 0;
		overflow: hidden;
	}
	.box-mainvisual__slide{
		display: block;
	}
	.box-mainvisual__slide--pc{
		display: none;
	}
	.box-mainvisual__slide--sp{
		display: block;
	}
	.box-mainvisual__slide .box-mainvisual__image {
		padding-bottom: 0;
	}
	.box-mainvisual__image {
		position: relative;
		padding-bottom: 100%;
	}
	.box-mainvisual__image > img {
		height: 100%;
		width: auto;
		max-width: none;
		position: absolute;
		top: 0;
		bottom: 0;
		margin-left: -50%;
	}
	.box-mainvisual__slide .box-mainvisual__image > img {
		position: static;
		width: 100%;
		height: auto;
		margin: 0;
	}
	.box-mainvisual__button {
		width: 40%;
		min-width: 216px;
		right: 0;
	}
	.box-mainvisual__text {
		max-width: 80%;
		text-align: center;
	}
	.box-mainvisual__text__button {
		padding: 0 10px;
		bottom: -22px;
	}
	.btn--type01 {
		width: 100%;
		font-size: 11px;
		line-height: 45px;
		padding: 0 15px;
	}
	.btn--type01:after {
		right: 5px;
	}
	.box-mainvisual .slick-dots {
		text-align: center;
		bottom: 5px;
	}
	.box-mainvisual__slide .slick-dots {
		text-align: center;
		margin-top: 20px;
	}
	.box-mainvisual__slide .slick-dots li {
		display: inline-block;
		padding: 0 7px;
	}
	.box-mainvisual__slide .slick-dots li button {
		color: transparent;
		line-height: 1;
		width: 4px;
		height: 4px;
		background: #cecece;
		border-radius: 50%;
	}
	.box-mainvisual__slide .slick-dots li.slick-active button {
		background: #0075c2;
	}
	.box-mainvisual__movie{
		display: none;
	}
	.box-mainvisual__attention{
		display: none;
	}
}
@media only screen and (max-width: 767px) {
	.box-mainvisual__slide--pc{
		display: none;
	}
	.box-mainvisual__slide--sp{
		display: block;
	}
}

.box-banner {
	font-size: 0;
	letter-spacing: 0;
	margin: 60px -10px 70px;
}
.box-banner__col {
	display: inline-block;
	vertical-align: middle;
	text-align: center;
	box-sizing: border-box;
}
.box-banner__col--pc-col2 {
	width: 50%;
	padding: 0 10px;
}
.box-banner__col--full {
	width: 100%;
}
.box-banner__col--sp-full {
	display: none;
}
.box-banner__col a:hover {
	opacity: 0.7;
}
@media only screen and (max-width: 1024px) {
	.box-banner {
		margin: 0;

	}
}
@media only screen and (max-width: 767px) {
	.box-banner__col--pc-col2 {
		display: none;
	}
	.box-banner__col--sp-full {
		width: 100%;
		display: block;
		padding: 0;
	}
}
#home .mainvisual {
	position: relative;
	overflow: hidden;
	z-index: 1;
	margin-top: 62px;
	height: auto;
}
@media only screen and (max-width: 1024px) {
	#home .mainvisual {
		margin-top: 46px;
	}
}
@media only screen and (min-width: 1px) and (max-width: 767px) {
	 #home .mainvisual {
		margin-bottom: -11px;
		margin-top: 46px;
		height: auto;
		background: none;
	}
}
#home .mainvisual::before {
	content: '';
	display: block;
	width: 100%;
	height: auto;
	position: absolute;
	background-color: #fff;
	-webkit-animation: fade 1s linear both;
	animation: fade 1s linear both;
}
.is-header-overlay .l-header:not(.is_small) {
	background-color: #fff;
}
.is-header-overlay .l-header {
	position: fixed;
	width: 100%;
	background-color: #fff;
	z-index: 9999;
} */