XML 88 R61.htm IDEA: XBRL DOCUMENT
v3.8.0.1

Debt Commitments - Senior Unsecured Promissory Notes Payable (Details) - Senior Unsecured Promissory Notes [Member] | Jul. 20, 2016 USD ($) | Dec. 31, 2017 USD ($) debt_instrument_series | Mar. 31, 2017 USD ($)
--- | --- | --- | ---
Debt Instrument [Line Items] |  |  |
Debt issuance period after effective date | 3 years |  |
Maximum aggregate principal amount outstanding | $ 200,000,000 |  |
Number of debt instrument series | debt_instrument_series |  | 3 |
Fixed Rate Notes Payable [Member] |  |  |
Debt Instrument [Line Items] |  |  |
Term of debt (no later than 12 years) | 12 years |  |
Floating Rate Notes Payable [Member] |  |  |
Debt Instrument [Line Items] |  |  |
Term of debt (no later than 12 years) | 10 years |  |
2.00% Senior Unsecured Promissory Note Payable [Member] |  |  |
Debt Instrument [Line Items] |  |  |
Debt issuance, aggregate principal amount |  | $ 40,000,000 |
Fixed interest rate per annum |  | 2.00% |
2.45% Senior Unsecured Promissory Note Payable [Member] |  |  |
Debt Instrument [Line Items] |  |  |
Debt issuance, aggregate principal amount |  | $ 35,000,000 |
Fixed interest rate per annum |  | 2.45% |
3.22% Senior Unsecured Promissory Note Payable [Member] |  |  |
Debt Instrument [Line Items] |  |  |
Debt issuance, aggregate principal amount |  | $ 60,000,000 | $ 60,000,000
Fixed interest rate per annum |  | 3.22% |

X
- Definition Debt Instrument, Debt Issuance Allowable Period + References No definition available. + Details
Name: | fast_DebtInstrumentDebtIssuanceAllowablePeriod
Namespace Prefix: | fast_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Definition Debt Instrument, Maximum Face Amount Allowable + References No definition available. + Details
Name: | fast_DebtInstrumentMaximumFaceAmountAllowable
Namespace Prefix: | fast_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Debt Instrument, Number of Debt Instrument Series + References No definition available. + Details
Name: | fast_DebtInstrumentNumberofDebtInstrumentSeries
Namespace Prefix: | fast_
Data Type: | xbrli:integerItemType
Balance Type: | na
Period Type: | instant

X
- Definition Face (par) amount of debt instrument at time of issuance. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 55 -Paragraph 8 -URI http://asc.fasb.org/extlink&oid=64930739&loc=d3e28878-108400 Reference 2: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 835 -SubTopic 30 -Section 45 -Paragraph 2 -URI http://asc.fasb.org/extlink&oid=64930785&loc=d3e28551-108399 + Details
Name: | us-gaap_DebtInstrumentFaceAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | instant

X
- Definition Contractual interest rate for funds borrowed, under the debt agreement. + References Reference 1: http://www.xbrl.org/2003/role/presentationRef -Publisher FASB -Name Accounting Standards Codification -Topic 210 -SubTopic 10 -Section S99 -Paragraph 1 -Subparagraph (SX 210.5-02.22(a)(1)) -URI http://asc.fasb.org/extlink&oid=6877327&loc=d3e13212-122682 + Details
Name: | us-gaap_DebtInstrumentInterestRateStatedPercentage
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Line items represent financial concepts included in a table. These concepts are used to disclose reportable information associated with domain members defined in one or many axes to the table. + References No definition available. + Details
Name: | us-gaap_DebtInstrumentLineItems
Namespace Prefix: | us-gaap_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Period of time between issuance and maturity of debt instrument, in PnYnMnDTnHnMnS' format, for example, 'P1Y5M13D' represents the reported fact of one year, five months, and thirteen days. + References No definition available. + Details
Name: | us-gaap_DebtInstrumentTerm
Namespace Prefix: | us-gaap_
Data Type: | xbrli:durationItemType
Balance Type: | na
Period Type: | duration

X
- Details
Name: | us-gaap_LongtermDebtTypeAxis=us-gaap_SeniorNotesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fast_FixedRateNotesPayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fast_FloatingRateNotesPayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fast_A2.00SeniorPromissoryNotePayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fast_A2.45SeniorUnsecuredPromissoryNotePayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DebtInstrumentAxis=fast_A3.22SeniorUnsecuredPromissoryNotePayableMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |