/*---------- reset ----------*/
@import url(http://fonts.googleapis.com/earlyaccess/notosansjp.css);


.eco_page {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Noto Sans JP', sans-serif;
    letter-spacing: 0.1em;
    color: #1a1a1a;
}

.eco_page a {
    text-decoration: none
}
/* 
.eco_page img,
.eco_page video {
    width: 100%;
    vertical-align: bottom;
} */


.eco_page img.header-logo {
    height: 30px;
}

.eco_page .bold {
    font-weight: bold;
}

@media screen and (max-width: 599px) {

    .eco_page img.header-logo {
        height: 20px;
        width: auto;
    }
}

/*---------- btn ----------*/

.eco_page .co-btn {
    font-size: 22px;
    margin-bottom: 15px;
    line-height: 1.5em;
    font-weight: 900;
    padding: 15px 30px;
    margin: 20px auto;
    border-radius: 40px;
    border: 3px solid #fff;
    box-shadow: 0 7px 5px rgb(52 164 221 / 20%);
    color: #fff;
    background: #58B27D;
    text-align: center;
}

.eco_page .co-btn:hover {
    opacity: 0.8;
    transition: all 0.5s;
    transform: translate(0, -5px);
}

@media screen and (max-width: 599px) {
    .eco_page .co-btn {
        font-size: 4vw;
        font-weight: 600;
        padding: 10px 20px;
        border-radius: 40px;
        border: 1px solid #fff;
        color: #fff;
    }
}


/*---------- color ----------*/
.eco_page .uline {
    background: linear-gradient(25deg, #38B745, #DFEB2B);
}

.eco_page .glay {
    color: #b3b3b3
}

.eco_page .green {
    color: #62B735;
}

.eco_page .red {
    color: #962020;
}


.eco_page .orange {
    color: #EA8F14;
}


/*---------- top ----------*/

.eco_page .top-section {
    padding: 100px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.eco_page .top-section {
    background-image: url('images/eco/27341966_s.jpg');
    background-size: cover;
    background-position: center center;
    background-attachment: fixed;
    position: relative;
}

.eco_page .merit .top-section {
    background-image: url('images/outdoor_unit/22583824_m.jpg');
}

.eco_page .haruene .top-section {
    background-image: url('images/haruene/top.jpg');
}


@media screen and (max-width: 599px) {
    .eco_page .top-section {
        background-attachment: scroll;
    }
}

.eco_page .top-wrap {
    max-width: 1120px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    opacity: 0.9;
}

.eco_page .top-card {
    width: auto;
    background-color: #fff;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    margin: 0 auto;
    box-shadow: 0px 5px 15px rgb(0 0 0 / 10%);
    padding: 50px 30px;
    border-radius: 10px;
}

.eco_page .top-pretext {
    font-size: 20px;
    margin-bottom: 20px;
    font-weight: 700;
}

.eco_page .top-maintitle {
    font-size: 32px;
    margin-bottom: 30px;
    font-weight: 900;
    text-align: center;
}

.eco_page .top-subtitle {
    font-size: 24px;
    font-weight: 900;
}

@media screen and (max-width:599px) {

    .eco_page .top-card {
        padding: 30px 20px;
    }

    .eco_page .top-pretext {
        font-size: 4vw
    }

    .eco_page .top-maintitle {
        font-size: 6vw;
    }

    .eco_page .top-subtitle {
        font-size: 4vw;
    }

}






/*---------- common ----------*/
.eco_page .co-sec {
    padding: 80px 0;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

.eco_page .co-wrap {
    max-width: 960px;
    width: 90%;
    margin: 0 auto;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
}

@media screen and (max-width: 599px) {
    .eco_page .co-sec {
        padding: 50px 0;
    }
}

.eco_page .co-secttl {
    font-size: 34px;
    text-align: center;
}

.eco_page .co-secttl-en {
    color: #77b121;
    font-size: 20px;
    font-weight: 500;
    letter-spacing: .08em;
    margin-top: 0.1em;
    text-indent: 0.08em;
    text-transform: uppercase;
    margin-bottom: 50px;
}

.eco_page .co-explain-text {
    font-size: 17px;
    line-height: 2;
    margin-bottom: 40px;
    font-weight: 300;
}

@media screen and (max-width: 599px) {
    .eco_page .co-secttl {
        font-size: 6vw;
        margin-bottom: 5px;
    }

    .eco_page .co-secttl-en {
        font-size: 4vw;
        margin-bottom: 20px;
    }

    .eco_page .co-explain-text {
        font-size: 4vw;
        margin-bottom: 20px;
    }
}

.eco_page .co-flexbox-row {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
}

.eco_page .co-img-big {
    width: 60%;
    margin: 0 auto 50px;
}

@media screen and (max-width:960px) {
    .eco_page .co-img-big {
        width: 80%;
    }
}

@media screen and (max-width: 599px) {
    .eco_page .co-img-big {
        width: 100%;
    }
}




/*---------- theme ----------*/
.eco_page .theme-card-3 {
    background-color: white;
    width: 31.5%;
    padding: 20px;
    display: flex;
    flex-direction: column;
    justify-content: space-between;
    align-items: center;
    border-radius: 10px;
    box-shadow: 0px 5px 15px rgb(0 0 0 / 10%);
    overflow: hidden;
    margin-bottom: 50px;
}

.eco_page .theme-card-3 img {
    width: 80%;
    border-radius: 5px;
}

@media screen and (max-width: 800px) {
    .eco_page .theme-card-3 {
        width: 48%;
    }
}

@media screen and (max-width: 599px) {
    .eco_page .theme-card-3 {
        width: 48%;
        margin-bottom: 10px;
        padding: 10px;
    }

    .eco_page .theme-card-3 img {
        width: 100%;
    }
}



.eco_page .theme-card-title {
    font-size: 18px;
    font-weight: 500;
    margin-bottom: 20px;
}

@media screen and (max-width: 599px) {
    .eco_page .theme-card-title {
        font-size: 3.5vw;
        margin-bottom: 10px;
    }
}


/*---------- band ----------*/
.eco_page .co-band {
    background: #26B478;
    padding: 50px 0;
}

.eco_page .co-band-wrap {
    max-width: 1120px;
    width: 90%;
    margin: 0 auto;
}

.eco_page .co-band-maintext {
    color: #fff;
    font-size: 24px;
    font-weight: 700;
    line-height: 2;
    text-align: center;
}


@media screen and (max-width: 599px) {
    .eco_page .co-band {
        padding: 20px 0;
    }

    .eco_page .co-band-maintext {
        font-size: 4vw;
    }
}

/*---------- Merit ----------*/

.eco_page .merit-card {
    background-color: white;
    width: 100%;
    padding: 20px;
    display: flex;
    flex-direction: row;
    justify-content: space-between;
    border-radius: 10px;
    box-shadow: 0px 5px 15px rgb(0 0 0 / 10%);
    /* overflow: hidden; */
    margin-bottom: 50px;
}

.eco_page .merit-card-left {
    width: 60%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
}


.eco_page .merit-card-right {
    width: 40%;
    display: flex;
    flex-direction: column;
    justify-content: center;
    align-items: center;
    padding: 20px;
}

.eco_page .merit-card-right img {
    width: 100%;
    border-radius: 10px;
}

@media screen and (max-width: 599px) {

    .eco_page .merit-card {
        flex-direction: column;
        padding: 15px;
        margin-bottom: 20px;
    }

    .eco_page .merit-card-right,
    .eco_page .merit-card-left {
        width: 100%;
        padding: 10px;
    }

    .eco_page .merit-card-right img {
        width: 100%;
        border-radius: 5px;
    }
}

.eco_page .merit-card-title {
    font-size: 24px;
    line-height: 1.5em;
    font-weight: 900;
    margin-bottom: 20px;
}

.eco_page .merit-card-explain {
    font-size: 16px;
    line-height: 2;
    font-weight: 300;
    margin-bottom: 20px;
}

.eco_page .merit-card-small {
    font-size: 14px;
    font-weight: 100;
}

@media screen and (max-width: 599px) {
    .eco_page .merit-card-title {
        font-size: 5vw;
        margin-bottom: 10px;
        text-align: center;
    }

    .eco_page .merit-card-explain {
        font-size: 3vw;
        margin-bottom: 10px;
    }

    .eco_page .merit-card-small {
        font-size: 2.5vw;
        font-weight: 100;
    }
}

/*---------- media ----------*/
.eco_page .img-onlysp {
    display: none;
}

@media screen and (max-width: 599px) {
    .eco_page .img-onlypc {
        display: none;
    }

    .eco_page .img-onlysp {
        display: block;
    }
}

.eco_page .media-text {
    font-size: 16px;
    line-height: 2;
    font-weight: 300;
    margin-bottom: 20px;
}

@media screen and (max-width: 599px) {
    .eco_page .media-text {
        font-size: 3vw;
        margin-bottom: 10px;
    }
}


/*---------- background ----------*/
.eco_page .bg-green {
    background-color: #DDEFD3;
}

.eco_page .bg-red {
    background-color: #FAA2A2;
}


.eco_page .bg-glay {
    background-color: #f0f4f6;
    ;
}

.eco_page .point-sec {
    background: url(image/bg_cross.png);
    background-position: left top;
}


/*---------- table ----------*/
.eco_page .table-wrap {
    overflow-x: scroll;
}

.eco_page table {
    border-collapse: collapse;
    margin: 0 auto;
    padding: 0;
    width: 100%;
    table-layout: fixed;
}

.eco_page table tr {
    background-color: #fff;
    padding: .5em;
    border: 2px solid #eee;
}

.eco_page table th {
    padding: .5em;
    border-right: 2px solid #fff;
}

.eco_page table th {
    font-size: .85em;
}

.eco_page table th .pmt {
    font-size: .7em;
}

.eco_page table th .pmt span {
    font-size: .5em;
}

.eco_page table td {
    padding: .5em;
    border-right: 2px solid #eee;
    text-align: center;
}

.eco_page table thead tr {
    background-color: #c2c2c2;
}

.eco_page table tbody th {
    border-right: 2px solid #eee;
}

.eco_page table td {
    font-size: .8em;
}

.eco_page table td .txt-big {
    font-size: 1em;
}

.eco_page .bg-orange {
    background: #ffb700;
}

.eco_page .table-orange {
    color: #ffb700;
    font-weight: 900;
}


.eco_page .comp-smalltext {
    font-size: 16px;
    line-height: 2;
    font-weight: 300;
    margin-top: 20px;
    margin-bottom: 20px;
}

@media screen and (max-width: 599px) {
    .eco_page .comp-smalltext {
        font-size: 3vw;
        margin-bottom: 10px;
    }
}

/* テーブル：会社概要 */
.eco_page .table-company {
    width: 50%;
    border-collapse: collapse;
    border-spacing: 0;
    border: none;
}

.eco_page .table-company th {
    width: 30%;
}

.eco_page .table-company tr,
.eco_page .table-company th,
.eco_page .table-company td {
    border: none;
    text-align: left;
    padding: 10px;
    background-color: transparent;
}

@media screen and (max-width: 599px) {
    .eco_page .table-company {
        width: 100%;
    }
}


/*---------- js-fadeup ----------*/
.eco_page .js-fadeup {
    opacity: 0;
    transform: translate(0, 50px);
    transition: all 1000ms;
}

.eco_page .js-scrollin {
    opacity: 1;
    transform: translate(0, 0);
}

.eco_page .fadeup__top {
    animation-name: fadeUpAnime;
    animation-duration: 1s;
    animation-fill-mode: forwards;
    opacity: 0;
}

@keyframes fadeUpAnime {
    from {
        opacity: 0;
        transform: translateY(10px);
    }

    to {
        opacity: 1;
        transform: translateY(0);
    }
}


.eco_page .other_eco_page_container {
    width: 100%;
    margin: 10px;
    display: flex;
    justify-content: space-between;
    flex-direction: column;
}




.eco_page .other_eco_page_maintitle {
    margin-bottom: 30px;
    color: black;
    font-size: 16px;
    font-weight: 700;
    word-wrap: break-word
}


.eco_page .other_eco_page_box {
    width: 95%;
    height: 100px;
    background-color: #DDD;
    margin: 10px;
    text-align: left;
    font-size: 2rem;
    padding: 3%;
    font-weight: 600;
    position: relative;
    display: flex;
    justify-content: space-between;
    align-content: space-between;
    align-items: center;
}


.eco_page .other_eco_page_box a{
    padding: 1rem;
}

.eco_page .other_eco_page_circle {
    float: right;
    display: flex;
    align-items: center;
    justify-content: center;
    width: 60px;
    height: 60px;
    border-radius: 50%;
    background-color: #62B735;
    color: #fff;
    font-size: 20px;
    cursor: pointer;
    position: relative;
    overflow: hidden;
}


/* SPの場合のスタイル */
@media screen and (max-width: 767px) {

    .eco_page .other_eco_page_box {
        width: 95%;
        height: 80px;
        background-color: #DDD;
        margin: 10px;
        text-align: left;
        font-size: 16px;
        font-weight: 600;
        padding: 0 6%;
        display: flex;
        align-items: center;
        justify-content: space-between;
    }

}

/* ボックスの左の円 */

.eco_page .merit_card_box_circle {
    display: flex;
    align-items: center;
    justify-content: center;
    border-radius: 50%;
    background-color: #59BB69;
    color: #fff;
    position: relative;
    position: absolute;
    top: -60px;
    left: -2px;
    width: 120px;
    height: 120px;
    box-shadow: 3px 7px 7px rgba(0, 0, 0, .5);
}


.eco_page .haruene .merit_card_box_circle {
    background-color: #962020;
}

.haruene .top-card.fadeup__top {
    text-align: center;
}

.eco_page .merit_card_box_circle .arrow {
    font-size: 34px;
    font-weight: 500;
    word-wrap: break-word
}

/* SPの場合のスタイル */
@media screen and (max-width: 767px) {

    .eco_page .merit_card_box_circle {
        display: flex;
        align-items: center;
        justify-content: center;
        width: 80px;
        height: 80px;
        border-radius: 50%;
        background-color: #59BB69;
        color: #fff;
        position: relative;
        position: absolute;
        top: -30px;
        left: -1px;
    }
}

.eco_page .haruene .merit_card_box_circle {
    background-color: #962020;
}


@media screen and (max-width: 599px) {

    .eco_page .eco_pc {
        display: none;
    }

    .eco_sp {
        display: block !important;
    }

}


@media screen and (min-width: 599px) {
    .eco_page .eco_pc {
        display: block;
    }

    .eco_sp {
        display: none !important;
    }

    .top_haruene_img{
        width: 80%!important;
    }
    
}

