main section,
main details div,
aside p {
    margin: 0;
}

main section,
main details div,
aside p,
#index #howto {
    padding: 0.5rem;
}

h2,
h3 {
    padding: 0;
    margin: 0.5rem 0;
}

#index article {
    margin: 0.5rem;
}

main h1 button,
#index #howto,
aside p a {
    background: #fff;
    color: #000;
}

main h1 button {
    border: solid 0.1rem;
}

main h1 button {
    border-radius: 50%;
    padding: 0.5rem 1rem 0.25rem;
}

#howto {
    border-radius: 0.5rem;
}

main h1 strong,
main section {
    pointer-events: none;
    user-select: none;
}

main details,
aside {
    font-family: 'KikaiChokoku', sans-serif;
}

main h1 strong,
#index h2 strong {
    display: inline-block;
    transform: scale(1, 3.21);
}

main h1 strong {
    font-size: 400%;
    line-height: 70%;
    margin: 3.21rem 0;
}

main details summary code {
    font-size: 75%;
}

main #enter {
    color: lightskyblue;
    font-size: 150%;
}

main {
    position: relative;
}

main h1,
main section {
    position: absolute;
}

main h1 {
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    z-index: 100;
}

main section {
    z-index: 5;
}

main[hidden],
main h1[hidden] {
    display: none;
}

main h1 {
    display: grid;
    place-items: center;
}

main {
    display: flex;
    flex-flow: column;
    place-content: space-between;
}

main details {
    place-self: center end;
}

#map,
main details {
    width: 100%;
}

main#mapbox {
    height: 100svh;
}

main#index {
    min-height: 100svh;
}

main section {
    max-width: calc(100% - 5rem);
}