Might also be possible with teamed doors, but easier to just script it.
WRONG. 
why does everyone say ‘script me!’. srsly use entites, its easier and more compact… make each door slab a seperate door entity, give them all team/specialdoor or something, then be sure to link a trigger_multiple to all three slabs. That trigger multiple is your button.
To make the locking mechanism, link a trigger_multiple to a target_lock (again, trigger_multiple is your button… this time the lock button) and link the target lock to either your three door entities or your trigger_multiple door button that controls the door.
I suggest u link it to all three doors, so that way if you have a button sound when your trigger is played to open the door, it will still sound when you try to open the door. If you lock a trigger_multiple, its sound if it has one won’t play which is little less interactive.
Anyway there is your door with no scripts. 