XML 40 R40.htm IDEA: XBRL DOCUMENT
v3.19.2

Financial Instruments - Additional Information (Detail) - USD ($) $ in Millions | 1 Months Ended | 3 Months Ended |
--- | --- | --- | ---
Mar. 31, 2017 | Jul. 31, 2019 | Jul. 31, 2018 | Apr. 30, 2019
Designated as Hedge Instrument | Interest Rate Swap | Cash Flow Hedge |  |  |  |
Financial Instrument [Line Items] |  |  |  |
Derivative notional amount | $ 129.8 | $ 103.1 |  |
Derivative, Maturity Date | Jun. 15, 2021 |  |  |
Interest rate |  | 1.919% |  |
Not Designated as Hedge Instrument | Foreign Exchange Forward Contracts |  |  |  |
Financial Instrument [Line Items] |  |  |  |
Foreign currency gains (losses) |  | $ (1.6) | $ 0.1 |
Not Designated as Hedge Instrument | Foreign Exchange Forward Contracts | Other Accrued Liabilities | Derivatives Purchased |  |  |  |
Financial Instrument [Line Items] |  |  |  |
Derivative notional amount |  | 69.4 |  | $ 51.4
Not Designated as Hedge Instrument | Foreign Exchange Forward Contracts | Other Accrued Liabilities | Derivatives Sold |  |  |  |
Financial Instrument [Line Items] |  |  |  |
Derivative notional amount |  | $ 66.7 |  | $ 40.0

X
- Definition Financial Instrument [Line Items] + References No definition available. + Details
Name: | kfy_FinancialInstrumentLineItems
Namespace Prefix: | kfy_
Data Type: | xbrli:stringItemType
Balance Type: | na
Period Type: | duration

X
- Definition Fixed interest rate related to the interest rate derivative. + References No definition available. + Details
Name: | us-gaap_DerivativeFixedInterestRate
Namespace Prefix: | us-gaap_
Data Type: | num:percentItemType
Balance Type: | na
Period Type: | instant

X
- Definition Amount of realized and unrealized gain (loss) of derivative instruments not designated or qualifying as hedging instruments. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 4CC -URI http://asc.fasb.org/extlink&oid=109980867&loc=SL109998890-113959 Reference 2: http://fasb.org/us-gaap/role/ref/legacyRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 4C -Subparagraph (e) -URI http://asc.fasb.org/extlink&oid=109980867&loc=SL5624171-113959 + Details
Name: | us-gaap_DerivativeInstrumentsNotDesignatedAsHedgingInstrumentsGainLossNet
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | credit
Period Type: | duration

X
- Definition Date the derivative contract matures, in CCYY-MM-DD format. + References No definition available. + Details
Name: | us-gaap_DerivativeMaturityDates
Namespace Prefix: | us-gaap_
Data Type: | xbrli:dateItemType
Balance Type: | na
Period Type: | duration

X
- Definition Nominal or face amount used to calculate payment on derivative. + References Reference 1: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 1B -URI http://asc.fasb.org/extlink&oid=109980867&loc=SL5580258-113959 Reference 2: http://www.xbrl.org/2009/role/commonPracticeRef -Publisher FASB -Name Accounting Standards Codification -Topic 815 -SubTopic 10 -Section 50 -Paragraph 1A -Subparagraph (d) -URI http://asc.fasb.org/extlink&oid=109980867&loc=SL5579245-113959 + Details
Name: | us-gaap_DerivativeNotionalAmount
Namespace Prefix: | us-gaap_
Data Type: | xbrli:monetaryItemType
Balance Type: | na
Period Type: | instant

X
- Details
Name: | us-gaap_HedgingDesignationAxis=us-gaap_DesignatedAsHedgingInstrumentMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=us-gaap_InterestRateSwapMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentsGainLossByHedgingRelationshipAxis=us-gaap_CashFlowHedgingMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_HedgingDesignationAxis=us-gaap_NondesignatedMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_DerivativeInstrumentRiskAxis=us-gaap_ForeignExchangeForwardMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_BalanceSheetLocationAxis=kfy_OtherAccruedLiabilitiesMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TradingActivityByTypeAxis=kfy_DerivativesPurchasedMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |

X
- Details
Name: | us-gaap_TradingActivityByTypeAxis=kfy_DerivativesSoldMember
Namespace Prefix: |
Data Type: | na
Balance Type: |
Period Type: |