Store the start_time as a DATE data type and the sla as an INTERVAL DAY TO SECOND data type:
CREATE TABLE table_name (
  start_time DATE,
  sla        INTERVAL DAY TO SECOND
);
Then your data would be:
INSERT INTO table_name ( start_time, sla ) VALUES (
  TO_DATE('01-Jun-2021 19:15:38', 'DD-MON-YYYY HH24:MI:SS', 'NLS_DATE_LANGUAGE=American'),
  INTERVAL '20:10:00' HOUR TO SECOND
);
And, to find the difference, you can use:
SELECT start_time,
       sla,
       (start_time - TRUNC(start_time)) DAY TO SECOND - sla AS difference
FROM   table_name
Which outputs:
| START_TIME | 
SLA | 
DIFFERENCE | 
| 2021-06-01 19:15:38 | 
+00 20:10:00.000000 | 
-000000000 00:54:22.000000000 | 
 
If you want the output as a formatted string, rather than as an interval, then:
SELECT start_time,
       sla,
       CASE WHEN difference < INTERVAL '0' HOUR THEN '-' END
       || TO_CHAR( ABS( EXTRACT( HOUR FROM difference ) ), 'FM00' )
       || TO_CHAR( ABS( EXTRACT( MINUTE FROM difference ) ), 'FM00' )
         AS difference
FROM   (
  SELECT start_time,
         sla,
         (start_time - TRUNC(start_time)) DAY TO SECOND - sla AS difference
  FROM   table_name
)
Which outputs:
| START_TIME | 
SLA | 
DIFFERENCE | 
| 2021-06-01 19:15:38 | 
+00 20:10:00.000000 | 
-0054 | 
 
db<>fiddle here