Hi storing objects in LocalStorage is a bit tricky because LocalStorage accepts strings, but JSON.stringify() comes to the rescue! In you function addToList:
addToList = input => {
    let listArray = this.state.lists;
    listArray.push(input);
    this.setState({
      list: listArray,
      userInput: ""
    });
  };
You want to add a LocalStorage call that saves the list from this.state into LocalStorage, like this:
addToList = input => {
    let listArray = this.state.lists;
    listArray.push(input);
    this.setState({
      lists: listArray,
      userInput: ""
    }, () => {
        window.localStorage.setItem('savedList', JSON.stringify(this.state.lists));
    });
  };
And to retrieve it, you need to parse it back into an array/object, like this:
componentDidMount() {
    const list = window.localStorage.getItem('savedList');
    const parsedList = JSON.parse(list);
    this.setState({
        lists: parsedList,
    })
}
Now every new item you add is saved to localStorage and is retrieved on refresh, all that is left is to apply the same logic to removing items, like this:
listOnClick = index => {
    var arr = this.state.lists;
    arr.splice(index, 1);
    this.setState({ lists: arr }, () => {
        window.localStorage.setItem('savedList', JSON.stringify(this.state.lists));
    });
};
You also had a typo in addToList, you were assigning to this.state.list instead of this.state.lists