Вы можете сделать что-то простое, как это:
<div class="form-group">
<select name="category_id" class="input">
<option value="">Select Main Category</option>
@foreach($category as $cat)
<option value="{{$cat>id}}">{{$cat->name}}</option>
@endforeach
</select>
</div>
<div class="form-group">
<select name="brand_id" class="input">
@foreach($category as $cat)
@foreach($cat->brands as $brand)
<option value="{{$brand->id}}" category="{{$cat->id}}">{{$brand->name}}</option>
@endforeach
@endforeach
</select>
</div>
и вам нужно показать только бренды для выбранной опции, используя javascript (jquery)
$('[name="category_id"]').on('change',function() {
if($(this).val() != '') {
$('[name="brand_id"] option').hide();
$('[name="brand_id"] option[category="'+$(this).val()+'"]').show();
} else {
$('[name="brand_id"] option').show();
}
});