第4話「外壁防衛と、合成の夜」
鐘が三度、短く鳴り、最後に長くうなる。
それが、ルミナで“外壁へ”の合図だ。
昼から市中を走り回っていた男たちが、家から矢筒を、店から油壺を、納屋から古い包帯の束を抱えて広場へ出てくる。女たちは干し肉と硬いチーズをリネンの布に包み、子どもは水袋を握って列に並ぶ。
――だが、集まったものは、どれも半端だった。
《倉庫:ヒートマップ表示》
《矢:シャフト在庫 ○/矢尻 ○/矢羽 ×(不足)》
《油:新油 △(少量)/古油 ○(劣化)/燃焼安定剤 ×》
《包帯:枚数 ○/衛生 ×(未消毒)》
《携行食:パン屑粉 ○/硬質チーズ △/塩 ○》
矢羽の空洞が赤く脈を打ち、油の劣化ゲージにうっすら黄が走る。包帯の衛生タグは“警告”。
俺は広場の片隅に臨時の作業台を置き、手前の箱を開いた。蔦布――薄くてしなやかな、路地の蔓から作った布だ。
「矢羽の代用、いける?」
リナが矢を一本抜き、矢柄を指先で弾く。音の高さで重心を測っている。
「いける」俺は即答した。「蔦布をV字に折り、矢柄へ螺旋巻き。空気の整流で安定を取る。鳥羽ほどの精度は出ないが、ばらつきは減る」
《ユーティリティ:簡易治具出庫》
《治具:蔦布矢羽治具×3(Vカット・螺旋ガイド)/巻締め糸×多数》
治具を机に固定し、少年の手にも扱えるテンポで説明する。
「この線の位置で折って、このガイドに沿って巻く。結び目はここ。矢羽は“揃える”より“揃え続けられる”仕組みが大事」
少年が頷く。隣でリナがサンプルを引き抜き、空へ放った。蔦布の螺旋が空気を掴み、矢は素直に直進して的の藁束を射抜く。
「いける。……というか、真っ直ぐが気持ち悪いくらいに真っ直ぐ」
「“真っ直ぐ”は、誰にとってもご褒美だ」
油の箱を開ける。古油は酸化で臭いが立ち、炎が短い。新油は貴重で量が少ない。
「ブレンドで行く。古油七、新油三。燃焼時間は伸びる。匂いは薬草でマスク」
《合成:油ブレンド(古7:新3)→燃焼時間+22%(推定)》
《添加:ローズマリー粉末少量(匂い軽減・炎安定)》
次に、包帯の山へ。くすんだ白が山脈のように積まれている。
「不衛生のまま巻けば、勝っても死ぬ」
リナが頷く。「煮る?」
「煮る、干す、粉を振る」
《衛生プロトコル:煮沸(十分)→乾燥→薬草粉末(タイム+セージ)》
《出庫:共同釜×2/乾燥架×4/薬草粉末×規格袋》
熱気と薬草の匂いが混ざり合い、広場の空気が少しだけ“医療の匂い”を帯びていく。
俺はその合間で、もう一つの箱を開いた。透明な小瓶――口は厚く、胴は薄い。
「それは?」
「携行火瓶。割れると一定温度で燃える。**“延焼ではなく点燃”**に特化。味方の退路を焼かないための火」
《合成:携行火瓶(小)》
《仕様:着弾割(高)、燃焼温度 安定、持続 30〜40秒、風影響 中、味方識別タグ(青光)付与》
リナがひとつ手に取り、重さを確かめて頷く。
「軽い。狙える」
「火は軽く、責任は重く」
彼女は口の端を上げた。
「あなた、ほんと“後ろの剣”。――ねえ、もう前線に出てもいいよね?」
「前に立たせるために、後ろに立つ」
「それ、名言帳に書いとく」
《補給メニュー:外壁用》
《矢(蔦布羽):120/携行火瓶:80/包帯キット(滅菌水付):60/携行食(パン屑粉+塩+水袋):100》
《分配:外壁北・西・南=4:3:3(偵察情報反映)》
午後の日差しが傾いて、影が長く伸びる。風向きは南から北へ移ろい、外壁の上に小さな黒点が幾つも見え隠れし始めた。
魔獣の群れは、草の波と同じリズムでやってくる。
外壁の階段は、石がすり減って角が丸い。上に立つと、街が掌の上に広がる。屋根、煙突、洗濯物。日暮れの色がそれらを薄い赤に塗り、遠くの丘の影を濃くする。
外には、灰色の平野。草が風に撫でられて逆流し、その間を、背の低い黒い影が走る。鼻先の長い犬型、甲殻を背負った亀型、草食獣に取り憑いた寄生体の変異個体――混ざりものの群れ。
「数、四十から五十。大型、三」
見張りの男が視筒を外し、声を張る。
外壁上にはすでに武装した市民が並び、矢を握る手には汗が浮き、口には乾いた唾が張り付いている。
「補給、遅らせろ」
背後から、軽い声。
振り返ると、襟元に商会の印を光らせたヴァルスが腕を組んで立っていた。
「“供給の権限”は商会とギルドが持つ。勝手な配布は混乱を招く」
「混乱は、空の矢筒から生まれる」
「規則は規則。今日の指揮権はギルド。出撃の号令が出るまで、補給は控えろ」
ヴァルスは、遅らせることの効果を知っている。弓兵が一度空撃ちを始めれば、恐怖が早く回る。恐怖は人の舌を乾かし、指を冷たくする。
俺は倉のUIを開いた。
《規約検索:ギルド・非常任務条項》
《該当:第四十七条「非常時における臨時物流の代行権」》
《要件:市長職または医師ギルド代表の同意/現場の危険度“高”以上》
石段の端に立つ市長が、眼鏡を押し上げる。額には薄い汗。
「……現場判断に委ねたい。うちは人の死を見たくない」
医師ギルドの代表――骨ばった女医が、短く頷いた。
「負傷者を“あとで治す”より、“いま増やさない”」
俺は書板に二人の印を受け取り、ヴァルスの目の前で掲げる。
「臨時物流本部を設立する。非常時の代行権を行使する」
ヴァルスの笑みが、薄く、冷たく歪んだ。
「紙切れで勝てると、思うなよ」
「紙は勝たない。補給が勝たせる」
《臨時物流本部:起動》
《ノード:北壁・西壁・南壁/小倉=各5》
《供給線:階段口→上段→弓列→前衛→救護》
《優先順位:矢・火瓶・包帯・水》
ヴァルスが舌打ちを残して去るのを見届け、俺は手首の布をきゅっと結び直した。
「リナ、北壁に“火の目”を」
「了解」
戦闘は、いつだって突然始まる。
最前列の指が弦を引き、最初の蔦布矢羽が夕暮れの空に飛ぶ。次いで二射、三射。矢は光の筋を描き、犬型の肩に、甲殻の隙間に突き刺さる。
蔦布の螺旋は、“下手でも狙える”を実現する。弓兵のばらつきは縮まり、命中率がじわりと上がる。
「命中、良!」
見張りの声が一段高くなる。
逆に、敵の足は速い。外壁の根元まで駆け寄ると、手を、爪を、角を壁に突き立て、ずるずると這い上がる。
「火、前へ!」
リナの声が、乾いた空気を切り裂く。
前衛の投擲手が、携行火瓶を受け取り、息を合わせて落とす。
瓶は割れる。ぱん、と乾いた音。次の瞬間、熱が“点”で膨らみ、青い光が一瞬揺らめく。
味方識別タグが、周囲の味方の視界にだけ“ここは味方の火”を示す。前衛は焦らない。退かない。
炎は風に踊り、敵の爪を焼き、登攀の列を崩す。
「いける……いける!」
弓兵の声に、はじめて昂揚が混じる。
だが、戦いに“いける”という言葉は毒でもある。
甲殻の大きな影が、外壁に横から取り付いた。甲羅の縁から発射された粘液が、弓兵の足元を固める。二人がひっくり返り、矢が空へ無駄に消える。
「救護、上段!」
俺はその声を待っていた。
《出庫:包帯キット(滅菌水付)×4/足場板(短)×4》
《配布先:北壁・弓列2→3→4》
救護係が受け取り、膝と肘を素早く固定し、滅菌水で粘液を拭い落とす。血の匂いが一気に濃くなるのを、匂いマスクが薄める。
「持ちこたえろ。板、ここ!」
足場板が弓列の穴を埋め、列が戻る。
リナは、その隙に前へ出た。
彼女は“剣の暴力”を信じていない。だが“必要の順位”が剣を必要とするとき、躊躇はない。
短剣が、炎の残光を吸って走る。犬型の喉を裂き、甲殻の関節に差し込み、寄生体の眼を突く。
「リナ、三時方向、登攀!」
「見えてる!」
呼吸と呼吸、心拍と心拍の間を縫うように、彼女は動く。
――俺は、彼女を“前に立たせるために”、後ろに立つ。
《倉庫:消費推移表示》
《矢(蔦布):残 84→63→51》
《火瓶:残 80→65→52》
《包帯キット:残 60→54→42》
《水袋:残 100→91→79》
《推奨:北壁へ矢+10/西壁へ火瓶+12/南壁へ包帯+8》
俺は小倉の担ぎ手に指示を飛ばし、階段口で受け渡しを繰り返す。“同じ袋、同じ重さ、同じ場所”――規格化は、疲労の累積を遅らせ、手順の誤りを減らす。
「北に矢、十!」
「受け取った!」
言葉が短くなり、動きが滑らかになる。戦線は**“慣れ”**を獲得していく。
しかし、慣れが通用しないものが、ひとつ。
――大型だ。
外壁の中ほどで、影が立った。
巨躯。牛の胴体に、岩のような皮膚。前足の先は人の手に似て、石の隙間に指をねじ込んで登る。牙は短いが太い。
「石掴みだ!」
見張りの声が裏返る。
矢は通らない。火は甲皮で弾かれる。
巨体は、人を押しつぶすために設計された機械のように、確実に壁へ上がってくる。
「下がれ!」
前衛が後ろへずれる。弓兵が通路を開け、救護が退路を確保する。
リナが前に出る準備をしたとき、俺は首を振った。
「待て」
「でも――」
「非殺で落とす」
倉の奥に、整頓された重みがある。
《テンプレート:落石バリア(小)》
《内容:石材パレット×3/楔×多数/土嚢×6/簡易支柱×4》
《設置:外壁上・狭路→足場崩し→退路確保》
俺は座標を指定した。
外壁の上、巨体が指をかけた二段上。
どん、と世界が一度だけ低く鳴り、石材パレットが“そこに”置かれる。並べて二つ。少しずらして楔を打ち、支柱で“倒れやすい角度”を作る。
「リナ、合図で左へ!」
「いつでも!」
巨体の指が、石の間に潜り込む。前足の筋肉が盛り上がる。
「いま」
リナが左へ跳ぶ。俺は支柱を抜いた。
石材が落ちる。
叩きつけるのではない。“道を、悪くする”ために置いた石は、巨体の足場を奪うように崩れ、指を踏み外させ、体重を前へ滑らせる。
重力は、最強の味方だ。
巨体は低い声で呻くと、ずるずると壁から剥がれ、落ちた。
地面に激突する音は、破砕ではなく、湿った衝撃。
「落下確認!」
「追撃不要! 退け!」
外壁上の空気が、一度、甘い匂いに変わった。安堵の匂い。
だがすぐに酸っぱい匂いが混ざる。疲労の匂いだ。
――もうひと息、持たせる。
《合成:火瓶(改)→持続延長・燃焼温度微増》
《矢:蔦布スリット改(横風補正)→的中率+5%(推定)》
《包帯:規格キットの配布演習(救護要員にタスク割当)》
夜の色が濃くなる。
炎の青が、弓の弦が、救護の白布が、外壁の上で交互に点滅する。
戦は、続けるほどに事務になる。
事務を高速で回すのが、倉の仕事だ。
消費推移は緩やかに、だが確実に、勝ちへ傾く曲線を描き始めた。
《残:矢 17/火瓶 9/包帯 14/水袋 23》
《敵活動:散発化》
《撤退兆候:有》
最後の数分は、静かな圧力だった。
魔獣たちは各所で火に追われ、水に跳ねられ、石に阻まれ、**“登るたびに落ちる”**を繰り返す。
やがて草の海に黒い背が流れ、遠ざかる。残ったのは、焦げた匂いと、血と、石の粉。
戦いは、辛勝だった。
外壁の上で、倒れ込む者、笑う者、泣く者。
救護所には白い布が列をなし、鍛冶屋ガレンが折れた柄を抱えて黙って座り込み、リナは息を整えながら水を飲む。頬には煤、袖には血。
市長が階段を上がってきて、眼鏡の奥の目を赤くしていた。
「ありがとう。……あなたが、ここを回した」
「回したのは、在庫だ。運んだのは、あなたたちだ」
市長は苦笑した。「そういう言い方をするところが、あなたらしい」
ヴァルスは、遠巻きにそれを見ていた。笑顔は作っている。だが頬の筋肉が引きつっている。
「供給の権限」
彼の自慢の言葉は、今夜だけは、空だった。
「臨時物流本部は、明日の昼まで存続させる。負傷者の搬送、在庫の棚卸し、汚染水の再遮断」
俺は静かにそう告げ、救護の列に加わった。勝った後に“管理”を怠ると、負けに変わる。
包帯キットの番号を読み上げ、紙に印を付け、返却予定を記録する。
《貸与:包帯キット No.12/返却時刻:夜明け》
《再使用可否:可(布交換)》
リナが俺の袖を引く。「肩、縫ったら?」
「俺じゃない」
「あなたの心」
「心には倉は効かない」
「じゃあ、私が効かせる」
彼女は笑って、額に軽く拳を当てた。軽い痛みが、むしろ落ち着く。
夜更け。
広場に戻ると、火は小さくなり、人の影は長く伸びていた。
倉の奥で、何かが、こちらを見返した。
電灯の紐を引いたときのような、ほんの一瞬の“手応え”。
画面の暗がりに、鍵穴のような輪郭が浮かぶ。
《不明インターフェース:LOCK》
《表示:未開層(LOCKED)》
《注記:条件未達(基礎機能達成:保存・仕分け・合成・複製設置)》
鍵穴は、静かに呼吸しているようだった。
開け、と俺は心の中で言った。
返事はない。ただ、そこにあるという事実だけが、確かだった。
「カガミ」
背中から、リナの声。
「うん」
「今夜、あなたは前線に立たなかった」
「立たない役だ」
「でも、誰よりも“前”にいたよ。全員の背中の、もっと前」
彼女はそう言って、肩を小突く。
「偉そうにしてもいいのに」
「偉そうは、在庫を重くする」
彼女は吹き出して笑った。
「じゃあ、偉そうなのは私がやる」
「頼む」
ルミナは、ようやく夜を取り戻しはじめた。
風は冷たく、星は近い。
倉の鍵穴は、まだ静かに、こちらを見ている。
――この倉は、まだ開いていない層がある。
(つづく)




