@media screen and (max-width: 1100px) {
    .prime-item__left {
        padding: 30px 25px 35px;
    }

    .prime-item__left:before {
        margin-right: 30px;
    }

    .prime-item__left div {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 -webkit-calc(100% - 136px - 30px);
        -moz-box-flex: 0;
        flex: 0 1 calc(100% - 136px - 30px);
    }

    .prime-item__right {
        padding: 30px 25px 35px;
    }

    body {
        font-size: 20px;
        line-height: 30px;
    }

    .prime__desc {
        font-size: 30px;
        line-height: 38px;
    }

    .prime-item-right__link:before {
        margin-right: 15px;
    }

    .prime-item-right__link {
        font-size: 20px;
    }

    .prime__wrap {
        padding: 45px 30px;
    }
}

@media screen and (max-width: 1000px) {
    .prime-item__left:before {
        width: 100px;
        height: 100px;
        margin-right: 20px;
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 100px;
        -moz-box-flex: 0;
        flex: 0 1 100px;
    }

    .prime-item__left div {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 -webkit-calc(100% - 100px - 20px);
        -moz-box-flex: 0;
        flex: 0 1 calc(100% - 100px - 20px);
    }

    .prime__wrap {
        margin-top: 70px;
    }

    h2, .title.high {
        font-size: 3.2vw;
        line-height: 1.2;
    }

    .prime__desc {
        font-size: 28px;
        line-height: 36px;
    }

    .prime__link {
        font-size: 26px;
    }
}

@media screen and (max-width: 900px) {
    .prime__list {
        margin-top: 50px;
    }
    .content {
        padding: 130px 20px 50px;
    }

    h2, .title.high {
        font-size: 29px;
    }

    .prime-list__item {
        display: block;
    }

    .prime-item-right__link {
        max-width: 400px;
    }

    .prime-item__left:before {
        width: 150px;
        height: 150px;
        margin-right: 40px;
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 150px;
        -moz-box-flex: 0;
        flex: 0 1 150px;
        margin-left: 20px;
    }

    .prime-item__left div {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 -webkit-calc(100% - 150px - 40px - 20px);
        -moz-box-flex: 0;
        flex: 0 1 calc(100% - 150px - 40px - 20px);
    }
}

@media screen and (max-width: 700px) {
    .prime-item__left:before {
        width: 136px;
        height: 136px;
        margin-right: 30px;
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 136px;
        -moz-box-flex: 0;
        flex: 0 1 136px;
        margin-left: 0;
    }

    .prime-item__left div {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 -webkit-calc(100% - 136px - 30px);
        -moz-box-flex: 0;
        flex: 0 1 calc(100% - 136px - 30px);
    }

    h1, .title.general {
        font-size: 5.8vw;
        line-height: 1.2;
    }

    .prime__link {
        font-size: 24px;
    }

    .content {
        padding-left: 15px;
        padding-right: 15px;
    }

    .main:before {
        content: url(../images/cover-small-left.png);
        bottom: -10px;
    }

    .main:after {
        content: '';
        bottom: 0;
        background-repeat: no-repeat;
        -moz-background-size: cover;
        background-size: cover;
        background-image: url(../images/cover-small-right.png);
        width: 100%;
        height: 100%;
        background-position: bottom right;
    }
}

@media screen and (max-width: 600px) {
    h1, .title.general {
        font-size: 35px;
    }

    .prime__link {
        font-size: 22px;
    }

    .prime__desc {
        font-size: 4.5vw;
        line-height: 1.3;
    }

    h2, .title.high {
        font-size: 27px;
    }

    .prime-item__left:before {
        width: 100px;
        height: 100px;
        margin-right: 20px;
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 100px;
        -moz-box-flex: 0;
        flex: 0 1 100px;
    }

    body {
        font-size: 18px;
        line-height: 24px;
    }

    .prime-item__left div {
        -webkit-box-flex: 0;
        -webkit-flex: 0 1 -webkit-calc(100% - 100px - 20px);
        -moz-box-flex: 0;
        flex: 0 1 calc(100% - 100px - 20px);
    }
}

@media screen and (max-width: 500px) {
    .prime__desc {
        font-size: 22px;
        margin-bottom: 30px;
    }

    .prime__wrap {
        padding: 35px 20px;
    }

    .prime__link {
        display: block;
        text-align: center;
        font-size: 20px;
    }

    .prime__link:before {
        margin: 0 auto 20px;
        height: 45px;
        width: 45px;
    }

    .prime-item__left {
        padding: 30px 20px 35px;
        display: block;
        text-align: center;
    }

    .prime-item__left:before {
        margin: 0 auto 30px;
    }

    h2, .title.high {
        font-size: 5.4vw;
        margin-bottom: 25px;
    }

    .prime-item-right__link {
        font-size: 18px;
        padding: 13.5px 10px;
    }

    .prime-item__right {
        padding: 30px 15px 35px;
    }

    .prime-item-right__link:before {
        width: 22px;
        height: 16px;
        margin-right: 15px;
    }

    .prime__list {
        margin-top: 40px;
    }

    .content {
        padding-bottom: 30px;
    }

    .prime__content:before {
        top: 0;
        left: 0;
        width: 100%;
        height: 100%;
        background-image: url(../images/cover-small-main.png);
        opacity: 0.4;
    }

    body {
        background-image: url(../images/body-small.png);
    }
}

@media screen and (max-width: 430px) {
    h2, .title.high {
        font-size: 22px;
    }

    .main:after {
        content: url(../images/cover-small-right.png);
        bottom: -10px;
        background-image: none;
        width: auto;
        height: auto;
    }
}
