* {
    all       : unset;
    display   : revert;
    box-sizing: border-box;
    position  : relative;
    cursor    : revert;
}

body {
    font-family          : "Helvetica Neue", Arial, "Hiragino Kaku Gothic ProN", "Hiragino Sans", Meiryo, sans-serif;
    text-size-adjust     : 100%;
    font-feature-settings: 'palt';
    font-size            : 16px;
    width                : 100%;
}

button {
    cursor     : pointer;
    user-select: none;
}

img {
    vertical-align: middle;
    max-width     : 100%;
}

#main {
    display           : grid;
    justify-content   : center;
    align-items       : center;
    text-align        : center;
    grid-template-rows: 1fr max-content;
    min-height        : calc(var(--vh, 1vh) * 100);
}

#main .main {
    display        : grid;
    gap            : 3rem;
    justify-content: center;
    cursor         : wait;
}

#main .main .content {
    font-weight: bold;
}

#main .main button {
    border       : 1px solid;
    border-radius: 4px;
    background   : white;
    padding      : 1rem;
    margin       : 0 .5rem;
}

#main .size128 {
    width : 128px;
    height: 128px;
}

#main .text_bound {
    display  : inline-block;
    animation: bound .3s ease infinite alternate;
}

@keyframes bound {
    0% {
        transform: translateY(0px);
    }

    100% {
        transform: translateY(-2.5px);
    }
}

#main .text_bound:nth-child(1) {
    animation-delay: 0s;
}

#main .text_bound:nth-child(2) {
    animation-delay: 1s;
}

#main .text_bound:nth-child(3) {
    animation-delay: 1.5s;
}

#main .text_bound:nth-child(4) {
    animation-delay: 2s;
}

#main .text_bound:nth-child(5) {
    animation-delay: 2.5s;
}

#main .text_bound:nth-child(6) {
    animation-delay: 3s;
}

#main .text_bound:nth-child(7) {
    animation-delay: 3.5s;
}

#main .text_bound:nth-child(8) {
    animation-delay: 4s;
}

#main .sub {
    padding: 10px;
}

#fixed {
    position  : fixed;
    left      : 1rem;
    top       : 1rem;
    text-align: left;
}


#fixed #modal {
    display: none;
}

#fixed #modal.is-open {
    display: block;
}

#fixed #modal .modal__overlay {
    position       : fixed;
    top            : 0;
    left           : 0;
    right          : 0;
    bottom         : 0;
    background     : rgba(0, 0, 0, 0.6);
    display        : flex;
    justify-content: center;
    align-items    : center;
}

#fixed #modal .modal__container {
    background-color: #fff;
    max-width       : 500px;
    max-height      : 100vh;
    border-radius   : 4px;
    overflow-y      : auto;
    box-sizing      : border-box;
    margin          : 1rem;
    padding         : 1.5rem;
}

#fixed #modal header {
    display        : flex;
    justify-content: space-between;
    align-items    : center;
}

#fixed #modal header h1 {
    font-size  : 1.25rem;
    font-weight: bold;
    color      : #00449e;
}

#fixed #modal header [data-micromodal-close] {
    background: transparent;
    border    : 0;
}


#fixed #modal header [data-micromodal-close]:before {
    content: "\2715";
}

#fixed #modal main p {
    font-size: 16px;
}

#fixed #modal main h2 {
    font-weight: bold;
    line-height: 2;
}

#fixed #modal footer {
    font-size : 10px;
    text-align: right;
}

.share_container {
    display: grid;
    gap    : 1rem;
    padding: 1rem 0 10px;
}

.share_container h2 {
    font-weight    : bold;
    text-decoration: underline;
}

.share_container .sharelist {
    display   : flex;
    list-style: none;
    gap       : 21px;
}

.share_container .sharelist .size32 {
    width : 32px;
    height: 32px;
}

#backfixed {
    position   : fixed;
    right      : 1rem;
    bottom     : 1rem;
    text-align : left;
    font-size  : 10vw;
    opacity    : .1;
    user-select: none;
    font-family: monospace;
}