.main-container {
    height: 100vh;
    padding-top: 0;
    background-color: #FFF;
}

.notfound-wrap {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-items: center;
    align-items: center;
    height: 100%;
    margin: 0 60px 0 100px;
}

.notfound-text {
    margin-right: 30px;
}
.notfound-text .oops {
    margin-bottom: 5px;
    color: #913832;
    font-size: 5em;
}
.notfound-text .title {
    margin-bottom: 10px;
    font-size: 1.8em;
}
.notfound-text .explain {
    color: #707070;
}
.notfound-text .explain a {
    color: #913832;
}

.notfount-image {}
.notfount-image>img {
    width: 300px;
    height: auto;
}
.main-container-deadline{
    height: 100vh;
    padding-top: 0;
    width: 45%;
    margin: 0 auto;
    background-color: #FFF;
    background-image: url(../img/common/bg.png);
    background-repeat:  no-repeat;
    background-size: 100%;
}
.deadline-wrap {
    display: -ms-flexbox;
    display: -webkit-box;
    display: -webkit-flex;
    display: flex;
    -webkit-box-align: center;
    -ms-flex-align: center;
    -webkit-align-itemspx: center;
    align-items: center;
    height: 100%;
    background-image: url(../img/common/illust.png);
    background-repeat:  no-repeat;
    background-size: 30%;
    background-position: right 25% top 5%;
}
.deadline-title {
    position: relative;
    top: 40px;
    left: 40px;
    height: 10%;
    padding: top 20% left 20%;
    font-size: 25px;
    color: #FFF;
}
.deadline-text {
    width: 100%;
    height: 45%;
    padding-left: 10%;
    padding-right: 10%;
}
.wedding-title {
    height:2em;
}
.deadline-name {
    font-size: 18px;
}
.deadline-contents {
    width:20em;
    min-height:3em;
    overflow:hidden;
}

/* sp */
@media (max-width: 767px) {
    .main-container {
        padding-top: 45px;
    }

    .notfound-wrap {
        -webkit-box-align: stretch;
        -ms-flex-align: stretch;
        -webkit-align-items: stretch;
        align-items: stretch;
        -ms-flex-wrap: wrap;
        -webkit-flex-wrap: wrap;
        flex-wrap: wrap;
        padding-top: 40px;
        margin: 0 30px;
    }

    .notfound-text {
        order: 2;
        width: 100%;
        height: calc(100% - 140px);
        text-align: center;
    }
    .notfound-text .oops {
        margin-bottom: 20px;
    }
    .notfound-text .title {
        margin-bottom: 20px;
    }

    .notfount-image {
        order: 1;
        width: 100%;
        height: 140px;
        text-align: center;
    }
    .notfount-image>img {
        width: 145px;
    }
    .main-container-deadline{
        width: 100%;
    }
    .deadline-title {
        font-size: 15px;
    }
    .deadline-wrap {
        background-size: 30%;
        background-position: right 25% top 0%;
    }
}

