Windows assumes the hardware clock on the computer is local time and uses it directly.
Linux assumes the hardware clock is UTC and applies an offset to get local time.
Check what linux is doing by opening a terminal and typing
timedatectl
You can make Linux use local time (like windows does) by setting
timedatectl set-local-rtc 1 --adjust-system-clock
Then both OS will interpret the hardware clock as local