I will use a conditional proof (CP). In this type of proof, we assume the
truth of a variable and see if applying the premises leads us to the desired conclusion. The lines of the CP are prefixed with :: and only the conclusion(s) reached from the conditional proof can be carried into the main argument. It is a subtle thing but important to keep in mind: the CP part uses info outside the CP AND also stuff already shown true inside the CP, but the non-CP part can NOT use anything except the conclusion(s) of the CP (you can't say M is true on line 10 for example, even though it is "true" on line 5 inside the CP).
1. (Q --> ~J) --> (M --> ~D) Premise
2. Q --> M Premise
3. M --> ~J Premise
:: 4. Q CP assumption #1
:: 5. M 4,2 Modus Ponens (MP)
:: 6. ~J 5,3 MP
:: 7. Q --> ~J 4-6, CP
:: 8. M --> ~D 7,1 MP
:: 9. ~D 5,8 MP
10. Q --> ~D 4-9 CP
--- DONE ---
In words:
:: 4. Assume Q is true as part of the conditional proof
:: 5. M follows from premise given on line 2
:: 6. ~J follows from line 5 and line 3
:: 7. Q --> ~J follows from lines 4 and 6 (assuming Q true, leads to ~J true)
:: 8. M --> ~D by line 7 and premise on line 1 ... that premise says "if Q implies not J, then (M implies not D)"
:: 9. ~D is true because we have M and M implies ~D from line 8
10. says we've shown conditionally that assuming Q true leads to ~D true (more precisely "if Q true then ~D is true"), so we can add an unconditional line to the original argument that Q --> ~D, thus completing the proof.