@charset "utf-8";
/* CSS Document */

/*==============================*/
/* MainVisual */
/*==============================*/
div.MainVisual{
	max-width: 1360px;
	margin: 0 auto;
}

/* ======= PC以下 =======*/
@media (max-width: 1360px) {
	div.MainVisual{ padding: 0 24px;}
}

/*==============================*/
/* MainText */
/*==============================*/

/*-- tmb
------------------------- */
div.MainText h1{
	margin-bottom: 40px;
	font-size: 80px;
	font-weight: bold;
	font-family: 'Oswald', sans-serif;
	line-height: 1em;
}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
		div.MainText h1{
			margin-bottom: 32px;
			font-size: 72px;
		}
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.MainText h1{
			margin-bottom: 24px;
			font-size: 48px;
		}
	}

/*-- title
------------------------- */
div.MainText h2{
	margin-bottom: 20px;
	font-size: 28px;
	font-weight: 600;
	font-family: "Noto Sans Japanese"; letter-spacing: -0.02em;
}
div.MainText h2 span{
	position: relative; top: -4px;
	font-size: 28px;
	color: #D70051;
}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
		div.MainText h2{
			margin-bottom: 16px;
			font-size: 24px;
		}
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.MainText h2{
			margin-bottom: 18px;
			font-size: 22px;
			line-height: 1.3em;
		}
		div.MainText h2 span{
			position: relative; top: -3px;
			font-size: 22px;
		}
	}

/*-- tmb
------------------------- */
div.MainText p{ font-size: 16px;}

	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.MainText p{ font-size: 14px;}
	}

/*==============================*/
/* Btn */
/*==============================*/
.mainBtn a{
	display: inline-block;
	max-width: 240px;
	width: 100%;
	padding: 16px 0 18px 0;
	background: #D70051;
	text-align: center;
	color: #fff;
	font-weight: 400;
	line-height: 1.3em;
	font-size: 16px;
	font-family: "Noto Sans Japanese"; letter-spacing: -0.02em;
	border-radius: 8px;
}
.mainBtn a:hover{ background: #C20049;}

/*==============================*/
/* banner */
/*==============================*/
div.conteiner{
	display: flex;
	gap: 32px 20px;
	flex-wrap: wrap;
	max-width: 1360px;
	margin: 0 auto;
}
div.conteiner dl{ width: calc(calc(100% - 40px) / 3);}
div.conteiner dl dt{
	position: relative;
	margin: -40px 32px 0 32px;
	border: 1px solid #E1E1E1;
	text-align: center;
}
div.conteiner dl dt a{
	display: block;
	padding: 24px 0;
	background: #FFFFFF;
}
div.conteiner dl dt:hover img{ opacity: 0.7;}

div.conteiner dl dd{ overflow: hidden;}
div.conteiner dl dd:hover a img{
	-webkit-transform: scale(1.2);
	transform: scale(1.2);
	-webkit-transition: .3s ease-in-out;
	transition: .3s ease-in-out;
}

	/* ======= PC以下 =======*/
	@media (max-width: 1360px) {
		div.conteiner{ padding: 0 24px;}
	}
	/* ======= TB =======*/
	@media screen and (min-width: 768px) and (max-width: 1024px) {
		div.conteiner dl{ width: calc(calc(100% - 20px) / 2);}
	}
	/* ======= SP =======*/
	@media (max-width: 767px) {
		div.conteiner{
			flex-direction: column; -webkit-flex-direction: column;
			gap: 28px 0px;
		}
		div.conteiner dl{ width: 100%;}
		div.conteiner dl dt a{
			padding: 16px 0;
		}
		div.conteiner dl:nth-child(1) dt img{ width: 171px;}
		div.conteiner dl:nth-child(2) dt img{ width: 141px;}
		div.conteiner dl:nth-child(3) dt img{ width: 171px;}
		div.conteiner dl:nth-child(4) dt img{ width: 149px;}
		div.conteiner dl:nth-child(5) dt img{ width: 157px;}
		div.conteiner dl:nth-child(6) dt img{ width: 160px;}
	}
