Fair Value Measurement - Reconciliation of Liabilities Using Level 3 (Details) - USD ($)
$ in Thousands
6 Months Ended
Jun. 30, 2018
Jun. 30, 2017
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]    
Payment of contingent consideration due to seller $ 925 $ 695
Level 3    
Fair Value, Liabilities Measured on Recurring Basis, Unobservable Input Reconciliation [Line Items]    
Balance at beginning of period (2,075)  
Change in fair value of contingent consideration due to seller (100)  
Payment of contingent consideration due to seller 925  
Balance at end of period $ (1,250)