@charset "utf-8";
*{margin:0;padding:0;}
a{text-decoration: inherit;color:inherit;}
ul,ol{list-style: none;}
img{max-width: 100%;}

html{
    background-color: #fff;
    color:#333;
}

header{
    width:1200px;
    height:100px;
    margin:0 auto;
    position: relative;
    z-index: 100;
    display: flex;
    justify-content: space-between;
}
.logo{
    display: flex;
    align-items: center;
}
.gnb{
    display: flex;
    margin-top: 50px;
    margin-right:10px;
    height:50px;
    overflow: hidden;
    transition: all 0.5s ease 0s;
}
.gnb:hover{
    height:140px;
}
.gnb:after{
    content:"";
    position:absolute;
    left:0;
    top:100px;
    width:100%;
    height:0px;
    background-color: green;
    z-index: -1;
    transition: all 0.5s ease 0s;
}
.gnb:hover:after{
    height:130px;
}
.gnb>li>a{
    display: flex;
    height: 50px;
    width:180px;
    align-items: center;
    padding-left:10px;
    font-weight: bold;
}
.gnb ul{
    color:#fff;
}
.gnb>li>ul>li>a{
    display: flex;
    height: 30px;
    width:180px;
    align-items: center;
    padding-left:10px;
}
.gnb li:hover>a{
    background-color: #000;
    color:#fff;
}
.station{
    width:1200px;
    height:300px;
    overflow: hidden;
    margin:0 auto;
}
.train{
    display: flex;
    width:300%;
    height:100%;
    transition: all 0.5s ease 0s;
}
.train>li{
    width:33.333%;
    height:100%;
}
.train>li img{
    width:100%;
    height:100%;
    object-fit: cover;
}
.contents{
    width:1200px;
    height:200px;
    display: flex;
    margin:0 auto;
}

.contents>section{
    flex:1;
    padding:10px;
}
.contents h2{
    margin:20px 0;
}
.notice li{
    display: flex;
    justify-content: space-between;
}
.gallery{
    display: flex;
    justify-content: space-between;
}
.banner{
    background: url("../img/banner.jpg") no-repeat 50% 50% / cover;
    display: flex;
    align-items: center;
    justify-content: center;
}
.banner a{
    background: green;
    color:#fff;
    padding:10px 35px;
}
footer{
    margin:0 auto;
    width:1200px;
    height:100px;
    background-color: #000;
    color:#fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
}

.modal{
    position: fixed;
    left:0;
    top:0;
    z-index: 500;
    width:100%;
    height:100%;
    background: #000;
    opacity: 0.8;
    display: none;
}
.modal.on{display: block;}
.popup{
    position: fixed;
    left:200px;
    top:200px;
    z-index: 510;
    width:300px;
    background-color: #fff;
    border:1px solid #000;
    padding:20px;
    display: none;
}
.popup.on{
    display: block;
}
.popup_ctl{
    margin-top:20px;
    display: flex;
    justify-content: flex-end;
}
.btn_close{
    border:1px solid #000;
    cursor: pointer;
    padding:5px 30px;
}