/* 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;
}
}
/*
Penumbra Theme
[2020 Wikidot Theme]
By EstrellaYoshte
Based on:
Paperstack Theme by EstrellaYoshte
Ad Astra Theme by NatVoltaic and stormbreath
Inkblot Theme by Croquembouche
Anderson Robotics Theme by Croquembouche
BHL Style Collapsible by Monkatraz
Edited for SCP-JP by ukwhatn
*/
@import url('https://fonts.googleapis.com/css2?family=Josefin+Sans:wght@700&display=swap');
@import url('https://fonts.googleapis.com/css2?family=Roboto&display=swap');
@import url(https://fonts.googleapis.com/css2?family=Fira+Code&display=swap);
#page-content { font-size: .9rem; }
body {
font-family: 'Roboto', sans-serif;
color: #EDEDED;
background-color: #2F333C;
background-image: linear-gradient(
to bottom,
#21252E, #21252E 90px,
#21252E 90px, #2F333C 200px,
#2F333C 200px, #2F333C 100%);
background-repeat: no-repeat;
}
#main-content {
top: -1.2rem;
}
/* ---- SCROLLBAR ---- */
::-webkit-scrollbar {
width: 9px;
background: transparent;
}
::-webkit-scrollbar-track {
background: #21252E;
}
::-webkit-scrollbar-thumb {
background: #ededed;
border: none;
}
::-webkit-scrollbar-thumb:hover {
background: var(--accentColor);
}
/* ---- HEADER ---- */
div#container-wrap {
background-image: none;
}
div#header {
background-image: none;
}
div#extra-div-1 {
height: 164px;
width: 100%;
top: 0;
position: absolute;
background: var(--lgurl);
background-size: contain;
background-repeat: no-repeat;
background-position: 50% 50%;
z-index: -1;
}
#header h1, #header h2 { margin-left: 0; float: none; text-align: center; }
/* Move the subtitle down a smidge */
#header h2 { margin-top: 0.45rem; }
/* Hide the existing text */
#header h1 span, #header h2 span { font-size: 0; display: none; }
/* Style the new text */
#header h1 a::before, #header h2::before {
color: var(--accentColor);
font-family: 'Josefin Sans', sans-serif;
text-shadow: none;
}
/* Set the new text's content from variable */
#header h1 a::before {
content: var(--header-title, "SCP FOUNDATION");
font-weight: 300;
font-size: 1.3em;
}
#header h2::before {
content: var(--header-subtitle, "SECURE - CONTAIN - PROTECT");
font-weight: 600;
font-size: 1.22em;
}
#login-status {
color: #ededed;
}
#login-status a {
color: var(--accentColor);
}
#login-status ul a {
color: #ededed;
background: #21252E;
}
#login-status ul a:hover {
color: var(--accentColor);
}
#account-topbutton{
border: solid 1px var(--accentColor);
}
#footer, #footer a {
background: transparent;
color: #ededed;
}
#license-area {
color: #ededed;
}
#search-top-box {
top: 2.2rem!important;
right: 8px;
}
#search-top-box-form > input[type=submit] {
border: solid 1px #ededed;
background: #21252E!important;
box-shadow: none;
border-radius: 0;
color: #ededed;
transition: color 0.15s linear;
}
#search-top-box-form input[type=submit]:hover {
border: solid 1px var(--accentColor);
box-shadow: none;
color: var(--accentColor);
}
#search-top-box-form > input[type=text] { display: none; }
/* ---- TOP BAR ---- */
#top-bar {
top: 8.4rem;
display: flex;
justify-content: center;
right: 0;
}
#top-bar, #top-bar a {
color: #ededed;
transition: color 0s;
}
#top-bar ul li ul {
border-color: var(--accentColor);
overflow: hidden;
}
#top-bar ul li.sfhover ul li a,
#top-bar ul li:hover ul li a {
border-top-color: #2F333C;
}
#top-bar ul li.sfhover a,
#top-bar ul li:hover a {
background: #21252E;
color: #ededed;
}
#top-bar ul li.sfhover a:hover,
#top-bar ul li:hover a:hover {
background: #21252E; /* top bar hover background color */
color: var(--accentColor);
transition: color 0.1s linear;
}
/* ---- SIDE BAR ---- */
div#side-bar{
background: #21252E;
clear: both;
padding: .8em;
border-radius: 0;
box-shadow: none;
overflow-x: hidden;
}
#side-bar .heading{
color: #ededed;
font-family: 'Josefin Sans', sans-serif;
font-size: 0.94rem;
border-bottom: solid 1px #ededed;
}
#side-bar .side-block {
border: transparent;
border-radius: 0;
box-shadow: none;
background-color: #21252E!important;
}
#side-bar .side-block.media {
background-color:#21252E;
}
#side-bar .side-block.media > * {
display: flex;
justify-content: space-evenly;
}
#side-bar .side-block.resources {
background-color:#21252E;
}
.side-block .menu-item > .image {
display: none;
}
#top-bar div.open-menu a {
border-radius: 0;
box-shadow: none;
color: var(--accentColor)!important;
background-color: #21252E!important;
border: solid 1px #21252E!important;
}
@media (max-width: 767px) {
#main-content {
padding: 0;
margin: 0 5%;
border-left: none;
}
#page-title {
margin-top: 0.7em;
}
#side-bar {
background-color: #21252E;
left: -21em;
}
#side-bar:target {
border: none;
box-shadow: none;
}
#side-bar .close-menu {
transition: width 0.5s ease-in-out 0.1s,
opacity 1s ease-in-out 0s;
display: block;
position: fixed;
width: 100%;
height: 100%;
top: 0;
right: 0;
background: rgba(0,0,0,0.3);
background-position: 18.6em 50%;
z-index: -1;
opacity: 0;
pointer-events: none;
}
#side-bar:target .close-menu {
width: calc(100% - 18.6em);
right: 0;
left: auto;
opacity: 1;
pointer-events: auto;
}
#side-bar:target .close-menu:hover {
background: unset;
}
#page-content > hr, #page-content > .list-pages-box > .list-pages-item > hr {
margin: 3em -5.5%;
}
#side-bar {
top: 0;
}
#side-bar .heading {
padding-left: 1em;
margin-left: -1em;
}
#search-top-box {
top: 107px;
}
}
/* ---- TABS ---- */
/* ---- YUI TAB BASE ---- */
.yui-navset .yui-nav a,.yui-navset .yui-navset-top .yui-nav a{background-color:inherit;background-image:inherit}.yui-navset .yui-nav a:hover,.yui-navset .yui-nav a:focus{background:inherit;text-decoration:inherit}.yui-navset .yui-nav .selected a,.yui-navset .yui-nav .selected a:focus,.yui-navset .yui-nav .selected a:hover{color:inherit;background:inherit}.yui-navset .yui-nav,.yui-navset .yui-navset-top .yui-nav{border-color:inherit}.yui-navset li{line-height:inherit}
/* ---- YUI TAB CUSTOMIZATION ----*/
.yui-navset .yui-nav,
.yui-navset .yui-navset-top .yui-nav{
display: flex;
flex-wrap: wrap;
width: calc(100% - .125rem);
margin: 0 auto;
border-color: var(--accentColor);
box-shadow: none;
}
.yui-navset .yui-nav a, /* ---- Link Modifier ---- */
.yui-navset .yui-navset-top .yui-nav a{
color: #ededed;
font-weight: bold;
/* ---- Tab Background Colour | [UNSELECTED] ---- */
background-color: #21252E;
border: unset;
box-shadow: none;
box-shadow: none;
transition: background-color 0.15s linear;
}
.yui-navset .yui-nav a:hover,
.yui-navset .yui-nav a:focus{
color: #ededed;
/* ---- Tab Background Colour | [HOVER] ---- */
background-color: var(--accentColor);
}
.yui-navset .yui-nav li, /* ---- Listitem Modifier ---- */
.yui-navset .yui-navset-top .yui-nav li{
position: relative;
display: flex;
flex-grow: 2;
max-width: 100%;
margin: 0;
padding: 0;
color: #ededed;
background-color: #21252E;
border-color: transparent;
box-shadow: none;
}
.yui-navset .yui-nav li a,
.yui-navset-top .yui-nav li a,
.yui-navset-bottom .yui-nav li a{
display: flex;
align-items: center;
justify-content: center;
width: 100%;
}
.yui-navset .yui-nav li em{
border: unset;
}
.yui-navset .yui-nav a em,
.yui-navset .yui-navset-top .yui-nav a em{
padding: .35em .75em;
text-overflow: ellipsis;
overflow: hidden;
white-space: nowrap;
}
.yui-navset .yui-nav .selected, /* ---- Selection Modifier ---- */
.yui-navset .yui-navset-top .yui-nav .selected{
flex-grow: 2;
margin: 0;
padding: 0;
/* ---- Tab Background Colour | [SELECTED] ---- */
background-color: var(--accentColor);
}
.yui-navset .yui-nav .selected a,
.yui-navset .yui-nav .selected a em{
border: none;
}
.yui-navset .yui-nav .selected a{
width: 100%;
color: #21252E;
font-weight: bold;
}
.yui-navset .yui-nav .selected a:focus,
.yui-navset .yui-nav .selected a:active{
color: #21252E;
background-color: var(--accentColor);
}
.yui-navset .yui-content {
background-color: #21252E;
box-shadow: none;
}
.yui-navset .yui-content,
.yui-navset .yui-navset-top .yui-content{
padding: .5em;
border: none;
}
/*---- TAB ANIMATION by Croquembouche ---- */
.yui-navset .yui-content > div {
display: block;
top: 0;
overflow: hidden;
transform-origin: 0 0;
}
#page-content .yui-navset .yui-content > div[style*="none"] {
display: block !important;
flex: 0;
max-height: 0;
padding: 0 0.5em;
border-width: 0;
/* The following transition affects the one that DISAPPEARS */
transition: padding 0s linear 0.5s,
border-width 0s linear 0.5s,
flex 0.5s cubic-bezier(.18,.51,.54,.9) 0s;
animation: tab-disappear 0.5s ease-in-out 0s 1 both;
}
#page-content .yui-navset .yui-content > div[style*="block"] {
display: block !important;
flex: 1;
max-height: 9999rem;
/* The following transition affects the one that APPEARS */
transition: padding 0s linear 0.5s,
border-width 0s linear 0.5s,
flex 0.5s cubic-bezier(.18,.51,.54,.9) 0.5s;
animation: tab-appear 0.5s ease-in-out 0.5s 1 both;
}
@keyframes tab-disappear {
0% { max-height: 9999rem; }
1% { max-height: 100vh; }
100% { max-height: 0; }
}
@keyframes tab-appear {
0% { max-height: 0; }
99% { max-height: 100vh; }
100% { max-height: 9999rem; }
}
/* ---- INFO BAR ---- */
body{
--barColour: #21252E;
--linkColour: #ededed;
}
.info-container .collapsible-block-content{
padding: 0 .5em 30px;
}
.info-container .collapsible-block-content .wiki-content-table{
width: 100%;
}
/* Ayer's info-bar patch by Monkatraz */
#page-content .info-container .collapsible-block-folded, #page-content .info-container .collapsible-block-unfolded-link {
width: 100%;
max-width: 100%;
margin: 0 auto;
padding: 0;
box-shadow: none;
}
#page-content .info-container .collapsible-block-link::before, #page-content .info-container .collapsible-block-unfolded-link::before {
content: " ";
display: none;
}
#page-content .info-container .collapsible-block-content::after {
display: none;
}
/* ---- INFO PANE ---- */
#page-content .creditRate{
margin: unset;
margin-top: 4px;
margin-bottom: 4px;
margin-right: 3px;
}
#page-content .rate-box-with-credit-button {
background-color: #21252E;
border: solid 2px #21252E;
border-radius: 0;
box-shadow: 3px 0px 0px 0px var(--accentColor);
}
#page-content .rate-box-with-credit-button .creditButton p a {
border-left-color: transparent;
}
#page-content .rate-box-with-credit-button .page-rate-widget-box .cancel {
border-radius: 0;
}
#page-content .rate-box-with-credit-button div.page-rate-widget-box .rate-points {
border-left: 0;
}
.rate-box-with-credit-button .page-rate-widget-box .cancel a:hover {
border-radius: 0;
}
#page-content .rate-box-with-credit-button .fa-info {
color: #ededed;
}
#page-content .rate-box-with-credit-button .fa-info:hover {
color: var(--accentColor);
}
#page-content .creditButtonStandalone p a {
background-color: #21252E;
border: solid 2px #21252E;
border-radius: 0;
box-shadow: 3px 0px 0px 0px var(--accentColor);
color: #ededed;
}
#page-content .creditButtonStandalone p a:hover {
color: var(--accentColor);
}
#page-content .modalbox {
background: #2F333C !important;
color: #ededed;
box-shadow: none;
}
.close-credits,
.credit-back {
filter: grayscale(100%) invert(100%) contrast(275%);
}
/* ---- Credit Module for JP ---- */
#page-content .creditRate.creditModule .rate-box-with-credit-button {
background-color: #21252E!important;
}
#page-content .creditRate.creditModule .rate-box-with-credit-button .creditButton {
background-color: unset;
border: unset;
box-shadow: unset;
}
#page-content .creditRate.creditModule ~ #u-credit-view .modalbox .modalbox-title {
background: #21252e;
}
/* ---- PAGE RATING ---- */
.page-rate-widget-box {
margin: unset;
border-radius: 0;
border: solid 2px #21252E;
box-shadow: 3px 0px 0px 0px var(--accentColor);
background-color: #21252E;
margin-top: 4px;
margin-bottom:4px;
margin-right: 3px;
}
div.page-rate-widget-box .rate-points {
background-color: #21252E;
border: none;
color: #ededed !important;
text-transform: capitalize;
}
.page-rate-widget-box .rateup,
.page-rate-widget-box .ratedown {
background-color: #21252E;
border-top: none;
border-bottom: none;
}
.page-rate-widget-box .rateup a,
.page-rate-widget-box .ratedown a {
background: transparent;
color: #ededed;
}
.page-rate-widget-box .rateup a:hover,
.page-rate-widget-box .ratedown a:hover {
background: #21252E;
color: var(--accentColor);
}
.page-rate-widget-box .cancel {
background: transparent;
background-color: #21252E;
border: none;
}
.page-rate-widget-box .cancel a {
color: #ededed;
}
.page-rate-widget-box .cancel a:hover {
background: #21252E;
color: var(--accentColor);
}
/* ---- PAGE ELEMENTS ---- */
.page-source, tt{
font-family: "Fira Code", monospace;
font-size: 0.87rem;
}
.code pre, .code p, .code {
font-family: "Fira Code", monospace;
font-size: 0.87rem;
color: #21252E;
}
h1 {
color: var(--accentColor);
font-family: 'Josefin Sans', sans-serif;
font-weight: bold;
}
h2,
h3,
h4,
h5,
h6 {
color: #EDEDED;
font-family: 'Josefin Sans', sans-serif;
font-weight: bold;
}
#page-title {
color: #ededed;
font-family: 'Josefin Sans', sans-serif;
font-size: 1.65rem;
text-align: center;
border-color: #ededed;
}
/* Clicky links */
a,
a.newpage,
a:visited,
#side-bar a:visited {
color: var(--accentColor);
transition: color 0.15s linear;
}
a:hover, a.newpage:hover, a:visited:hover, #side-bar a:visited:hover {
color: #ffffff;
text-decoration: none;
background-color: var(--accentColor);
}
a.newpage { filter: hue-rotate(180deg); }
/* patch for sidebar media, collapsibles, ACS, info button and ayers module so link doesn't override */
#page-content .collapsible-block-folded a:hover, #page-content .collapsible-block-unfolded-link a:hover, #page-content .rate-box-with-credit-button .fa-info:hover, #side-bar .side-block.media a:hover, .danger-diamond a:hover {
background: transparent;
}
.info-container .collapsible-block-folded .collapsible-block-link, .info-container .collapsible-block-link {
background: var(--linkColour) !important;
}
hr{
background-color: var(--accentColor);
}
blockquote,
div.blockquote,
#toc {
background-color: #21252E;
border: solid 2px #2F333C;
box-shadow: -3px 0px 0px -0.1px var(--accentColor);
}
.code {
background-color: #F8F8F8;
border: solid 3px #2F333C;
box-shadow: none;
}
.scp-image-block {
border: solid 8px #21252E;
border-bottom: solid 0px #21252E;
box-shadow: 0px 0.26rem 0px 0px var(--accentColor);
box-sizing: border-box;
}
.scp-image-block .scp-image-caption {
background-color: #21252E;
border: solid 4px #21252E;
color: #ededed;
font-size: 0.84rem;
}
.scp-image-block.block-left { margin-left: 0; }
.scp-image-block.block-right { margin-right: 0; }
@media (max-width: 540px) {
.scp-image-block.block-left, .scp-image-block.block-right {
float: none; clear: both; margin-left: auto; margin-right: auto;
}
}
#page-content .wiki-content-table tr th {
border: solid 1px var(--accentColor);
color: var(--accentColor);
background-color: #21252E;
/* set border for table title */
}
#page-content .wiki-content-table tr td {
border: solid 1px var(--accentColor);
/* set border for table content */
}
/* fancy collapsible */
#page-content .collapsible-block-folded, #page-content .collapsible-block-unfolded-link {
background: #21252E;
transition: background 0.25s linear;
padding-top: 0.5rem;
padding-bottom: 0.5rem;
padding-left: 1rem;
padding-right: 1rem;
width: min-content;
white-space: nowrap;
overflow: hidden;
margin: auto;
}
#page-content .collapsible-block-folded .collapsible-block-link::before {
content: "▷ ";
}
#page-content .collapsible-block-unfolded .collapsible-block-link::before {
content: "▽ ";
}
#page-content .collapsible-block-link {
text-decoration: none;
color: #ededed;
font-weight: bold;
}
#page-content .collapsible-block-folded:hover, #page-content .collapsible-block-unfolded-link:hover {
background: var(--accentColor);
}
#page-content .collapsible-block-unfolded-link {
box-shadow: 0px -0.26rem 0px 0px var(--accentColor);
}
#page-content .collapsible-block-folded, #page-content .collapsible-block-unfolded-link {
margin-top: 10px;
margin-bottom: 10px;
}
/* Selection */
::selection {
background: var(--accentColor);
color: #ffffff;
}
/* Footnotes */
.hovertip {
font-size: .9rem;
background-color: #21252E !important;
border: solid 1px var(--accentColor) !important;
}
.footnotes-footer {
background-color: #21252E;
padding-left: 1.4rem;
padding-right: 1.4rem;
padding-bottom: 1.5rem;
box-shadow: -0.24rem 0px 0px 0px var(--accentColor);
}
.footnotes-footer .title {
color: #ededed;
}
.footnote .f-footer, .equation .e-footer, .reference .r-footer {
display: none;
}
/* Tags */
#main-content .page-tags a {
margin-top: .18rem;
}
.page-tags span {
border-top: 1px solid #ededed;
}
/* Pop-Up Windows */
.owindow {
background-color: #21252E;
border-color: var(--accentColor);
}
.owindow .modal-header {
background-color: #21252E;
}
.owindow .modal-body img {
background-color: transparent !important;
}
.owindow .title {
background-color: #21252E;
color: #var(--accentColor);
border-bottom: 1px solid #2F333C;
}
.owindow .button-bar a {
background-color: #21252E;
border-color: var(--accentColor);
color: #ededed;
}
.owindow .button-bar a:hover {
background-color: var(--accentColor);
}
/* Edit Buttons */
.buttons .btn {
background-color: #21252E;
border-color: var(--accentColor);
color: var(--accentColor);
padding: 3px 5px;
}
.buttons .btn:hover {
background-color: var(--accentColor);
color: #21252E;
}
/* Edit Lock Info*/
#lock-info {
background-color: #21252E;
border-color: #ededed;
}
/* Close Button for Page Source, Rating, Etc */
a.action-area-close:hover {
background-color: #21252E;
}
/* Page-History Current */
.pager .current {
background-color: var(--accentColor);
border-color: #ededed;
}
/* History Compare */
.inline-diff ins, .inline-diff del {
color: #21252E;
}
/* ---- INTERWIKI ---- */
.scpnet-interwiki-frame{
filter: invert(100%) grayscale(100%) contrast(75%);
}
/* ---- CUSTOM SYNTAX ---- */
.darkbox {
background-color: #21252E;
border-left: solid 0.26rem var(--accentColor);
border-right: solid 0.26rem var(--accentColor);
padding: .4rem;
margin-top: 12px;
margin-bottom:12px;
}
.lightbox {
background-color: #ededed;
color: #21252E;
border-left: solid 0.26rem var(--accentColor);
border-right: solid 0.26rem var(--accentColor);
padding: .4rem;
margin-top: 12px;
margin-bottom:12px;
}
.lightbox h2, .lightbox h3, .lightbox h4, .lightbox h5, .lightbox h6 {
color: #21252E;
}
.limit {
margin-bottom: -1rem;
z-index: 5;
}
.anchor {
position: sticky;
height:0;
top: 0;
z-index: 5;
}
.sidebox {
background-color: #21252E;
border-top: solid 2px var(--accentColor);
padding: .14rem;
margin-top: 0;
margin-bottom: 8px;
width: calc((100vw - 870px)/2);
max-height: calc(100vh - 18rem);
position: absolute;
top: 0;
left: 103.5%;
z-index: 5;
overflow: auto;
box-sizing: border-box;
}
/* Sidebox mobile optimization, courtesy of Woed */
@media (max-width: 1290px) {
.sidebox {
width: auto;
max-width: 65vw!important;
border: none;
padding-left: 0.4rem; padding-right: 0.4rem;
top: 0.75rem;
right: calc(((100vw - 45.8rem)/2) * -1);
left: initial;
-webkit-clip-path: inset(-0.125rem -0.25rem 0 calc(100% - 0.85rem));
clip-path: inset(-0.125rem -0.25rem 0 calc(100% - 0.85rem));
-webkit-transition: color 0.2s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s;
transition: color 0.2s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s;
-o-transition: color 0.2s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s;
transition: color 0.2s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s;
transition: color 0.2s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s;
overflow: visible;
}
.sidebox::before, .sidebox::after {
content: " ";
position: absolute;
right: 0;
}
.sidebox::before {
top: calc(50% - 0.75rem);
width: 0;
height: 0;
border-top: 0.75rem solid transparent;
border-bottom: 0.75rem solid transparent;
border-right: 0.75rem solid var(--accentColor);
transition: border 0.1s ease-in-out 0.1s;
z-index: 10;
}
.sidebox::after {
top: 0;
max-width: 0.75rem;
width: 100%;
height: 100%;
box-shadow: 0.15rem 0 0 0 var(--accentColor);
max-height: calc(100vh - 18rem);
background-color: #21252E;
z-index: -1;
transition: box-shadow 0.5s ease-in-out 0.1s, max-width 0.5s ease-in-out 0.1s;
}
.sidebox > * {
opacity: 0;
-webkit-transition: opacity 0.2s ease-in-out 0.2s;
-o-transition: opacity 0.2s ease-in-out 0.2s;
transition: opacity 0.2s ease-in-out 0.2s;
}
.sidebox:hover {
overflow: visible;
-webkit-clip-path: inset(-0.125rem -0.25rem 0 0);
clip-path: inset(-0.125rem -0.25rem 0 0);
-webkit-transition: color 0.5s ease-in-out 0.2s, right 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s;
transition: color 0.5s ease-in-out 0.2s, right 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s;
-o-transition: color 0.5s ease-in-out 0.2s, right 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s;
transition: color 0.5s ease-in-out 0.2s, right 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s;
transition: color 0.5s ease-in-out 0.2s, right 0.5s ease-in-out 0.1s, clip-path 0.5s ease-in-out 0.1s, box-shadow 0.5s ease-in-out 0.1s, -webkit-clip-path 0.5s ease-in-out 0.1s, -webkit-box-shadow 0.5s ease-in-out 0.1s;
}
.sidebox:hover::before {
border-top: 0 solid transparent;
border-bottom: 0 solid transparent;
}
.sidebox:hover::after {
box-shadow: 0 -0.125rem 0 0 var(--accentColor);
right: 0;
max-width: 100%;
}
.sidebox:hover > * {
opacity: 1;
}
}
@media (max-width:768px) {
.sidebox, .sidebox:hover {
right: calc(((100vw - (100% - 3rem))/2) * -1 + 1.9rem);
}
}
:root {
--accentColor: #1EB5E8;
--lgurl: url("http://scp-jp-storage.wdfiles.com/local--files/file%3A3396310-43-tbvr/logo.png");
}
「確かに、これはとても強力なお客様だね。」ウルダは言い、ほとんど突き刺しているような目を眠っている彼女に向けた。
セトは彼を見て、次にロボ、シギーを見てウルダに戻った。どうすればいいのかわからず彼は唇を噛んだ。
「138、よく無事に届けてくれたな。よくやった。転属を行う際に、君の振る舞いを財団に報告しておこう。」彼は不機嫌そうな顔をしていて、その顔に違わぬ態度だった。
「て、転属?」ロボは言った。「転属って、どういうことだい?」
ウルダは彼を見て、生暖かく微笑んだ。ジェスチャーではどんな態度を見せても、彼がウルダの冷たく青い目を見たときには、すぐに凍り付いた。彼の声は落ち着いて、冷静で、決然としていた。「この神に見捨てられた土地からの脱出だ。」彼は「神」という言葉を言うときに0.5秒ほど目を閉じていた。「ここから出たいだろ?」
「シギーに何かするのか?」
「239は脱出において不可欠だ。財団はサイト-118にいる全ての……興味深いアノマリーを欲しがっているのさ。それで、239はその中でもとびきり興味深い、という事だ。」
彼はロボの表情を少し面白がりながら、にやにや彼を見る。「奇妙だね。君はもう人々を怖がらせようとしないのかい?」
ロボは一歩退いた。「人々を怖がらせる?」
彼は笑う。「気にするな。どうやらそうじゃないみたいだな。」彼はセトに振り向いた。「彼らは準備できてるかい? 俺たちはモンスター相手にずっと持ちこたえることはできないからね、迅速に行動しなければならない。」
「待って—」ロボは手を伸ばして遮る。「財団が全ての興味深いアノマリーを欲しいとは、どういうことなんだ? あいつらがここにいるのか?」
ウルダは視線を彼に戻した。そのような痕跡は顔には一切見せていなかったが、彼は苛ついてるように見えた。「知らないのか? 財団は最上階の地下一階に構えている。このサイトの再利用の取り組みも進めているが、ここで捕まえられた他のアノマリーは全部サイト-19、17、51に移管されている。」
セトは石のように棒立ちしており、ウルダが話している間動かなかった。
ロボは言いかける。「でも—」
博士は手で遮る。「2006、ちょっと待ってくれ。」彼はセトに頭を向ける。「138、先に少女を起こしてくれ。彼女を眠らせるという君の提案は有用だが、今は必要ない。このことについて彼女に言っておきたいからな。」
セトはすぐに従い、シギーが寄りかかって眠っている壁にゆっくりと丁重に移動する。「シギー、」と彼は呼び、少し黙り、ほとんど気付かないようにに頭をウルダに向けた。「239、あなたと話したい人がいます。」
シギーはうめき、目を見開いてウルダを見た。「ラナ? あなたなの?」
ウルダは膝をついた。「服装が似てるから騙されちゃったかな、でも俺はトロンデハイム博士じゃないよ、お嬢ちゃん。」子供を急に起こさないように気を付ける親のように、彼の声は思いやりと感情に満ちたものに変わった。「俺は彼女の友達、ウルダ博士だ。君は多分俺のことを覚えていないかもしれないね。俺はいつもはガラスの後ろの方にいたからね、でも今回は君と話すためにここに来たのさ。」
「も、もちろん覚えてるわ、」シギーは言い、眠そうな目をこすった。「どうして私と話したいの、ウ、ウルド―博士?」
ウルダは微笑んだ。それは暖かく、心地よい暖かさだった。まるで彼の態度が一瞬で冷酷なものから暖かいものに豹変したようだった。「ウルダ博士だ、お嬢さん。」彼は続ける。「ただあなたをサイトの外の冒険に連れ出そうって話さ。財団では、博士達はあなたをとても愛していて、あなたを新しい家に連れていくために外に連れ出したいんだ。この放棄された不気味な場所の外の、みんながあなたのお世話ができる家にね。」
シギーの目は光った。「ウルダ博士、そこにラナはいるの? 私は本当に彼女に会いたいの。」
「ええ、もちろん彼女もいるだろうね。彼女は財団のとても重要な地位にいるんだ。彼女のため、俺は君を連れるために深い地下のここまで来たんだ。彼女はあなたのことをとても愛していて、あなたのおばさんのような博士で居続けたいと、そう言うように俺に言付けてくれた。」
「おばさんのような博士? それはずっと一緒にいてくれるってこと?」
彼は少し躊躇したが、微笑みを返した。彼は彼女の手を握り、目を合わせる。「ああ、もちろんさ。ずっとだよ、シギーちゃん。ずっとずっとさ。」
シギーは喜びで跳び上がり、ウルダ博士に抱き着いた。「やった! ウルダ博士、愛してる! とてもとてもとっても、ありがとう!」
ロボは見ていて胸が焼けるような感じがしたが、痛みは伴っていなかった。理由もわからず、彼は唇を噛んだ。
ウルダは彼女の反応に驚いた様子を示しながら、彼女の背中を抱きしめた。「もちろん、当り前さ。俺は自分の仕事をしているだけだよ、お嬢ちゃん。俺は君みたいないい子を助けると、いつも幸せになれるんだ。セトさん、彼女に呪文を教えてくれたのかい?」
「ええ、ええ! それは古代の魔術師の呪文で、とってもかっこよくて、それで—」彼女は止まる。「ウルダ博士? どうしてセトさんをそんな目で見てるの?」
ウルダは頭をセトに向けていた。彼の目はセトにだけ冷たく、視線はぎらぎらと死体の男の顔に突き刺さっている。
すると彼は向き直し、ぎらぎらした目はどこかへ行き、愛情深い親の表情に戻った。「もちろん、なんでもないよ。俺はただ出発する前にセトさんを見ておきたかっただけなんだ。」
彼は立ち上がったが、シギーの手を握り続けていた。「行きたいかい、シギー? ラナは地下一階であなたに会えるのを待っているよ。」
シギーは再び跳び上がった。「レッツゴー!」
ロボは何も考えず、見ていた。すると、ある考えが頭に浮かんできた。
待って。
彼女は僕から離れていってるんじゃないか?
「シギー。」ロボは呼んだ、ただの泣き声だった。「ぼ、僕も一緒に連れてくれるよね?」
シギーは立ち止まり、ロボを見た。彼女の表情は見えなかったが、すぐ背後に、多くの感情のサインが感じられた。悲しみ。信頼の失墜。もしくは、恐れ?
それから彼女の顔は彼から離れ、ウルダの方を見上げた。まるで、彼に許可を求めているかのようだった。
ウルダは首を振る。
シギーはロボをもう一度見る。「残念だけど、一緒には行けないわ、ロボ。本当にごめんね。」
わずか半フィート離れた場所で、ウルダは顔色一つ変えず、じっと耳を傾けていた。
ロボは一瞬彼女を見つめた。そしてもう一回。もう一回。
彼は動揺の中自分が話せることを思い出した。
「なんだって?」
「僕は—」彼女は折れた腕を見下ろし、そしてセト、ロボを順に見る。「あなたじゃ私を守れないじゃない。そうでしょ?」
「シギー」ロボは言いかけたが、言いたい言葉が見つけられなかった。「僕は」
「私はあの獣を脅かしちゃだめっていったのに、あなたはそうしたじゃない。それで私はケガをしたし、あなたは私を覚えてすらいなかった。」彼女の声が低くなる。「守ってくれるっていってたのに、ロボ。」
「もちろん僕は君を守るさ、あのときははただ—」
ウルダはシギーの手を取り、歩き始めた。「行こう、シギー。」
シギーはついていく。
ロボは見ていた。
「し、シギー? シギー? シギー!」彼は突進しようとしたが、セトは彼の肩に手を置いて止めた。
「彼女を行かせてやりなさい。彼女は彼といたほうがいい。」
ロボは肩を乱暴に振って落とし、彼を地面に倒した。「シギー! シギー! 止まって!」
セトは彼を引き留め、耳元で何かささやく。
彼が言うとともにロボは倒れ、打ちひしがれて床でくしゃくしゃになる。
彼女は振り返えらなかった。
彼らは十分ほど歩いていた。
シギーは暗い暗い廊下を、彼女の光る指で前方を照らしつつ進んでいる。彼女の手はウルダの手に握りしめられている。時々、暗闇の中から物音がしたときに彼女はその手をぎゅっと握りしめたが、ウルダは自分がそこにいることを示すために彼女を握り返した。
「あなたは私を守ってくれる、そうよね?」シギーは再三質問する。彼女の足音がタイル張りの床に響いていた。「例えば……」
「例えばロボみたいなではなくってことかい? もちろんさ。いつでも一緒にいるよ。」
「ウルダ博士、私たち、どこに向かっているの? どうやってフロア0に行くの?」
「ポータルがあって、そこで友人の他の博士達のところまで登っていける。その後、彼らに協力してもらって俺たちは外に出られるんだ。」
「ポータル? それって危ない?」
「そんなわけないさ。君には傷の1つすら永遠に付かない。約束するよ。」
また沈黙が続いた。
「私たちの行くところに、子供たちはいるの? 大きい子や小さい子、私のような魔女の子供もいるの?」
「もちろんいるよ。」何かを思い出したように、彼の声は明るくなった。「あなたが行くところには俺の娘もいるんだ。彼女は十七歳で、とても優しい子だよ。君のようにね。」
「彼女は私と同じような力を持ってるの?」
「いいや、でも—いや。」ウルダは唇を噛んでいたが、笑顔は絶やさなかった。シギーは彼が悲しそうに見える。「彼女は母親似なんだよ。」
「彼女は今どこに?」
「ああ、もちろん、彼女の家にいるよ。」
「彼女はあなたのお嫁さんと一緒に住んでいるの?」
ウルダは笑うが、それでも彼の笑顔のように悲しそうだった。「彼女の母親は俺の妻じゃないんだ。」
「あなたの……ガールフレンドってこと?」
「ガールフレンド? そんな言葉どこで習ったんだい?」
「ラナからよ。彼女は、いつか私にボーイフレンドやガールフレンドができて、私が望めば私たちは子供を持って大家族を持つようになるって、言ったのよ。」
彼は笑う。「なるほど。トロンデハイム博士は、きっと、ずいぶんと想像がたくましいんだね。」彼はシギーを見て、首を振った。「彼女は一度だけ俺のガールフレンドだった。でも、それだけだ。」
「そんなことあるの? 私は家族を持つには結婚しなきゃいけないと思っていたわ。」
ウルダはその後喋らなかった。
「ラナの調子はどうですか? 元気? 彼女は元気って言ってた?」
ウルダの声が震える。「あ、ああ。もちろんさ。彼女は地上で、財団と一緒に待っている。他の高層階にいた人たちも全員……安全だ、財団が来て彼らを他のサイトに連れ戻したからな。」
「他のサイト? サイトっていくつあるの?」
「まあ、こう考えればいいよ。このサイトは何番かな?」
シギーは一時黙って考えた。はっと思い出し、彼女は大きな声で答えを叫んだ。「サイト-118!」
突然ボリュームが上がったため、ウルダは周囲を見回し、暗いホールに何かが動くサインがないか調べた。
「たああすけてええ……」遠くでうめき声が聞こえたが、叫び声が聞こえたような反応はなかった。
数分後、彼は不満げな表情でシギーを見、口元に指をあてた。
「叫ばないでね、シギー。静かにしなきゃな。暗闇の中にどんな怪物がいるかわからないから。」
シギーはうなずき、ささやく。「ごめんなさい。」
ウルダは彼の手を彼女からどけ、帽子を被っている頭のてっぺんを軽くたたいた。「君の訴えが分かったよ。一理あるね。」彼はぼんやりと、何も考えずにつぶやいた。
「どういうこと?」シギーは無邪気に言った。
ウルダは彼女の頭から手を離し、手を握る。「なんでもないよ。」彼は咳払いをした。「君の質問に答えると、サイトの番号っていうのはサイトがいくつあるかの目安として使えるよ。このサイトが118なら、少なくともいくつのサイトがあるかな?」
シギーは指を数えた。しかし失敗し、そのときはまた数えだした。それも失敗し、ため息をつく。「たっくさん。」
ウルダはくすくすと笑う。「118だね、少なくとも。」
「まあ。とってもたくさんある。」
「本当にたくさんあるよ。正確な数は忘れたけれど、118より少なかったときはとっくに過ぎたよ、でも—」
「たああすけてええ……」遠くで別の声がした。
頭を上げ、ウルダは足を速めた。
「どうしたの?」シギーは聞く。「近づいてきてるの?」
「きっとね。俺たち二人の前にはたくさんあいつらがいそうだ、困っちゃうね。ペースを速めるよ、シギー。」
シギーはそれに続き、その短い足が許す限り速く進んだ。
「たああああすけええてええええ!」他の声が聞こえる。今回はより大きい声だ。
彼らの前方、200フィート先に離れたところに、扉がある。暗く、どこにも繋がっていないようだったが、その中では小さな光の瞬きが、回っていた。
ウルダはそれを指した。「あそこが出口だ。早く行こう。そんなに時間は残されていないよ。」
それから、彼らの周りに、声量と数を増やしながらうめき声が輪唱していくのを彼女は聞いた。
「たああああすけええてくれええええ……」自分の血の中で窒息するような女性の声のように聞こえる。
「みすてえええないでえええええ!」別の懇願する声が聞こえた。今回は、舌の回らない男性の声だった。「しにそうだあああ!」
シギーは、それぞれ部屋の横を通り過ぎるときに、その部屋の内部にあるものを一瞬だけ見ることができた。
赤い光をほんのり出しているものが見える。棘のような輪郭が見える。もしくは、長い不揃いの歯の輪郭を持っていて、あちこちへ突き出しているのが見える。
グルルルルルル、彼女は左側から泣き声が聞こえて、ウルダを見ると、彼はもう一つの手で深紅の刃の刀を強く握りしめていた。汗が額にこびりつき、集中して歯を食いしばっていた。
彼らは目的の部屋から今ちょうど百フィートの距離にいる。もう少しでゴールだった。もう少しで。
その時、シギーにはその声が聞こえた。
親しみやすい声だった。
「シギー!」どこから聞こえているのか彼女はわからなかったが、ロボは叫んだ。「シギー、僕はここだ! 止まって!」
シギーは振り返り、走るのをやめた。「ロボ?」彼女はつぶやく。
彼らの周りで、部屋の中に隠れていた化け物たちがその呼びかけを模倣した。「シイイイギイイイイイ……」彼らはうめく。「とまってえええええ……」
ウルダは即座に周囲を見渡し、顔をより固くしかめた。「もう俺たちに時間はない、シギー。行かなきゃいけないんだ、今。」
「シイギイイイ、」化け物は続ける。「シイイイイイギイイイイイイイ!」
「シギー!」本物のロボが叫ぶ。「そいつを信じるな! やめろ!」
「おい、彼の言うことなんか聞くなよ。」ウルダは歯を食いしばって言った。「自分の決断をしろ、シギー。行くぞ。」
「シイイイイイギイイイイイイイ!」今、化け物たちが叫ぶ。「かああれを、しいいいんじるなああああああ!」
彼女は躊躇し、決めきれずにいた。
それから彼女は二人の人影が最も近いホールから廊下に出てくるのを見た。彼女はその輪郭をなんとか見切ることができた。一人は大きく、一人はやせ細り、二人とも息を切らしているようだ。
ロボとセトだ。
ウルダが振り返る。「もういい。」彼は重い声で言った。「じゃあこうすればいい、2006。」
突然、ウルダが彼女の腰を掴んで走り出したので、シギーは足が抱き上げられる感触がした。
彼女は悲鳴を上げる。
瞬間、歓喜の声が廊下に響き、部屋の中にいる化け物たちが出現し、彼らの深紅の肌が暗闇の中で光る。
「放して!」シギーは叫び、拳でウルダの背中をたたく。「放して!」
一番近い戸口から一匹の化け物が現れ、あごをぱっくりと開けてうめく。低く、喉を鳴らして、前進しつつ話し始めた。
「とおおおおまってええええええええええ!」
すると、小さな赤い残像がその首を貫き、一瞬で頭と体を切り離した。
ウルダは華麗に剣を振り下ろし、血に刃を滴らせる。
他のもう一匹が住んでいる部屋から頭を前に出したが、それが叫びだすとともに、ウルダはちょうどいいタイミングで喉に向かってシュッと刃を振り下ろした。
「もがくな、クソガキ!」ウルダは怒鳴る。「俺はお前を助けようとしているんだぞ!」
彼の前には、光が気をもませるようにこれまでにないほど近くに光が迫る。それはたった数フィート先にあった。彼ができるのはただ—
そのとき、重い足音が聞こえた。タイル張りの床に沿って歩き、一歩一歩が地面を揺らせる。
彼が後方を見ると、そこには、次々と現れる化け物たちの中のロボがいた。右腕と肩でセトを抱きかかえている。彼はより速く走り、より多くの筋肉で足を補強しつつ前進していた。
「クソ!」ウルダは叫んだ。
ポータルはすぐそこだったが、彼は—
ドアの両側から、他のよりももっと大きい別々の二体の化け物が、後ろ脚で立ちながらやってきた。
その二体は、彼とドアの間を阻んでいたため、239を腕に抱えたままそれらを通り抜けるようなリスクを冒す勇気は彼にはなかった。
彼はいらだって歯を食いしばる。近すぎだクソッタレ。
右側の一体が前方によろめき、ウルダに斬撃を浴びせつつ叫ぶ。不自然なほどの速さで彼は躱し、腹部に攻撃を行うと、それは痛みで絶叫した。
「いいいいいたあああいいいい!」怪物は言い、叫び声とともに記憶を消去させる息を吐いた。
ウルダはガスを振り払い、それが彼を噛もうとしたため別方向に向きを変えた。
振り返るのが一瞬遅かった。
クソ、遅すぎた。
239をぐいと引き、その化け物が動くと、ウルダは彼の剣を持っている腕を代わりに出す。
化け物の顎が彼の前腕をはさんだため、彼は蹴り飛ばそうとしたが痛みで悲鳴を上げた。
彼の力は失われ、シギーは抜け出せることに気が付いた。
彼女は誘拐犯の腕から力いっぱいふんと抜け出す。ウルダは化け物の顎から自身を引きはがすとともに彼女は地面に激突する。
彼女はグシャという音とともに骨折した右腕で着地し、床に落ちるとともに完全にそれは粉砕した。
0.5秒だけ世界が真っ暗になった。彼女の全身が粉砕したような感覚を覚え、最初に折った時とは比べ物にならない痛みを感じた。
その時、シギーは口を開け悲鳴を上げる。
「きゃああああああああ!」
彼らの周りの地面が震えた。天井からホコリが落ちる。シギーが苦しみで地面に横たわると、彼女は視界の隅で何かの動きを見た—もう一方の化け物は腹の傷から回復し、叫びながら彼女を攻撃するために前に進んでくる。「たあああああすうううけえええてええええええ!」
そのほんの一瞬、呪文を唱える力を思い出し、シギーは「エイマックス!」という叫びと共に火の球を打ち出す。球は化け物の喉に投げ込まれた。
痛みで叫び、それはけいれんし、シギーには攻撃できなかった。シギーは別の火の球を放ち、爆発的な熱でそれの腹は破裂した。
化け物は死に、彼女は緊張が重なった疲れから倒れた。
数フィート離れたところで、ウルダは化け物に弱弱しい斬撃を食らわせ、狂ったような雄たけびを上げて口の底に剣を突き立てる。刃は口に当たり、肉を切り裂いてぱっくり鼻をそぎ落とした。
女性の声をその口から発し、彼の鼓膜が破れるほどの断末魔が上がる。「きゃああああああああ!」
行く手は空き、ウルダは隣にいる少女を掴もうとしたが、大きなゴリラが間に入って阻まれた。
彼は三フィートほど投げ出され、背中をドン!と地面にたたきつけた。そして、彼が見上げると、ずっと手なずけていた死体の男と目が合った。
長い、長い刃が喉に向けられる—湾曲し致命的な、古代の戦士の道具である。
「落ち着きなさい、カレフ・ウルダ。」セトは言った。「もしくは……」
「アルト・クレフ博士?」
さらに多くの化け物がホールに溢れ、不協和音で全ての音をかき消している。
「おおおおいてえかないでええええええ!」
「けえがああがああ!」
とおおまってえええええええ!
たああああすけええてええええ!
ロボはめまいを感じたが、彼が立ち上がった時、彼の目はシギーの見開かれて、怖がっている目と合った。
「あなた……戻ってきてくれた、」シギーは弱弱しく言う。「私……私は……」
ロボはヘルメットの後ろで微笑み、前に乗り出した。「助けて。お願い。」
彼は後ろから何かを聞く。
少なくとも十体—もしくはそれ以上。
「僕は君を守りに来たんだ、」ロボは答える。そう言うとともに、彼は大きく大きくなり始めた。「約束したでしょ?」
「聞いて、お願い、ロボ—」
彼は立ち上がる、いくつかの化け物の足音は既に彼らに向かっている。
「言わなくていいさ。」彼は簡単に、彼女を見おろして言う。「後で話そう。」
彼は振り向く。
よじる肉の壁、苦痛の叫びと助けを求める声が彼に襲い掛かる止まらない赤い波となって動く。彼は見た。歯を。爪を。彼を引き裂こうとする無数の口を。
ロボは彼の人生の中でもっとも恐怖を感じていた。背筋に悪寒が走り、毛並みがピンと逆立ち、その瞬間足が凍り付く。
しかし、彼は立ち向かわなければならなかった—彼女の為に。
彼は二度とシギーを置き去りにはしなかった。
響き渡る咆哮とともに、彼は体の大きさを三倍にし、廊下をほとんど埋める。両腕を頭の上に挙げて地面をたたくき、腕を見おろすと地面は割れていた。
そして胸を前に突き出し、同じ強さでたたく。拳が骨組みを叩く音が周囲に響くとともに再び咆哮を上げる。
化け物たちはシューっと音を出し、犠牲者たちの嘆願を返事として咆哮する。
「こおおおおおなあいでえええ!」
「どっかあああいってよおおおおお!」
「にいいいげええてえええ!」
ロボは微笑む。
「ばあ。」彼は言った。
彼は廊下を駆け下り、腕を前に出し、皮膚、筋肉、骨の壁を作って向こうの壁までも突進して突き破った。
彼らは伸ばした爪で彼を裂き、腕の皮膚と肉、胸、脚を突き破る。
めまいがする—世界が彼の周りでぐるぐると回る。化け物の吐息は前回よりも早く効果を発揮し、彼の心と記憶をほつれさせた。
それでもなお、人生の中で会った誰よりも強い心で突き進み、情け容赦のない耐久力とともに、残りの獣たちに体を引き裂かれながらも、押し通った。
シギーに見えたのは、明るい場所から暗闇へと、彼がホールに消えていく様子だけだった。
数フィート離れたところで、セトはクレフの上に立っている。彼の喉に剣を突きつけ、地面から動けないようにしている。少なくとも死体男になってからは、セトには新鮮だった。彼は中王国が強かった時代から白兵戦をしたことがなかったからだ。クレフは熟練者で、経験豊富だった—しかし彼の剣を持つ腕は939に噛まれていることでボロボロで、手にした剣を持っていられるかどうかも確信がない程だった。
そこで彼はお得意の手法の一つに訴えることにした—話すことだ。
「つまり俺は運がクソ悪かったという事か?」クレフは歯を食いしばって言った。「裏切者め。お前はいつからこれを計画していたんだ、なあ?」
セトは彼をにらむ。「長い。長い間でした。あなたが2006の世話を私に与えたときが唯一のチャンスでしたよ。」
「そしてこんなことになるまで俺はお前を信用してしまっていた。」クレフは言う。「お前は忠義深いやつだと本当に思っていた。ミスったな、俺は—お前がガキに呪文を教えたときにその手掛かりをつかむべきだった、と思うよ。でも、彼女は俺にその呪文は使わなかったがね。」
「私たちはそのために状況が悪化していったのですよ。」セトはクレフの喉元に剣をさらに近づける。「嘘で押し通せるとでも思っていましたか?」
「実際に押し通せていたさ。お前らが邪魔するまではな。」
セトは嘲笑した。「サルは簡単に味方にできました。あなたがシギーにやったことについて一言伝えるだけで、十分説得できました。」
クレフは刃を手にしっかりと握る。
セトはさらに喉元に剣を近づける—血を噴出させるのにちょうどいいところまで、近づける。「私があなたの状況ならそんな馬鹿なことはしませんよ。」
「俺はお前より速いぜ、クソ野郎。試してみろよ。」
「そのぼろぼろの腕がなければできたでしょうね、あなたにはできない。」
「試してみろってんだ、死体男。俺を殺す気さえないのに、元破壊神は何ができるってんだ?」
セトはより強く歯を食いしばる。「忌まわしい殺人鬼め。」
手の苦痛と戦いながら、これまで以上に彼は強く剣を握る。
「これが俺の奥の手だ、セト。お前は死ねないが、見てみろ—」
彼は深紅のスクラントナムの刃をセトの腹に突き刺し、どの傷とも違う特別な方法で死体男を傷つけた。
「これでお前は死ぬんだぜ。」
セトの目が見開かれる。
セトは地面に倒れ、彼の手のコペッシュはポトリと床に落ちる。
数フィート先で、シギーはクレフがセトを踏みつける様子を見守ることしかできなかった。
クレフは刃を見て、新鮮な血が滴り落ちるのを見た。
そして、彼はその刃を振り上げる。
「本当にうまくいくとはな。こんな簡単な方法でお前の切望していた死がもたらされるなんて、誰が予想できてたと思うか、なあ? どうなんだ、んん?」
刃は死体男に振り下ろされ、バキン!という恐ろしい音とともに一撃で彼の胸をへこませ胸骨を砕いた。
クレフは剣を抜き、振り上げ、そしてもう一度振り下ろす。二回目はセトの喉を貫き、血管から流れる血が彼のボロボロの器官を詰めて、窒息を起こさせた。
そして、最後に、クレフはもう一度剣を振り上げる。
セトは彼を見開いた眼で見上げ、何千年も彼が望んでいた死がこのような望まない時に訪れる様を眺めていた。
彼はしゃべろうとする。血に浸された拡声器が、生の渇望を叫ぶ。
「クレフ、やめ—」
「黙って死んでろ、クソ野郎。」
最後の一振りで、彼はセトの頭に刃を振り下ろし、一瞬でセトに残された意識を殺した。
それから、彼はゆっくりと引き抜く—ぐしゃりという、まるでタイヤが砂利を踏むときのような不快な音がした。
返り血を全身に浴び、クレフはボロボロに砕けた血まみれの右腕を携えて立ち上がる。彼の右手から深紅のスクラントナムの刃は最初から何もなかったように痕跡なく消えていた。
クレフはシギーを見て、冷たい青い目が彼女にあった時、ただ微笑むことしかできなかった。
「告白するよ……」クレフは言う。「俺は君が好きだったよ、シギー。君は思っていた以上に俺の娘を思い出させたよ。」
彼はふらふらとした足でよろめきながら彼女の方へ進み、彼女の前で止まり倒れこんだ。
シギーは青ざめていたが、静かに話した。
「ク、クレフ……私を昏睡状態にするように言ったのはあなたなの?」
「ああ、俺さ。お前は危険すぎるんだよ、239。俺は……」彼は息を吸い込む。彼の腕が痛み始めたのだ。「俺はそうしなければならないんだ。トロンデハイムはもちろん反対したが……まあ彼女もある面では正しいけども。」
シギーの唇が震える。「それはどんな……面で?」
「お前はかわいい女の子だ。」
彼は両手を広げ、ぐしゃぐしゃの腕とそうでない腕で、彼女を抱きしめた。
クレフは続ける。「でも、俺にはやるべき仕事がある。上階への封鎖を通り抜けることさえできれば……」
彼は彼女を持ち上げる。シギーの折れた腕に激しい痛みが走るが、彼女はうめき声をあげることしかできなかった。
彼の体がよろめく。「だから俺は……」一歩進む。「まずお前をそこに連れて行かなきゃならねえ。」彼はもう一歩進む。
今、目的地にあるライトの近くまで来ている。あとたった二歩ほどだった。
あともう一歩。
彼はぼろぼろの手でドアを開け、試作型のテレポーターのプラットフォームを見せる。それは青い光を放ち、絶え間なく回転し続けて、一人分を移送できる円盤型の機械を形作っている。
クレフは弱弱しい一歩を踏んだ。
すると、後ろから、彼の耳に何かの音が入った。
シギーが前に召喚したコペッシュが空を切り、クレフの背中に刺さってそのまま反対側へ突き出た。
彼はシギーを腕に抱いたまま、地面に倒れた。
歯を食いしばって彼は息をする。
「この……」彼は再び息をしようとする。「……クソ野郎」彼は振り向こうとしたが、背中の痛みと刃の出てきた胸が、彼をそうはさせなかった。
「どうしようもなくお人よしだなあ、おい、2006?」
シギーが体を揺らすと、彼女の愛するサルの足音が聞こえてきた。
傷、数えきれないほどの開いた傷がロボの体にちりばめられている。彼はその一つ一つの傷擦り傷、切り傷、噛み傷、あざ、ひっかき傷から血を流していたが、それでも彼は前進し、勢いよく廊下を進んだ。
「あまり……覚えていないけど……」ロボは息を切らしている。「でも……僕は……約束したんだ。」
彼は無数の939の死体と、息絶えたセトの死体を通り過ぎ、ついにシギーを腕に抱えて跪いて息を切らしているクレフの元にたどり着いた。
ロボは少女に手を置く。「彼女を……離せ。」彼はクレフに告げる。
クレフはかすかに笑う。「もし離さなければ?」
「離さなければ君を生かすことはできない。」ロボの声は固くなる。いつもの声に含まれる優しさはなかった。
クレフは息をしようとしたが、深呼吸はできずぜえぜえと言うだけだった。「万全の状態なら断るんだが、でも……」
彼は意識の飛びそうな状態で、生と死の領域の間を行き来しつつ、シギーを見おろす。
「だがこのガキは俺の考えを変えた。」
その時、彼の手の握りが緩んだ。
ロボは優しく彼女を腕に抱き、クレフから離れつつ胸に抱きよせた。
シギーがクレフの手から滑り落ちたとき、彼は微笑むことしかできなかった。
クレフが地面に倒れると、背中の傷から血が流れた。
彼は目の前のテレポーターに這いより、血の痕が彼の通った後に残る。彼はこれまでで一番自分が弱っていると感じていた。
それでも、ロボのように、彼も自身を前に押し出すことでテレポーターに真っ直ぐに乗り、テレポーターは円形にどんどん速く回り始めた。
「2006……」彼は言い、消え始める。「彼女を守ってやれよ。」
彼の目は、彼らが初めて会った時と同じように、一点をひたむきに見つめ続けていた。
「俺がまた探しにくるぜ。」
それから、彼は消え、彼らのいるところからずっと遠くの、ずっと上のどこかに移送するための原子に変換されていった。
シギーは衝動的に起きた。
「ロボ?」彼女は真っ先にそう言い、飛び起きる。「ラナ?」
誰も答えない。
彼女はあたりを見回し、混乱する。
部屋の中央にあるランタンにはまだ火がくすぶっている。簡易ベッドが二つ、綺麗な状態で置かれている。彼女の右側には、化け物の死骸が、頭と尻尾だけを残してほとんどは腐りかけている状態で残されているのが見えた。彼女の左側には、巨大な半焼状態のテディベアが下半身だけ部屋の中に残されているのを見つけた。
彼女は体を動かそうと振り返るが、右腕にまだ痛みが残っていることに気が付いた。
しかし、それは違う痛みだった。昨日感じた苦痛とは違う火傷のような……昨日?
どれだけの時間がたったのだろう?
彼女は右腕を持ち上げる。
ひじより下の部分はすべてなくなっていた—切断されている部分は、きれいな布からとった切れ端で不器用に巻かれている。
「腕についてはごめんなさい。」ドアから入ってきたロボは言った。「腕が紫色に変ってしまっていたんだ……そのままにはできなかった。高熱も出していたし。本当に熱くなっていたんだよ。あのままじゃ腕は粉々になってたか、別の何かになってたに違いない。けがしていた時は、君が持ってる肌のすごい耐久性も弱まっていたみたいなんだ、だから……」
シギーは唇を噛む。「それなら……大丈夫よ。」彼女の声は震えていた。
ロボは彼女の向かいの簡易ベッドに座った。明らかに彼の体型は細くなっていた—おそらくあまり食べなかったのだろう。
ロボは腕を伸ばして彼女に触れる。「ねえ、もし時間がいるなら—」
「どうしてこんなことになっちゃったの?!」
ロボはびっくりした。「どうしたんだい?」
彼女は目に涙を浮かべていた。彼女は腕の切り口を上げ、彼女のひじが今露出した骨以外何もなくなっているのを見せた。
「どうして私の腕を切ったの?」彼女の顔に涙が流れ落ち、長い痕を残した。「もう魔女になれないわ! 二度と、魔女にはなれないの! 魔女っていうのは腕が二本ちゃんとあって、くすくす笑っているような—」
ロボは彼女を抱き寄せ、肩に顔をうずめられるようにした。
「シーッ。ごめん。本当にごめんよ。」
シギーは鼻をすすって泣いた。長い間、そうして泣いていた。
彼女は口を開く。「どうなったの、あの—」
「クレフのこと? 彼はどこかにテレポートしたよ。そのあとすぐにテレポーターは壊れてしまった。多分反対側から彼らが壊したんだと思う。」
シギーは前かがみになった。「セトのことよ。彼はどうなったの?」
彼はため息をつく。「死んだ。」
「でも、彼は死ねないんじゃなかったの? あの傷全部と—」
「僕もそう思っていたさ。」ロボは答える。「けど、クレフの赤い剣には何かがあったに違いない。彼は簡単に死んでしまった。」
シギーは顔をしわくちゃにさせた。「そんな。」彼女は落ち込んだ様子で言った。
彼は彼女の肩に手を回し、近くに抱き寄せた。
「シグ、大丈夫?」
シギーは鼻をすする。「その— それはただ—」
その瞬間シギーはロボの胸に顔をうずめ、頬に涙を流して泣いた。
「あなたはケガをして、セトは死んで、私は腕を失って、それで—」彼女は泣き叫ぶ。「なんにも、全て無駄だったわ!」
ロボは彼女の背中を撫でた。「大丈夫だ、シグ。大丈夫。僕を信じて。」
彼女は泣き続ける。「もしもクレフなんか信じなかったら! 彼について行かなかったら! あなたを信じていたら! もし—」
ロボは髪をなでた。「シーッ。静かにね。もう、過ぎたことだから。全部過ぎたことだから、ね。気負わないで、シグ。気負わないで。」
一時間、シギーがすすり泣き続けている間、彼らはお互いに何も言わずベッドの上でとどまっていた。
最終的に、彼女は泣き止み、そしてまた長い時間部屋には静寂が訪れた。
「ねえ、」ロボは言った。「君にサプライズがあるんだ。」
彼は腰をかがめ、簡易ベッドの下から何かを取り出す。
彼女の膝の上に、彼はそれを置いた。
それは大きなチーズボールの袋だった—セトが彼女に教えたときに作ったものの一つだった。
「君のためにとっておいたんだ。」ロボは優しい声で言った。
シギーは残った手でそれを胸に抱きかかえ、腐った939の死体を顎で指した。「だからあなたはずっとその化け物を食べ続けていたの?」
ロボはうなだれ、ヘルメットの下で顔を赤らめた。「べ、別に!」彼は叫ぶ。「そ、そうだ! 僕たちはまだラナを探している途中だったね?」
「ラナ?」シギーは鼻をすすって言った。
「ああ、約束したよね。」
シギーは腕で涙をぬぐった。「ええ、もちろんよ。」
ロボは微笑んだ。「よし!」彼は彼女を強く抱きしめる。「また冒険に出かけようか?」
シギーはうなずく。「もちろん。ただ、もうけがしないって約束して、分かった?」
ロボはくすくすと笑う。「その約束はなかなか……」
「この約束は、いつまでも覚えておくからね。」
アーカイブ1: ひどい目覚め 終わり
アーカイブ2: ラナを見つけて に続く