@charset: "utf-8";
a{
    color : inherit;
}
.mirai{
    position: relative;
}
.mirai .sp{
    display: block;
}
.mirai .pc{
    display: none;
}
.mirai .top_img{
    position: relative;
}

.concept .catch_text {
    font-size: 29px;
    text-align: center;
    margin-bottom: 60px;
}
.catch_text span{
    display: inline-block;
    position: relative;
}
.catch_text span::after{
    content: "";
    width: 90%;
    height: 8px;
    background-color: #FFF796;
    position: absolute;
    left: 50%;
    transform: translateX(-50%);
    bottom: 11px;
    z-index: -1;
}
.top_title img{
    margin: auto;
}
.mirai .top_logo{
    position: absolute;
    top: 82%;
    left: 50%;
    transform: translateX(-50%);
    -webkit-transform: translateX(-50%);
    -ms-transform: translateX(-50%);
    max-width: 140px;
}
.main_text{
    font-weight: bold;
    line-height: 1.6;
    /* max-width: 600px; */
    margin: 110px auto 60px;
}



/* @media screen and (max-width: 690px){
    .mirai .top_logo{
        top: 47%;
    }
}
@media screen and (max-width: 650px){
    .mirai .top_logo{
        top: 43%;
    }
}
@media screen and (max-width: 570px){
    .mirai .top_logo{
        top: 42%;
    }
}
@media screen and (max-width: 520px){
    .mirai .top_logo{
        top: 40%;
    }
}
@media screen and (max-width: 450px){
    .mirai .top_logo{
        top: 37%;
    }
    .main_text{
        margin-top: 110px;
    }
}
@media screen and (max-width: 410px){
    .mirai .top_logo{
        top: 35%;
    }
}
@media screen and (max-width: 370px){
    .mirai .top_logo{
        top: 33%;
    }
}
@media screen and (max-width: 330px){
    .mirai .top_logo{
        top: 31%;
    }
    } */
    h3{
        text-align: center;
        margin-bottom: 20px;
        font-size: 2rem;
        font-weight: normal;
        border-bottom: solid 1px;
        display: inline-block;
    }
    .mirai_report_area{
        display: flex;
        margin: 0 auto 30px;
        justify-content: center;
    }
    .dis_b{
        display: block;
    }
    .mirai_report_area .inner{
        border: solid 7px #fdf69e;
        padding: 10px;
        width: 300px;
        display: inline-block;
    }
    .mirai_report_area .inner:nth-child(odd) {
        margin-right: 10px;
    }
    .mirai_report_area p{
        line-height: 1.6;
        font-size: 1.4rem;
        margin-top: 10px;
    }
    .mirai_report_area img{
        margin: 0 auto;
    }
    .mirai_report_area .b_n{
        border: none;
    }
    .application_btn_sp{
        margin: 20px auto 40px;
    }
    .movie_area{
        border: solid 5px #fdf69e;
        padding: 20px 20px 15px 20px;
        max-width: 500px;
        margin: 20px auto 20px;
    }
    .movie_area p{
        line-height: 1.6;
        font-weight: bold;
        margin-top: 10px;
    }
    .sns_area{
        display: flex;
        justify-content: center;
        margin: 20px auto 0;
    }
    .sns_area img{
        display: inline-block;
        margin-top: 20px;
        padding-right: 10px;
    }
    .sns_area a .pr_0{
        padding-right: 0;
    }


    @media screen and (min-width: 769px){
        .under_gy{
            margin-bottom: 0;
        }
        .concept {
            margin-top: 60px;
        }
        .mirai .sp{
            display: none;
        }
        .mirai .pc{
            display: block;
        }
        .mirai .fixation img{
            height: 400px;
            object-fit: cover;
        }
        .mirai .top_title{
            top: -4%;
        }
        .mirai .top_logo{
            top: 50%;
            max-width: none;
        }
        .mirai .top_logo img{
            width: 311px;
        }
        .main_text{
            margin-top: 70px;
            max-width: 830px;
        }
        .mirai_report_area .inner{
            height: auto;
        }
        .mb_30{
            margin-bottom: 30px;
        }
        h3{
            font-size: 2.8rem;
            margin-bottom: 10px;
            font-weight: bold;
        }
        .mirai_report_area .inner .title{
            font-size: 2rem;
            font-weight: bold;
        }
        .mirai_report_area .inner .explanation{
            margin-bottom: 20px;
        }
        .mirai_report_area .inner:nth-child(odd) {
            margin-right: 20px;
        }
        .application_btn_pc{
            margin: 50px auto 100px;
        }
        .movie_area{
            max-width: 800px;
            position: relative;
            padding-top: 42.25%;
        }
        .movie_area iframe{
            position: absolute;
            top: 0;
            right: 0;
            width: 100%;
            height: 100%;
        }
        .sns_area img{
            padding-right: 25px;
        }
    }

    @media screen and (max-width: 768px){
        .content{
            overflow-x: hidden;
        }
        .concept{
            margin-top: 0;
        }
        .mirai .top_img img{
            height: auto;
            width: 100%;
        }
        .mirai .top_title{
            top: 5%;
        }
        .mirai .top_logo{
            top: 82%;
            max-width: 32%;
        }
        .movie_area{
            position: relative;
            padding-top: 42.25%;
            margin-top: 0;
        }
        .movie_area iframe{
            position: absolute;
            top: 0;
            right: 0;
            width: 100%;
            height: 100%;
        }
        .sns_area, .sns_area img{
            margin-top: 0;
        }
    }

@media screen and (max-width: 768px){
	.main_text{
            margin-top: 40px;
        }
}
    @media screen and (max-width: 410px){
        .concept{
            margin-top: 0;
            padding-top: 0;
        }
        .main_text{
            margin-top: 20px;
        }
        .mirai{
            position: relative;
        }
        .mirai .top_img img {
            height: 237px;
            width: 100%;
        }
        .mirai .top_title{
            top: 4%;
        }
        .mirai .top_logo{
            top: 80%;
        }
        .sns_area {
            margin: 0px auto 0;
        }
        .sns_area img {
            margin-top: 0;
        }
        .movie_area{
            margin-top: 0;
        }
    }

    
    /* 20230220 mvを動画に modal対応等 */
    .top_img{
        /* height: 54.93333vw; */
        height: calc(100svh - 240px);
        overflow: hidden;
    }
    .mv_movie{
        position: relative;
        overflow: hidden;
    }
    .mv_movie video{
        object-fit: cover;
        width: 100%;
        height: calc(100svh - 240px);
        z-index: -1;
    }
    .modal_button{
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        bottom: 70px;
        z-index: 1;
    }
    .modal_button .modal_open{
        width: auto;
        margin: auto;
        position: relative;
        display: block;
    }
    .modal_button .modal_open img{
        height: 60px;
    }
    #modaal-close:hover{
        outline: 0;
    background: 0 0;
    }
    .modaal-close:focus:after, .modaal-close:focus:before, .modaal-close:hover:after, .modaal-close:hover:before{
        background: #fff!important;
    }
    .modaal-close:after, .modaal-close:before{
        top: -10px!important;
        width: 4px!important;
        height: 54px!important;
    }
    .modaal-iframe-elem{
        aspect-ratio:16 / 9;
        width:100%;
        height:100%
    }
    .modaal-iframe .modaal-content{
        width: auto;
        height: auto;
    }
    .mv_title{
        position: absolute;
        left: 50%;
        transform: translateX(-50%);
        top: 60px;
        z-index: 1;
        width: 60%;
    }
    .mirai .mv_title img{
        height: auto;
        width: 100%;
    }
    /* modalの×マーク対応 */
    @media screen and (min-width: 1170px){
        /* .modaal-close{
            position: absolute;
            top: 100px!important;
            left: calc(50% - -540px);
            transform: translateX(-50%);
        } */
        .modaal-container{
            max-width: 80%!important;
        }
    }
    @media screen and (max-width: 1000px){
        .mv_title{
            top: 5vw;
            width: 80%;
        }
        .mirai .mv_title img{
            height: auto;
            width: 100%;
        }
    }
    @media screen and (max-width: 1170px){
        .top_title img{
            width: 40%;
        }
        .mirai .mv_title img{
            width: 70%;
            margin: auto;
        }
        .modal_button .modal_open img{
            height: 5vh;
        }
        .modal_button{
            bottom: 5vw;
        }
    }

    @media screen and (max-width: 768px){
        .top_title img{
            width: 100%;
        }
        .modal_button{
            width: 80%;
        }
        .mirai .modal_button img{
            height: 6vw;
            width: auto;
            margin: auto;
        }
        .concept .catch_text {
            margin-top: 30px;
            margin-bottom: 20px;
            font-size: 18px;
        }
        .mirai .top_title{
            width: 50%;
            margin: auto;
            margin-top: 20px;
        }
        .top_img{
            /* height: 54.93333vw; */
            height: auto;
            overflow: hidden;
        }
        .mv_movie video{
            object-fit: cover;
            width: 100%;
            height: auto;
        }
        .mv_title{
            position: absolute;
            left: 50%;
            transform: translateX(-50%);
            top: 5vw;
            z-index: 1;
            width: 65%;
        }
        .mirai .mv_title img{
            height: auto;
            width: 100%;
        }
    }