In your code
In[52]:= ?ttf
Global`ttf
ttf[x_,r_,t_]=298
you have defined your ttf function to have the value 298, no matter what the values of x, r or t have.
Then in your NDSolve you use your ttf function in your system of equations
enf1 = NDSolve[{... ttf[0, r, t] == tme, ...}, ...]
and 298==373 will always be false.
I do not think this is a question of using or not using NumericQ. I think this is a misunderstanding of what you want your ttf function to be. I cannot guess from what you have shown what it is that you are trying to do or what the solution should be.