Commitments and Contingencies (Details)
3 Months Ended
Mar. 31, 2018
USD ($)
claim
Mar. 31, 2017
USD ($)
Operating Leases    
Rental expense $ 800,000 $ 700,000
Future minimum rental payments    
Remainder of 2018 2,173,000  
2019 2,958,000  
2020 2,502,000  
2021 1,269,000  
2022 534,000  
Thereafter 240,000  
Total 9,676,000  
Purchase Commitments    
Non-cancellable purchase commitments 53,900,000  
Indemnification agreements    
Indemnification    
Accrued liability $ 0  
Number of outstanding claims | claim 0  
Minimum    
Operating Leases    
Extension term of leases P3Y  
Maximum    
Operating Leases    
Extension term of leases P5Y