待ち合わせ

現在このページの批評は中断しています。

:root {
    --timeScale: 1;
    --timeDelay: 0s;
}
 
/* Converting middle divider from box-shadow to ::before pseudo-element */
.anom-bar > .bottom-box { box-shadow: none!important; }
.anom-bar > .bottom-box::before {
    position: absolute;
    content: " ";
    width: 100%;
    height: 0.5rem;
    background-color: rgb(var(--black-monochrome, 12, 12, 12));
    transform: translateY(-0.74rem);
}
 
/* DIVIDER */
.anom-bar > .bottom-box::before {
    animation-name: divider;
    animation-duration: calc(0.74s * var(--timeScale));
    animation-delay: calc(0.1s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.32,.38,.39,.94);
    animation-fill-mode: backwards;
}
 
/* CLASSIFIED LEVEL BARS */
div.top-center-box  > * {
    animation-name: bar;
    animation-duration: calc(0.45s * var(--timeScale));
    animation-iteration-count: 1;
    animation-timing-function: ease-out;
    animation-fill-mode: backwards;
}
div.top-center-box > :nth-child(1) { animation-delay: calc(0.2s * var(--timeScale) + var(--timeDelay)); }
div.top-center-box > :nth-child(2) { animation-delay: calc(0.32s * var(--timeScale) + var(--timeDelay)); }
div.top-center-box > :nth-child(3) { animation-delay: calc(0.45s * var(--timeScale) + var(--timeDelay)); }
div.top-center-box > :nth-child(4) { animation-delay: calc(0.61s * var(--timeScale) + var(--timeDelay)); }
div.top-center-box > :nth-child(5) { animation-delay: calc(0.75s * var(--timeScale) + var(--timeDelay)); }
div.top-center-box > :nth-child(6) { animation-delay: calc(0.95s * var(--timeScale) + var(--timeDelay)); }
 
/* TOP TEXT */
div.top-left-box, div.top-right-box {
    clip-path: polygon( 0% -50%, 150% -50%, 150% 100%, 0% 100%);
}
 
div.top-left-box > *, div.top-right-box > * {
    position: relative;
    animation-name: bottomup;
    animation-duration: calc(0.65s * var(--timeScale));
    animation-delay: calc(0.5s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: ease-out;
    animation-fill-mode: backwards;
}
 
/*-----------------------------------*/
/*-----------------------------------*/
 
/* CONTAINMENT, DISRUPTION, RISK CLASSES */
div.text-part > * {
    clip-path: polygon( 0% 0%, 100% 0%, 100% 100%, 0% 100%);
    animation-name: expand2;
    animation-duration: calc(0.5s * var(--timeScale));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.12,.41,.27,.99);
    animation-fill-mode: backwards;
}
div.text-part > :nth-child(1) {
    animation-name: expand1;
}
div.text-part > :nth-child(1) { animation-delay: calc(0.6s * var(--timeScale) + var(--timeDelay)); }
div.text-part > :nth-child(2) { animation-delay: calc(0.75s * var(--timeScale) + var(--timeDelay)); }
div.text-part > :nth-child(3) { animation-delay: calc(0.86s * var(--timeScale) + var(--timeDelay)); }
 
div.main-class::before, div.main-class::after {
    animation-name: iconslide;
    animation-duration: calc(0.45s * var(--timeScale));
    animation-delay: calc(0.8s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.12,.41,.27,.99);
    animation-fill-mode: backwards;
}
 /* BOTTOM TEXT */
div.main-class > *,  div.disrupt-class > *, div.risk-class > * {
    white-space: nowrap;
    animation-name: flowIn;
    animation-duration: calc(0.42s * var(--timeScale));
    animation-delay: calc(0.75s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: ease-out;
    animation-fill-mode: backwards;
}
 
/*-----------------------------------*/
/*-----------------------------------*/
 
/* DIAMOND */
div.arrows {
    animation-name: arrowspin;
    animation-duration: calc(0.7s * var(--timeScale));
    animation-delay: calc(0.6s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.12,.41,.27,.99);
    animation-fill-mode: backwards;
}
 
div.quadrants > * {
    animation-name: fade;
    animation-duration: calc(0.3s * var(--timeScale));
    animation-delay: calc(1.4s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.12,.41,.27,.99);
    animation-fill-mode: backwards;
}
 
div.top-icon, div.right-icon, div.left-icon, div.bottom-icon {
    animation-name: nodegrow;
    animation-duration: calc(0.4s * var(--timeScale));
    animation-delay: calc(1.4s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.12,.41,.27,.99);
    animation-fill-mode: backwards;
}
div.diamond-part {
    clip-path: polygon( -10% 0.37%, 120% 0.37%, 120% 100%, -10% 100%);
    animation-name: diamondBorder;
    animation-duration: calc(0.8s * var(--timeScale));
    animation-delay: calc(0.5s * var(--timeScale) + var(--timeDelay));
    animation-iteration-count: 1;
    animation-timing-function: cubic-bezier(.32,.38,.39,.94);
    animation-fill-mode: backwards;
    will-change: box-shadow;
}
 
/* MOBILE QUERY */
@media (max-width: 480px ) {
    .anom-bar > .bottom-box::before {
        display:none;
    }
    .anom-bar > .bottom-box {
        box-shadow: 0 -0.5rem 0 0 rgb(var(--black-monochrome, 12, 12, 12))!important;
    }
    div.top-center-box  > * {
        animation-name: bar-mobile;
        animation-duration: calc(0.9s * var(--timeScale));
    }
    div.top-center-box > :nth-child(1) { animation-delay: calc(0.1s * var(--timeScale) + var(--timeDelay)); }
    div.top-center-box > :nth-child(2) { animation-delay: calc(0.2s * var(--timeScale) + var(--timeDelay)); }
    div.top-center-box > :nth-child(3) { animation-delay: calc(0.3s * var(--timeScale) + var(--timeDelay)); }
    div.top-center-box > :nth-child(4) { animation-delay: calc(0.4s * var(--timeScale) + var(--timeDelay)); }
    div.top-center-box > :nth-child(5) { animation-delay: calc(0.5s * var(--timeScale) + var(--timeDelay)); }
    div.top-center-box > :nth-child(6) { animation-delay: calc(0.6s * var(--timeScale) + var(--timeDelay)); }
 
}
 
/*--- Motion Accessibility ---*/
@media screen and (prefers-reduced-motion: reduce) {
    div.anom-bar-container { --timeScale: 0!important; }
}
 
/*-------------------------*/
 
@keyframes divider {
    from { max-width: 0%;  }
    to { max-width: 100%; }
}
 
@keyframes bar {
    from { max-width: 0%; }
    to { max-width: 100%; }
}
@keyframes bar-mobile {
    from { max-height: 0%; }
    to { max-height: 100%; }
}
 
@keyframes bottomup {
    from { top: 100px; }
    to { top: 0; }
}
 
@keyframes expand1 {
    from { opacity: 0; clip-path: inset(0 calc(100% - 0.75rem) 0 0); }
    to { opacity: 1; clip-path: inset(0); }
}
@keyframes iconslide {
    from { opacity: 0; transform: translateX(-5rem); }
    to { opacity: 1; transform: translateX(0); }
}
 
@keyframes expand2 {
    from { opacity: 0; width: 1%; }
    to { opacity: 1; width: calc(100% - 0.25rem); }
}
@keyframes fade {
    from { opacity: 0; }
    to { opacity: 1; }
}
 
@keyframes flowIn {
    from { opacity: 0; transform: translateY(20px); }
    to { opacity: 1; transform: translateY(0); }
}
 
@keyframes arrowspin {
    from { clip-path: circle(0%); transform: rotate(135deg); }
    to { clip-path: circle(75%); transform: rotate(0deg); }
}
@keyframes nodegrow {
    from { transform: scale(0);}
    to {  transform: scale(1);}
}
@keyframes diamondBorder {
    from { box-shadow: -0.5rem -20rem 0 0 rgb(var(--black-monochrome, 12, 12, 12)); }
    to { box-shadow: -0.5rem 0 0 0 rgb(var(--black-monochrome, 12, 12, 12)); }
}
/* source: http://ah-sandbox.wikidot.com/component:collapsible-sidebar-x1 */
 
#top-bar .open-menu a {
        position: fixed;
        bottom: 0.5em;
        left: 0.5em;
        z-index: 15;
        font-family: san-serif;
        font-size: 30px;
        font-weight: 700;
        width: 30px;
        height: 30px;
        line-height: 0.9em;
        text-align: center;
        border: 0.2em solid #888 !important;
        background-color: #fff !important;
        border-radius: 3em;
        color: #888 !important;
        text-decoration: none!important;
}
 
@media (min-width: 768px) {
 
    .mobile-top-bar {
        display: block;
    }
 
    .mobile-top-bar li {
        display: none;
    }
 
    #main-content {
        max-width: 708px;
        margin: 0 auto;
        padding: 0;
        transition: max-width 0.2s ease-in-out;
    }
 
    #side-bar {
        display: block;
        position: fixed;
        top: 0;
        left: -25em;
        width: 17em;
        height: 100%;
        background-color: rgb(184, 134, 134);
        overflow-y: auto;
        z-index: 10;
        padding: 1em 1em 0 1em;
        -webkit-transition: left 0.5s ease-in-out 0.1s;
        -moz-transition: left 0.5s ease-in-out 0.1s;
        -ms-transition: left 0.5s ease-in-out 0.1s;
        -o-transition: left 0.5s ease-in-out 0.1s;
        transition: left 0.5s ease-in-out 0.1s;
    }
 
    #side-bar:after {
        content: "";
        position: absolute;
        top: 0;
        width: 0;
        height: 100%;
        background-color: rgba(0, 0, 0, 0.2);
 
    }
 
    #side-bar:target {
        display: block;
        left: 0;
        width: 17em;
        margin: 0;
        border: 1px solid #dedede;
        z-index: 10;
    }
 
    #side-bar:target + #main-content {
        left: 0;
    }
 
    #side-bar:target .close-menu {
        display: block;
        position: fixed;
        width: 100%;
        height: 100%;
        top: 0;
        left: 0;
        background: rgba(0,0,0,0.3) 1px 1px repeat;
        z-index: -1;
    }
}
評価: 0+x
blank.png

 渋谷、スクランブル交差点。

 普段なら、この時間帯は人でごった返している。しかし、今は私の他に歩く人はいない。

 待ち合わせ場所として活躍し続けた、かわいらしい秋田犬の像。今では寂しく雪を被り、二度と来ない誰かを待ち侘びている。





 しんしんと雪が降る冷たい渋谷の街を、私は一人、進んでいた。1歩進む度に、足元に雪の触感が感じられる。

 渋谷駅から5分ほど歩いた所に、目的の場所はあった。

 サイト-81A06。つい一年前に財団が買い取った、小さなサイトだ。オブジェクトの収容や研究は行われず、財団職員、主にフィールドエージェントが立ち寄るための隠れ家になっている。

 ────もっとも、今では財団職員など居ないだろう。私の同僚たちも、もはや生死すらわからない。

 小さな店が集まる路地、周りの店に埋もれて目立たない小さな扉に手をかける。重い雰囲気の場に相応しくない、ドアベルの軽やかな音。



「──あ」



 建物の奥から、聞き慣れた声がした。

 まさか、と思って声の方向を見ると、そこには。

 1人の同僚が居た。



「よ、来たんだね」

 ワインに口を付けながら、彼女はそう言った。

「あんたこそ、なんで今更こんなとこに」

「最近来てなかったからさ。最期に1回はと思って。茜音は?」

「……ここの車庫に、車停めてたから」

 そう言うと、彼女は途端にきょとんとした顔になった。

「財団の車だよね? なんでわざわざ」



「仕事だからだよ」



「え……仕事……?」

 理解が追いついていない彼女をよそに、私は壁に掛けてあった車のキーを手に取った。

「じゃ。またね」

 そう言い残し、車庫に繋がる扉を開ける。



 ────後ろから、腕を掴まれた。






「ねぇ、連れてってよ」


 確保、収容、保護。

 財団の3つの理念である。

 私は、この"確保"の部分に主に携わる職員。

 財団施設外を活動場所とし、異常存在の初期捜索などを務める、フィールドエージェントと呼ばれる職種だった。

 ──そう、だった。



 西暦2███年。

 地球は人類の知りうる限りで2度目の、大規模な氷河期に入った。

 初期は地球温暖化回復の兆しだとメディアが囃し立てた。しかし、その考えが如何に浅はかなものであったかは、留まるところを知らない気温低下が教えてくれた。

 世界中の学者が、この気候変動の原因を探し求めた。勿論、ここまで急速な気候変動には何らかの異常性が関連している可能性が高く、財団もその研究に参加した。

 世界トップクラスの科学者達が導き出した答えは────



 "正常"。



 これが正常な気候変動であるなら、正常性保護機関たる財団に出る幕はない。

 人類が滅びゆくなか、粛々と異常存在を確保し、収容し、保護し続けた。

 しかし、それすら長くは続かなかった。

 気温低下により死亡する職員も増え、財団は徐々にその機能を失い始めていた。既に日本だけで30個近くの収容施設が致命的な収容違反を起こして機能停止、多くのアノマリーが野に放たれた。



 そして昨日。

 全ての財団職員に、O5評議会から最後の命令が下された。

 それはO5らしく、長く威厳のある文章だったが、要約するとこういうことだった。



「好きに生きろ」。


 事実上のSCP財団解散宣言。



 ある者は首を吊り、ある者は家族に会いにゆき、ある者は最期まで収容施設でアノマリーと戦い続けた。



 では、私は?



 その答えを出すために、ここに来た。



「久し振りだね、2人でドライブなんて」

 助手席に座る彼女は言った。

「……うん、そうだね」

 ドライブ、なんて気楽なものではない。財団が機能していない、凍てついた東京の街。何処からアノマリーが飛び出してくるか分からない状況だ。だが、それを口に出すのはやめておいた。

「何処に行くの?」

「決めてないよ」

「決めてないのに車取りに来たの?」

「あんただって理由なく81A06に居たでしょ」

「だから、最期にあそこに行きたかったって」

「……そっか」

 彼女とのやり取りの中で、私は自分が車を取りに来た理由を考えていた。

 あの時は"仕事"と言ったが……正直なところ、自分でも理由は分からなかった。

 備え付けのカーナビに目をやっても答えは見つからない。GPSもネットも死んでいる。

 目的地を決めるわけでもなく、ただ車を走らせた。答えを求めるように。




「え……ねぇあれ……」



 その言葉に反応して、彼女が指さす方を見ると……。そこには、フィールドエージェントとして各地を飛び回ってきた私に見覚えのないものが存在していた。

 銀色の、円筒型のもの。

 そこそこ高いようだが、その頂点はへし折られたかのように鉄骨が剥き出しになっていた。

 あれは……。

「え、スカイツリー……?」

 紛れもなく、既に電波を発していない東京スカイツリーだった。

 当然ながら、日本一高い塔が真ん中でへし折れるような地震や台風が来た覚えはない。

 つまり、原因は。



「近くに……いる」



 アノマリー。何らかの異常性を以てして破壊されたと考えるのが妥当だろう。

「……近づくの?」

「うん」

 スカイツリーを真ん中からへし折るとなれば、該当するアノマリーは現実改変者か、若しくはシンプルな馬鹿力の持ち主だろう。

 だが……私は財団職員だ。そこに異常存在が在る限り、最善を尽くして収容を試みる。

 助手席に座る彼女は、同じことを考えているようだ。



 私はスカイツリーの方向にハンドルを切った。



 スカイツリーが、雪が降る中でも鮮明に見えるようになってきた頃。

 進行方向に、それは見えた。



 積もった白い雪に、目立つ鮮やかな赤色。




「血…………?」




 私がそれを見てから1秒も経たないうちに起こった、瞬く間の出来事。

 右側、死角から"何か"が飛び出してきた。真っ黒な"何か"。私がそれが何であるかを認識するよりも早くそれは消えた。次の瞬間、体に強い衝撃が走る。

 アノマリーだ。尋常な速度ではなかった。

 すぐに、金属が割れるバリバリという音が聞こえてくる。真上。

 途端、視界がひっくり返った。

 真っ白な地面が頭上へ。どんより重い空が足元へ。

 私は反射的に、窓ガラスを脱出用ハンマーで叩き割っていた。シートベルトを外して体を捻る。アノマリーの真っ黒な腕は、間一髪でシートに突き刺さった。

 すぐさま護身用の9mm拳銃を抜いて1発。血液のようなものが吹き出し、腕が引き抜かれる。

 続いてフロントガラスにも5発。フロントガラスは防弾仕様だが、衝撃でヒビが入っていたため近射で割れた。

 5発のうち数発が命中したアノマリーは、怯む様子を見せた。連続で被弾させれば少しは弱体化できるようだ。

 割れた窓から流れ込む、冷たい外気が肌を刺す。

 残弾数は10発。更に予備弾倉が3つある。

 次の動きを考えていた時……アノマリーの姿が、消えた。





 再び強い衝撃が走り、視界が暗転した。






 視界が戻った時、私はまだ車の中に居た。

 全身がズキズキと痛む。状況は変わっていないようだ。

 霞む視界でも、目の前にアノマリーが居ることは分かった。拳銃は見当たらない。



 ここまでか。わざわざ車でアノマリーに遭遇しに行って死ぬとは、惨めな最期だ。



 …………そうだ。彼女は?

 気になって助手席に目をやる。そこに彼女の姿は無かった。






 あるのは、おびただしい量の血の海だけ。



 その瞬間、想定外のことが起きた。

 私を殺す筈だったアノマリーは……突如、衝撃を受けたように真横に吹き飛んだ。

 そして、その反対方向に居たのは。



「…………三園!?」

「よう糸川、なんでこんなとこに居るんだよ」

 そこに居たのは、もう数年会っていない嘗ての同僚だった。今は機動部隊の隊長をやっていると聞く。確か────

「"都の狩人"、東京スカイツリー付近で未知のアノマリーと遭遇! 現在戦闘中です!」

 隊員たちは、短機関銃サブマシンガンでアノマリーに効率よく銃弾の雨を浴びせている。

 機動部隊た-9("都の狩人")は首都圏での戦闘に特化した部隊だ。任せておけば大丈夫だろう。

 近くに落ちていた9mm拳銃を拾い上げた。ホルダーに仕舞いながら、車へと向かう。彼女が座っていた助手席を確認したが、やはり血の海の他に何も無かった。



「……お疲れ様」

 アノマリーの終了作戦が終わった三園に、私は声を掛けた。

「おう、お前こそお疲れ。……で、何でこんなとこに居るんだよ」

「……ちょっとね。やるべきことが分からなくなった」

 そう言うと、彼は察してくれたようだ。

 財団職員の殆どが、同じ想いを持っているのだろう。

 それは、三園も、ひょっとしたら彼女も、例外ではないのかもしれない。

「……三園は……なんでまだ続けてるの?」

 訊くと、彼は暫く考え込んでから、こう答えた。



「仕事だから……かな」

「仕事……?」

「ああ。俺は機動部隊長になってからずっとアノマリーと戦ってきて……それが人類の為になるって信じてた。……本部のお偉いさんが解散宣言をしたとしても……俺はこの仕事を続けたい」

 彼の言葉には、確かな信念が感じられた。戦闘服の肩に描かれた財団のロゴが、妙に眩しく感じられた。

「────それに、ここまで俺に着いてきてくれる馬鹿共がいっぱい居るしな! こいつらが居る限り、俺はいくらでも戦える!」

 彼は後ろの隊員達を指さした。

「俺は何処までも着いていきますよ、隊長!」

「どうせ他にやること無いんですから!」

 隊員達の暖かな声。彼らからは、降り積もる雪すらも解かせそうな熱気が感じられた。




 "仕事"、か────。




 思ったよりも答えは近くにあったようで、笑ってしまう。



「三園」

「ん?」

「車、余ってる?」

「ああ、運転手が死んで使い道が無いやつが1台」

「それ、貸して」

 そう言うと、彼は一瞬だけ微笑み、胸ポケットから車のキーを取り出してこちらに投げ渡した。こいつはこういうところで人に好かれるのだろう。

「あの車だ」

 キーを受け取る。彼が指さした車は、市街戦に特化した小回りの効くコンパクトカー。



 隊員たちに短い別れの挨拶をして、車に乗り込んだ。

 シートに座り、鞄からもう二度と使うことは無いと思っていた、小型の機械を取り出す。

 財団のトランシーバー。例え電波が無くても通信できる特殊な機器。

 私は、頭に刻み込まれた8桁の番号をシーバーに入力した。彼ら、彼女らなら、まだこのシーバーを手放していない筈だと確信していた。



「────────────────────────」



 私は、シーバーの向こうの同僚たちに"待ち合わせ"の場所を伝えた。

 シーバーに薄く刻まれた財団のロゴが、その下の3つの理念確保、収容、保護を示す文字が、私に大きな勇気をくれる。

 一面銀世界の中、私は渋谷駅方面にハンドルを切った。

 目的地は、財団に入る前も、後も、いつもの待ち合わせ場所だったあの場所。






 スクランブル交差点には、何人が集まるだろうか。


jp tale 氷我記



ページ情報

執筆者: Kisaragi_326
文字数: 6009
リビジョン数: 11
批評コメント: 0

最終更新: 17 Aug 2023 07:46
最終コメント: 批評コメントはありません

ページコンソール

批評ステータス

カテゴリ

SCP-JP

本投稿の際にscpタグを付与するJPでのオリジナル作品の下書きが該当します。

GoIF-JP

本投稿の際にgoi-formatタグを付与するJPでのオリジナル作品の下書きが該当します。

Tale-JP

本投稿の際にtaleタグを付与するJPでのオリジナル作品の下書きが該当します。

翻訳

翻訳作品の下書きが該当します。

その他

他のカテゴリタグのいずれにも当て嵌まらない下書きが該当します。

コンテンツマーカー

ジョーク

本投稿の際にジョークタグを付与する下書きが該当します。

アダルト

本投稿の際にアダルトタグを付与する下書きが該当します。

既存記事改稿

本投稿済みの下書きが該当します。

イベント

イベント参加予定の下書きが該当します。

フィーチャー

短編

構文を除き数千字以下の短編・掌編の下書きが該当します。

中編

短編にも長編にも満たない中編の下書きが該当します。

長編

構文を除き数万字以上の長編の下書きが該当します。

事前知識不要

特定の事前知識を求めない下書きが該当します。

フォーマットスクリュー

SCPやGoIFなどのフォーマットが一定の記事種でフォーマットを崩している下書きが該当します。


シリーズ-JP所属

JPのカノンや連作に所属しているか、JPの特定記事の続編の下書きが該当します。

シリーズ-Other所属

JPではないカノンや連作に所属しているか、JPではない特定記事の続編の下書きが該当します。

世界観用語-JP登場

JPのGoIやLoIなどの世界観用語が登場する下書きが該当します。

世界観用語-Other登場

JPではないGoIやLoIなどの世界観用語が登場する下書きが該当します。

ジャンル

アクションSFオカルト/都市伝説感動系ギャグ/コミカルシリアスシュールダーク人間ドラマ/恋愛ホラー/サスペンスメタフィクション歴史

任意

任意A任意B任意C

ERROR

The Kisaragi_326's portal does not exist.


エラー: Kisaragi_326のportalページが存在しません。利用ガイドを参照し、portalページを作成してください。


利用ガイド

  1. portal:8494640 (26 Feb 2023 03:21)
特に明記しない限り、このページのコンテンツは次のライセンスの下にあります: Creative Commons Attribution-ShareAlike 3.0 License