Mitchells & Butlers has agreed to sell off more than 300 pubs for GBP373m (US$582m) in order to cut its reliance on dwindling on-trade drinks sales in the UK.