@charset "UTF-8";

/* -------------------------------------------
margin padding
-------------------------------------------*/


.mt0{ margin-top:0px !important; }
.mt5{ margin-top:5px !important; }
.mt10{ margin-top:10px !important; }
.mt15{ margin-top:15px !important; }
.mt20{ margin-top:20px !important; }
.mt30{ margin-top:30px !important; }
.mt40{ margin-top:40px !important; }
.mt50{ margin-top:50px !important; }
.mt60{ margin-top:60px !important; }
.mt70{ margin-top:70px !important; }
.mt80{ margin-top:80px !important; }

.mb0{ margin-bottom:0px !important; }
.mb5{ margin-bottom:5px !important; }
.mb10{ margin-bottom:10px !important; }
.mb20{ margin-bottom:20px !important; }
.mb30{ margin-bottom:30px !important; }
.mb40{ margin-bottom:40px !important; }
.mb50{ margin-bottom:50px !important; }
.mb60{ margin-bottom:60px !important; }
.mb70{ margin-bottom:70px !important; }
.mb80{ margin-bottom:80px !important; }


.pt0{ padding-top:0px !important; }
.pt5{ padding-top:5px !important; }
.pt10{ padding-top:10px !important; }
.pt15{ padding-top:15px !important; }
.pt20{ padding-top:20px !important; }
.pt30{ padding-top:30px !important; }
.pt40{ padding-top:40px !important; }
.pt50{ padding-top:50px !important; }
.pt60{ padding-top:60px !important; }
.pt70{ padding-top:70px !important; }
.pt80{ padding-top:80px !important; }

.pb0{ padding-bottom:0px !important; }
.pb5{ padding-bottom:5px !important; }
.pb10{ padding-bottom:10px !important; }
.pb20{ padding-bottom:20px !important; }
.pb30{ padding-bottom:30px !important; }
.pb40{ padding-bottom:40px !important; }
.pb50{ padding-bottom:50px !important; }
.pb60{ padding-bottom:60px !important; }
.pb70{ padding-bottom:70px !important; }
.pb80{ padding-bottom:80px !important; }




/* -------------------------------------------
layout上書き
-------------------------------------------*/
main {
    padding: 69px 0 0 0;
}

.breadcrumb {
    padding: 5px 30px;
}
@media (max-width: 680px) {
	.breadcrumb {
	    padding: 5px 15px;
	}
}

ul.note {
    margin: 10px 0 10px 0;
}
.mds.box,
.mds.rect {
    letter-spacing: 1px;
}

ul.txtlist li a {
    color: #0079ac;
}

#header{
	z-index:10;
}


.txl {
  text-align: left !important;
}

.txc {
  text-align: center !important;
}

.txr {
  text-align: right !important;
}

.eventlist li a .mark_event{
    padding: 20px 10px 0px 10px;
}
ul.tablink {
    text-align: left;
}


/* -------------------------------------------
layout上書き（PC版のみ）
-------------------------------------------*/


@media (min-width: 681px) {

.mds.sml {
    font-size: 22px;
}

ul.tablink {
    margin: 0 -10px 5% 0;
}

ul.tablink li {
    padding: 0 10px 10px 0;
}
ul.tablink li a {
    font-size: 19px;
    padding: 12px 40px;
}


}

/* -------------------------------------------
layout追加
-------------------------------------------*/

.img{
    max-width: 100%;
    width: auto;
}
.imgfull{
    width: 100%;
}

main.nobg {
    background: none;
}

@media (max-width: 680px) {
	main {
	    background: url(/img/common/bg_cnt.svg) center top 50px no-repeat;
	    background-size: 100%;
	}
}

p .tag.dg {
	background: #000;
	font-size: 22px;
}

ul.note a{
    font-size: 1em;
    text-decoration: underline;
}

ul.txtlist li a{
	font-size: 1em;
}

.related_cont{
    display: block;
    text-align: center;
    margin: 0;
    padding: 70px 0;
    border-top: 1px solid #ddd;
}
.navmenu .menu > li .submenu {
    z-index: 100;
}

a.btn:hover {
	color: #fff;
}
.sort_btns a:hover {
	color: #000;
}

ul.topics li a[tabindex]:hover{
	background: #fff;
}

.eventlist li a figure img{
    height: 230px;
}
@media (max-width: 680px) {
	.eventlist li a figure img{
	    height: 200px;
	}
}


/* -------------------------------------------

-------------------------------------------*/






.mds_search.acmenu {
    padding: 10px 10px 10px 60px;
}



.cat_area {
    margin: 0;
}

.eventlist li p.spotinfo, .eventlist_s li p.spotinfo {
        margin: 5px 0;
    font-size: 13px;
    border: 1px solid #999;
    display: inline-block;
    padding: 0px 8px;
}

.eventlist li p.areainfo{
    margin: 0;
}

#event .ttl.railway .facility_nm {
    font-size: 65%;
}

.categoryttl {
    display: none;
}

.categoryttl.is-visible {
    position: static;
    transition: unset;
}
@media (max-width: 681px) {
    .categoryttl {
        display: block;
    }
    #guide .maincont {
        padding: 0 0 20px 0;
    }
}

.contheader+.maincont, .contheader_nomenu+.maincont {
    display: block;
    padding: 1px 0 50px 0;
}
ul.eventlist li .station_name
{
    background: unset;
}
ul.eventlist li .station_name span {
    font-size: 13px;
    background: #000;
    padding: 2px 10px;
    margin: 0 5px 0 0;
    color: #fff;
    display: inline-block;
}


.navmenu .menu > li .submenu ul li a.osite::after {
    content: "";
    display: block;
    background: url(/img/common/icon_othersite_b.png) center center no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translate(0, -50%);
}

#navpanel .navmenu div.inner ul li a.osite::after {
    content: "";
    display: block;
    background: url(/img/common/icon_othersite_w.png) center center no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: 15px;
    top: 50%;
    transform: translate(0, -50%);
}
footer .fcol .fmenu li a.osite::after {
    content: "";
    display: block;
    background: url(/img/common/icon_othersite_w.png) center center no-repeat;
    background-size: contain;
    width: 12px;
    height: 12px;
    position: absolute;
    right: -20px;
    top: 50%;
    transform: translate(0, -50%);
}

@media (max-width: 680px) {
    #navpanel .navmenu {
        padding: 0 0 30%;
    }
}

#navpanel {
  padding: 3%;
}

#navpanel .navmenu ul.submenu {
   max-width: 1000px;
}




