I am trying to float 4 boxes along the full width of my webpage with equal spacing between them.
Currently the output looks as follows:

This was achieved with the following HTML and CSS
.info {
  background-color: black;
  padding: 20px 20px 40px 20px;
  margin-bottom: 10%;
}
.go_button {
  width: 175px;
  background-color: #01C3A7;
  border: none;
  cursor: pointer;
  border-radius: 0.429rem;
  color: #FFFFFF;
  font-family: Circular, Helvetica, Arial, sans-serif;
  font-size: 1.429rem;
  font-weight: bold;
  letter-spacing: 0px;
  padding: 3px;
}
.box {
  float: left;
}<div class="info">
  <div class="box_container">
    <div class="box">
      <input type="text" placeholder="Departure Station" id="depart">
      <input type="hidden" id="departID" name="DeptStationID" style="display: none">
    </div>
    <div class="box">
      <input type="text" placeholder="Arrival Station" id="arrive">
      <input type="hidden" id="arriveID" name="ArrvStationID" style="display: none">
    </div>
    <div class="box">
      <input type="text" id="datepicker" value="@DateTime.Now.Date.ToString(" yyyy/MM/dd ")" name="DeptDate">
    </div>
    <div class="box">
      <input type="text" id="timepicker" name="time">
    </div>
    <div class="box"><button type="submit" name="Submit" class="go_button">Go</button></div>
  </div>
</div>The output I am trying to require is as follows:

I want this to be able to resize according to the screen display and therefore cannot set a margin using pixels. Currently when i do resize the output, it produces the following:
As you can see, the background color does not fill all four boxes. I have added height:auto and this does not fix the issue.
Please can you let me know how to fix these issues.

 
     
     
     
    