@charset "utf-8";

.image_border h3 {
    color: #FFFFFF;
    font-weight: bold;
    text-align: center;
    padding: 10px 0;
    background-size: 100% 100%;
}
.image_border .lead {
    margin-bottom: 30px;
}
.image_border h4 {
    font-weight: bold;
    color: #fb700a;
    margin-bottom: 30px;
}
.case_box .pic {
    position: relative;
}
.case_box .pic:after {
    display: block;
    position: absolute;
    content: "";
    background-repeat: no-repeat;
}
.case_box .case_txt {
    font-size: 1.6rem;
    color: #5ba2bb;
    font-weight: bold;
}
.btn_wrap .txt {
    margin-bottom: 30px;
}
.btn_wrap .btn a {
    color: #3d2515;
    font-weight: bold;
    padding: 15px 0;
    text-align: center;
    display: block;
    text-decoration: none;
    background-color: #ede4d5;
}

/* ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

pcSetting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (min-width: 768px), print {
	.imgHead {
		margin-bottom: 30px;
	}
	.imgHead img {
		width: 100%;
		height: auto;
	}

	#sec01 .h_style01 {
		margin-top: 25px;
	}
	.image_border {
		padding: 50px 85px;
	}
	.image_border h3 {
		font-size: 2.3rem;
		background-image: url("../../wp-content/themes/madoka/img/co2/headbg_green.png");
		margin-bottom: 30px;
	}
	.image_border .lead p + p {
		margin-top: 25px;
	}
	.image_border h4 {
		font-size: 2rem;
	}
	.case_box {
		margin-bottom: 35px;
	}
	.case_box .pic {
		flex-basis: 18%;
	}
	.case_box .pic:after {
		top: 15px;
		left: 155px;
		width: 141px;
		height: 52px;
	}
	.case_box.box1 .pic:after {
		background-image: url(../../images/who/icon_who_01_pc.png);
	}
	.case_box.box2 .pic:after {
		background-image: url(../../images/who/icon_who_02.png);
	}
	.case_box.box3 .pic:after {
		background-image: url(../../images/who/icon_who_03.png);
	}
	.case_box .case_txt {
		flex-basis: 75%;
		padding: 75px 0 0 5%;
	}
	.btn_wrap {
		margin: 0 80px;
	}
	.btn_wrap .flexbox li {
		flex-basis: 48%;
	}
	.btn_wrap .flexbox li + li {
		margin-left: 4%;
	}
	.btn_wrap .btn a {
		font-size: 1.8rem;
	}
	.rankingBox .rankingHead h3 {
		text-align: center;
		background: none;
		padding: 0;
		margin: 0;
		line-height: auto;
		font-size: 0;
	}
	.rankingBox .rankingHead h3 img {
		width: 343px;
		height: auto;
	}
	.rankingBox .rankingBottom {
		background-color: #d8ca79;
		padding: 30px;
	}
	.rankingBox .rankingBottomIn {
		width: 100%;
		height: 220px;
		position: relative;
		border-bottom: 2px solid #0a703f;
	}
	.rankingBox .rankingBottomIn .rank {
		position: absolute;
		width: 226px;
	}
	.rankingBox .rankingBottomIn .rank.rank01 {
		right: 0;
		bottom: 0;
	}
	.rankingBox .rankingBottomIn .rank.rank02 {
		right: 287px;
		bottom: 0;
	}
	.rankingBox .rankingBottomIn .rank.rank03 {
		left: 0;
		bottom: 0;
	}
	.rankingBox .rankingBottomIn .rank .rankHead {
	}
	.rankingBox .rankingBottomIn .rank .rankHead p {
		font-size: 14px;
		color: #0a703f;
		text-align: right;
		font-weight: bold;
		letter-spacing: 0.05em;
	}
	.rankingBox .rankingBottomIn .rank .rankHead p .num {
		font-size: 30px;
		font-weight: bold;
		padding: 0 0.1em;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom {
		position: relative;
		background-color: #efeaca;
	}
	.rankingBox .rankingBottomIn .rank.rank01 .rankBottom {
		height: 186px;
	}
	.rankingBox .rankingBottomIn .rank.rank02 .rankBottom {
		height: 157px;
	}
	.rankingBox .rankingBottomIn .rank.rank03 .rankBottom {
		height: 125px;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom::before {
		content: "";
		display: table-cell;
		position: absolute;
		bottom: 0;
	}
	.rankingBox .rankingBottomIn .rank.rank01 .rankBottom::before {
		width: 139px;
		height: 236px;
		background: left bottom / 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank01.png");
		left: -57px;
		bottom: -2px;
	}
	.rankingBox .rankingBottomIn .rank.rank02 .rankBottom::before {
		width: 103px;
		height: 175px;
		background: left bottom / 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank02.png");
		left: -24px;
		bottom: -2px;
	}
	.rankingBox .rankingBottomIn .rank.rank03 .rankBottom::before {
		width: 78px;
		height: 133px;
		background: left bottom / 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank03.png");
		left: -7px;
		bottom: -2px;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom p {
		font-size: 18px;
		font-weight: 600;
		width: 130px;
		text-align: left;
		line-height: 1.6;
		position: absolute;
		right: 15px;
		top: 50%;
		transform: translateY(-50%);
		color: #2e4a25;
	}
	.rankingList {
		margin-bottom: 70px;
		padding-top: 15px;
	}
	.rankingList li {
		font-size: 14px;
		font-weight: bold;
		line-height: 1.6;
	}
}

/*━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━

spSetting

━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ */
@media screen and (max-width: 767px) {
	.imgHead {
		margin-bottom: 4.3vw;
	}
	
	.localNav {
		padding-top: 30px;
	}
	#sec01 {
		padding: 0 4%;
	}
	#sec01 .h_style01 {
	}
	.image_border {
		padding: 30px 4%;
	}
	.image_border h3 {
		font-size: 1.8rem;
		background-image: url("../../wp-content/themes/madoka/img/co2/headbg_green_sp.png");
		margin-bottom: 15px;
	}
	.image_border .rankingBox h3 {
		font-size: 0;
		line-height: 1.0;
		background: none;
		margin-bottom: 0;
		padding: 0 10vw;
	}
	.image_border .rankingBox h3 img {
		width: 100%;
		height: auto;
	}
	.image_border .lead p + p {
		margin-top: 15px;
	}
	.image_border h4 {
		font-size: 1.6rem;
	}
	.case_box {
		margin-bottom: 35px;
	}
	.case_box .pic {
		width: 27%;
	}
	.case_box .pic:after {
		top: 50%;
		width: 120px;
		height: 44px;
		right: -120px;
		margin-top: -22px;
		background-size: 120px auto;
	}
	.case_box.box1 .pic:after {
		background-image: url(../../images/who/icon_who_01_sp.png);
	}
	.case_box.box2 .pic:after {
		background-image: url(../../images/who/icon_who_02_sp.png);
	}
	.case_box.box3 .pic:after {
		background-image: url(../../images/who/icon_who_03_sp.png);
	}
	.case_box .case_txt {
		margin-top: 15px;
	}
	.btn_wrap .flexbox {
		display: inline;
	}
	.btn_wrap .flexbox li + li {
		margin-top: 30px;
	}
	.btn_wrap .btn a {
		font-size: 1.6rem;
		width: 100%;
	}
	.rankingBox {
		margin-bottom: 16vw;
	}	
	.rankingBox .rankingBottom {
		background-color: #d8ca79;
		padding: 8.3vw 4.6vw 5vw;
	}
	.rankingBox .rankingBottomIn {
		width: 100%;
		height: auto;
		position: relative;
		border-bottom: none;
	}
	.rankingBox .rankingBottomIn .rank {
		position: static;
		width: 100%;
	}
	.rankingBox .rankingBottomIn .rank.rank01 {
		margin-bottom: 4.6vw;
	}
	.rankingBox .rankingBottomIn .rank.rank02 {
		margin: 0 auto 4.6vw;
	}
	.rankingBox .rankingBottomIn .rank.rank03 {
		margin: 0 auto;
	}
	.rankingBox .rankingBottomIn .rank .rankHead {
	}
	.rankingBox .rankingBottomIn .rank .rankHead p {
		font-size: 3.8vw;
		line-height: 1.0;
		color: #0a703f;
		text-align: left;
		font-weight: bold;
		letter-spacing: 0.05em;
		padding-left: 17.4vw;
	}
	.rankingBox .rankingBottomIn .rank .rankHead p .num {
		font-size: 7vw;
		font-weight: bold;
		padding: 0 0.1em;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom {
		position: relative;
		background-color: #efeaca;
		padding: 4.6vw 5.6vw 4.6vw 21vw;
		min-height: 20vw;
		box-sizing: border-box;
	}
	.rankingBox .rankingBottomIn .rank.rank01 .rankBottom {
		width: 100%;
		margin: 0 auto;
	}
	.rankingBox .rankingBottomIn .rank.rank02 .rankBottom {
		width: 90%;
		margin: 0 auto;
	}
	.rankingBox .rankingBottomIn .rank.rank03 .rankBottom {
		width: 80%;
		margin: 0 auto;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom::before {
		content: "";
		display: table-cell;
		position: absolute;
	}
	.rankingBox .rankingBottomIn .rank.rank01 .rankBottom::before {
		width: 21.7vw;
		height: 36.9vw; /* 170% */
		background: top center/ 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank01.png");
		left: -2.96vw;
		top: -13.75vw;
	}
	.rankingBox .rankingBottomIn .rank.rank02 .rankBottom::before {
		width: 16vw;
		height: 27.2vw; /* 170% */
		background: top center / 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank02.png");
		left: -3.1vw;
		top: -9.3vw;
	}
	.rankingBox .rankingBottomIn .rank.rank03 .rankBottom::before {
		width: 12vw;
		height: 20.8vw;
		background: center / 100% auto url("../../wp-content/themes/madoka/img/co2/wood_rank03.png");
		left: -1.8vw;
		top: -8.1vw;
	}
	.rankingBox .rankingBottomIn .rank .rankBottom p {
		font-size: 4.6vw;
		font-weight: 600;
		line-height: 1.6;
		color: #2e4a25;
	}
	.rankingList {
		display: none;
	}
	
}

@media screen and (min-width: 768px), print {
  .co2 .image_border {
    padding: 50px 85px;
  }
}
.co2 .sttl {
  padding-left: 0px;
  margin-bottom: 20px;
  display: block;
  color: #0a703f;
  font-size: 2.3rem;
  text-align: left;
	background: none;
}
.co2 figcaption {
  margin: 0 0 4rem;
}
@media screen and (max-width: 767px) {
  .co2 figcaption {
    margin: 0.5rem 0 2rem;
  }
}
.co2 .lead p {
  margin: 2rem 0 4rem;
}
.co2 ._inn {
  margin: 0 auto 6rem;
  width: 96%;
}
.co2 .fig2 {
  margin: 3rem 0;
}
.co2 ._target {
  margin: 0 auto;
  flex-wrap: wrap;
  font-weight: bold;
  width: 96%;
}
.co2 ._target li {
  margin: 0 15px 35px 0;
  width: 32%;
}
@media screen and (max-width: 767px) {
  .co2 ._target li {
    margin: 0 5px 25px 0;
    width: 48%;
  }
}

@media screen and (min-width: 768px), print {
  .co2 ._target li:nth-child(3n) {
    margin-right: 0;
  }
}
@media screen and (max-width: 767px) {
  .co2 ._target li:nth-child(2n) {
    margin-right: 0;
  }
}
.co2 ._target li p {
  margin: 1rem 0 0;
  text-align: left;
}
@media screen and (max-width: 767px) {
  .co2 ._target li p {
    margin: 0.3rem 0 0;
  }
}
.co2 ._target span {
  font-size: 1.2rem;
}
.co2 .bnr_co2 {
  background-image: url(../../images/co2/bg_bnr_co2.png);
  background-size: 100%;
  background-position: 0;
  background-repeat: no-repeat;
  display: flex;
  height: 136px;
}
@media screen and (max-width: 767px) {
  .co2 .bnr_co2 {
    background-image: url(../../images/co2/bg_bnr_co2_sp.png);
    display: block;
    height: 52vw;
  }
}
.co2 .bnr_co2 .eco {
  padding-top: 4rem;
  font-size: 2.2rem;
  width: 23%;
}
@media screen and (max-width: 767px) {
  .co2 .bnr_co2 .eco {
    padding-top: 0;
    width: 100%;
    text-align: center;
  }
}
.co2 .search_date {
  padding-top: 7rem;
  font-size: 1.5rem;
  letter-spacing: 2px;
  width: 77%;
  text-align: center;
}
@media screen and (max-width: 767px) {
  .co2 .search_date {
    padding-top: 9rem;
    letter-spacing: 0;
    width: 100%;
  }
}
.co2 .eco .txt_big {
  padding: 0 0.5rem;
  font-size: 4.3rem;
  font-weight: bold;
}
.txt_b {
  margin: 1rem 0;
  font-weight: bold;
}


