body {
    font-family: "Noto Sans JP", sans-serif;
    font-optical-sizing: auto;
    font-weight: 400;
    font-style: normal;
}

body::after {
    content: "";
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    height: 100%;
    background-color: #000000;
    z-index: 9999; /* 一番手前に */
    pointer-events: none; /* 他の要素にアクセス可能にするためにポインターイベントは無効に */
    opacity: 0; /* 初期値では非表示 */
    -webkit-transition: opacity 0.8s ease; /* アニメーション時間は 0.8秒 */
    transition: opacity 0.8s ease;
}

/* body要素に.fadeoutセレクタがある場合には、レイヤーが表示されるようにopacityを１に設定 */
body.fade::after {
    opacity: 1;
}

/* a */
a:hover {
    opacity: 0.8;
}
/* a */

/* h */
h2 {
    font-family: "Castoro Titling", serif;
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
    font-size: 2rem;
}
/* h */

/* p */
p {
    color: #ffffff;
}
/* p */

/* table */
td {
    background-color: unset !important;
    color: #ffffff !important;
    border: none;
}
/* table */

/* form */
label {
    color: #ffffff;
}
/* form */

/* footer */
.footer {
    position: fixed;
    bottom: 0;
    width: 100%;
    padding: 35px 0 15px 0;
    text-align: center;
    background-color: transparent;
    background-image: url("../img/footerBG.webp");
    background-size: cover;
    background-position: bottom bottom;
}

.copyright {
    font-size: 0.8rem;
    font-family: "Forum", serif;
    font-weight: 400;
    font-style: normal;
    color: #ffffff;
}

/* footer */
