h3,h4,h5,h6,ul,ol,li,p,dl,dt,dd{
    margin: 0;
    padding: 0;
}
article, section, .container{
    min-width: unset;
}
img{
    max-width: 100%;
    height: auto;
    vertical-align: bottom;
}

.page-main .page-main__title h2{
    background: url(../images/zeh_h2.svg) center / auto 100% no-repeat;
    width: 350px;
    filter: invert(100%) sepia(0%) saturate(7500%) hue-rotate(316deg) brightness(104%) contrast(104%);
}
.page-copy{
    padding: 60px 0;
    width: 90%;
    margin: 0 auto;
}
.page-copy h3{
    font-weight: 500;
    text-align: center;
    font-size: 24px;
    line-height: 1.9;
    letter-spacing: 2px;
}
.page-copy h4{
    font-weight: 400;
    text-align: center;
    font-size: 15px;
    line-height: 2.2;
    letter-spacing: 2px;
}
.page-copy h3 + h4{
    margin-top: 30px;
}
.zeh_title.title1 h3{
    text-indent: -9999px;
    height: 23px;
    width: 296px;
    background: url(../images/zeh_title01.svg) center / contain no-repeat;
    margin: 0 auto;
}
.eco-title,
.comfortable-title{
    height: 32px;
    border-bottom: 10px solid #17372a;
}
.eco-title h4,
.comfortable-title h4{
    text-indent: -9999px;
    height: 23px;
    width: 561px;
    background: url(../images/zeh_title02.svg) center / contain no-repeat;
    margin: 0 auto;
}
.eco-title h4{
    background: url(../images/zeh_title03.svg) center / contain no-repeat;
}

.intro{
    background: url(../images/zeh_bg.webp) center top / 100% auto no-repeat;
    padding: 80px 0 0;
}
.zeh-image.img2,
.zeh-image.img1{
    width: 90%;
    max-width: 960px;
    margin: 0 auto;
    gap: 34px;
}
.zeh-image.img2{
    gap: 34px 50px;
}
.zeh-image.img1 .zeh-image_item{
    width: 312px;
    position: relative;
}
.zeh-image.img1 .zeh-image_item:last-child{
    width: auto;
    flex: 1;
    padding: 12px 0;
}
.zeh-image.img1 .zeh-image_item:nth-child(3):before,
.zeh-image.img1 .zeh-image_item:nth-child(2):before{
    content: "";
    display: block;
    width: 34px;
    height: 34px;
    position: absolute;
    top: 50%;
    left: -34px;
    transform: translateY(-50%);
}
.zeh-image.img1 .zeh-image_item:nth-child(2):before{
    background: url(../images/zeh_plus.svg) center / contain no-repeat;
}
.zeh-image.img1 .zeh-image_item:nth-child(3):before{
    background: url(../images/zeh_equal.svg) center / contain no-repeat;
    left: -41px;
}
.zeh-image.img1 .zeh-image_item:nth-child(2):after{
    content: "";
    display: block;
    width: 120px;
    height: 119px;
    position: absolute;
    top: -38px;
    right: -30px;
    background: url(../images/zeh_badge01.svg) center / contain no-repeat;
}
.zeh-image.img2 .zeh-image_item{
    width: calc((100% - 100px) / 3);
    position: relative;
    background: #17372a;
    color: #fff;
}
.zeh-image.img2 .zeh-image_item h5{
    font-size: 24px;
    line-height: 2.8;
    font-weight: 500;
}
.zeh-image.img2 .zeh-image_item p{
    position: absolute;
    bottom: 20px;
    left: 5%;
    right: 5%;
    font-size: 17px;
    line-height: 1.75;
    color: #000;
}
.zeh-image.img3{
    max-width: 960px;
    width: 90%;
    margin: 60px auto 0;
}
.zeh-image.img3 figure{
    padding: 0 0 30px;
}
.comfortable-list{
    padding: 40px 0;
    border-top: 1px solid #000;
    border-bottom: 1px solid #000;
    margin: 0 auto 80px;
    max-width: 960px;
    width: 90%;
    justify-content: center;
    gap: 25px 0;
}
.comfortable-list_item{
    width: 33%;
    text-align: left;
    padding-left: 10%;
    font-size: 18px;
}
.comfortable-list span{
    display: inline-block;
    margin-right: 5px;
}
.comfortable-list.upper span{
    color: #14325f;
}
.comfortable-list.lower span{
    color: #891c33;
}

.info{
    padding: 60px 0;
    background: #17372a;
    color: #fff;
}
.info > *{
    max-width: 960px;
    width: 90%;
    margin: 0 auto;
}
.info h5{
    background: #ddd2c4;
    padding: 0;
    font-size: 20px;
    font-weight: 500;
    line-height: 3.5;
    color: #000;
    margin: 0 0 50px;
}
.info h4{
    border-bottom: 1px solid #fff;
    padding: 0 0 20px 4px;
    font-size: 24px;
    font-weight: 500;
    line-height: 1;
    margin: 60px 0;
    letter-spacing: 4px; 
}
.temp-list{
    gap: 30px 50px;
}
.temp-list_item{
    width: calc((100% - 100px) / 3);
    background: #6289a0;
}
.temp-list_item h6{
    color: #fff;
    font-size: 24px;
    line-height: 2.8;
    letter-spacing: 1em;
    padding-left: 1em;
}
.temp-list_item figure{
    background: #fff;
}
.temp-list_item p{
    position: absolute;
    color: #000;
    top: 20px;
    left: 30px;
    right: 30px;
    text-align: left;
    font-size: 16px;
    line-height: 2;
}
.loan-list{
    gap: 50px 30px;
}
.loan-list > *{
    width: calc((100% - 30px) / 2);
    font-size: 15px;
    line-height: 2.2;
}
.loan-list > *:nth-child(1){
    width: 100%;
}
.loan-list img{
    max-width: 100%;
    width: unset;
}
.loan-list p{
    text-align: left;
}
.loan-list h5 + p{
    min-height: 8em;
}
.loan-list .flex{
    gap: 30px;
}
.loan-list .flex p{
    width: calc(100% - 530px);
}
.loan-list .flex .image{
    width: 500px;
}

.eco{
    background: url(../images/zeh_bg.webp) center top / 100% auto no-repeat;
    padding: 0 0 80px;
}
.eco-title{
    padding: 70px 0 0;
    background: #fff;
    height: unset;
}
.eco-blc{
    max-width: 960px;
    width: 90%;
    margin: 80px auto 0;
}
.eco-blc .page-copy{
    width: 100%;
    padding: 0 0 60px;
}
.eco-blc .page-copy h4 + .caption{
    text-align: left;
}
.eco-blc + .eco-blc{
    padding: 80px 0 0;
    border-top: 1px solid #000;
}
.eco-blc.blc1{
    gap: 30px;
    margin-top: 0;
}
.eco-blc .eco-blc_text{
    text-align: left;
    font-size: 15px;
    line-height: 2.2;
}
.eco-blc.blc1 .eco-blc_text{
    width: calc(100% - 530px);
}
.eco-blc.blc1 .eco-blc_image{
    width: 500px;
}
.eco-blc.blc3 .page-copy h4 {
    text-align: left;
}
.zeh-image.img4{
    max-width: 679px;
    margin: 0 auto 10px;
}
.zeh-image.img4 .caption{
    font-size: 16px;
}
.zeh-image.img5{
    max-width: 156px;
    margin: 0 auto 10px;
}

.bels{
    padding: 90px 0;
    background: #fff;
}
.bels .page-copy{
    padding: 0;
}
.bels-image{
    max-width: 433px;
    width: 90%;
    margin: 40px auto 0;
}
.bels-image + .caption{
    text-align: center;
    width: 90%;
    margin: 40px auto 0;
}

.efficiency{
    padding: 90px 0;
}
.efficiency .page-copy{
    padding: 0;
    max-width: 960px;
    width: 90%
    margin: 0 auto;
}
.efficiency .page-copy p{
    color: #005438;
    font-size: 21px;
    border-bottom: 1px solid #000;
    margin: 50px 0 30px;
}
.efficiency-image{
    max-width: 350px;
    width: 90%;
    margin: 45px auto 0;
}

@media screen and (max-width: 768px){
    .page-copy{
        padding: 30px 0;
    }
    .page-copy h3{
        font-size: 21px;
        line-height: 1.7;
        letter-spacing: 1px;
    }
    .page-copy h4{
        line-height: 1.7;
    }
    .page-copy h3 + h4{
        margin-top: 20px;
    }
    .upper.comfortable-list{
        gap: 0 20px;
    }
    .upper .comfortable-list_item{
        width: auto;
    }
    .lower .comfortable-list_item{
        width: 35%;
    }
    .comfortable-list_item{
        padding-left: 0;
        font-size: 14px;
    }

    .eco-blc.blc1 .eco-blc_image,
    .eco-blc.blc1 .eco-blc_text,
    .loan-list > *,
    .loan-list .flex .image,
    .loan-list .flex p,
    .temp-list_item img,
    .temp-list_item,
    .eco-title h4, .comfortable-title h4,
    .zeh-image.img2 .zeh-image_item img,
    .zeh-image.img2 .zeh-image_item,
    .zeh-image.img1 .zeh-image_item{
        width: 100%;
    }
    .zeh-image.img1 .zeh-image_item:nth-child(3):before,
    .zeh-image.img1 .zeh-image_item:nth-child(2):before{
        top: -34px;
        left: 50%;
        transform: translateX(-50%);
    }
    .zeh-image.img1 .zeh-image_item:nth-child(3):before{
        transform: rotate(90deg) translate(-50%,-50%);
        top: -22px;
        left: 43%;
    }
    .zeh-image.img1 .zeh-image_item:nth-child(2):after{
        right: unset;
        left: 65%;
    }
    .info h5{
        font-size: 16px;
        line-height: 1.5;
        padding: 20px 0;
    }
    .info h5{
        min-height: unset;
        margin-bottom: 30px;
    }
    .eco-title + .page-copy{
        padding: 60px 0 0;
    }
    .temp-list_item h6,
    .zeh-image.img2 .zeh-image_item h5{
        font-size: 20px;
        font-weight: 500;
        line-height: 2.2;
        letter-spacing: .5em;
        padding-left: .5em;
    }
    .comfortable-list{
        margin: 0 auto 30px;
        padding: 20px 0;
    }
    .zeh-image.img3{
        margin: 30px auto 0;
    }
    .eco-blc{
        margin: 30px auto 0;
    }
    .eco-title,
    .eco-blc + .eco-blc {
        padding: 30px 0 0;
    }
    .efficiency,
    .bels{
        padding: 30px 0 50px;
    }
