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

.sdgs_logo {
	text-align: center;
	width: 1024px;
	margin: 70px auto;
	
}
.sdgs_logo img{
	display: inline-block;
}
.sdgs_logo img:first-child{
	border-right: 1px solid #000;
	padding-right: 40px;
	margin-right: 40px;
	box-sizing: border-box;
}
.sdgs_logo p{
	display: block;
	text-align: right;
	font-size: 12px;
}
.sdgs_intro{
	text-align: center;
	position: relative;
	overflow: hidden;
	max-width: 1770px;
	display: block;
	margin: 0 auto;
    /*background: url(../image/intro_bg_top_.jpg) repeat-x center; */
    max-width: none;
}


.fade01{
	position: absolute;
	height: 258px;
	width: 454px;
	left: 0;
	top: 0;
	z-index: -1;
}
.fade02{
	position: absolute;
	height: 258px;
	width: 454px;
	right: 0;
	top: 0;
	z-index: -1;
}
.fade03{
	position: absolute;
	height: 258.5px;
	width: 454px;
	left: 0;
	bottom: 0;
	z-index: -1;
}
.fade04{
	position: absolute;
	height: 258.5px;
	width: 454px;
	right: 0;
	bottom: 0;
	z-index: -1;
}
.fade img{
	height: 258.5px!important;
	width: auto!important;
	display: block;
}
.sdgs_intro p{
	font-size: 19px;
	display: block;
	vertical-align: middle;
	background: #fff;
	line-height: 2.4;
	position: relative;
	margin:0 auto;
	max-width: 850px;
	box-sizing: border-box;
	padding: 63px 7%;
	letter-spacing: 2px;
    text-align: left;
    position: relative;
    z-index: 3;
}

.sdgs_intro p span{
    border-bottom: 2px solid #0599d9;
    padding-bottom: 5px;
}
.sdgs_intro p strong{
    font-size: 21px;
    margin-top: 1rem;
    display: block;
}

.roop01 {
    width: 100%;
    height: 50%;
    background: url(../image/intro_bg_top.jpg) repeat-x;
    background-position: 0 0;
    -webkit-animation: bgroop01 100s linear infinite;
    animation: bgroop01 100s linear infinite;
	margin-bottom: 1px;
    position: absolute;
    top: 0;
}
.roop02 {
    width: 100%;
    height: 50%;
    background: url(../image/intro_bg_btm.jpg) repeat-x;
    background-position: 0 0;
    -webkit-animation: bgroop02 100s linear infinite;
    animation: bgroop02 100s linear infinite;
    position: absolute;
    bottom: 0;
}
@-webkit-keyframes bgroop01 {
    from {
        background-position: 0  0;
    }
    to {
        background-position: -2445px 0;
    }
}
@keyframes bgroop01 {
    from {
        background-position: 0 0;
    }
    to {
        background-position: -2445px 0;
    }
}
@-webkit-keyframes bgroop02 {
    from {
        background-position: 0  0;
    }
    to {
        background-position: 2445px 0;
    }
}
@keyframes bgroop02 {
    from {
        background-position: 0 0;
    }
    to {
        background-position: 2445px 0;
    }
}


.sdgs_background{
	text-align: center;
	margin-bottom: 170px;
    background: url(../image/bg03.png) no-repeat center;
    background-size: cover;
    max-width: 1340px;
    margin: 0 auto;
    padding: 80px 10px;
    position: relative;
    margin-top: 90px;
}
.sdgs_background h4,.sdgs_initiatives h4{
	text-align: center;
	font-size: 24px;
	font-weight: bold;
	margin: 90px auto 40px;
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	letter-spacing: 4px;
	text-indent: 4px;
}
.sdgs_background h4{
    margin-top: 0;
    position: absolute;
    top: -15px;
    width: 100%;
    left: 0;
}
.sdgs_background h5{
	text-align: center;
	font-weight: bold;
	font-size: 20px;
	line-height: 1.6;
	
	font-family:YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
	    letter-spacing: 1px;
	text-indent: 1px;
    padding: 20px;
    background: linear-gradient(-90deg ,#25b3d2 ,#0599d9);
    color: #fff;
}
.sdgs_background h5.lh2{
	line-height: 3.2;
}
.sdgs_background .cont{
	display: inline-block;
	vertical-align: top;
	text-align: center;
	background: #fff;
	/*padding: 30px;*/
	box-sizing: border-box;
	position: relative;
	width: 23%;
}
.sdgs_background .cont:last-child{
	margin-right: 0;
}
.sdgs_background .cont.match{
	margin-right: 2.5%;
}
.sdgs_background .cont.match::before{
	content:"";
	position: absolute;
	right: -12%;
	width: 36px;
	height: 31px;
	z-index: 2;
	top: 155px;
	background:  url(../image/yaji01.png);
	background-size: cover;
}

.sdgs_background .cont img{
	display: block;
	margin: 0px auto 30px;
	max-width: 100%;
}
.sdgs_background .cont ul li{
	text-align: center;
	font-size: 18px;
	
}
.sdgs_background .cont p{
    font-size: 20px;
}
.sdgs_background .cont .inner{
    padding: 20px;
    
}
article section.sdgs_background > div{
	width: auto;
	text-align: center;
}
article section.sdgs_background .rela{
	position: relative;
	font-size: 0;
	max-width: 1180px;
	width: 95%;
	margin: 0 auto;
	min-width: 1024px;
}
.sdgs_background .abso{
	position: absolute;
	bottom: 0;
	left: 0;
	width: 74.5%;
	font-size: 21px;
	line-height: 1;
	
	border-top: none;
}
.sdgs_background .abso p{
	display: inline-block;
	position: relative;
    bottom: -11px;
    display: flex;
    align-items: center;
    justify-content: center;
    padding-top: 20px;
    
    
}
.sdgs_background .abso p::before{
    content: "";
    display: block;
    height: 20px;
    border-bottom: 2px solid #25b3d2;
    border-left: 2px solid #25b3d2;
    flex-grow: 1;
    box-sizing: border-box;
    margin-top: -20px;
}
.sdgs_background .abso p::after{
    content: "";
    display: block;
    height: 20px;
    border-bottom: 2px solid #25b3d2;
    border-right: 2px solid #25b3d2;
    flex-grow: 1;
    margin-top: -20px;
    box-sizing: border-box;
}
.sdgs_initiatives {
	margin-bottom: 140px;
}
.sdgs_initiatives ul{
	max-width: 1340px;
	margin: 0 auto;
}
.sdgs_initiatives ul.size2{
	max-width: 1060px;
	margin: 0 auto;
}
.sdgs_initiatives ul li{
	display: block;
	width: 48%;
	float: left;
	background: #f6f6f6;
	margin-top: 30px;
}
.sdgs_initiatives ul li:nth-child(even){
	margin-left: 4%;
}
.sdgs_initiatives ul li img{
	display: inline-block;
	vertical-align: middle;
	margin-right: 30px;
}
.sdgs_initiatives ul li a{
	display: block;
	text-decoration: none;
	font-size: 22px;
	font-weight: bold;
	padding: 50px;
	box-sizing: border-box;
    position: relative;
    color: #fff;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives ul li a::after{
    content: "";
  position: absolute;
  bottom: 0;
  right: 0;
  border-left: 20px solid transparent;
  border-bottom: 20px solid #00a6d9;
}
.sdgs_initiatives ul li:first-child a{
    background: url(../image/bnr01.png) center;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives ul li:nth-child(2) a{
    background: url(../image/bnr02.png) center;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives ul li:nth-child(3) a{
    background: url(../image/bnr03.png) center;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives ul li:nth-child(4) a{
    background: url(../image/bnr04.png) center;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives ul li:nth-child(5) a{
    background: url(../image/bnr05.png) center;
    background-size: cover;
    background-repeat: no-repeat;
}
.sdgs_initiatives .skyberry_link{
    text-align: right;
    max-width: 1060px;
    width: 100%;
    margin: 20px auto 0;
    display: flex;
     justify-content:space-between;
}
.sdgs_initiatives .skyberry_link.size_top{
    text-align: right;
    max-width: 1340px;
    width: 100%;
    margin: 20px auto 0;
}
.sdgs_initiatives .skyberry_link a{
    text-align: right;
    color: #00A0E9;
    text-decoration: underline;
    font-size: 16px;
    display: inline-block;
}
.index_mv img{
	display: block;
	width: 100%;
}
.index_mainimage{
	background: none;
	display: block;
	height: auto;
	position: relative;
}
.index_mv{
	position: relative;
	/*max-width: 1180px;*/
	margin: 0 auto;
	display: block;
	/*width: calc(100% - 160px);*/
}
.index_mainimage h1{
	position: absolute;
	top: 60%;
	left: 50%;
	margin: 0;
	transform: translateY(-50%) translateX(-50%);
  -webkit-transform: translateY(-50%) translateX(-50%);
    max-width: 1060px;
    font-size: 35px;
    text-align: left;
    width: 90%;
    color: #004787;
    font-weight: bold;
    font-family: "Hiragino Sans", "Hiragino Kaku Gothic ProN", Meiryo, "sans-serif";
    padding-left: 10px;
    letter-spacing: 2px;
    line-height: 1.6;
}

.index_mainimage.mv_B{
	background: #f3f3f3;
}
.mv_B .index_mv{
	width: auto;
	max-width: 1260px;
}
.mv_B .index_mv img{
	max-width: 880px;
	margin-right: 0;
	margin-left: auto;
}
.index_mainimage.mv_B h1{
	left: 0;
}
.index_mainimage.mv_C{
	background: #f3f3f3;
}
.index_mainimage.mv_C h1{
	max-width: 1024px;
	left: 0;
	right: 0;
	margin: auto;
	z-index: 2;
}
.mv_C .index_mv{
	width: auto;
	max-width: 1260px;
	margin-right: 0;
	height: 520px;
	background: url(../image/mv_c.png) no-repeat;
	background-size: cover;
	max-width: none;
	width: 70%;
	min-width: 800px
}
.mv_C .index_mv img{
	margin-right: 0;
	margin-left: auto;
	max-width: 1050px;
	display: none;
}
.sp{
	display: none!important;
}
.content_area{
    width: 95%;
    margin: 0 auto;
        min-width: 1024px;
}
.content_area .icns{
    text-align: center;
    margin: 60px auto;
}
.content_area .icns img{
    display: inline-block;
    margin: 0 5px;
}
.content_area div{
    width: 100%;
    max-width: 1060px;
    
}
.content_area .txt{
    float: left;
    width: 48%;
    font-size: 18px;
    line-height: 2;
}
.content_area .txt p{
    font-size: 18px;
    line-height: 2.5;
    letter-spacing: 2px;
    text-indent: 2px;
}
.volunteer p.caption{
    width: fit-content;
    display: block;
    margin-left: auto;
    margin-right: 0;
    font-size: 11px;
}
.volunteer .content_area .txt{
    float: none;
    width: 100%;
}
.content_area .imgbox{
    float: right;
    width: 48%;
}
.content_area .imgbox img{
display: block;
    float: left;
    width: 48%;
    margin-bottom: 20px;
}
.volunteer .content_area .imgbox{
    float: none;
    width: 100%;
    display: flex;
    justify-content: space-between;
    flex-wrap: wrap;
    margin-top: 80px;
}

.volunteer .content_area .imgbox img{
    width: 32%;
    max-width: 100%;
    margin: 0;
}
.volunteer .content_area .imgbox.imgbox_4 img{
    width: 24%;
}
.environment .content_area .imgbox{
  width: 30%;  
}
.environment .content_area .imgbox img{
    max-width: 100%;
}
.environment .content_area .txt{
  width: 64%;
    max-width: 670px;
}
.environment .content_area .txt .img{
    margin-top: 20px;
    display: flex;
        justify-content: space-between;
    flex-wrap: wrap;
}
.environment .content_area .txt .img img:first-child{
    width: 34%;
}
.environment .content_area .txt .img img:last-child{
    width: 62%;
}
.content_area .imgbox img:nth-child(even){
    float: right;
}
.content_area h4{
    text-align: center;
    font-size: 28px;
    font-weight: bold;
    font-family: YuGothic, "Yu Gothic medium", "Hiragino Sans", Meiryo, "sans-serif";
    line-height: 2;
    letter-spacing: 4px;
    text-indent: 4px;
    margin-bottom: 80px;
}
.content_area .content{
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    padding: 98px 0;
}
.content_area .imgbox.img_1_box img{
    float: none;
    width:100%;
}
.content_area .cont h5{
    font-weight: bold;
    font-size: 18px;
    margin-top: 20px;
    margin-bottom: 10px;
}
.content_area .cont p{
    font-size: 15px;
}
.content_area .cont .left{
    float: left;
    width: calc(100% - 380px);
}
.content_area .cont .right{
    float: right;
    margin-top: 20px;
    width: 363px;
}


.modal{
    position: fixed;
    z-index: 99999;
    left: 0;
    top: 0;
    display: block;
    background: rgba(0,0,0,.8);
    width: 100vw;
    height: 100vh;
    display: none;
}
.modal .rela{
        position: relative;
        width: 100%;
        height: 100%;
        display: block;

}
.modal .rela a{
    display: block;
    position: absolute;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
}
.modal .rela img{
    position: absolute;
    top: 50%;
    left: 50%;
    transform: translateX(-50%) translateY(-50%);
    -webkit-transform: translateX(-50%) translateY(-50%);
    height: 90%;
    overflow: scroll;
}
.footer_about{
    display: none!important;
}
@media(max-width:1040px){
    .content_area .content{
        width: 95%;
    }
}
@media(max-width:800px){
	.index_article img{
		width: auto;
	}
	.sdgs_logo{
		width: 95%;
		margin: 40px auto;
	}
	.sdgs_logo img:first-child{
		padding-right: 2%;
		margin-right: 2%;
		border-right: 1px solid #000;
		box-sizing: border-box;
		width: 30%;
	}
	.sdgs_logo img{
		margin: 0px auto 10px;
		width: 60%;
	}

	
	.sdgs_logo p{
		width: 95%;
		margin: 0 auto;
		text-align: center;
        font-size: .65rem;
	}
	.sdgs_intro p,.content_area .txt p{
		position: static;
		padding: 30px 5%;
		font-size: 16px;
		text-align: left;
		height: auto;
        
	}
	.sdgs_intro p::before{
		display: none;
	}
	.sdgs_intro p::after{
		display: none;
	}
	
	.roop01,.roop02{
		height: 100px;
		background-size: cover;
        position: static;
	}
	.sdgs_background .cont{
		display: block;
		width: 100%;
		
	}
	.sdgs_background .cont.match{
		display: inline-block;
		width: 32%;
		margin-bottom: 20px;
		margin-right: 2%;
	}
	article section.sdgs_background .rela{
		min-width: auto;
		width: 100%;
	}
	.sdgs_background .cont.match:nth-child(3){
		margin-right: 0;
	}
	.sdgs_background .cont.match:nth-child(3)::before{
		display: none;
		margin-right: 0;
	}
	.sdgs_background .abso{
		position: static;
		width: 100%;
		margin-bottom: 30px;
	}
	.sdgs_background .abso p{
		font-size: 11px;
		bottom: -9px;
	}
	.sdgs_background h5{
		font-size: 12px;
		
	}
	.sdgs_background .cont ul li{
		font-size: 12px;
	}
	.pc{
		display: none;
	}
	.sdgs_background .cont.match::before{
		width: 20px;
		height: 17px;
		display: block;
	}
	.sdgs_background{
		margin-bottom: 0px;
        padding-top: 30px;
	}
	.sdgs_background h4, .sdgs_initiatives h4,.content_area h4{
		margin: 40px auto 30px;
		font-size: 18px;
        position: static;
	}

	.sdgs_initiatives ul li{
		margin-top: 10px;
		width: 95%;
		margin-left: auto!important;
		margin-right: auto!important;
		display: block;
		float: none!important;
	}
	.sdgs_initiatives ul li:first-child{
		margin-top: 0;
	}
	.sdgs_initiatives ul li a{
		padding: 40px 10px;
		font-size: 16px;
	}
	.sdgs_initiatives ul li img{
		width: 50px;
	}
	.sdgs_initiatives{
		margin-bottom: 70px;
	}
	.index_mv{
		width: 100%;
       /* background: url('../image/mv.png') no-repeat center;
        background-size: cover;*/
	}
/*    .volunteer .index_mv{
        background: url(../image/mv_volunteer.png) no-repeat center;
        background-size: cover;
    }
    .ecocap .index_mv{
        background: url(../image/mv_ecocap.png) no-repeat center;
        background-size: cover;
    }
    .work .index_mv{
        background: url(../image/mv_work.png) no-repeat center;
        background-size: cover;
    }
    .environment .index_mv{
        background: url(../image/mv_environment.png) no-repeat center;
        background-size: cover;
    }*/
	.index_mainimage h1{
		left: 0px;
        top: 0;
		max-width:none;
		width: 100%;
        transform: translateX(0) translateY(0%);
        -webkit-transform: translateX(0) translateY(0%);
        position: static;
        font-size: 5vw;
        padding: 0px 10px;
        margin-top: 20px;
        position: static;
        text-align: center;
	}
  .index_mainimage .top_mv h1{
		left: 0%;
        top: 50%;
		max-width:none;
		width: 100%;
        transform: translateX(0) translateY(-50%);
        -webkit-transform: translateX(0) translateY(-50%);
        font-size: 4.5vw;
        padding: 0px 10px;
        margin-top: 0px;
        text-align: left;
         position: absolute;
	}
    .index_mainimage h1 br{
        display: block;
    }
	.sdgs_background .cont img{
		margin: 0 auto;
	}
	.index_mainimage.mv_C h1{
		left: 0;
		right: auto;
	}
	.mv_C .index_mv{
		min-width: 0;
		height: auto;
		background: none;
		width: 100%;
	}
	.mv_C .index_mv img{
		display: block;
		
	}
	.fade{
		position: static;
		display: inline-block;
		width: 50%;
		height: auto;
	}
	.fade img{
		height: auto!important;
		width: 100%!important;
	}
	.sdgs_intro{
		font-size: 0;
	}
	.sdgs_intro p{
		width: 100%;
	}
	.sdgs_intro p.abso{
		position: static;
		width: 100%;
		height: auto;
        font-size: 15px;
        line-height: 2;
	}
     .sdgs_intro p strong{
        font-size: 15px;
        line-height: 2;
    }
	.sp{
		display: block!important;
	}
    .content_area{
        min-width: 0;
    }
    .content_area .content{
        width: 100%;
        padding: 40px 0px 40px;
    }
    .content_area .txt,.content_area .imgbox{
        float: none;
        width: 100%;
    }
    .content_area .txt p{
        padding: 0;
        margin-bottom: 20px;
        font-size: 15px;
        line-height: 2;
    }
    .content_area .icns{
        padding: 0;
        font-size: 0;
    }
    .content_area .icns img{
        max-width: 100%;
        width: 20%;
        margin: 0;
    }
    .content_area h4{
        margin-top: 0;
    }
    .content_area .cont .left,.content_area .cont .right{
        float: none;
        width: 100%;
    }
    .content_area .cont .right img{
        display: block;
        max-width: 363px;
        margin: 20px auto;
    }
    .content_area .cont h5{
        font-size: 15px;
    }
    .environment .content_area .txt{
        width: 100%;
    }
    .environment .content_area .imgbox{
        width: 100%;
        margin-top: 30px;
    }
    .environment .content_area .imgbox img{
        max-width: 100%;
        width: auto;
        margin: 0 auto;
    }
    .modal .rela img{
        height: auto;
        width: 80%;
    }
    .volunteer .content_area .imgbox{
        display: block;
        
    }
    .volunteer .content_area .imgbox img{
        float: none;
        width: auto!important;
        max-width: 100%!important;

        margin: 15px auto;
    }
    .sdgs_initiatives .skyberry_link a{
        font-size: 12px;
    }
}

@media(max-width:440px){
    .environment .content_area .txt .img{
        display: block;
    }
    .environment .content_area .txt .img img{
        display: block!important;
        float: none!important;
        width: auto!important;
        max-width: 100%!important;
        margin: 10px auto;
    }
}
@media(max-width:320px){
	.sdgs_background .abso p{
		font-size: 11px;
	}
    .sdgs_logo p{
        font-size: .5rem;
    }
    
}


/*20211011追記*/
.index_mainimage h1,.sdgs_intro p,.sdgs_background h4, .sdgs_initiatives h4,.sdgs_background h5,.sdgs_background .cont ul li,.sdgs_background .abso p,.sdgs_initiatives ul li a,.content_area h4,.content_area .txt p,.content_area div,.content_area .cont h5,.sdgs_initiatives .skyberry_link a,.sdgs_background .cont p{
    font-family: YuMincho, "Yu Mincho", "Hiragino Mincho ProN", "serif";
}

/*20211011追記*/

.img27 {
    @media(max-width:800px)  {
        float: initial;
        width: 50vw;
        margin: 0 auto;
    }
}

.about-section {
    display: flex;
    flex-wrap: nowrap;

    @media(max-width:800px)  {
        flex-direction: column;
        #img27,img {
            width: 50% !important;
        }
        #img28,img {
            width: 60% !important;
        }

        .txt {
            width: 100% !important;
        }
    }

    @media(max-width:640px){
        flex-direction: column;
        #img27,img {
            width: 60% !important;
        }
    }

    @media(max-width:440px){
        flex-direction: column;
        #img27,img {
            width: 100% !important;
            padding: 0 16px;
        }
        #img28,img {
            width: 100% !important;
            padding: 0 16px;
        }
    }
}

.util-section {
    .img29 {
        float: left;
        margin-right: 16px;

        @media(max-width:800px)  {
            float: initial;
            width: 50% !important;
            margin: 0 auto;
        }
        @media(max-width:440px)  {
            float: initial;
            width: 100% !important;
            margin: 0 auto;
            padding: 0 16px;
        }
    }
    .img30 {
        float: left;
        margin-right: 16px;

        @media(max-width:800px)  {
            float: initial;
            width: 50% !important;
            margin: 16px auto;
        }
        @media(max-width:440px)  {
            float: initial;
            width: 100% !important;
            margin: 16px auto;
            padding: 0 16px;
        }
    }
}
