JsFiddle Grid with column spans calculated using 'flex: <grow> <shrink> calc(<...>);' expressions.
flex: 1 1 5em;
flex: 2 2 calc(10em + 10px);
flex: 2 2 calc(10em + 10px);
flex: 2 2 calc(10em + 10px);
flex: 3 3 calc(15em + 20px);
flex: 3 3 calc(15em + 20px);
Note: each cell has 'margin-left:10px' so the 'calc( )' expressions must account for those.