The problem is that the DIV with the class scombobox-list is not an element in the dropdown, it IS the dropdown. There are more then one on the page, e.g. Origin, Destination, etc. Your code elements.get(4).click(); attempts to click the 4th dropdown rather than the 4th option in the dropdown. You can get around this by looking further up the DOM from the dropdown you want and find a unique element specific to the Origin, Destination, etc. In this case there is a DIV that is the container for all of the Origin related elements,
<div class="col-md-3 col-sm-6 widget-div-input scombobox" id="departsfrom-div" placeholder="Origin">
Since it has an ID, we can use that in our locators to specify children elements without having to worry about other possible matches. This will solve the problem of multiple existing dropdowns.
Much of your code is looping and doing string matches to find the element you want. You would be much better served to achieve this with locators. In this case, you can click the dropdown to open it and then click on the element that contains the airport name you want, e.g. "Ahmedabad (AMD)"
driver.get("https://www.airvistara.com/trip/");
driver.manage().window().maximize();
setOriginAirport("Ahmedabad (AMD)");
and then have a function that sets the origin airport given the airport name.
public void setOriginAirport(string airportName)
{
driver.findElement(By.cssSelector("#departsfrom-div .location_icon")).click();
By locator = By.xpath("//div[@id='departsfrom-div']//span[contains(.,'" + airportName + "')]");
WebElement e = new WebDriverWait(driver, 5).Until(ExpectedConditions.elementToBeClickable(locator));
Thread.sleep(500); // may need this even after wait
e.click();
}