.tt-coupons {
    position: relative;
    border: 5px solid #f3f3f3;
    background-color: #fff
}

.tt-coupons:after,
.tt-coupons:before {
    content: "";
    display: block;
    position: absolute;
    height: 1px;
    width: 100%;
    left: 0;
    z-index: 1;
    background: url(../images/border-dashed-x.png) 0 0 repeat-x
}

.tt-coupons:after {
    top: 1px
}

.tt-coupons:before {
    bottom: 1px
}

.tt-coupons .tt-coupons__bg {
    height: 251px
}

.tt-coupons .tt-coupons__bg:after,
.tt-coupons .tt-coupons__bg:before {
    content: "";
    display: block;
    position: absolute;
    top: 0
}

.tt-coupons .tt-coupons__bg:after {
    height: 100%;
    width: 1px;
    right: 1px;
    background: url(../images/border-dashed-y.png) 0 0 repeat-y;
    z-index: 1
}

.tt-coupons .tt-coupons__bg:before {
    background: url(../images/coupons__bg.png) 0 0 no-repeat;
    width: 228px;
    height: 100%;
    z-index: 2
}

.tt-coupons .btn-custom {
    text-decoration: none;
    text-align: center;
    display: inline-block;
    color: #fff
}

.tt-coupons .btn-custom .tt-icon {
    font-size: 23px;
    line-height: 1
}

.tt-coupons .btn-custom span {
    display: inline-block;
    position: relative;
    font-size: 14px;
    line-height: 1;
    top: 3px
}

.tt-coupons .btn-custom span:before {
    display: inline-block;
    position: relative;
    content: "";
    display: block;
    position: absolute;
    bottom: -1px;
    width: 100%;
    height: 2px;
    margin: auto;
    left: 0;
    right: 0;
    background-color: #87888e;
    transition: width var(--speed) linear
}

.tt-coupons .btn-custom:hover {
    color: #fff
}

.tt-coupons .btn-custom:hover span:before {
    width: 0
}

.tt-coupons .tt-top-left {
    position: absolute;
    top: 22px;
    left: 20px;
    color: #fff;
    font-size: 14px;
    line-height: 22px;
    z-index: 3
}

.tt-coupons .tt-top-left a {
    color: #fff
}

.tt-coupons .tt-bottom-left {
    position: absolute;
    bottom: 22px;
    left: 22px;
    z-index: 3
}

.tt-coupons .tt-right-top {
    width: 64%;
    float: right;
    padding: 18px 24px 50px 0;
    position: relative;
    z-index: 3
}

.tt-coupons .tt-right-top .tt-title {
    font-family: var(--default_font2);
    font-weight: 600;
    padding-bottom: 14px
}

.tt-coupons .tt-right-top .tt-title+* {
    margin-top: 0
}

.tt-coupons .tt-right-top .tt-title__01 {
    color: var(--default_color02);
    font-size: 24px;
    line-height: 34px
}

.tt-coupons .tt-right-top .tt-title__02 {
    color: var(--default_color);
    font-size: 36px;
    line-height: 34px;
    margin-top: 8px
}

.tt-coupons .tt-right-bottom {
    position: absolute;
    padding: 0 24px 0 0;
    width: 70%;
    right: 0;
    bottom: 16px
}

.tt-coupons .tt-right-bottom .tt-row-bottom {
    display: flex;
    flex-direction: row;
    flex-wrap: wrap;
    justify-content: space-between;
    align-content: flex-start;
    align-items: flex-start;
    position: absolute;
    bottom: 0;
    right: 24px;
    width: 100%;
    font-size: 14px;
    color: #252936
}

.tt-coupons .tt-right-bottom .tt-row-bottom .tt-col {
    display: inline-block
}

.tt-coupons .tt-right-bottom .tt-row-bottom .tt-col:not(:last-child) {
    margin-left: 30px
}

.tt-coupons .tt-right-bottom .tt-coupons__logo {
    font-size: 19px;
    line-height: 19px;
    color: var(--default_color02);
    font-family: var(--default_font2);
    font-weight: 600;
    display: inline-block;
    position: relative;
    letter-spacing: -.02em
}

.tt-coupons .tt-right-bottom .tt-coupons__logo .tt-icon {
    position: absolute;
    top: -2px;
    left: -25px;
    max-width: 20px
}

.tt-coupons .tt-right-bottom .tt-text {
    display: inline-block;
    position: relative;
    top: -2px
}

.tt-coupons-wrapper {
    margin-left: -15px;
    margin-right: -15px
}

.tt-coupons-wrapper .tt-item {
    padding-left: 15px;
    padding-right: 15px
}

@media (max-width:1229.98px) {
    .tt-coupons {
        max-width: 570px;
        margin-left: auto;
        margin-right: auto
    }

    .tt-coupons .tt-right-top {
        width: 58%
    }
}

@media (max-width:575.98px) {
    .tt-coupons .tt-coupons__bg {
        display: flex;
        flex-direction: row;
        flex-wrap: wrap;
        justify-content: flex-start;
        align-content: stretch;
        align-items: stretch
    }

    .tt-coupons .tt-top-left {
        position: relative;
        top: inherit;
        left: inherit;
        width: 62%;
        background: var(--default_color02);
        overflow: hidden;
        padding: 20px 10px 20px 20px
    }

    .tt-coupons .tt-bottom-left {
        width: 38%;
        position: relative;
        bottom: inherit;
        left: inherit;
        background: var(--default_color02);
        overflow: hidden;
        padding: 20px 20px 20px 10px;
        text-align: right
    }

    .tt-coupons .tt-coupons__bg {
        height: inherit
    }

    .tt-coupons .tt-coupons__bg:before {
        display: none
    }

    .tt-coupons .tt-right-top {
        width: 100%;
        padding: 18px 20px 35px
    }

    .tt-coupons .tt-right-top .tt-title__01 {
        font-size: 18px;
        line-height: 28px
    }

    .tt-coupons .tt-right-top .tt-title__02 {
        font-size: 26px;
        line-height: 24px
    }

    .tt-coupons .tt-right-bottom {
        width: 100%;
        position: relative;
        padding: 0;
        text-align: right
    }

    .tt-coupons .tt-right-bottom .tt-row-bottom {
        padding: 0 0;
        position: inherit;
        display: block
    }

    .tt-coupons .tt-right-bottom .tt-row-bottom .tt-col:first-child {
        text-align: right;
        order: 1
    }

    .tt-coupons .tt-right-bottom .tt-row-bottom .tt-col:last-child {
        order: 3;
        display: none
    }
}