Lieutenant is a word of French origin, and it is read as /lefˈtenənt/.
I've never learnt French and I don't know anything about French reading rules, unfortunately. But I guess the English reading is related to the original French one.
Why is "lieutenant" read as /lefˈtenənt/ when there is no f in the word?