Maybe a CenterLineReplacer followed by an LineExtender would work?
Or, you want as an output a polygon, that is longer at both ends, according to a line that you already have.
If all the bridges are the same width, them simply buffering the line would work.
If they are not, then you want to find the width at the edge, buffer the exterior of the line, and then dissolve that into the original polygon.
Here's a proof of concept workspace.
bridgeextender.fmw
Move or offset a copy of the border where the line intersects. Line extension is your vector. ID border first.
Aggregate on this ID and then a BoundingboxReplacer (oriented mode)to create your extension.
Dissolve with bridge on bridge ID.