@charset "utf-8";



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

mind

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


.mind {
	position: relative;
	width: 100%;
	height: auto;
	margin-top: 80px;
	background-position: center .5%;
	background-repeat: no-repeat;
	background-image: url(../images/mind-bg.jpg);
	background-size: 205%;
	/*background-attachment: fixed;*/
	}
@media screen and (max-width: 640px) {
.mind {
	background-image: url(../images/mind-bg-sp.jpg);
	}
	}

.mind .group{
	position: relative;
	padding: 180px 0;
	text-align: center;
	}
@media screen and (max-width: 640px) {
.mind .group{
	padding: 100px 0 100px 0;
	}
	}

.mind .group h2{
	font-size: 3em;
	line-height: 1em;
	font-weight: 300;
	letter-spacing: .2em;
	color: #fff;
	}
@media screen and (max-width: 640px) {
.mind .group h2{
	font-size: 2em;
	line-height: 1.4em;
	letter-spacing: .1em;
	}
	}

.mind .group p.lead{
	margin-top: 3em;
	line-height: 2.2em;
	font-size: 1.3em;
	letter-spacing: .2em;
	color: #fff;
	}
@media screen and (max-width: 640px) {
.mind .group p.lead{
	line-height: 1.8em;
	font-size: 1em;
	}
	}


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

intro

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

.intro {
	margin-top: 80px;
	text-align: center;
	margin-bottom: 30px;
	}
@media screen and (max-width: 640px) {
.intro {
	width: 90%;
	margin: 60px auto 0;
	}
	}

.intro h3{
	font-size: 1.6em;
	line-height: 1em;
	font-weight: 600;
	letter-spacing: .1em;
	}
@media screen and (max-width: 640px) {
.intro h3{
	font-size: 1.4em;
	line-height: 1.8em;
	letter-spacing: .05em;
	}
	}

.intro p.lead {
	margin-top: 3em;
	font-size: 1.1em;
	line-height: 2em;
	letter-spacing: .1em;
	}
@media screen and (max-width: 640px) {
.intro p.lead {
	margin-top: 2.5em;
	}
	}

.intro p.sdgs {
	margin-top: 4em;
	font-size: .9em;
	line-height: 1.8em;
	letter-spacing: .05em;
	}
@media screen and (max-width: 640px) {
.intro p.sdgs {
	margin-top: 3em;
	font-size: .9em;
	}
	}

.intro img {
	margin-top: 30px;
	width: 200px;
	height: auto;
	}



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

efforts

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

.efforts {
	position: relative;
	width: 100%;
	height: auto;
	margin-top: 80px;
	}
.efforts:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	}

.efforts .pack{
	margin-left: auto;
	margin-right: auto;
	width: 800px;
	height: auto;
	}
.efforts .pack:after {
	content: "";
	display: block;
	clear: both;
	height: 0;
	visibility: hidden;
	}
@media screen and (max-width: 640px) {
.efforts .pack{
	width: 86%;
	}
	}

.efforts .pack .inner{
	width: 50%;
	height: auto;
	float: left;
	padding: 0 40px;
	box-sizing: border-box;
	}
@media screen and (max-width: 640px) {
.efforts .pack .inner{
	width: 100%;
	float: none;
	padding: 0 0 60px 0;
	}
	}

.efforts .pack .inner .photos{
	width: 100%;
	height: auto;
	}

.efforts .pack .inner .photos img{
	width: 100%;
	height: auto;
	margin-right: 4%;
	}
@media screen and (max-width: 640px) {
.efforts .pack .inner .photos img{
	margin-right: 0;
	}
	}

.efforts .pack .inner p.word{
	margin-top: 1.5em;
	line-height: 1.8em;
	letter-spacing: 0;
	}
@media screen and (max-width: 640px) {
.efforts .pack .inner p.word{
	margin-top: 1em;
	line-height: 2em;
	letter-spacing: 0;
	text-align: justify;
	text-justify: inter-ideograph;
	}
	}

.efforts .pack .inner .link{
	margin-top: 2em;
	}
@media screen and (max-width: 640px) {
.efforts .pack .inner .link{
	margin-top: 2em;
	text-align: center;
	font-size: 1.1em;
	}
	}

.efforts .pack .inner .link a{
	color: #ff6c6c;
	border-bottom: 1px solid #ff6c6c;
	}