You can select "Before Main Columns" container and render your CMS block before div.columns if you are using widget to add it to the product details page.
Containers are defined in Magento/Theme/view/base/page_layout/empty.xml:
<container name="columns.top" label="Before Main Columns"/>
<container name="columns" htmlTag="div" htmlClass="columns">
The missing label of columns container excludes it from the dropdown with containers in the admin area. This is some kind of magento core team restrictions I think to place CMS blocks in any containers (there is a lot of structural blocks).
Anyway if you want to place that CMS block inside the .columns div you can create layout xml file in your theme and add the block:
Path: app/design/frontend/Vendor/theme/Magento_Catalog/layout/catalog_product_view.xml
<referenceContainer name="columns">
<block class="Magento\Cms\Block\Block" name="banner" before="-">
<arguments>
<argument name="block_id" xsi:type="string">banner</argument>
</arguments>
</block>
</referenceContainer>