@charset "utf-8";

.con_wrap{
    background-image: url(../images/special/warm/bg.jpg);
    background-size: cover;
    background-repeat: repeat;
    padding: 0 0 6%;
}
.page_ttl .kv{line-height: 0;}

.con{
    padding: 12% 0 0;
}
.ttl_area{
    display: flex;
    align-items: center;
}
.ttl_area .ttl_num{
    max-width: 18%;
    margin-right: 5%;
}
.ttl_area .ttl_wrap{
    display: flex;
    align-items: center;
    width: 100%;
}
.con03 .ttl_area .ttl_wrap{
    display: block;
}
.ttl_area .ttl_wrap .small{
    font-size: 2.3rem;
    text-align: right;
    font-weight: 600;
    line-height: 1.4;
    margin-right: 2%;
    padding-top: 6px;
}
.con03 .ttl_area .ttl_wrap .small{
    text-align: left;
}
.ttl_area .ttl_wrap .ttl{
    font-size: 6.3rem;
    line-height: 1.3;
    font-weight: 600;
}
.con_txt{
    margin-top: 5%;
    font-weight: 600;
}
.con_txt dt{
    font-size: 2.8rem;
    line-height: 1.5;
}
.con_txt dd{
    font-size: 1.6rem;
    line-height: 2;
    margin-top: 32px;
}
.con_txt dd span{
    color: #006934;
    background: no-repeat linear-gradient(transparent 70%, #FFEC81 70%);
    background-size: 100% 100%;
}
.con1_contents{
    margin-top: 5%;
}
.con1_contents h4{
    position: relative;
    padding-left: 36px;
    font-size: 2.2rem;
    font-weight: 600;
    border-bottom: 1px solid #CECECE;
    padding-bottom: 6px;
}
.con1_contents h4::before{
    content: '';
    display: block;
    position: absolute;
    left: 0;
    top: 2px;
    background-image: url(../images/special/warm/chack.svg);
    background-repeat: no-repeat;
    background-size: 100%;
    width: 28px; height: 30px;
}
.con1_contents_box{
    margin-top: 3%;
    display: flex;
    justify-content: space-between;
}
.con1_contents_box .box{
    flex-basis: 48%;
    background-color: #fff;
    padding: 3% 5%;
    display: flex;
    justify-content: space-between;
    align-items: flex-start;
}
.con1_contents_box .box dl{
    flex-basis: 50%;
}
.con1_contents_box .box dl dt{
    font-size: 1.8rem;
    line-height: 1.5;
    font-weight: 600;
}
.con1_contents_box .box dl dd{
    font-size: 1.5rem;
    line-height: 1.6;
    text-align: justify;
    margin-top: 24px;
}
.con1_contents_box .box dl dd.cap{
    font-size: 1.2rem;
}
.con1_contents_box .box .conbox_img{
    flex-basis: 42%;
    position: relative;
}
.con1_contents_box .box .conbox_img span{
    position: absolute;
    bottom: 0; left: 0;
    font-size: 1rem;
}
.con1_contents_box .box.box2 .conbox_img span{
    left: inherit; right: 0;
}

.con02 .flex{
    display: flex;
}
.con02 .flex .con_txt{
    flex-basis: 58%;
}
.con02 .flex .con2_img{
    flex-basis: 40%;
    position: relative;
}
.con02 .flex .con2_img span{
    position: absolute;
    bottom: -16px; right: 0;
    font-size: 1.2rem;
}

.con03 .con3_img{
    max-width: 1000px;
    margin: 5% auto 0;
    background-color: #fff;
    padding: 3%;
}
.con03 .con3_img img{
    max-width: 700px;
    margin: auto;
    display: block;
}
.con3_txt_wrap{
    max-width: 1000px;
    margin: 3% auto 0;
}
.con3_txt_wrap dl{
    display: flex;
    align-items: center;
}
.con3_txt_wrap dl dt{
    font-size: 2.4rem;
    line-height: 1.5;
    font-weight: 600;
    color: #93631C;
    padding-right: 40px;
}
.con3_txt_wrap dl dd{
    font-size: 1.6rem;
    line-height: 2;
}
.con04 .flex{
    display: flex;
}
.con04 .flex .con_txt{
    flex-basis: 58%;
}
.con04 .flex .con4_img1{
    flex-basis: 40%;
    position: relative;
}
.con4_img2{
    max-width: 1000px;
    margin: 5% auto 0;
    position: relative;
}
.con4_img2 span{
    position: absolute;
    bottom: 0;
    right: 0;
    font-size: 1.2rem;
}

@media screen and (max-width: 768px) {
    .con_wrap{
    }
    .con{
        padding: 16% 0 0;
    }
    .ttl_area{
        display: block;
        align-items: center;
    }
    .ttl_area .ttl_num{
        max-width: 32%;
       margin: 0 auto;
    }
    .ttl_area .ttl_wrap{
        display: block;
    }
    .ttl_area .ttl_wrap .small{
        font-size: 1.6rem;
        text-align: center;
        font-weight: 600;
        line-height: 1.4;
        margin-right: 0;
        padding-top: 32px;
    }
    .con03 .ttl_area .ttl_wrap .small{
        text-align: center;
    }
    .ttl_area .ttl_wrap .ttl{
        font-size: 4.0rem;
        text-align: center;
        padding-top: 8px;
    }
    .con_txt{
        margin-top: 10%;
    }
    .con_txt dt{
        font-size: 1.8rem;
        line-height: 1.5;
        text-align: center;
    }
    .con_txt dd{
        font-size: 1.3rem;
        line-height: 2;
        text-align: center;
        margin-top: 32px;
    }
    .con1_contents{
        margin-top: 10%;
    }
    .con1_contents h4{
        position: relative;
        padding-left: 48px;
        font-size: 1.8rem;
        line-height: 1.5;
        font-weight: 600;
        border-bottom: 1px solid #CECECE;
        padding-bottom: 6px;
    }
    .con1_contents h4::before{
        width: 36px; height: 40px;
    }
    .con1_contents_box{
        margin-top: 6%;
        display: block;
    }
    .con1_contents_box .box{
        padding: 10% 8%;
        display: flex;
        flex-direction: column-reverse;
        margin-top: 3%;
    }
    .con1_contents_box .box dl{
        flex-basis: 100%;
    }
    .con1_contents_box .box dl dt{
        font-size: 1.5rem;
        line-height: 1.5;
        font-weight: 600;
    }
    .con1_contents_box .box dl dd{
        font-size: 1.3rem;
        line-height: 1.6;
        text-align: justify;
        margin-top: 16px;
    }
    .con1_contents_box .box dl dd.cap{
        font-size: 1.0rem;
    }
    .con1_contents_box .box .conbox_img{
        flex-basis: 100%;
        position: relative;
        max-width: 70%;
        margin: 0 auto 32px;
    }
    .con1_contents_box .box .conbox_img span{
        position: absolute;
        bottom: 0; left: 0;
        font-size: 1rem;
    }
    .con1_contents_box .box.box2 .conbox_img span{
        left: inherit; right: 0;
    }
    
    .con02 .flex{
        display: flex;
        flex-direction: column-reverse;
    }
    .con02 .flex .con_txt{
        flex-basis: 100%;
    }
    .con02 .con_txt dl dt,
    .con02 .con_txt dl dd{
        text-align: left;
    }
    .con02 .con_txt dl dd{
        margin-top: 16px;
    }
    .con02 .flex .con2_img{
        flex-basis: 100%;
        margin-top: 10%;
    }
    .con02 .flex .con2_img span{
        position: absolute;
        bottom: -12px; right: 0;
        font-size: 1.0rem;
    }
    
    .con03 .con3_img{
        margin: 10% auto 0;
        padding: 6%;
    }
    .con03 .con3_img img{
        max-width: 100%;
    }
    .con3_txt_wrap{
        max-width: 1000px;
        margin: 6% auto 0;
    }
    .con3_txt_wrap dl{
        display: block;
    }
    .con3_txt_wrap dl dt{
        font-size: 1.6rem;
        padding-right: 0px;
    }
    .con3_txt_wrap dl dd{
        font-size: 1.3rem;
        margin-top: 16px;
    }
    .con04 .flex{
        display: flex;
        flex-direction: column-reverse;
    }
    .con04 .flex .con_txt{
        flex-basis: 100%;
    }
    .con04 .flex .con4_img1{
        flex-basis: 100%;
        position: relative;
        margin-top: 10%;
    }
    .con4_img2{
        max-width: 1000px;
        margin: 10% auto 0;
        position: relative;
    }
    .con4_img2 span{
        font-size: 1.0rem;
    }
}