@charset "utf-8";
/* CSS Document */
@import url('https://fonts.googleapis.com/css2?family=Noto+Sans+JP:wght@400;700;900&display=swap');
sub {
    font-size: 70%;
    line-height: 0;
    vertical-align: baseline;
    bottom: -0.25em;
	font-weight: 900;
}
#challenge {
	color: #038d59;
}
#challenge .breadcrumb,
#challenge .breadcrumb a{
	color:hsla(0,0%,24%,1.00);
}
@keyframes loop {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 1200px 0; /* 画像のマイナス幅 */
    }
}
#challenge h2{
	font-weight: 900;
	text-align: justify;
	font-family: 'Noto Sans JP', sans-serif;
}
#challenge #main{
	min-height: 700px;
	padding-top: 3em;
	position: relative;
	z-index: -1;
}
#challenge #main::after{
	content:"";
	display:block;
	background-image: url("../img/main_bgPC.png");
	background-position: bottom center;
	background-repeat: no-repeat;
	height: 800px;
	width: 100%;
	position: absolute;
	bottom: 0;
}
#challenge #main h1{
	max-width: 800px;
	margin: 3em auto;
}
#challenge #main p{
	font-size: 1.5em;
	max-width: 750px;
	font-weight: 700;
	text-align: justify;
	font-family: 'Noto Sans JP', sans-serif;
	margin: auto;
}
@media (min-width: 769px) {
	#challenge #main.slide {
    width: 100%;
    height: 900px; /* 画像の高さ */
    background-image:url("../img/cloud01.png");
    background-repeat: repeat-x;
    background-size: auto 600px; /* 画像の高さ */
    animation: loop 200s linear infinite;
}
}
@media (max-width: 768px) {
	#challenge #main{
	background-image:url("../img/main_bgSP.jpg");
		background-position: bottom;
		background-size: cover;
padding-bottom: 30vh;
}
	#challenge #main h1{
	margin: 3em 1em;
}
#challenge #main p{
	font-size: 1.1em;
	text-align: justify;
	padding: 0 2em;
}
}
#challenge .challengeWrap section{
	padding: 3em 0;
}
#challenge .challengeWrap section .lead{
	display: flex;
	justify-content: space-around;
}
#challenge .challengeWrap section .lead > div{
	flex: 1
}
#challenge .challengeWrap section h2{
	font-size: 2.5em;
	line-height: 1.6;
}
#challenge .challengeWrap section h2 span{
	font-size: 0.5em;
	display: block;
	font-weight: 900;
	font-family: 'Noto Sans JP', sans-serif;
}
#challenge .challengeWrap section p{
	font-size: 1.2em;
	text-align: justify;
	font-family: 'Noto Sans JP', sans-serif;
	font-weight: 700;
}
#challenge .challengeWrap section p.text_s{
	font-size: 0.5em;
margin: 1em;
font-weight: 400;
color: hsla(0,0%,0%,1.00);
    margin-left: 35%;
}
#challenge .challengeWrap section .image{
	margin: 3em 0;
}
#challenge .challenge01,
#challenge .challenge03{
	background:#0099991a;
}
#challenge .challenge02{}

#challenge .challenge03 .upcycle{
	padding: 1em;
	text-align: left;
}

#challenge .challenge03 .upcycle h3{
	font-size: 1em;
    font-weight: 900;
}
#challenge .challenge03 .upcycle p{
	color: hsla(0,0%,0%,1.00);
	font-size: 0.9em;
	font-weight: 400;
}

#challenge .challenge03 .upcycle .btn_upcycle a{
	display: inline-block;
    padding: 0.5em 2em;
    border: 1px solid #333;
    background: #FFF;
    border-radius: 50px;
}
@media (min-width: 769px) {
	#challenge .challenge03 .upcycle{
	overflow: hidden;
}
#challenge .challenge03 .upcycle p{
	float: left;
	width: 58%;
}
	#challenge .challenge03 .upcycle .btn_upcycle{
		text-align: center;
	}

}
@media (max-width: 768px) {
	#challenge .challengeWrap section .lead{
		flex-direction: column;
	}
	#challenge .challengeWrap section h2{
	font-size: 1.7em;
		margin-bottom: 2em;
}
#challenge .challengeWrap section h2 span{
	font-size: 0.6em;
}
#challenge .challengeWrap section p{
	font-size: 1.0em;
}
	#challenge .challenge03 .upcycle .btn_upcycle{
	width: 80%;
    margin: 1em auto;
	}
#challenge .challengeWrap section p.text_s{
    margin-left:0;
}
}

#challenge .member{
	text-align: center;
	padding-top: 3em;
}
#challenge .member::after{
	content:"";
	display:block;
	background-image: url("../img/foot_bg.png");
	background-position: bottom center;
	background-repeat: repeat-x;
	height: 150px;
} 
#challenge .member h2{
	text-align: center;
	font-size: 2em;
}#challenge .member p{
	max-width: 600px;
	margin:2em auto;
	font-size: 1.2em;
	font-weight: 700;
	text-align: center;
}
#challenge .member .slide {
    width: 100%;
    height: 600px; /* 画像の高さ */
    background-image:url("../img/member_bg.jpg");
    background-repeat: repeat-x;
    background-size: auto 600px; /* 画像の高さ */
    animation: loop2 200s linear infinite;
}
#challenge .member .btn{
	margin: 2em 1em;
}
@media (max-width: 768px) {
	#challenge .member h2{
	font-size: 1.5em;
text-align: left;
	}
#challenge .member h2 br{
	 display: none;
	}
	#challenge .member::after{
	    height: 50px;
    background-size: 150%;
} 
	#challenge .member .slide {
    width: 100%;
    height: 500px; /* 画像の高さ */
    background-image:url("../img/member_bg.jpg");
    background-repeat: repeat-x;
    background-size: auto 300px; /* 画像の高さ */
    animation: loop2 200s linear infinite;
padding-bottom: 2em;
}
	#challenge .member p{
	font-size: 1em;
	font-weight: 700;
	text-align: left;
}
}



@keyframes loop2 {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 1200px 0; /* 画像のマイナス幅 */
    }
}