@charset "utf-8";
main * {
    font-family: Source Han Serif!important;
}
.shuei-title span {
    text-align: left;
}
ul.two-col-list.base-w {
    letter-spacing: 0px;
}
ul.two-col-list li {
   max-width: 530px;
}
ul.two-col-list dl dt {
    padding: 10px 10px 10px 0;
}
ul.two-col-list dl dd {
    padding: 15px 0 0;
    line-height: 2;
}
.sdg {
    background-color: #fff;
    display: flex;
    justify-content: space-around;
    flex-flow: row wrap;
    padding: 40px 0;
    margin: 60px auto 100px;
}
.sdg > div {
    display: inline-block;
}
.sdg-txt {
    width: 45%;
    max-width: 490px;
    letter-spacing: 1px;
}
.sdg h2 {
    font-size: 2.4rem;
    padding: 10px 50px 70px 0
}
.sdg h3 {
    font-size: 18px;
    padding-bottom: 15px;
}
.goals {
    margin-bottom: 60px;
}
h3.single-underline {
    font-size: 2.8rem;    
    border-bottom: solid 1px #e72e35;
    padding-bottom: 20px;
    margin-bottom: 20px;
}
.recycling {
    text-align: center;
    margin-bottom: 60px;
}
.flex {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
}
.goals.top-goal,
.goals.bottom-goal {
    margin-bottom: 100px;
}

h3 .smalltxt {
    font-size: 2rem;
    margin-left: 40px;
}
.goals h4 {
    color: #c24141;
    font-size: 24px;
}
.point > * {
    display: inline-block;
}
.point {
    padding: 40px 0 0 20px;
}
.point ul {
    list-style: disc;
    list-style-position: inside;
    padding: 18px 0 0 15px;
}
.goals ~ .pg-caption {
    margin-bottom: 60px;
}
.flex-right p {
    font-size: 14px;
    letter-spacing: -1px;
    text-align: center;
    padding: 10px 0 15px;
}
.flex-right img:nth-child(1) {
    margin-bottom: 5px;
}
.flex-middle > h4 {
    margin-bottom: 30px
}
.flex-middle p {
    margin-bottom: 20px;
}
.double .flex-left {
    flex: 0 1 63%;
}
.double .flex-right {
    flex: 0 1 25%;
}
.triple .flex-left {
    flex: 0 1 23%;
}
.triple .flex-middle {
    flex: 0 1 41%;
}
.triple .flex-right {
    flex: 0 1 30%;
}

@media screen and (max-width: 768px) {
    .two-col-list dl dt {
        font-size: 1.8rem;
    }
    .sdg {
        max-width: 95vw;
    }
    .sdg-img {
        max-width: 90%;
        margin: 0 auto;
    }
    .sdg-txt {
        width: 90%;
        line-height: 1.8;
    }
    .sdg h2 {
        font-size: 1.8rem;
        padding: 10px 0 0;
    }
    .sdg h3 {
        font-size: 14px;
        margin: 2vh 0 3vh;
    }
    .goals {
        width: 90vw;
        margin: 5vh auto;
    }
    h3.single-underline {
        font-size: 2.2rem;
        font-weight: 800;
    }
    h3 .smalltxt {
        font-size: 1.8rem;
        font-weight: normal;
        margin-left: 0;
        display: block;
    }
    .double .flex-right,
    .triple .flex-left {
        flex: 0 1 69%;
        margin: 0 auto;
    }
    .triple .flex-right {
        flex: 0 1 95%;
        margin: 0 auto;
    } 
    .double .flex-left,
    .triple .flex-middle {
        flex: 0 1 100%;
    }
    .point {
        padding: 0;
        margin: 2vh auto;
    }
    .point img {
        width: 13%;
        padding-top: 10px;
    }
    .point ul {
        padding: 0;
    }
    br.pc {
        display: none;
    }
    .goals.bottom-goal {
        margin-top: 8rem;
    }
}

/* 220405改修追加 */
.block {
    text-align: justify;
    margin-bottom: 10rem;
}

.img-container img {
    display: block;
    width: 100%;
    max-width: 100%;
}

.ecotask__inner {
    display: flex;
    justify-content: space-between;
    flex-flow: row wrap;
}

.ecotask__txt {
    width: 60%;
}

.ecotask__img {
    width: 32%;
}

.ecotask__img-item + .ecotask__img-item {
    margin-top: 4rem;
}

.ecotask__txt-logo,
.ecotask__txt-body,
.ecotask__txt-annotation,
.ecotask__txt-list {
    margin-bottom: 20px;
}

.ecotask__txt-annotation:last-of-type {
    margin-bottom: 0;
}

.ecotask__txt-body {
    font-size: 2rem;
}

.ecotask__txt-logo {
    width: 200px;
}

.ecotask__txt-annotation,
.ecotask__txt-list {
    font-size: 1.4rem;
}

.ecotask__txt-list {
    padding-left: 1vw;
    color: #C30D23;
    font-size: 1.6rem;
}

@media screen and (max-width: 768px) {
    .inner {
        width: 90vw;
        margin: auto;
    }
    .ecotask__txt,
    .ecotask__img {
        width: 100%;
    }
    .ecotask__txt {
        margin-bottom: 30px;
    }
    .ecotask__txt-body {
        font-size: 1.6rem;
        line-height: 1.5;
    }
    .ecotask__txt-list {
        padding-left: 1em;
        text-indent: -1em;
    }
}


.goals-offset-co2-l {
   width: 70%;
}

.goals-offset-co2-r {
    width: 27%;
    max-width: 217px;
}

.goals-co2 {
    margin-top: 3rem;
}

.goals-co2-txt {
    margin-top: 3rem;
    color: #C30D23;
}

.recycle-thread {
    margin-top: 5rem;
}

.triple.recycle-thread .flex-left {
    flex: 0 1 32%;
}


.triple.recycle-thread .flex-middle {
    flex: 0 1 20%;
    max-width: 254px;
}

.recycle-thread__txt,
.recycle-thread__ttl {
    margin-bottom: 1rem;
}

.recycle-thread__ttl {
    margin-top: 1rem;
}

.recycle-thread__txt {
    font-size: 1.4rem;
}

.recycle-thread__list-item + .recycle-thread__list-item {
    margin-top: 1rem;
}

.recycle-thread__right {
    padding: 2rem 1.5rem;
    text-align: center;
    background: #fff;
    box-sizing: border-box;
    border: solid 1px #ddd;
}

.recycle-thread__right-logo {
    width: 24rem;
    margin: auto;
}

.flex-right.recycle-thread__right p {
    padding: 0;
}

.recycle-thread__right-copy,
.recycle-thread__right-txt,
.recycle-thread__right-ttl {
    margin-top: 1rem;
}

.recycle-thread__right-copy {
    font-weight: bold;
}

p.recycle-thread__right-txt {
    font-size: 1.2rem;
}

p.recycle-thread__right-ttl {
    font-size: 2.5rem;
}

@media screen and (max-width: 768px) {
    .goals-co2 > div {
        margin-bottom: 50px;
    }
    .goals-offset-co2-l,
    .goals-offset-co2-r {
        width: 100%;
    }
    .goals-offset-co2-r {
        margin: auto;
    }
    .triple.recycle-thread .flex-left,
    .triple.recycle-thread .flex-middle,
    .triple.recycle-thread .flex-right {
        flex: 0 1 100%;
    }
    .triple.recycle-thread .flex-middle {
        margin: auto;
    }
    .recycle-thread > div + div {
        margin-top: 30px;
    }
    .triple.recycle-thread .flex-left,
    .triple.recycle-thread .flex-middle {
        margin-bottom: 50px;
    }
}

.ecomark {
    display: flex;
    align-items: flex-start;
    margin-top: 4rem;
}

.ecomark__txt {
    width: 88%;
}

.ecomark__img {
    width: 10%;
    min-width: 74px;
    margin-left: 2rem;
}

.ecomark-copy {
    color: #c24141;
    font-size: 2.4rem;
    margin-bottom: 1rem;
}

@media screen and (max-width: 768px) {
    .ecomark__txt {
        width: 100%;
        margin-bottom: 20px;
    }
    .ecomark__img {
        margin-left: 0;
    }
}

.biodegradable {
    margin-top: 5rem;
}

.triple.biodegradable .biodegradable__left,
.triple.biodegradable .biodegradable__middle,
.triple.biodegradable .biodegradable__right {
    flex: 0 1 26%;
}

.triple.biodegradable .biodegradable__left,
.triple.biodegradable .biodegradable__middle {
    max-width: 273px;
}

.triple.biodegradable .biodegradable__right {
    max-width: 285px;
}

@media screen and (max-width: 768px) {
    .return {
        margin-top: 10rem;
    }
    .triple.biodegradable .biodegradable__left,
    .triple.biodegradable .biodegradable__middle,
    .triple.biodegradable .biodegradable__right {
        flex: 0 1 100%;
        margin: 0 auto 50px;
    }
}

.biomass {
    align-items: center;
    gap: 1rem;
}

.triple .flex-left.biomass__left {
    flex: 0 1 37%;
}

.triple .flex-middle.biomass__middle {
    flex: 0 1 22%;
    max-width: 267px;
}

.flex-right.biomass__right p {
    padding: 0;
}

p.biomass__right-ttl {
    font-size: 2.5rem;
}

.biomass__right {
    padding-top: 3rem;
}

@media screen and (max-width: 768px) {
    .triple .flex-left.biomass__left,
    .triple .flex-middle.biomass__middle,
    .triple .flex-right.biomass__right {
        flex: 0 1 100%;
        margin: 50px auto 0;
    }
    
    .triple .flex-right.biomass__right {
        max-width: 267px;
    }
    .biomass__right {
        padding-top: 0;
    }
    p.biomass__right-ttl {
        font-size: 2rem;
    }

    .flex-right.biomass__right p {
        padding: 0;
        margin: 10px 0;
    }
}

.fundraise__caption-txt {
    width: 70%;
    font-size: 2.2rem;
}

.fundraise__flow {
    align-items: center;
    margin-top: 5rem;
}

.fundraise__use {
    flex: 0 1 20%;
}

.fundraise__use-txt,
.fundraise__fundraise-txt,
.fundraise__exercise-txt {
    margin-top: 2rem;
}
.fundraise__arrow {
    flex: 0 1 20%;
}
.fundraise__arrow-txt {
    color: #009944;
}

.fundraise__exercise {
    flex: 0 1 20%;
}
.fundraise__achieve {
    width: 50%;
    margin-top: 5rem;
    margin-left: auto;
    font-size: 2rem;
    border-bottom: solid 1px #6d6d6d;
}
.fundraise__achieve span {
    padding: 0 3rem;
}

@media screen and (max-width: 768px) {
    .fundraise__caption-txt {
        width: 100%;
        font-size: 1.6rem;
        margin-bottom: 30px;
    }
    .ecolabel__caption-img {
        margin: auto;
    }
    .fundraise__use,
    .fundraise__arrow,
    .fundraise__fundraise,
    .fundraise__exercise {
        flex: 0 1 100%;
    }
    .fundraise__use,
    .fundraise__fundraise,
    .fundraise__exercise {
        margin: auto;
    }
    .fundraise__use-txt,
    .fundraise__fundraise-txt, 
    .fundraise__exercise-txt {
        margin-top: 1rem;
    }
    .fundraise__use img {
        display: block;
        margin: auto;
        max-width: 205px;
    }
    .fundraise__fundraise,
    .fundraise__exercise img {
        display: block;
        margin: auto;
    }
    .fundraise__fundraise {
        max-width: 175px;
    }
    .fundraise__exercise img {
        max-width: 225px;
    }
    .fundraise__arrow {
        display: flex;
        align-items: center;
        height: 40vw;
    }
    .fundraise__arrow-txt {
        width: 350px;
        text-align: right;
    }
    .fundraise__arrow img {
        transform: rotate(90deg) scale(0.5) translateY(30vw);
    }  
    .fundraise__achieve {
        width: 100%;
        margin-top: 3rem;
        font-size: 1.6rem;
    }
    .fundraise__achieve span {
        padding: 0 0 0 5rem;
    }
}

.label-display__vertical {
    flex: 0 1 30%;
}

.label-display__beside {
    flex: 0 1 65%;
}

.label-display__txt:nth-of-type(n + 2) {
    text-indent: -1em;
    padding-left: 1em;
}

.label-display__txt + .label-display__txt {
    margin-top: 30px;
}

.label-display__txt:last-of-type {
    margin-bottom: 30px;
}

@media screen and (max-width: 768px) {
    .label-display {
        margin-top: 8rem;
    }
    .label-display__vertical,
    .label-display__beside {
        flex: 0 1 100%;
    }
    .label-display__beside {
        display: flex;
        flex-flow: column-reverse;
        margin-top: -20px;
    }
    .label-display__beside div{
        margin-top: 30px;
    }
    
}

.spec .link {
	padding: 100px 0;
}
.link li {
	font-size: 1.6rem;
	width: 30%;
}
.link li:nth-of-type(1) a {
	background-color: #e72e35;
	border: none;
}
.link li:nth-of-type(1).btn a:before, .link li:nth-of-type(1).btn a:after, .link li:nth-of-type(1).btn span:before, .link li:nth-of-type(1).btn span:after {
	background-color: #e72e35;
}
.link li:nth-of-type(1).btn a:hover {
	color: #e72e35;
	background-color: #fff;
}

.spec .pg-caption {
    position: relative;
    border-bottom: 1px solid #e72e35;
}

.spec .pg-caption::after {
	content: "";
	position: absolute;
	left: 0;
	right: 0;
	bottom: -5px;
	border-bottom: 1px solid #e72e35;
}

@media screen and (max-width: 768px) {
    .link li {
        width: 80%;
        margin: 0 10% 5vh;
    }
}
/* 230106 ecoページ追加文 */
.flex.fundraise__achieve.fundraise_none {
    width: 32%;
    margin-top: 2rem;
}

  @media screen and (max-width: 768px)
  {
    .flex.fundraise__achieve.fundraise_none {
        width: 70%;
        margin-top: 1.5rem;
    }
  }