@media screen and (max-width:1000px){


    .pc{
        display: none!important;
    }

    .pc_2fix{
        display:none;
    }
    

    .sp{
        display: block!important;
    }
	
	

    .lp-wrap{
        width: 85%;
    }

    .lg{
        font-size: 28px;
    }

    h2{
        font-size: 20px;
    }

    header#header .wrap .donation li:first-child a{
        color: #fff!important;
    }

    p,
    dd,
    dt{
        line-height: 1.6em;
    }

    dd{
        line-height: 1.6em;
    }
	
	    ._cta02 p .sp-br{
        font-size: 20px;
        line-height: 1.6em;
    }

/* ============

top

============ */


    .top{
        padding-top: 6rem;
    }
    
		.top h1 {
		font-size: 30px;
		top: 30%;
		left: 5%;
		line-height: 1.5em;
	}
	
	.lgs {
		font-size: 30px;
		line-height: 1.5em;
	}



/* ============

about

============ */

.about {
    padding: 6% 0;
}
    

.about-box{
    width: 100%;
    padding: 48px;
    padding-top: 60px;
}
	
.about-box2 {
	width: 100%;
}

.about-box:before{
    width: 80%;
    height: 50px;
    top: -50px;
    left: 30px;
}
	
	
.about-imgbox {
	width: 100%;		
}
	


/* ============

intro

============ */

.intro-title{
    background: rgba(220, 121, 135, 0.8);
    width: 100%;
    margin: 0 auto;
    border-radius: 0;
}

.intro-title .left_border{
    margin: 0 auto;
    border-left: 30px solid #fff;
    width: 80%;
}


.intro-back{
    background: var(--pastel-pink);
}

.intro h3,.intro02-box h3 {
    font-family: "Zen Old Mincho", serif;
    font-size: 18px;
    font-weight: bold;
    color: var(--pink);
    margin-top: 5%;
}

/* ============

vision

============ */
	
	.vision{
		padding:8% 0;
	}

.vision-box{
    flex-direction: column;
}

.vision-text{
    margin-bottom: 8%;
}

.vision-img ul{
    display: flex;
}

.vision-img,
.vision-img img{
    width: 100%;
}

._02 {
    margin: 0 3%;
}


.border-r{
	border-radius: 10px;
}



/* ============

problem

============ */
	
	.problem-text{
		border-radius: 30px;	
	}


/* ============

activity

============ */


.activity-items{
    gap: 0px;
}

.activity-title{
    line-height: 1.4em;
	width: 30%;
}

.activity-item{
    width: 100%;
	flex-direction:column;
}
	
	.activity-text{
		width: 100%;
	}


.activity-item dd:nth-child(even) {
    margin: 1vw 0;
}
	
    .activity-item:first-child {
        margin-right: 1vw;
		        justify-content: space-around;
    }

.number {
    width: 40px;
    height: 40px;
}




/* ============

cta-area

============ */



.cta-area-box{
    flex-direction: column;
}

.cta-img_02{
    padding-top: 10%;
    margin: 0;
}

.cta-img_01 ul,
.cta-img_02 ul{
    display: flex;
}


.ctaimg_02,
.ctaimg_05{
    margin: 0px 5px 50px 5px;
}

.ctaimg_02 img, .ctaimg_04 img, .ctaimg_06 img {
    width: 100%;
}
	
		.button_hf{
		width:90%;
	}


    
	
	
/* ============

slide

============ */
	
	.slide-btn{
            padding: 6%;
	}




/* ============

message

============ */

.message-contents {
    flex-direction: column;
}

.message-box {
    padding: 10%;
}

.message-img {
    width: 45%;
    margin-right: 0;
    margin-bottom: 30px;
}

.message-border{
    display: none!important;
}

.message-text{
    width: 100%;
}

.message-name {
    width: 100%;
}

.donation-box {
    width: 100%;
    border-radius: 10px;
}


/* ============

achievement

============ */

.achievement-back:after{
    width: 80%;
}

.achievement-box{
    flex-direction: column;
}

.achievement-box02 dt {
    width: 100%;
}

.achievement-img img {
    padding: 30px 0;
}

.achievement-img img {
        width: 50%;
        margin: 0 auto;
        display: block;
}


.achievement-items dl{
    flex-direction: column;
}


.achievement-box02 dt {
    margin-bottom: 24px;
}


.achievement-text{
    padding: 0;
}

/* ============

benefit

============ */

.benefit-items {
    width:100%;
    padding: 8%;
}

.benefit-title{
    text-align: center;
    padding: 24px 0;
}

.benefit-items img {
    width: 50%;
    display: block;
    margin: 0 auto;
}

.benefit-box{
    flex-direction: column;
}

._bi02{
    margin: 80px 0;
}



/* ============

deduction

============ */


.deduction-box::before{
    width: 80%;
    top: -70px;
}

.flow-item:nth-child(odd):after,
.flow-item:nth-child(even):after{
    top: 30px;
}



.ex-p{
    flex-direction: column;
    line-height: 1.4em;
}

.ex-box p {
   padding: 2vw 3vw;
}

.ex-circle{
    margin-right: 0;
    margin-bottom: 10px;
}
	
	.ex-circle{
		width: 40px;
    	height: 40px;
	}
}




@media screen and (max-width:640px){


/* ============

common

============ */

    h2{
        font-size: 20px!important;
        line-height: 1.4em!important;
    }

    .left-border-right{
        line-height: 1.6em!important;
    }

    .left-border-right .sp-br{
        font-size: 20px;
    }
    

    .button{
        width: 100%;
        padding: 6%;
    }


    .cta-area .button {
        margin: 0 auto;
		padding: 6% 0 0;
    }


	.pc2{
		display:none!important;
	}
	
    .sp-2,.sp3{
        display: block!important;
    }


    .cta-area-text{
        margin: 0;
    }
	
	.ctaimg_05{
	    margin: 0px 5px 5px 5px;
}



/* ============

h1

============ */

.h1{
    font-size: 28px;
    line-height: 1.5em;
}

.lgs{
    font-size: 40px;
}

	.top {
		width: 100%;
        aspect-ratio: 4.5 / 3.5;
	}
	
	.header_video video {
        width: 120%;
    }
	

		.top h1 {
		font-size: 20px;
		top: 30%;
		left: 5%;
		line-height: 1.5em;
	}
	
	.lgs {
		font-size: 28px;
		line-height: 1.5em;
	}



/* ============

about

============ */

    .about{
        background-size: 80%;
    }
	
	.about::before{
		display: none;
	}
	
		.ac-img{
		width: 100%;
	}
	
		.about-h2{
		font-size: 28px!important;
	}

	.about-title h2{
		    font-size: 18px!important;
	}

    .about-box{
        padding: 8%;
        padding-top: 48px;
    }
	
	.about-box2{
        padding: 8%;
    }

    .about-box:before{
        top: -40px;
    }

    .about_table td {
        font-size: 80%;
    }
	
	.about-contents:nth-child(2n){
		margin: 6% 0;
	}
	
	.about-content01{
		flex-direction:column;
	}
	
	.about-content01 .activity-img {
		width: 100%;
	}
	
	.about-x {
    width: 10%;
    height: 10%;
		display: block;
        margin: 5% 0;
	}
	
	.as-txt{
		padding-bottom: 8%;	
	}
	
	
	.about-img01{
		 flex-direction: column;		
	}
	
	.about-img01 img{
		margin: 0 auto;
	}
	
	.as02_img02{
		padding-bottom:5%;
	}
	
	.about-imgbox02,
	.as02_img02{
		margin:0;	
	}
	
	.reference{
		margin: 0 auto;
	}
	
	.ac_arrow{
		width:90%!important;
	}

	.about-num{
		width:20%;
		margin: 0 auto -2%;
	}

/* ============

intro

============ */
	
	
.intro-box{
    flex-direction: column;
}

.intro-img,
.intro02-img {
    margin-bottom: 32px;
}

.intro02-img img{
    width: 100%;
}

	
	.intro-text{
		padding-left:0;
	}
	
	.intro{
    padding:3vw 0;
}
	
	.first-intro{
			padding-top:12vw;
	}
	
.last-intro{
	padding-bottom:12vw;
}
	
	.intro-img{
	width: 100%;
}
	
	.last-introbx{
		padding: 6%;
	}

	
/* ============

intro02

============ */


.intro02-box{
    flex-direction: column-reverse;
}


.intro02-text{
    padding-right: 0;
    margin-bottom: 0x;
}

	.last-introbx img {
    margin: 0 auto;
		display: block;
	}
	
	.activity-items:first-child,
	.activity-item:first-child{
    margin-bottom: 1%;
}


/* ============

cta-area

============ */

.cta-area{
    padding:8% 0; 
}

._cta01 p .sp-br {
    font-size: 14px;
    line-height: 1.6em;
}
	
	.cta-items{
		flex-direction: column;
	}
	
	.cta-items .button{
		width:100%;
	}

	.cta-area-text p{
		margin-bottom: 0;
	}

    .btn-box{
        flex-direction: column;
    }

    .button_hf {
        width: 80%;
    }
	
	.ctaimg_02{
    margin: 0px 5px 50px 5px;
}


	    ._cta02 p .sp-br{
        font-size: 16px;
    }

	
/* ============

vision

============ */

.vision{
    padding: 6% 0;
}
	
	.vision-back{
		height: 100px;
	}


/* ============

intro02

============ */

    .intro-title{
        padding: 3% 0;
    }

    .intro02-img{
        width: 100%;
    }

    .intro02-box{
        padding: 3% 0 0;
    }


/* ============

problem

============ */


.problem{
    padding: 8% 0;
    }
    

    .problem-text{
        width: 100%;
		border-radius: 10px;
    }

    .problem .left_border-right{
        line-height: 1.4em;
    }

	.problem h2{
		padding-bottom: 15px;
	}

/* ============

support

============ */

	.support-box{
		padding:3%;		
	}

.support{
    padding: 6% 0;
}


/* ============

donation02

============ */


.donation_02{
    padding: 6% 0 12%;
}

.donation-h2{
    flex-direction: column;
    }
    
    .don-icon{
        margin: 0;
    }


/* ============

message

============ */

.message{
    padding: 6% 0;
}


/* ============

achievement

============ */

	.achievement{
		 padding-bottom: 6%;
	}

.achievement-box{
    padding: 6% 0 0;
}



.achievement-back{
    height: 150px;
}

.achievement-back:after {
    bottom: -1px;
}

.achievement-box02 dd{
    text-align: center;
    line-height: 1.4em;
}

.ac-icon{
    padding-left: 5rem;
    background: url(../lp_img/icon9.png) no-repeat 5px center / 30px auto;
}

.achievement-box02 .icon02{
    background: url(../lp_img/icon10.png) no-repeat 5px center/ 30px auto;
}

.achievement-box02 .icon03{
    background: url(../lp_img/icon11.png) no-repeat 5px center/ 30px auto;
}
.achievement-box02 .icon04{
    background: url(../lp_img/icon12.png) no-repeat 5px center/ 30px auto;
}
.achievement-box02 .icon05{
    background: url(../lp_img/icon13.png) no-repeat 5px center/ 30px auto;
}
.achievement-box02 .icon06{
    background: url(../lp_img/icon14.png) no-repeat 5px center/ 30px auto;
}



/* ============

activity

============ */

    .activity-h2{
        flex-direction: column;
    }

    .act-icon{
        margin-right: 0;
    }

    .activity-title{
		align-items: center;
		justify-content: center;
		width:100%;
    }
	
	.activity-item dd:nth-child(even),
	.activity-item dd:last-child{
		width:100%;
	}
	
	
	.activity-img{
		width: 20%;
	}
	
	.activity-image{
		margin-left: 3%;
	}
	
	.activity-item dd:nth-child(even) {
		margin: 1vw 0;
	}

    .number{
        margin-right: 8px;
        margin-bottom: 0;
        font-size: 16px;
        display: block;
		width: 30px;
        height: 30px;
    }
	
	    dd {
		line-height: 1.8em;
	}
	
	    .lg {
			font-size: 24px;
	}
	
.activity-items{
	flex-direction: column;
}

	
	    .activity-item {
        flex-direction: row;
	}
	
	.activity-img{
		    margin-left: 3%;
	}

/* ============

benefit

============ */


.benefit{
    padding: 6% 0;
}


._cta03 .button{
    font-size: 16px;
}



/* ============

deduction

============ */


    .ex-img {
        margin: 8% 0 14%;
    }
	
	.ex-box p {
   padding: 4vw;
	}

    .flow-box::before {
        height: 50px;
        top: -25px;
        width: 70%;
    }

    .flow-box{
        padding:12vw 5% 8vw;
    }

    .flow-item{
        line-height: 1.4em;
    }

    .flow-item:first-child::after{
        top: 0px;
    }


    .flow-item:nth-child(odd):after, 
    .flow-item:nth-child(even):after{
        top: 0; 
    }

    .deduction-title{
        padding: 20px;
    }



    .other-box{
        line-height: 1.5em;
    }
	


/* ============

benefit

============ */


    .benefit-items {
        padding: 10%;
    }

    .benefit h2{
        margin-bottom: 16vw;
    }
    



/* ======================

faq

===================== */


.faq{
    padding: 6% 0;
}


.faq h2{
    background: url(../lp_img/FAQ.png) no-repeat center / 20%;
}

.faq-question {
    padding: 3% 10% 3% 0;
}


.faq-answer{
    line-height: 1.4em;
    width: 85%;
    padding: 3% 0;
}

.faq table{
    margin-top: 6%!important;
}

.faq table tr td:first-child{
    width: 20%;
}



/* ======================

last

===================== */

	
	
.last .button{
        padding: 0 6% 6%;
width: 100%;
}
	
	.last .corporation{
		margin-top: 24px;
	}


.last-p{
    font-size: 16px;
    line-height:1.3em!important;
    margin: 0 auto;
    padding: 8vw 0;
	text-align:left;
}
	
	.last-p .sp-br{
		display:inline;

	}

	.last-img-box{
    height:120px;
}

 .last-img{
    height:120px;
 }

 .li03{
    background: url(../lp_img/img_24.png) no-repeat center / cover;
 }



/* ================

fix

================ */

.fix .btn-box {
    flex-direction: row;
}

.fix .button {
    padding: 0;
}

.fix .button_hf {
    width: 100%;
}

.fix .button:first-child {
    margin-right: 10px;
}


}




@media screen and (max-width:500px){
    .deduction-box::before{
        top: -60px;
    }
	
	
/* ======================

about

===================== */
	
	
	.title-accent,
	.ta02,
	.ta03{
		display: none;	
	}

    .about-box:before{
        top: -38px;
    }
}



@media screen and (max-width:484px){



    .flow-item:nth-child(odd):after, 
    .flow-item:nth-child(even):after{
        top: 0px; 
    }

    .flow-item:first-child::after{
        top: 20px; 
    }

    .activity-box{
        padding: 10% 5%;
    }

    .activity-contents{
        padding-top: 10%;
    }

    .button_hf {
        width: 100%;
    }

}


@media screen and (max-width:380px){
    .about-box:before{
        top: -32px;
    }
    .flow-item:nth-child(odd):after{
        top: 20px; 
    }
}

