I would recommend removing the <br /> tag after the label, though, as that completely throws the grid off. The grid layout is putting the label in the left column, the <br /> in the right column, and the div containing the drinks back in the left.
Also, you wrap your ‘Diet’ radio buttons in li tags (without a ul, by the way), but you don’t wrap the ‘Drink’ checkbox lines. You’re getting different behavior because they’re fundamentally different. I’d make both unordered lists, and use CSS to set the list-style-type to none.