/**************** COMMON ****************/
/* #page-top ボタンタグのリセットCSS */
#page-top {
    border: none;
    cursor: pointer;
    outline: none;
    padding: 0;
    appearance: none;
    position: fixed;
    bottom: 50px;
    right: 50px;
    z-index: 10000;
}

#page-top a {
    text-decoration: none;
    text-align: center;
    font-weight: bold;
    display: block;
    transition: transform 0.3s ease;
}

#page-top a:hover {
    text-decoration: none;
    transform: translateY(-10px);
}

#page-top a img {
    width: 75px;
    height: auto;
}

@media only screen and (max-width: 767px) {
    #page-top {
        bottom: 75px;
        right: 10px;
    }
    #page-top a img {
        width: 80px;
    }
}

@media only screen and (min-width: 768px) {
    #page-top a img {
        width: 150px;
    }
}

/* フェード/スライドアニメーション */
.slide-top { opacity: 0; transform: translate(0,-20px); transition: all 0.5s ease-out; }
.slide-bottom { opacity: 0; transform: translate(0,20px); transition: all 0.5s ease-out; }
.slide-left { opacity: 0; transform: translate(-20px,0); transition: all 0.5s ease-out; }
.slide-right { opacity: 0; transform: translate(20px,0); transition: all 0.5s ease-out; }
.slide-right02 { opacity: 0; transform: translate(20px,0); transition: all 0.5s ease-out; }
.slide-right03 { opacity: 0; transform: translate(20px,0); transition: all 1.5s ease-out; }
.slide-right04 { opacity: 0; transform: translate(20px,0); transition: all 2s ease-out; }

/**************** MOBILE ****************/
@media only screen and (min-width: 768px) and (max-width: 1024px) {
    #page-top {
        border: none;
        cursor: pointer;
        outline: none;
        padding: 0;
        appearance: none;
        position: fixed;
        bottom: 50px;
        right: 20px;
        z-index: 10000;
    }
}
