jQuery-based flow diagram
You can simplify the javascript to be something as given below by adding some properties to the markup.

jQuery(function () {

    jQuery('input:radio[name^="question"]').change(function(){
        var $this = $(this);

        $this.closest('.question-container').hide();
        $('#' + $this.data('target')).show();
    });
});


Required changes in the markup


add a class question-container to the question container ie the element with the question id like q1, question1A, etc
For all radio boxes add an additional attribute data-target which will have the id of the question to be displayed if it was checked. ex Yes button in question question1A will have data-target="question1B" and No button will have data-target="question2-1A"


demo: Fiddle