200.勝連城

200.勝連城

続100名城

基本情報

住所 沖縄県うるま市勝連南風原3908
電話 098-978-7373
築城年 14世紀初頭

営業情報

開館時間 9:00~18:00
入場料 大人600円、中高生400円、小学生300円
休館日 年中無休

1. 勝連城の築城と初期の歴史

勝連城は14世紀初頭に英祖王統第二代国王・大成の五男である勝連按司によって築城されたと考えられています。ただし12世紀から13世紀頃には既に築城が始まっていたとする説もあります。城は沖縄本島中部の勝連半島の根元に位置する標高60mから100mの丘陵上に築かれ、南城(ヘーグシク)、中間の内、北城(ニシグシク)の3つの区域で構成されています。城の南側には南風原集落が広がり交易のための港を備え、北側は田地として穀倉地帯となっていました。

2. 城主の変遷と政治的位置

勝連城は勝連按司一世から始まり、阿麻和利に到るまで十代の城主により統治されました。勝連按司二世の娘は察度に嫁ぎ、察度が西威を倒して中山王国を建てると勝連も中山との結びつきを強め中興し栄えました。最後の城主となった阿麻和利は15世紀に海外貿易により勝連に繁栄をもたらし、琉球王国が安定していく過程で国王に最期まで抵抗した有力按司として知られています。阿麻和利は首里王府への反逆者として語り継がれていますが、首里王府編纂の歌集「おもろさうし」では「肝高(気高い)」と表現されています。

3. 城郭構造と築城技術

勝連城の城壁は自然の地形を巧みに利用しながら石灰岩の石垣をめぐらせた構造となっています。北西の最高部から一の曲輪、二の曲輪、三の曲輪、四の曲輪と各平場が階段状に低くなり、再び南東側の東の曲輪で高くなっています。総面積は11,897㎡で、自然の断崖を利用した難攻不落の城と言われながらも、その城壁は優雅な曲線を描き女性的な美しさを感じさせます。一の曲輪からは北は金武湾を囲む北部の山々やうるま市の離島を望むことができ、南は知念半島や久高島、護佐丸の居城であった中城城跡が一望できる景勝地となっています。

4. 発掘調査と学術的成果

勝連城跡の考古学的な発掘調査は1960年に始まり現在まで続けられており、城跡の崖下からは貝塚が発見され先史時代後期末から古代人の生活地として利用され、13世紀前後より城塞としての体裁を整えたと考えられています。2016年には2013年の遺構調査で発掘された金属製品の中に3世紀から4世紀頃に製造されたローマ帝国のコイン4点と17世紀頃のオスマン帝国の貨幣1点が確認され、14世紀から15世紀にかけての海上交易を通じて東アジア経由で流入したと考えられています。これは日本国内でローマ、オスマン帝国の貨幣が発見された初めての事例となります。

5. 史跡指定と歴史的評価

勝連城は1972年の沖縄本土復帰にともない日本国の史跡に指定され、2000年にはユネスコの世界遺産「琉球王国のグスク及び関連遺産群」の一つとして登録されました。2017年4月6日には続日本100名城の200番に選定されています。整備も昭和52年度より石積の修復工事を主とした整備が行われており、2021年には城跡のふもとにあまわりパークがオープンし、勝連城跡やうるま市の歴史や文化を学べる歴史文化施設が建設されました。中世琉球における海上交易の拠点として、また琉球統一過程における政治的緊張を物語る貴重な文化遺産として高く評価されています。

アクセスマップ

散歩記録

散歩記録準備中

御城印情報

御城印画像
価格: 500円
販売場所: あまわりパーク内観光案内所

スタンプ情報

スタンプ画像
設置場所: あまわりパーク歴史文化施設エントランス
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-