
@import url('https://fonts.googleapis.com/css2?family=Poppins:wght@300;400;500;600;700;800;900&display=swap');

* {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    font-family: 'Poppins', sans-serif;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
}

*:after, *:before{
    box-sizing: border-box;
    -webkit-box-sizing: border-box;
    -moz-box-sizing: border-box;
    -ms-box-sizing: border-box;
}
        
body{
    background: #1e1e1f;
    color: #CFCFCF;
    margin:0px;
    font-size:100%;
    height:auto;
    align-items: center;
    justify-content: center;
}

.rehab{
    position: relative;
    top: 120px;
    background: transparent;
    width: 100%;
    height: 4200px;
    justify-items: center;
    align-items: center;
    display: grid;
}

.container{
    position: absolute;
    height: 4200px;
    width: 100%;
    display: flex;
    transition: 0.5s;
	background:transparent;
	background-size: cover;
	background-position: center bottom; 
	overflow: hidden;
    align-items: center;
    overflow: hidden;
}

.training_list{
    border: 2px solid #CFCFCF;
    width: 100%;
}
.training_list tr, .training_list tr th, .training_list tr td{
    border: 2px solid #CFCFCF;
    text-align: center;
}




.header {
    position: fixed;
    top: 0;
    left: 0;
    width: 100%;
    padding: 20px 10%;
    display: flex;
    justify-content: space-between;
    align-items: center;
    z-index: 100;
}

.logo {
    position: relative;
    font-size: 44px;
    color: #CFCFCF;
    text-decoration: none;
    font-weight: 600;
    width: 30%;
}

.logo::before{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 100%;
    height: 100%;
    background: #1e1e1f;
    animation: showRight 1s ease forwards;
    animation-delay: .4s;
}

@keyframes showRight {
    100% {
        width: 0;
    }
}

.navbar a {
    font-size: 40px;
    color: #CFCFCF;
    text-decoration: none;
    font-weight: 500;
    margin-left: 35px;
    transition: .3s;
}



.navbar a:hover{
    color: #CAA36E;
    font-size: 50px;
}

.navbar a.active{
    color: #CAA36E;
}

.navbar a::after{
    content: '';
    position: absolute;
    top: 0;
    right: 0;
    width: 60%;
    height: 100%;
    background:#1e1e1f;
    animation: showRight 2s ease forwards;
    animation-delay: .6s;
    z-index: 100;
}


/* snow effect */


.snowing, .snowing:after, .snowing:before{
    content: "";
    position: absolute;
    top: -600px;
    right: 0;
    left: 0;
    bottom: 0;
    z-index: -2;
    background-image:
    radial-gradient(3px 3px at 482px 132px, #fff, transparent),
    radial-gradient(3px 3px at 569px 186px, #fff, transparent),
    radial-gradient(3px 3px at 290px 368px, #fff, transparent),
    radial-gradient(3px 3px at 587px 593px, #fff, transparent),
    radial-gradient(3px 3px at 19px 572px, #fff, transparent),
    radial-gradient(3px 3px at 569px 428px, #fff, transparent),
    radial-gradient(3px 3px at 320px 202px, #fff, transparent),
    radial-gradient(3px 3px at 582px 514px, #fff, transparent),
    radial-gradient(3px 3px at 128px 381px, #fff, transparent),
    radial-gradient(3px 3px at 372px 466px, #fff, transparent),
    radial-gradient(4px 4px at 384px 252px, #fff, transparent),
    radial-gradient(4px 4px at 599px 404px, #fff, transparent),
    radial-gradient(4px 4px at 155px 265px, #fff, transparent),
    radial-gradient(4px 4px at 159px 187px, #fff, transparent),
    radial-gradient(4px 4px at 172px 239px, #fff, transparent),
    radial-gradient(4px 4px at 238px 55px, #fff, transparent),
    radial-gradient(4px 4px at 113px 565px, #fff, transparent),
    radial-gradient(4px 4px at 466px 367px, #fff, transparent),
    radial-gradient(4px 4px at 505px 218px, #fff, transparent),
    radial-gradient(4px 4px at 589px 296px, #fff, transparent),
    radial-gradient(5px 5px at 270px 307px, #fff, transparent),
    radial-gradient(5px 5px at 115px 23px, #fff, transparent),
    radial-gradient(5px 5px at 15px 327px, #fff, transparent),
    radial-gradient(5px 5px at 249px 508px, #fff, transparent),
    radial-gradient(5px 5px at 86px 169px, #fff, transparent),
    radial-gradient(5px 5px at 595px 38px, #fff, transparent),
    radial-gradient(5px 5px at 77px 588px, #fff, transparent),
    radial-gradient(5px 5px at 477px 15px, #fff, transparent),
    radial-gradient(5px 5px at 410px 403px, #fff, transparent),
    radial-gradient(5px 5px at 68px 18px, #fff, transparent);
    background-size: 600px 600px;
    animation: snwoningAnim 5s linear infinite;
}

.snowing:after{
    position: absolute;
    margin-left: -250px;
    opacity: 0.5;
    filter: blur(2px);
    animation-duration: 6s;
}


.snowing:before{
    position: absolute;
    margin-left: -150px;
    opacity: 0.7;
    filter: blur(1px);
    animation-duration: 8s;
}

@keyframes snwoningAnim{
    from{
        transform: translateY(0);
    }
    to{
        transform: translateY(600px);
    }
}

.snowingRight, .snowingRight:after, .snowingRight:before{
    content: "";
    position: absolute;
    top: -1000px;
    right: 0;
    left: -600px;
    bottom: 0;
    z-index: -2;
    background-image:
    radial-gradient(3px 3px at 482px 132px, #fff, transparent),
    radial-gradient(3px 3px at 569px 186px, #fff, transparent),
    radial-gradient(3px 3px at 290px 368px, #fff, transparent),
    radial-gradient(3px 3px at 587px 593px, #fff, transparent),
    radial-gradient(3px 3px at 19px 572px, #fff, transparent),
    radial-gradient(3px 3px at 569px 428px, #fff, transparent),
    radial-gradient(3px 3px at 320px 202px, #fff, transparent),
    radial-gradient(3px 3px at 582px 514px, #fff, transparent),
    radial-gradient(3px 3px at 128px 381px, #fff, transparent),
    radial-gradient(5px 5px at 86px 169px, #fff, transparent),
    radial-gradient(5px 5px at 595px 38px, #fff, transparent),
    radial-gradient(5px 5px at 77px 588px, #fff, transparent),
    radial-gradient(5px 5px at 477px 15px, #fff, transparent),
    radial-gradient(5px 5px at 410px 403px, #fff, transparent),
    radial-gradient(5px 5px at 68px 18px, #fff, transparent);
    background-size: 600px 1000px;
    animation: snwoningAnimRight 20s linear infinite;
    filter: blur(1px);
}

.snowingRight:after{
    position: absolute;
    margin-left: -200px;
    filter: blur(2px);
    animation-duration: 22s;
}


.snowingRight:before{
    position: absolute;
    margin-left: -300px;
    filter: blur(1px);
    animation-duration: 30s;
}

@keyframes snwoningAnimRight{
    from{
        transform: translate(0, 0);
    }
    to{
        transform: translate(600px, 1000px);
    }
}

.snowingLeft, .snowingLeft:after, .snowingLeft:before{
    content: "";
    position: absolute;
    top: -1200px;
    right: -600px;
    left: 0;
    bottom: 0;
    z-index: -2;
    background-image:
    radial-gradient(3px 3px at 372px 466px, #fff, transparent),
    radial-gradient(4px 4px at 384px 252px, #fff, transparent),
    radial-gradient(4px 4px at 599px 404px, #fff, transparent),
    radial-gradient(4px 4px at 155px 265px, #fff, transparent),
    radial-gradient(4px 4px at 238px 55px, #fff, transparent),
    radial-gradient(4px 4px at 113px 565px, #fff, transparent),
    radial-gradient(4px 4px at 466px 367px, #fff, transparent),
    radial-gradient(5px 5px at 15px 327px, #fff, transparent),
    radial-gradient(5px 5px at 249px 508px, #fff, transparent),
    radial-gradient(5px 5px at 86px 169px, #fff, transparent),
    radial-gradient(5px 5px at 68px 18px, #fff, transparent);
    background-size: 600px 1200px;
    animation: snwoningAnimLeft 20s linear infinite;
}

.snowingLeft:after{
    position: absolute;
    margin-left: -50px;
    opacity: 0.5;
    filter: blur(2px);
    animation-duration: 23s;
}


.snowingLeft:before{
    position: absolute;
    margin-left: -400px;
    opacity: 0.7;
    filter: blur(1px);
    animation-duration: 25s;
}

@keyframes snwoningAnimLeft{
    from{
        transform: translate(0, 0);
    }
    to{
        transform: translate(-600px, 1200px);
    }
}

.snow_wrap{
	height: 100vh;
	width: 100%;
	background:transparent;
	background-size: cover;
	background-position: center bottom; 
	overflow: hidden;
	position: absolute;
    display: flex;
    align-items: center;
    overflow: hidden;
}

/* rehab height */



.timeline{
    margin: auto;
    background: #CFCFCF;
    border-radius: 5px;
    width: 8px;
    height: 100%;
}


.timeline-point{
    position: absolute;
    top: -7px;
    border-radius: 50%;
    width: 60px;
    height: 60px;
    background: #CFCFCF;
    justify-content: center;
    align-items: center;
    display: flex;
    color: #1e1e1f;
    font-size: 40px;
}

.timeline-point:hover{
    justify-content: center;
    align-items: center;
    display: flex;
    width: 60px;
    height: 60px;
}


.timeline-point a {
    font-size: 40px;
    color: #1e1e1f;
    transition: .3s;
}

.timeline-point a:hover{
    color: #CAA36E;
    font-size: 50px;
}

.timeline-storybox-2014-2022{
    position: absolute;
    bottom: 150px;
    width: 100%;
    height: 50px;
    background: transparent;
    justify-content: center;
    align-items: center;
    display: flex;
    color: #1e1e1f;
    font-size: 60px;
}

.timeline-storybox-2014-2022 a{
    position: absolute;
    font-size: 40px;
    color: #CFCFCF;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
}
.timeline-storybox-2014-2022 a:hover{
    color: #CAA36E;
    font-size: 50px;
}



.container#blur.active{
    filter: blur(20px);
    pointer-events: none;
    user-select: none;
}

/* popup window */

#popup202306,
#popup202309{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    height: 90%;
    font-size: 30px;
    padding: 50px;
    box-shadow: 1px 1px 10px gray, 1px 1px 10px gray;
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    transition: 0.5s;
    border-radius: 30px;
}

#popup202306.active,
#popup202309.active{
    visibility: visible;
    opacity: 1;
    transition: 0.5s;
}

/* width */
    ::-webkit-scrollbar {
        width: 10px;
    }
  
    /* Track */
    ::-webkit-scrollbar-track {
        border-radius: 10px;
    }
    
    /* Handle */
    ::-webkit-scrollbar-thumb {
        border-radius: 10px;
        background-color: #CFCFCF;
    }
    /* Handle on hover */
    ::-webkit-scrollbar-thumb:hover {
        width: 40px;
        background-color: #CAA36E;
    }




.popup-window{
    background: #1e1e1f;
}
.popup-window a{
    color:#CFCFCF;
    font-size: 30px;
}

.popup-window a:hover{
    color: #CAA36E;
}

.Present{
    position: absolute;
    width: 100%;
    height: 50px;
    top: 20px;
    background: transparent;
    justify-content: center;
    align-items: center;
    display: flex;
    color: #1e1e1f;
}

.Present a{
    position: absolute;
    font-size: 80px;
    color: #CFCFCF;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
}
.Present a:hover{
    color: #ff93fa;
    font-size: 90px;
}

.Present-point{
    position: absolute;
    top: -7px;
    border-radius: 10px;
    width: 60px;
    height: 80px;
    background: #1e1e1f;
    justify-content: center;
    align-items: center;
    display: flex;
    color: #1e1e1f;
    font-size: 40px;
}

.progress-bar{
    position: absolute;
    top: 50px;
    width: 80%;
    height: 52px;
    border-radius: 40px;
    border:6px solid #CFCFCF;
    background: transparent;
}

.progress-bar-done{
    width: 80%;
    height: 100%;
    border-radius: 31px;
    background: #CAA36E;
}


#popup202306,
#popupthings,
#popupconf{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    height: 90%;
    font-size: 30px;
    padding: 50px;
    box-shadow: 1px 1px 10px gray, 1px 1px 10px gray;
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    transition: 0.5s;
    border-radius: 30px;
}

#popup202306.active,
#popupthings.active,
#popupconf.active{
    visibility: visible;
    opacity: 1;
    transition: 0.5s;
}
#popup202309{
    position: fixed;
    top: 50%;
    left: 50%;
    transform: translate(-50%, -50%);
    width: 80%;
    height: 90%;
    font-size: 30px;
    padding: 50px;
    box-shadow: 1px 1px 10px gray, 1px 1px 10px gray;
    overflow: auto;
    visibility: hidden;
    opacity: 0;
    transition: 0.5s;
    border-radius: 30px;
}

#popup202309.active{
    visibility: visible;
    opacity: 1;
    transition: 0.5s;
}


.timeline-storybox-202306,
.timeline-storybox-things,
.timeline-storybox-202102,
.timeline-storybox-202008,
.timeline-storybox-202005,
.timeline-storybox-202001,
.timeline-storybox-201909{
    position: absolute;
    width: 100%;
    height: 50px;
    background: transparent;
    justify-content:space-around;
    align-items: center;
    display: flex;
    color: #1e1e1f;
    font-size: 60px;
}

.timeline-storybox-202306 a,
.timeline-storybox-things a,
.timeline-storybox-202102 a,
.timeline-storybox-202008 a,
.timeline-storybox-202005 a,
.timeline-storybox-202001 a,
.timeline-storybox-201909 a{
    position: absolute;
    font-size: 40px;    
    color: #CFCFCF;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
}

.timeline-storybox-202306 a:hover,
.timeline-storybox-things a:hover,
.timeline-storybox-202102 a:hover,
.timeline-storybox-202008 a:hover,
.timeline-storybox-202005 a:hover,
.timeline-storybox-202001 a:hover,
.timeline-storybox-201909 a:hover{
    color: #CAA36E;
    font-size: 50px;
}

.timeline-storybox-202306{
    bottom: 3600px;
}
.timeline-storybox-things{
    bottom: 3800px;
}
.timeline-storybox-202102{
    bottom: 2700px;
}
.timeline-storybox-202008{
    bottom: 2500px;
}
.timeline-storybox-202005{
    bottom: 2400px;
}
.timeline-storybox-202001{
    bottom: 2300px;
}
.timeline-storybox-201909{
    bottom: 2100px;
}


.timeline-storybox-202309,
.timeline-storybox-conf{
    position: absolute;
    width: 100%;
    height: 50px;
    background: transparent;
    justify-content:space-around;
    align-items: center;
    display: flex;
    color: #1e1e1f;
    font-size: 60px;
}

.timeline-storybox-202309 a,
.timeline-storybox-conf a{
    position: absolute;
    font-size: 40px;    
    color: #CFCFCF;
    cursor: pointer;
    display: inline-block;
    text-decoration: none;
}

.timeline-storybox-202309 a:hover,
.timeline-storybox-conf a:hover{
    color: #46ddf1;
    font-size: 50px;
}

.timeline-storybox-202309{
    bottom: 3800px;
}
.timeline-storybox-conf{
    bottom: 3680px;
}
