"What is the reason for your delay?"
Translation:Qual é a razão do seu atraso?
Nothing wrong. Everyone will understand you. But it is less usual in this construction/context.
In Portuguese, you usually ask the "reason of something" (the "reason" which is "part of something").
"Qual a causa do seu atraso?" and "Qual o motivo do seu atraso?" are also more usual than "... por/pelo seu atraso".