Annual report pursuant to Section 13 and 15(d)

Subsequent Events - Monthly Distributions Declared by Company's Board of Directors (Detail)

v2.4.1.9
Subsequent Events - Monthly Distributions Declared by Company's Board of Directors (Detail) (USD $)
0 Months Ended
Jan. 13, 2015
Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Record Date Jan. 23, 2015
Payment Date Feb. 03, 2015
Payable to the Holders of Records During the Month January
Subsequent Event A [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Record Date Feb. 18, 2015
Payment Date Feb. 27, 2015
Payable to the Holders of Records During the Month February
Subsequent Event B [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Record Date Mar. 20, 2015
Payment Date Mar. 31, 2015
Payable to the Holders of Records During the Month March
Subsequent Event C [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1250000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Subsequent Event [Member] | Common Stock [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.3750000us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementEquityComponentsAxis
= us-gaap_CommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Senior Common Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Payment Date Feb. 06, 2015
Senior Common Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Payment Date Mar. 06, 2015
Senior Common Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.0875us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Payment Date Apr. 07, 2015
Senior Common Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.2625us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= good_SeniorCommonStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series A Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series A Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series A Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1614583us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series A Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4843749us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesAPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series B Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series B Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series B Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1562500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series B Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4687500us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesBPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember
Series C Preferred Stock [Member] | Subsequent Event A [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventOneMember
Series C Preferred Stock [Member] | Subsequent Event B [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventTwoMember
Series C Preferred Stock [Member] | Subsequent Event C [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.1484375us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= good_SubsequentEventThreeMember
Series C Preferred Stock [Member] | Subsequent Event [Member]  
Dividends Payable [Line Items]  
Distribution per Share 0.4453125us-gaap_DividendsPayableAmountPerShare
/ us-gaap_StatementClassOfStockAxis
= us-gaap_SeriesCPreferredStockMember
/ us-gaap_SubsequentEventTypeAxis
= us-gaap_SubsequentEventMember