55.千早城

55.千早城

日本100名城

基本情報

住所 〒585-0051 大阪府南河内郡千早赤阪村大字千早1228
電話 0721-72-1447(千早赤阪村役場)
築城年 1332年(元弘2年/正慶元年)

営業情報

開館時間 見学自由
入場料 無料
休館日 なし

1. 千早城の歴史概要

千早城は1332年(元弘2年/正慶元年)に楠木正成が金剛山中腹の標高666mに築いた山城で、日本100名城の一つです。四方を深い谷に囲まれた天然の要害で、鎌倉幕府末期から南北朝時代にかけて約60年間楠木氏の詰城として機能しました。現在は国の史跡に指定されています。

2. 千早城の戦いと築城背景

楠木正成は後醍醐天皇の倒幕運動に呼応し、下赤坂城、上赤坂城とともに千早城を築きました。1333年の千早城の戦いでは、正成がわずか1000の兵で20万とも言われる鎌倉幕府軍を約100日間釘付けにし、その間に新田義貞が鎌倉を攻め幕府滅亡の一因となりました。

3. 城の構造と地形的特徴

千早城は金剛山西麓の尾根上にあり、北には北谷、南東には妙見谷、東は風呂谷があって四方を深い谷に囲まれています。城の背後のみが金剛山山頂に連なる要害の地で、22の連郭式曲輪で構成されています。現在でも本丸跡までの登城路は険しく、当時の難攻不落ぶりを体感できます。

4. 現在の千早神社と遺構

現在の本丸跡には千早神社が建ち、楠木正成・正行親子を祀っています。神社は1332年の築城時に城の鎮守として八幡大菩薩を祀って創建されたとされます。遺構として曲輪と空堀が残り、二の丸、三の丸跡なども確認できます。また「千早城跡五輪塔」は正成の供養塔と考えられています。

5. 楠木正成の奇策と戦術

千早城での籠城戦では、楠木正成が数々の奇策を用いました。櫓からの落石攻撃、十分な水と食料の事前確保、夜襲による挑発、わら人形を使ったおとり作戦など、知略を駆使して圧倒的な兵力差を覆した戦いは『太平記』に詳しく記されています。

6. 100名城スタンプと御城印

日本100名城スタンプは金剛山登山口近くの「金剛山 山の豆腐」(旧まつまさ)に設置されています。営業時間は9:00〜17:00、定休日は金曜日です。御城印も同店で300円で販売されており、楠木三城特別御城印セットなども用意されています。

7. アクセスと登城の心構え

南海高野線・近鉄長野線「河内長野駅」から南海バス「金剛山ロープウェイ前」行きで「金剛登山口」下車、徒歩約20〜30分です。登城口から本丸まで段差の大きな石段が続く険しい道のりで、歩きやすい服装と登山の心構えが必要です。

8. 楠木三城との関係

千早城は下赤坂城、上赤坂城とともに楠木三城を構成し、正成の城郭ネットワークの要でした。下赤坂城は前衛の城、上赤坂城が本城、千早城が詰城として機能し、それぞれが異なる役割を担って鎌倉幕府軍と対峙しました。

9. 南北朝時代の居城として

建武の新政以降、千早城は南朝方の楠木氏の居城となり、楠木正行、正儀、正勝と受け継がれました。1392年(明徳3年)に楠木正勝の時代に北朝方の畠山基国に攻められ落城し、61年に及ぶ歴史に幕を閉じました。

10. 周辺観光と見どころ

千早城周辺には楠木正成誕生地、道の駅ちはやあかさか、千早赤阪村立郷土資料館などがあります。また上赤坂城跡、下赤坂城跡とともに楠木正成ゆかりの史跡巡りが楽しめます。金剛山登山と合わせて訪れる観光客も多く、自然と歴史が調和した魅力的なエリアです。

アクセスマップ

御城印情報

御城印画像
価格: 300円
販売場所: 金剛山 山の豆腐

スタンプ情報

スタンプ画像
設置場所: 金剛山 山の豆腐(旧:まつまさ)
border-light); } .breadcrumb-nav { font-size: 0.9rem; color: var(--color-text-light); } .breadcrumb-nav a { color: var(--color-text); text-decoration: none; transition: color 0.3s ease; } .breadcrumb-nav a:hover { color: var(--color-accent); } .breadcrumb-nav span { margin: 0 0.5rem; color: var(--color-text-light); } .breadcrumb-nav .current { color: var(--color-text); font-weight: 600; } /* ヒーローセクション - 控えめなサイズ */ .castle-hero { background: var(--color-primary); color: white; padding: 1.5rem 0; border-bottom: 1px solid var(--color-border); } .hero-content { display: flex; align-items: center; justify-content: center; } .castle-title-box { text-align: center; border: 2px solid rgba(255, 255, 255, 0.3); padding: 1rem 2rem; border-radius: 0; background: rgba(255, 255, 255, 0.1); display: inline-block; } .castle-title { font-size: 1.8rem; font-weight: 600; margin: 0 0 0.5rem 0; line-height: 1.2; letter-spacing: 0.5px; } .castle-badge { background: var(--color-accent); color: white; padding: 0.3rem 0.8rem; border-radius: 0; font-weight: 500; font-size: 0.8rem; letter-spacing: 0.5px; display: inline-block; } .castle-badge.zoku100 { background: #27ae60; } /* 2カラムレイアウト */ .two-column-layout { background: var(--color-background); padding: 2rem 0; } .layout-wrapper { display: grid; grid-template-columns: 1fr 320px; gap: 3rem; max-width: 1200px; margin: 0 auto; } /* メインカラム */ .main-column { display: flex; flex-direction: column; gap: 2rem; } /* セクションヘッダー */ .section-header { margin-bottom: 1rem; } .section-title { font-size: 1.3rem; font-weight: 600; color: var(--color-text); margin: 0; padding-bottom: 0.5rem; border-bottom: 2px solid var(--color-border); background: none; } /* テーブル形式の情報表示 */ .info-table { width: 100%; border-collapse: collapse; margin-bottom: 1rem; background: var(--color-background); border: 1px solid var(--color-border-light); } .info-table th, .info-table td { padding: 0.8rem 1rem; text-align: left; border-bottom: 1px solid var(--color-border-light); } .info-table th { background: var(--color-background-alt); font-weight: 600; color: var(--color-text); width: 30%; font-size: 0.9rem; } .info-table td { color: var(--color-text); font-size: 0.9rem; } .info-table tr:last-child th, .info-table tr:last-child td { border-bottom: none; } /* コンテンツラッパー */ .content-wrapper { background: var(--color-background); padding: 1.5rem; border: 1px solid var(--color-border-light); line-height: 1.7; } .content-wrapper h2 { font-size: 1.4rem; font-weight: 600; color: var(--color-text); margin: 1.5rem 0 1rem 0; padding-bottom: 0.5rem; border-bottom: 1px solid var(--color-