@charset "UTF-8";

/* --------------------------------------------------------------------------------------
 トップ
--------------------------------------------------------------------------------------- */

/* メイン */
.toppage #contentshead{
	width: 860px;
	margin:20px auto 20px;
}

.topdelayinfo {
	position: relative;
	background-color: #1da1f2;
	width: 860px;
	margin: 0 auto 15px;
	overflow: hidden;
}
.topdelayinfo h2 {
	float: left;
	width: 80px;
	height: 51px;
}
.topdelayinfo h2 a {
	position: absolute;
	display: block;
	background-image: url(../img/tit_top_travelinfo2.gif);
	background-repeat: no-repeat;
	background-position: 12px center;
	width: 80px;
	height: 100%;
	top: 0;
	left: 0;
	text-indent: -9999px;
}
.topdelayinfo .wrap {
	float: left;
	display: table;
	width: 749px;
	background-color: #f5f5f5;
	margin: 0 auto;
	padding: 10px 15px;
	border: 1px solid #e1e1e1;
	border-left: 0;
	min-height: 45px
}
.topdelayinfo .message {
	display: table-cell;
	width: 594px;
	padding-right: 15px;
	vertical-align: middle;
}
.topdelayinfo .message span {
	font-size: 100%;
	line-height: 1.4;
}

.topdelayinfo .buttons {
	display: table-cell;
	width: 140px;
	vertical-align: middle;
}
.topdelayinfo .buttons a {
	display: inline-block;
	margin: 3px 0;
}

/*for IE6 */
* html .topdelayinfo .message ,
* html .topdelayinfo .buttons {
	display: inline;
	zoom: 1;
}
/*for IE7 */
*:first-child+html .topdelayinfo .message ,
*:first-child+html .topdelayinfo .buttons {
	display: inline;
	zoom: 1;
}



.toppage #contentsarea{
	margin:0 auto 20px;
}

.toppage #contentsarea #main{
	width:643px;
	float:left;
}

.toppage #contentsarea #sub{
	width:205px;
	float:right;
}

.toppage #header h1{
	width:246px;
	position:absolute;
	top:21px;
	left:0;
}

.toppage #main .topcaution{
	width:619px;
	margin:0 0 10px 0;
	padding:10px;
	clear:both;
	background-color:#ffeded;
	border:2px solid #ffabab;
}

.toppage #main .topcaution h2{
	width:90px;
	float:left;
}

.toppage #main .topcaution p{
	margin:0 0 0 103px;
}

.toppage #main .topinfo{
	width:643px;
	margin:0 0 20px 0;
	clear:both;
}

.toppage #main .topinfo h2{
	position:relative;
	margin:0 0 18px 0;
}

.toppage #main .topinfo h2 span {
	position:absolute;
	background: url(../img/ic_arrow.gif) no-repeat 10px center #fff;
	top: 10px;
	right: 10px;
	padding: 0 10px 0 21px;
	border: 1px solid #e1e1e1;
	line-height: 26px;
}

.toppage #main .topinfo h2 span a {
	color: #333399;
	text-decoration: none;
}

.toppage #main .topinfo h2 span a:hover {
	text-decoration:none;
}


.toppage #main .topinfo #cat_filter {
	width: 616px;
	margin: 0 auto 20px;
	overflow: hidden;
	text-align: center;
}
.toppage #main .topinfo #cat_filter li {
	display: inline-block;
	float: left;
	margin: 0 6px;
	padding: 0;
}
.toppage #main .topinfo #cat_filter li a {
	display: block;
	width: 142px;
	height: 42px;
	text-indent: -9999px;
}
.toppage #main .topinfo #cat_filter li a.lst_info {
	background: url(../img/btn_top_filter_info.gif) no-repeat 0 0 #fff;
}
.toppage #main .topinfo #cat_filter li a:hover.lst_info ,
.toppage #main .topinfo #cat_filter li a.act.lst_info {
	background: url(../img/btn_top_filter_info_on.gif) no-repeat 0 0 #fff;
}

.toppage #main .topinfo #cat_filter li a.lst_event {
	background: url(../img/btn_top_filter_event.gif) no-repeat 0 0 #fff;
}
.toppage #main .topinfo #cat_filter li a:hover.lst_event ,
.toppage #main .topinfo #cat_filter li a.act.lst_event {
	background: url(../img/btn_top_filter_event_on.gif) no-repeat 0 0 #fff;
}

.toppage #main .topinfo #cat_filter li a.lst_tickets {
	background: url(../img/btn_top_filter_tickets.gif) no-repeat 0 0 #fff;
}
.toppage #main .topinfo #cat_filter li a:hover.lst_tickets ,
.toppage #main .topinfo #cat_filter li a.act.lst_tickets {
	background: url(../img/btn_top_filter_tickets_on.gif) no-repeat 0 0 #fff;
}

.toppage #main .topinfo #cat_filter li a.lst_note {
	background: url(../img/btn_top_filter_note.gif) no-repeat 0 0 #fff;
}
.toppage #main .topinfo #cat_filter li a:hover.lst_note ,
.toppage #main .topinfo #cat_filter li a.act.lst_note {
	background: url(../img/btn_top_filter_note_on.gif) no-repeat 0 0 #fff;
}


.toppage #main .topinfo .infowide {
	margin-bottom:8px;
}

.toppage #main .topinfo .infowide li {
	background:url(../img/bg_linedot.gif) repeat-x left bottom;
}

.toppage #main .topinfo .infowide li img {
	margin:6px 5px 6px 0;
	vertical-align:middle;
}

.toppage #main .topinfo .infonormal {
	width:603px;
	margin: 0 auto;
}
.toppage #main .topinfo .infonormal li {
	width:603px;
	display:inline-block;
}

.toppage #main .topinfo .infonormal li.even {
	background-color:#f4f4f4;
}

.toppage #main .topinfo .infonormal li dl dt {
	width:120px;
	padding: 0;
	float: left;
}

*:first-child+html .toppage #main .topinfo .infonormal li dl dt {
	margin-top:4px;
}

* html .toppage #main .topinfo .infonormal li dl dt{
	margin-top:4px;
}

.toppage #main .topinfo .infonormal li dl dd{
	margin:4px 0;
	padding:0 0 0 130px;
}

.toppage #main .topinfo .infonormal li img{
	margin:0 10px 0 0;
	vertical-align:middle;
}

.toppage #main .bnrarea{
	width:643px;
	padding: 10px 0 0 0;
}
.toppage #main .bnrarea .contentsbnr_l ,
.toppage #main .bnrarea .contentsbnr_s {
	margin: 0 0 10px 0;
	overflow: hidden;
}
.toppage #main .bnrarea .contentsbnr_l li ,
.toppage #main .bnrarea .contentsbnr_s li {
	float:left;
	margin-right: 10px;
}
.toppage #main .bnrarea .contentsbnr_l li.last ,
.toppage #main .bnrarea .contentsbnr_s li.last {
	float:left;
	margin-right: 0;
}



/* サイド */

#sub .bnr{
	width:205px;
	clear:both;
	padding-bottom:5px;
}

#sub .bnr li{
	margin-bottom:5px;
}

#sub .sidehelp ,
#sub .sidecompany {
	background-color: #e1e1e1;
	margin-bottom: 10px;
	padding: 0;
}
#sub .sidehelp ul li ,
#sub .sidecompany ul li {
	margin: 0 0 5px 0;
	padding: 0 4px;
}

#sub .sidesafety {
	margin-bottom:10px;
	padding:0;
}
#sub .sidesafety ul {
	background-color:#fff;	
	padding: 0;
	border: 1px solid #e1e1e1;
	border-top: 0;
}
#sub .sidesafety ul li {
	background: url(../img/ic_arrow.gif) no-repeat 10px center #fff;
	padding: 0 10px 0 21px;
	line-height: 32px;
}



#sub .bnrtxt{
	width:205px;
	clear:both;
	font-size:12px !important;
}

#sub .bnrtxt li{
	width:208px;
	border:1px solid #e1e1e1;
	margin-bottom:5px;
	padding:5px;
	display:inline-block;
}

#sub .bnrtxt li p{
	margin:0 0 0 50px;
}

#sub .bnrtxt li img{
	float:left;
	padding:0 10px 0 0;
}




/* --------------------------------------------------------------------------------------
 スライド設定
--------------------------------------------------------------------------------------- */
#carousel {
	background-color: #d0eafb;	
	width: 860px !important;
	max-width: 640px !important;
	margin: 0 auto 20px;
	padding: 5px 50px 5px 5px;
	overflow: hidden;
}
#carousel .sp-slides {
	width: 640px;
	height: 278px;	
}
#carousel .sp-slide img {
	border: 2px solid #fff;
}
#carousel .sp-thumbnails-container {
	width: 210px;
	overflow: visible !important;
}
#carousel .sp-thumbnails-container .sp-selected-thumbnail {
	position: relative;
}
#carousel .sp-thumbnails-container .sp-selected-thumbnail::before {
	content: '';
	display: inline-block;
	position: absolute;
	width: 10px;
	height: 0;
	top: 50%;
	left: -10px;
	margin-top: -5px;
	border-top: 5px solid transparent;
	border-bottom: 5px solid transparent;
	border-left: 0;
	border-right: 10px solid #339;
	color: #339;
	z-index: 9;
}
#carousel .sp-thumbnails-container .sp-selected-thumbnail .sp-thumbnail-image {
	border: 2px solid #339;
}
#carousel .sp-right-thumbnails {
	margin: 15px 0 0 5px;
	padding: 0 0 0 0;
	top: 5px;
	right: 5px;
}
#carousel .sp-thumbnail-container {
	width: 210px !important;
	padding: 0 0 0 10px;
}
#carousel .sp-thumbnail-image {
	width: 100%;
	height: auto;
	border: 2px solid #fff;
	box-sizing: border-box;
}
#carousel .sp-previous-thumbnail-arrow {
	background-image: url(../img/arrow_prev.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	width: 26px;
	height: 26px;
	top: -10px !important;
	transform: none;
}
#carousel .sp-next-thumbnail-arrow {
	background-image: url(../img/arrow_next.png);
	background-repeat: no-repeat;
	background-position: 0 0;
	width: 26px;
	height: 26px;
	bottom: -10px !important;
	transform: none;
}
#carousel .sp-previous-thumbnail-arrow::before ,
#carousel .sp-previous-thumbnail-arrow::after ,
#carousel .sp-next-thumbnail-arrow::before ,
#carousel .sp-next-thumbnail-arrow::after {
	display: none;	
}

#carousel .sp-caption-container {
	background-image: url(../img/caption_arrow.png);
	background-repeat: no-repeat;
	background-position: 8px 7px;
	background-color: #fff;
	margin: 0;
	padding: 5px 0 5px 25px;
	text-align: left;
}




/* overlay */
.ol_wrap {
	display: none;
	background-color: rgba(0,0,0,0.8);
	position: absolute;
	top: 0;
	left: 0;
	width: 100%;
	height: 100%;
	z-index: 1001;
	text-align: center;
}
.ol_wrap .ol_content {
	position: relative;
	display: inline-block;
	background-color: #fff;
	margin: 200px auto;
	padding: 30px 30px 30px 30px;
}
.ol_wrap .ol_content .ol_close {
	position: absolute;
	display: inline-block;
	text-align: right;
	height: 40px;
	top: -20px;
	right: -20px;
	margin: 0;
	overflow: hidden;
}
.ol_wrap .ol_content .ol_close a {
	display: inline-block;
	background-image: url(../img/ico_close.png);
    background-repeat: no-repeat;
    background-position: 0 0;
	width: 40px;
	height: 0;
	padding-top: 40px;
	overflow: hidden;
}
.ol_wrap .ol_content .ol_pic {
}
.ol_wrap .ol_content .ol_totop {
	text-align: center;
	margin: 30px 0 0 0;
	overflow: hidden;
}
.ol_wrap .ol_content .ol_totop a {
	display: inline-block;
	padding: 10px 40px;
	border: 2px solid #009;
	text-decoration: none;
	overflow: hidden;
}
.ol_wrap .ol_content .ol_totop a span {
	display: inline-block;
	background-image: url(../img/arrow2-right.png);
    background-repeat: no-repeat;
    background-position: right center;
	padding: 0 25px 0 0;
}
