Fair Value Measurement - Assets and Liabilities at Fair Value (Details) - USD ($)
Jun. 30, 2018
Dec. 31, 2017
Contingent consideration    
Liabilities:    
Contingent consideration due to seller $ (1,300,000)  
Contingent consideration    
Assets:    
Contingent consideration due from seller 0  
Fair Value, Measurements, Recurring | Contingent consideration    
Liabilities:    
Contingent consideration due to seller (1,250,000) $ (2,075,000)
Fair Value, Measurements, Recurring | Contingent consideration | Level 1    
Liabilities:    
Contingent consideration due to seller 0 0
Fair Value, Measurements, Recurring | Contingent consideration | Level 2    
Liabilities:    
Contingent consideration due to seller 0 0
Fair Value, Measurements, Recurring | Contingent consideration | Level 3    
Liabilities:    
Contingent consideration due to seller $ (1,250,000) $ (2,075,000)