Casualty, Environmental and Other Reserves - Schedule of Casualty, Environmental and Other Reserves (Details) (USD $) In Millions, unless otherwise specified
|
Mar. 27, 2015
|
Dec. 26, 2014
|
Loss Contingencies [Line Items] |
|
|
Current |
$ 141us-gaap_LossContingencyAccrualCarryingValueCurrent |
$ 142us-gaap_LossContingencyAccrualCarryingValueCurrent |
Long-term |
286us-gaap_LossContingencyAccrualCarryingValueNoncurrent |
276us-gaap_LossContingencyAccrualCarryingValueNoncurrent |
Total |
427us-gaap_LossContingencyAccrualAtCarryingValue |
418us-gaap_LossContingencyAccrualAtCarryingValue |
Total Casualty |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
76us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
76us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
Long-term |
197us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
189us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
Total |
273us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
265us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_TotalCasualtyMember |
Personal Injury |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
68us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
68us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
Long-term |
132us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
123us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
Total |
200us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
191us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_PersonalInjuryCasualtyMember |
Occupational |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
3us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
3us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
Long-term |
14us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
15us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
Total |
17us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
18us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OccupationalCasualtyMember |
Asbestos |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
5us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
5us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
Long-term |
51us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
51us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
Total |
56us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
56us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_AsbestosIssueMember |
Environmental |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
48us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
48us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
Long-term |
46us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
46us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
Total |
94us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
94us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = us-gaap_EnvironmentalIssueMember |
Other |
|
|
Loss Contingencies [Line Items] |
|
|
Current |
17us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |
18us-gaap_LossContingencyAccrualCarryingValueCurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |
Long-term |
43us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |
41us-gaap_LossContingencyAccrualCarryingValueNoncurrent / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |
Total |
$ 60us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |
$ 59us-gaap_LossContingencyAccrualAtCarryingValue / us-gaap_LossContingenciesByNatureOfContingencyAxis = csx_OtherReservesMember |