Annual report pursuant to Section 13 and 15(d)

Shareholders' Equity, Stock Options and Net Income per Share - Net Income per Share (Details)

v2.4.1.9
Shareholders' Equity, Stock Options and Net Income per Share - Net Income per Share (Details) (USD $)
In Thousands, except Per Share data, unless otherwise specified
3 Months Ended 12 Months Ended
Dec. 31, 2014
Sep. 30, 2014
Jun. 30, 2014
Mar. 31, 2014
Dec. 31, 2013
Sep. 30, 2013
Jun. 30, 2013
Mar. 31, 2013
Dec. 31, 2014
Dec. 31, 2013
Dec. 31, 2012
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]                      
Net income and comprehensive income $ 17,045us-gaap_NetIncomeLoss $ 16,744us-gaap_NetIncomeLoss $ 17,178us-gaap_NetIncomeLoss $ 10,202us-gaap_NetIncomeLoss $ 15,584us-gaap_NetIncomeLoss $ 14,197us-gaap_NetIncomeLoss $ 13,831us-gaap_NetIncomeLoss $ 10,855us-gaap_NetIncomeLoss $ 61,169us-gaap_NetIncomeLoss $ 54,467us-gaap_NetIncomeLoss $ 52,668us-gaap_NetIncomeLoss
Undistributed Earnings (Loss) Allocated to Participating Securities, Basic                 (404)us-gaap_UndistributedEarningsLossAllocatedToParticipatingSecuritiesBasic    
Numerator for net income and comprehensive income to common shareholders                 $ 60,765fwrd_Numeratorfornetincomeandcomprehensiveincometocommonshareholders $ 54,467fwrd_Numeratorfornetincomeandcomprehensiveincometocommonshareholders $ 52,668fwrd_Numeratorfornetincomeandcomprehensiveincometocommonshareholders
Denominator for basic income per share - weighted-average shares                 30,599us-gaap_WeightedAverageNumberOfSharesOutstandingBasic 30,135us-gaap_WeightedAverageNumberOfSharesOutstandingBasic 28,967us-gaap_WeightedAverageNumberOfSharesOutstandingBasic
Denominator for diluted income per share - adjusted weighted-average shares                 31,072us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding 30,762us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding 29,536us-gaap_WeightedAverageNumberOfDilutedSharesOutstanding
Basic net income per share $ 0.56us-gaap_EarningsPerShareBasic $ 0.55us-gaap_EarningsPerShareBasic $ 0.56us-gaap_EarningsPerShareBasic $ 0.33us-gaap_EarningsPerShareBasic $ 0.51us-gaap_EarningsPerShareBasic $ 0.47us-gaap_EarningsPerShareBasic $ 0.46us-gaap_EarningsPerShareBasic $ 0.37us-gaap_EarningsPerShareBasic $ 1.99us-gaap_EarningsPerShareBasic $ 1.81us-gaap_EarningsPerShareBasic $ 1.82us-gaap_EarningsPerShareBasic
Diluted net income per share $ 0.55us-gaap_EarningsPerShareDiluted $ 0.54us-gaap_EarningsPerShareDiluted $ 0.55us-gaap_EarningsPerShareDiluted $ 0.33us-gaap_EarningsPerShareDiluted $ 0.50us-gaap_EarningsPerShareDiluted $ 0.46us-gaap_EarningsPerShareDiluted $ 0.45us-gaap_EarningsPerShareDiluted $ 0.36us-gaap_EarningsPerShareDiluted $ 1.96us-gaap_EarningsPerShareDiluted $ 1.77us-gaap_EarningsPerShareDiluted $ 1.78us-gaap_EarningsPerShareDiluted
Total number anti-dilutive options and non-vested shares excluded from income per diluted share computation                 99us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount 192us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount 248us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
Equity Option [Member]                      
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]                      
Weighted Average Number Diluted Shares Outstanding Adjustment                 431us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
615us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
528us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
Total number anti-dilutive options and non-vested shares excluded from income per diluted share computation                 99us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
192us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
226us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
/ us-gaap_AwardTypeAxis
= us-gaap_StockOptionMember
Key Employee Performance Share Based Plan [Member]                      
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]                      
Weighted Average Number Diluted Shares Outstanding Adjustment                 42us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= fwrd_KeyEmployeePerformanceShareBasedPlanMember
12us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= fwrd_KeyEmployeePerformanceShareBasedPlanMember
41us-gaap_WeightedAverageNumberDilutedSharesOutstandingAdjustment
/ us-gaap_AwardTypeAxis
= fwrd_KeyEmployeePerformanceShareBasedPlanMember
Performance Shares [Member]                      
Earnings Per Share, Basic, by Common Class, Including Two Class Method [Line Items]                      
Total number anti-dilutive options and non-vested shares excluded from income per diluted share computation                     22us-gaap_AntidilutiveSecuritiesExcludedFromComputationOfEarningsPerShareAmount
/ us-gaap_AwardTypeAxis
= us-gaap_PerformanceSharesMember