@charset "utf-8";
/*#mv*/
#mv{
    padding-bottom: 95px;
}
#mv .imgbox{
    position: relative;
    margin-bottom: 9.5vw;
}
#mv h2{
    max-width: 1440px;
    width: 100%;
    margin: 0 auto;
    position: absolute;
    bottom:-105px;
    left: 0;
    right: 0;
    mix-blend-mode:multiply;
    text-align: left;
}
#mv .imgbox .main{
    width: 100%;
}
@media screen and (max-width: 1079px) {
    #mv h2{
        height: 14.1vw;
        width: auto;
        bottom:-9.5vw;
    }
    #mv h2 img{
        height: 100%;
        width: auto;
    }
}
@media screen and (max-width: 767px) {
    #mv{
        padding-bottom: 3em;
    }
    #mv h2{
        bottom:-12.32vw;
        height: auto;
        width: 100%;
    }
    #mv h2 img{
        height: auto;
        width: 100%;
    }
    #header h1{
        display: none;
    }
}
/*END #mv*/

/*#intro*/
#intro{
    margin-bottom: 100px;
}
#intro .tbl2{
    position: relative;
    display: flex;
    align-items:stretch;
    flex-direction: row-reverse;
    width: 100%;
}
#intro .tbl2 .lbox{
    width: calc(1100px * 0.41);
}
#intro .tbl2 .txt{
    font-size: 18px;
    font-weight: 700;
}
#intro .tbl2 .rbox{
    width: 50%;
}
#intro .tbl2 .rbox .imgbox{
    margin: 0 auto;
}
#intro .tbl2 .rbox .imgbox img{
    width: 100%;
}
@media screen and (max-width: 1079px) {
    #intro .tbl2 .lbox{
        width: 50%;
        padding-left: 5vw;
    }
    #intro .tbl2 h3{
        font-size: 2.2vw;
    }
    #intro .tbl2 .txt{
        font-size: 1.6vw;
    }
}
@media screen and (max-width: 767px) {
    #intro{
        margin-bottom: 3em;
    }
    #intro .tbl2{
        width: 73.3%;
        margin: 0 auto;
        flex-wrap: wrap;
    }
    #intro .tbl2 .rbox{
        width: 100%;
        order: 2;
    }
    #intro .tbl2 .lbox{
        width: 100%;
        padding-left:0;
        order: 1;
    }
    #intro .tbl2 h3{
        font-size: 3.7vw;
    }
    #intro .tbl2 .txt{
        margin-bottom: 2em;
        font-size: 3.7vw;
    }
}
/*END #intro*/

/*#support*/
#support{
    
}
#support .last{
    padding-bottom: 100px;
}
#support .inner{
    max-width:900px ;
    width: 90%;
    margin: 0 auto;
}
#support h3{
    position: relative;
    padding-left: 1em;
    margin-bottom: 10px;
    line-height: 1;
    font-size: 30px;
    font-weight: 700;
}
#support h3:before{
    position: absolute;
    left: 0;
    top: 0;
    content: "";
    display: block;
    width: 13px;
    height: 100%;
    background:#f00;
}
#support .sup_li{
    margin-bottom: 40px;
}
#support .sup_li li{
    display: flex;
    align-items: center;
    margin: 0 32px;
    border-bottom: dotted 3px #b1b1b1;
    padding: 10px;
}
#support .sup_li li .icon{
    width: 43px;
    height: 40px;
    text-align: center;
}
#support .sup_li h4{
    width: 14.5em;
    margin-left: 10px;
    line-height: 1.2;
    font-size: 20px;
    font-weight: 700;
}
#support .sup_li h4 .mini{
    font-size: 15px;
    font-weight: 700;
}
#support .sup_li .txt{
    width: calc(100% - 10.5em - 43px);
    font-size: 15px;
    font-weight: 700;
}
@media screen and (max-width: 1079px) {
    
}
@media screen and (max-width: 767px) {

    #support .inner{
        width: 90%;
    }
    #support h3{
        font-size: 5vw;
    }
    #support .sup_li li{
        flex-wrap: wrap;
        margin: 0 5%;
    }
    #support .sup_li li .icon{
        width: 6vw;
        height: 6vw;
    }
    #support .sup_li li .icon img{
        vertical-align: middle;
    }
    #support .sup_li h4{
        width: 13em;
        margin-left: 1.5vw;
        font-size: 4.2vw;
    }
    #support .sup_li h4 .mini{
        font-size: 2.6vw;
    }
    #support .sup_li .txt{
        width: 100%;
        margin-top: 1em;
        margin-left: 8vw;
        font-size: 3.7vw;
        box-sizing: border-box;
    }
}
/*END #support*/