XML 47 R35.htm IDEA: XBRL DOCUMENT v3.8.0.1
Revenue Recognition - Additional Information (Detail) - USD ($)
3 Months Ended
Mar. 31, 2018
Mar. 31, 2017
Dec. 31, 2017
Revenue Recognition [Line Items]      
Performance obligations, description of timing Performance obligations within paving service agreements are satisfied over time, primarily ranging from one day to 20 months. For product revenues and freight revenues, customer payment terms are generally 30 days from invoice date. Customer payments for the paving operations are based on a contractual billing schedule and are due 30 days from invoice date.    
Product and freight revenues customer payment terms 30 days    
Customer payments term based on contractual billing 30 days    
Future revenues from unsatisfied performance obligations $ 88,054,000 $ 145,921,000  
Revenue recognized from contract liabilities 4,199,000 3,835,000  
Retainage on contracts 4,824,000 5,759,000 $ 9,029,000
Colorado      
Revenue Recognition [Line Items]      
Service revenues $ 11,143,000 $ 16,000,000  
Minimum      
Revenue Recognition [Line Items]      
Performance obligations, customer satisfaction period 1 day 1 day  
Construction contracts warranty provisions period 9 months    
Maximum      
Revenue Recognition [Line Items]      
Performance obligations, customer satisfaction period 20 months 11 months  
Construction contracts warranty provisions period 1 year