When Datatables is rendered, invisible columns are completely deleted from the DOM, therefore being inaccessible via common Javascript. You need to use the component API, that is, the method Row(). date() will return the line data via JSON.
To catch the line of the clicked element you use:
var linha = $(this).closest("tr");
The .closest("tr") will fetch the first element tr parent of the clicked element.
How the column is named with the term Nomes, just take the value of .data().Nomes of Row returned in variable linha:
var texto = $('#table_id').DataTable().row(linha).data().Nomes;
The selector '#table_id' is the table id. Change to your table id
  current table.
Take an example:
$(document).ready( function () {
   $('#table_id').DataTable({
      "columns": [
         { data: "Nomes", autoWidth: true, visible: false}, null, null
      ]       
   });
   $(".btn").click(function(){
      var linha = $(this).closest("tr");
      var texto = $('#table_id').DataTable().row(linha).data().Nomes;
      console.log(texto);
   });
});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link rel="stylesheet" href="https://cdn.datatables.net/1.10.20/css/jquery.dataTables.min.css">
<script src="https://cdn.datatables.net/1.10.20/js/jquery.dataTables.min.js"></script>
<table id="table_id" class="display">
    <thead>
        <tr>
            <th>Column 1</th>
            <th>Column 2</th>
            <th>Column 3</th>
        </tr>
    </thead>
    <tbody>
        <tr>
            <td>Row 1 Data 1 invisível</td>
            <td>Row 1 Data 2</td>
            <td><button class="btn">clique</button></td>
        </tr>
        <tr>
            <td>Row 2 Data 1 invisível</td>
            <td>Row 2 Data 2</td>
            <td><button class="btn">clique</button></td>
        </tr>
    </tbody>
</table>