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

.container{
    height:850px;
    background-color: #eee;
    display: flex;;
}
header{
    width:200px;
    background-color: #f58f19;
}
.logo{
    margin:20px 0;
}
.gnb{
    width:180px;
    margin:0 auto;
}
.gnb>li>a{
    display: flex;
    width:180px;
    height:50px;
    align-items: center;
    font-weight: bold;
    color: #fff;
}
.gnb>li>ul>li>a{
    display: flex;
    width:180px;
    height:30px;
    align-items: center;
}
.gnb>li>ul{
    background-color: #fff;
    height: 0;
    overflow: hidden;
    transition: all 0.5s ease 0s;
}
.gnb>li:hover ul{
    height:130px;
}
.gnb li:hover>a{
    background-color: #000;
    color: #fff;
}
.spot{
    display: flex;
    width:180px;
    margin:0 auto;
    margin-top:50px;
}
.spot>li{
    flex:1;
    text-align: center;
    color:#fff;
    text-decoration: underline;
}

.wrap{
    width:calc(100% - 200px);
}
.station{
    width:100%;
    height:400px;
    overflow: hidden;
    position: relative;
}
.train{
    width:100%;
    height:300%;
    transition: all 0.6s ease 0s;
}
.train>li{
    width:100%;
    height:33.333%;
}
.train>li img{
    width:100%;
    height:100%;
    object-fit: cover;
}
.direct{
    position: absolute;
    right:0;
    top:0;
    background-color: #fff;
    text-align: center;
    padding:10px;
}
.banner{
    display: flex;
    align-items: center;
    justify-content: space-between;
    padding:20px;
    box-sizing: border-box;
}
.tabmenu{
    padding:20px;
    box-sizing: border-box;
}
.tabs{
    display: flex;
    margin-bottom:20px;
}
.tabs a{
    padding: 10px;
}
.tabs a.on{
    background-color: #f58f19;
    color:#fff;
}
.notice li{
    display: flex;
    justify-content: space-between;
    border-bottom: 1px solid #333;
    margin-bottom:10px;
}
.gallery{
    display: flex;
    justify-content: space-between;
}
.tabcontents>ul{
    display: none;
}
.notice.on{
    display: block;
}
.gallery.on{
    display: flex;
}


footer{
    height:100px;
    background-color: #000;
    color:#fff;
    display: flex;
    justify-content: space-between;
    align-items: center;
}
.sns{
    display: flex;
}
.popup{
    position:fixed;
    width:300px;
    left:300px;
    top:300px;
    border:3px solid #000;
    background-color: #fff;
    padding:30px;
    display: none;
}
.popup.on{
    display: block;
}
.popup_ctl{
    margin-top:20px;
    display: flex;
    justify-content: flex-end;
}
.btn_close{
    border:2px solid #000;
    padding:10px 35px;
    cursor: pointer;
}
.popup h2{
    margin-bottom: 20px;
}