@charset "UTF-8";

/* -------------------------------------------------- */
/* effort */
/* -------------------------------------------------- */
.pagetitHeadTxt:after {
	content: "ATTEMPT";
	display: block;
	font-size: 1.6rem;
	font-family: 'Urbanist', sans-serif;
	font-weight: 600;
}


.contGray {
	padding-bottom: 40px;
	margin-bottom: 100px;
}

.introTxt {
	text-align: center;
}

.effortHeadTxt {
	margin-bottom: 40px;
	font-size: 1.4rem;
	letter-spacing: 0.065em;
	line-height: 1.6;
}

/* 事例 */
.caseList li {
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.caseList li:not(:last-child) {
	margin-bottom: 50px;
}

.caseListPhPc {
	width: 45.45%;
}

.caseListPhPc img {
	width: 100%;
	height: 100%;
	-o-object-fit: cover;
	object-fit: cover;
	font-family: 'object-fit: cover;';
}

.caseListBody {
	margin-left: 5%;
	padding: 30px 0;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
	border-top: 1px solid #C9C9C9;
	border-bottom: 1px solid #C9C9C9;
}

.caseListTit {
	margin-bottom: 25px;
	font-size: 2.0rem;
	letter-spacing: 0.075em;
}

.caseListTxt {
	font-size: 1.6rem;
	letter-spacing: 0.075em;
	line-height: 1.75;
}

/* SDGs */
.sdgs {
	padding-top: 70px;
}

.sdgsLead {
	margin-bottom: 80px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.sdgsLeadContent {
	padding-right: 3%;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
	-webkit-box-orient: vertical;
	-webkit-box-direction: normal;
	-webkit-flex-direction: column;
	-ms-flex-direction: column;
	flex-direction: column;
	-webkit-box-flex: 1;
	-webkit-flex: 1;
	-ms-flex: 1;
	flex: 1;
}

.sdgsLeadLogo {
	margin-bottom: 20px;
}

.sdgsLeadLogo img {
	width: 373px;
}

.sdgsLeadTxt {
	margin-bottom: 10px;
	font-size: 1.6rem;
	-webkit-font-feature-settings: "palt";
	font-feature-settings: "palt";
	letter-spacing: 0.04em;
	line-height: 1.75;
}

.sdgsLeadLink {
	margin-top: auto;
}

.sdgsLeadLink.unilinkGreen a {
	width: 100%;
	height: 70px;
	/*	padding-right: 1.2em;*/
}

.sdgsLeadImg {
	width: 50%;
	text-align: center;
}

.sdgsLeadImg img {
	max-width: 100%;
}

.activityLead {
	margin-bottom: 30px;
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	line-height: 1.75;
	text-align: center;
}

.activity {
	padding: 30px 35px;
	border: 1px solid #BFBFBF;
}

.activity:not(:last-child) {
	margin-bottom: 50px;
}

.activityTit {
	margin-bottom: 30px;
	padding-bottom: 0.5em;
	font-size: 1.8rem;
	font-weight: 700;
	letter-spacing: 0.05em;
	border-bottom: 1px solid #1B1B1B;
}

.activityList li {
	margin-bottom: 30px;
	display: -webkit-box;
	display: -webkit-flex;
	display: -ms-flexbox;
	display: flex;
}

.activityListImg {
	margin-right: 30px;
}

.activityListImg img {
	width: 138px;
}

.activityListLabel {
	width: 120px;
	height: 42px;
	margin-bottom: 15px;
	font-size: 2.2rem;
	font-weight: 700;
	font-family: 'Urbanist', sans-serif;
	letter-spacing: 0.05em;
	line-height: 42px;
	text-align: center;
	border: 1px solid currentColor;
}

.activityListTxt {
	font-size: 2.1rem;
	letter-spacing: 0.05em;
	line-height: 1.62;
}

.activityPh {
	margin-bottom: 15px;
}

.activityPh img {
	max-width: 100%;
}

.activityPhCap {
	font-size: 1.6rem;
	letter-spacing: 0.05em;
	line-height: 1.75;
}

/* 色調整 */
.goal1 .activityListLabel {
	color: #E22740;
}

.goal2 .activityListLabel {
	color: #DBA545;
}

.goal3 .activityListLabel {
	color: #509E40;
}

.goal4 .activityListLabel {
	color: #E22740;
}

.goal5 .activityListLabel {
	color: #FC3C2D;
}

.goal6 .activityListLabel {
	color: #52C9E5;
}

.goal7 .activityListLabel {
	color: #FBCD47;
}

.goal8 .activityListLabel {
	color: #A01D43;
}

.goal15 .activityListLabel {
	color: #5ABE37;
}

/* -------------------------------------------------- */
/* 微調整：小型PC */
/* -------------------------------------------------- */
@media screen and (min-width: 1025px) and (max-width: 1400px) {
	.sdgsLeadLink.unilinkGreen a {
		height: 5.833vw;
	}
}

/* -------------------------------------------------- */
/* hoverなど */
/* -------------------------------------------------- */
@media screen and (min-width: 1025px) {}

/* -------------------------------------------------- */
/* TAB */
/* -------------------------------------------------- */
@media screen and (max-width: 1024px) {

	/* 事例 */
	.caseHead.uniHead {
		font-size: 2.6rem;
	}

	.caseListTit {
		margin-bottom: 15px;
		font-size: 1.8rem;
	}

	.caseListTxt {
		font-size: 1.4rem;
	}

	/* SDGs */
	.sdgs {
		padding-top: 30px;
	}

	.sdgsLead {
		-webkit-box-align: center;
		-webkit-align-items: center;
		-ms-flex-align: center;
		align-items: center;
	}

	.sdgsLeadLogo {
		margin-bottom: 10px;
	}

	.sdgsLeadLogo img {
		width: 280px;
	}

	.sdgsLeadTxt {
		font-size: 1.4rem;
	}

	.sdgsLeadLink.unilinkGreen a {
		height: 56px;
		font-size: 1.2rem;
	}

	.activityLead {
		font-size: 1.4rem;
	}

	.activity {
		padding: 20px 25px;
	}

	.activityTit {
		margin-bottom: 20px;
	}

	.activityListImg {
		margin-right: 20px;
	}

	.activityListImg img {
		width: 120px;
	}

	.activityListLabel {
		width: 100px;
		height: 32px;
		margin-bottom: 10px;
		font-size: 1.8rem;
		line-height: 32px;
	}

	.activityListTxt {
		font-size: 1.8rem;
	}

	.activityPhCap {
		font-size: 1.4rem;
	}
}

/* -------------------------------------------------- */
/* SP */
/* -------------------------------------------------- */
@media screen and (max-width: 767px) {
	.effortHeadTxt {
		margin-bottom: 20px;
	}

	/* 事例 */
	.caseHead.uniHead {
		font-size: 2.1rem;
	}

	.caseList li:not(:last-child) {
		margin-bottom: 30px;
	}

	.caseListBody {
		width: 100%;
		margin-left: 0;
		padding: 15px 0;
	}

	.caseListTit {
		margin-bottom: 10px;
		font-size: 1.8rem;
	}

	.caseListPhSp {
		margin-bottom: 10px;
		text-align: center;
	}

	.caseListPhSp img {
		max-width: 100%;
	}

	.caseListTxt {
		font-size: 1.4rem;
	}

	/* SDGs */
	.sdgsLeadLogo {
		text-align: center;
	}

	.sdgsLead {
		margin-bottom: 50px;
		display: block;
	}

	.sdgsLeadContent {
		margin-bottom: 20px;
		padding-right: 0;
	}

	.sdgsLeadImg {
		width: 100%;
	}

	.sdgsLeadLink.unilinkGreen a {
		padding: 20px;
		justify-content: flex-start;
	}

	.activity {
		padding: 20px 15px;
	}

	.activityList li {
		margin-bottom: 20px;
	}

	.activityTit {
		margin-bottom: 15px;
		font-size: 1.6rem;
	}

	.activityListImg {
		margin-right: 10px;
	}

	.activityListImg img {
		width: 80px;
	}

	.activityListLabel {
		width: 60px;
		height: 20px;
		margin-bottom: 5px;
		font-size: 1.3rem;
		line-height: 20px;
	}

	.activityListTxt {
		font-size: 1.4rem;
	}
}