```css
/* 共通フレックスコンテナ */
.container {
display: flex;
flex-wrap: wrap;
margin: 0 auto;
}
/* カラム */
.column {
flex: 1 1 100%;
padding: 10px;
}
/* タブレット以上で2カラム */
@media (min-width: 768px) {
.column {
flex: 1 1 50%;
}
}
/* デスクトップ以上で3カラム */
@media (min-width: 1024px) {
.column {
flex: 1 1 33.333%;
}
}
```