/*-------------------
 index
-------------------*/
#kv {
  display: -webkit-box;
  display: -ms-flexbox;
  -webkit-box-align:center;
  -ms-flex-align:center;
  align-items: center;
  -webkit-box-pack:center;
  -ms-flex-pack:center;
  background-image: url(../images/front_kv_bg.webp);
  background-position: center top;
  background-repeat: no-repeat;
  background-size: cover;
  padding: 60px 0;

	@media (max-width: 768px) {
		padding: 30px 0;
	}
}
#kv .pcop {
	width: 1000px;
	max-width: 90%;
	margin: auto;
}
#kv .spop {
	width: 45%;
	margin: auto;

	@media (max-width: 600px) {
		width: 60%;
	}
	@media (max-width: 428px) {
		width: 70%;
	}
}
#kv a:hover img {
	opacity: 1;
}


#front {
	width: 90%;
	max-width: 1000px;
	margin: 0 auto;
	padding-bottom: 80px;
}

.idx-mfp-plan {
	margin-top: 40px;
}
.mfp-plan-in {
	display: flex;
	justify-content: space-between;
	margin: 20px auto 0;

	@media (max-width: 600px) {
		flex-direction: column;
	}
}
.mfp-plan-in > div {
	width: 32%;
	border-radius: 5px 5px 0 0;
	border: 1px solid #1e345e;

	@media (max-width: 600px) {
		width: 100%;
	}
}
.mfp-plan-in .planname {
	border-radius: 5px 5px 0 0;
	background: linear-gradient(#294572, #1e345e);
	text-align: center;
	color: #fff;
	padding: 14px 0;
	line-height: 1;
	font-weight: bold;
}
.mfp-plan-in .box {
	padding: 20px;
}
.mfp-plan-in .box .flexbox {
	display: flex;
	gap: 20px;

	@media (max-width: 960px) {
		flex-direction: column;
	}
	@media (max-width: 600px) {
		flex-direction: row;
	}
}
.mfp-plan-in .box .flexbox .img {
	text-align: center;
	width: 15%;

	@media (max-width: 960px) {
		width: 100%;
	}
	@media (max-width: 600px) {
		width: 15%;
	}
}
.mfp-plan-in .box .flexbox .txt {
	width: 85%;
	font-size: 15px;

	@media (max-width: 960px) {
		width: 100%;
	}
	@media (max-width: 600px) {
		width: 85%;
	}
}

.mfp-plan-in .box .btn {
	width: 100%;
	margin: 5px auto 0;

	@media (max-width: 960px) {
		width: fit-content;
	}
}
.mfp-plan-in .box .btn-red {
	font-size: 14px;
	font-weight: 500;
	padding: 7px 35px 7px 15px;
}

.mfp-plan-bottom-banner {
	margin: 30px auto 0;
	display: flex;
	gap: 1%;

	@media (max-width: 600px) {
		flex-direction: column;
		gap: 10px;
	}
}
.mfp-plan-bottom-banner > a {
	display: block;
	width: 49.5%;

	@media (max-width: 600px) {
		width: 100%;
		max-width: 490px;
		margin: auto;
	}
}

/* reason
-------------------*/
.idx-reason {
	margin-top: 60px;
	margin-bottom: 80px;

	@media (max-width: 768px) {
			margin-bottom: 0;
	}
}
.idx-reason-in {
	display: flex;
	justify-content: center;
	align-items: flex-end;
	margin: 40px auto 0;
}
.idx-reason-in .point {
	width: fit-content;
	max-width: 60%;
	color: #294572;

	@media (max-width: 600px) {
		width: 100%;
		max-width: 100%;
	}
}
.idx-reason-in .img {
	width: 40%;
	max-width: 238px;
	padding-left: 10px;
	box-sizing: border-box;

	@media (max-width: 600px) {
		display: none;
	}
}
.idx-reason-in .point-in {
	font-size: 19px;
	font-weight: bold;
	position: relative;
	padding: 0 0 40px 100px;

	@media (max-width: 960px) {
		font-size: 18px;
	}
	@media (max-width: 600px) {
		font-size: 17px;
	}
}
.idx-reason-in .point-1::before,
.idx-reason-in .point-2::before,
.idx-reason-in .point-3::before {
  position: absolute;
  top: 0;
  left: 0;
  content: '';
  display: inline-block;
  width: 74px;
  height: 96px;
  background-position: top left;
  background-repeat: no-repeat;
  background-size: contain;
}
.idx-reason-in .point-1::before {
  background: url(/images/reason_ob_1.png);
}
.idx-reason-in .point-2::before {
  background: url(/images/reason_ob_2.png);
}
.idx-reason-in .point-3::before {
  background: url(/images/reason_ob_3.png);
}