@media screen and (max-width: 1150px) {
	.banner .mv {
		left: 50%;
		position: relative;
		transform: translateX(-50%);
		max-width: 200%;
    width: 168%;
	}
	.mv4 {
		left: 19%;
  	width: 24%;
	}

	.sec1_img1 { 
		max-width: calc(100% - 260px);
		right: -61px;
		top: 62%;
    transform: translateY(-50%);
	}


	.sec4 { height: auto; background: none; }
	.sec4_ttl { max-width: 400px; }
	.sec4_con:before {
		width: 550px;
		height: 550px;
	}
	.sec4_con .c_btn {
		width: 350px;
  	margin: 0 auto;
	}


}

@media screen and (max-width: 1000px) {
	.sec4_con::before {
		height: 450px;
		width: 450px;
	}

	.sec2_list li a { font-size: 2vw; }
	
}



@media screen and (max-width: 900px) {

	.sec1_upper_info2 .txt3 { width: 60%; }

	.sec4_img1 { left: -63px; }
	.sec4_img2 { right: -63px; }

	.sec2_list li a:before { left: 3%; }

}



@media screen and (max-width: 768px) {

	.pc-only { display: none; }
	.sp-only { display: block; }

	/* MAIN */
	.hdr_con { min-height: 70px; }
	.hdr_logo { width: 186px; }

	.banner .mv { width: 100%; }
	

	.sec1 { 
		margin-top: 0;
		padding: 0;
		margin: 0 auto;
	}
	.ban_con {
		padding: 25px 20px 150px;
		position: relative;
		z-index: 1;
	}
	.ban_con:before {
		content: "";
		/* background: linear-gradient(to bottom,#e6f0d8 0%,#d6ebe0 40%,#cfe9f2 100%); */
		background: linear-gradient(to bottom,#DDE7BB 0%,#d6ebe0 40%,#AEDBF2 100%);
		width: 100%;
		height: 100%; 
		position: absolute;
		top: 0;
		left: 0;
		z-index: -1;
	}
	.ban_MV1_txt1_sp { padding: 30px 20px; }
	.ban_MV1_txt2_sp { 
		width: 60%;
		position: relative;
		z-index: 1;
	}
	.ban_MV3_sp {
		position: absolute;
    top: -5%;
    right: -23%;
    width: 92%;
	}
	.mv4 {
    width: 196px;
    margin: 0 auto;
    left: 0;
    right: 0;
    bottom: -75px;
		z-index: 2;
	}

	.sec1_upper { padding: 95px 20px 0; }
	.sec1_upper_info1 { margin-bottom: 15px; }
	.sec1_upper_info1:before,
	.sec1_upper_info1:after {
		background-size: cover;
		height: 45px;
	}
	.sec1_upper_info1:before {	top: -65px;	}
	.sec1_upper_info1:after {	bottom: -150px;	}
	.sec1_txt1 { 
		width: 77%;
		margin-bottom: 30px;
	}
	.sec1_upper_info1 .txt p:not(:last-child) { margin-bottom: 25px; }
	.sec1_upper_info1 .txt { font-size: 16px; }
	.sec1_img1 {
		transform: none;
    position: static;
    width: 150%;
    max-width: calc(100% + 40px);
    margin-top: 15px;
    margin-left: -20px;
	}
	
	.sec1_upper_info2 { margin-bottom: 0; }
	.sec1_upper_info2 .txt2 { margin-bottom: 30px; }
	.sec1_upper_info2 .txt3 {
		width: auto;
		position: relative;
		top: 0;
	}
	.sec1_upper_img2 {
		width: calc(100% + 40px);
		max-width: 150%;
		margin: -10px 0 0 -20px;
	}


	.sec1_lower { 
		padding: 70px 20px 30px;
		margin-bottom: 0;
	}
	.sec1_lower:before { 
		right: 20px;
    top: -159px;
	}
	.sec1_lower ul {
		display: flex;
		flex-direction: column;
		align-items: center;
		gap: 8px;
	}
	.sec1_lower ul li { width: 100%; }
	.sec1_lower ul li img { width: 100%; }
	.sec1_btm { padding: 0 20px 40px; }
	.sec1_btm p { 
		font-size: 16px;
		margin-bottom: 30px;
	}

	.sec2_outter {flex-direction: column;	}
	.sec2_outter img { width: 100%; }
	.sec2 { padding: 60px 20px 50px; }
	.sec2:before {
		background-size: 100% 15px;
		height: 15px;
		width: 100%;
		top:-15px;
	}
	.sec2:after {
		background-size: 100% 15px;
		height: 15px;
		width: 100%;
		bottom:-15px;
	}
	.sec2_list {
		flex-direction: column;
  	align-items: center;
		gap: 40px;
	}
	.sec2_list::before { display: none; }
	.sec2_list li {
		width: 100%;
  	max-width: 81%;
	}
	.sec2_list li img { width: 100%; }
	.sec2_list li a { font-size: 5.4vw; } 
	.sec2_list li a:before {
		width: 15%;
    height: 66%;
    left: 4%;
	}


	.sec3:before, .sec3:after { display: none; }
	.sec3_info { width: 100%; }
	.sec3_info.pc-only { display: none; }
	.sec3_info.sp-only { display: block; }

	
	.sec4 {
		height: auto;
		padding: 0;
	}
	.sec4_ttl { 
		margin: 0;
		max-width: 100%;
		width: 100%;
	}
	.sec4_con { padding: 0; margin-top: -15%; }
	.sec4_con:before { display: none;}
	.sec4_con .c_btn { 
		position: absolute;
		bottom: 20%;
		left: 0;
		right: 0;
		margin: 0 auto;
		max-width: calc(100% - 40px);
	}
	[class^="sec4_img"] { 
		width: 100%;
		position: static;
		transform: none;
	}
	.sec4_img2 { margin-top: -9%; }



	.sec5 { padding: 30px 0 0; }
	.sec5_con {
		flex-direction: column;
		gap: 0;
	}
	.sec5_logo { 
		width: 100%;
		height: auto;
	}
	.sec5_logo img { width: 98px; }
	.sec5_txt { 
		font-size: 16px;
		line-height: 24px;
		width: 100%;
		padding: 20px 20px 30px;
	}


	/* Fixed Button */
	.fixed_btn { 
		display: block;
	}




	/* FOOTER */
	 footer {
      padding: 40px 20px 45px;
    }
		.footer__nav { gap: 20px; }
		.footer__nav li a {  font-size: 12px; }
		.footer__nav li:not(:last-child):after {
			right: -11px;
  		top: 58%;
		}
    .footer-img {
       max-width: 130px;
    }


}



@media screen and (max-width: 500px) {
	.sec1_lower:before {
		width: 160px;
		height: 142px;
		top: -72px; 
	}

	.sec2_list li a { font-size: 5vw; }


}