There are two parts to re-scaling your signal so that it falls within the ADC range. The first is the easiest and is based on dividing the voltage. A 20 volt range (-10 to +10) needs to be reduced to less than 5 volts. I say less than so that you have some margin at the top and bottom. Dividing by 5 would give you a 4 volt range.
The second part is, as you say, dealing with the offset. The actual offset you need to end up with would need to place zero volts (0v) of input signal in the middle of the 5 volt range between 0 and +5 Volts. That is a +2.5 volt offset. You can do all the re-scaling back to whatever you want in software after the fact. Here we are only talking about the analogue signal conditioning for your ADC input.
The following summer amplifier would suffice. Note that the Op Amp summing circuit inverts your signal so you need another inverting amplifier to turn it back up the right way.
I have not worried about 'input offset voltage' or other op amp practical considerations. There are general solutions for these. I've just, in the circuit below, outlined the basic idea. That being the use of different individual channel gains for a summing circuit. That is right! The 6.2 Volt zener reference can be amplified by a gain of less than 1 so it becomes 2.5V. This is much more elegant than using a voltage divider.
simulate this circuit – Schematic created using CircuitLab
Note that the total input resistance of your input channel will be about 165k to have a channel gain of 0.2 (20 Volts / 5 Volts). The trim pot will allow you to calibrate your signal.
The DC offset is almost perfect but you could trim it in your software.
Good luck.