.box-wrapper {
    margin: 0 auto;
    padding: 20px;
}

.box-table {
    width: 100%;
    box-shadow: 0 1px 3px rgba(0, 0, 0, 0.2);
    display: table;
}

@media screen and (max-width: 580px) {
    .box-table {
        display: block;
    }
}

.box-row {
    display: table-row;
    background: #f6f6f6;
}

.box-row:nth-of-type(odd) {
    background: #e9e9e9;
}

@media screen and (max-width: 580px) {
    .box-row {
        padding: 8px 0;
        display: block;
    }
}

.box-left {
    padding: 1em;
    width: 200px;
    display: table-cell;
    vertical-align: top;
}

.box-right {
    padding: 1em;
    display: table-cell;
    text-align: left;
    vertical-align: top;
}

@media screen and (max-width: 580px) {

    .box-left,
    .box-right {
        display: block;
    }
}

div.box-table img {
    position: relative;
}