@charset "utf-8";
/* -----------------------------------------
common.css
サイト共通設定用css

＜class名ルール＞
このファイルで使用するclassには以下の接頭語を付加する。
（他のcssファイルでは不要）
・汎用クラス：「.c_xxx」（common）
・モジュール：「.m_xxx」（module）
・ページフレーム、モジュール内のパーツ：「.p_xxx」（parts）
・モジュールの状態：「.s_xxx」（state）
※JSのみで使用：「.js_xxx」
----------------------------------------- */

/* -----------------------------------------
汎用モジュール
----------------------------------------- */

/* section 
------------------------*/
.m_sectionL {
	margin-bottom: 50px;
}
.m_sectionM {
	margin-bottom: 30px;
}
.m_sectionS {
	margin-bottom: 15px;
}
.m_cancelMargin > *:first-child {
	margin-top: 0;
}
.m_cancelMargin > *:last-child {
	margin-bottom: 0;
}
 
#sp_css .m_sectionL {
	margin-bottom: 30px;
}
#sp_css .m_sectionM {
	margin-bottom: 20px;
}
#sp_css .m_sectionS {
	margin-bottom: 10px;
}

/* title
------------------------*/

.m_fullTitle{
	position: relative;
	height: 0;
	padding-top: 25%;
}
.m_fullTitle.s_transitFare{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/transit_fare/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_timetable{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/timetable/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_guide{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/guide/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_ticket{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/ticket/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_specialExpress{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/special_express/img/img_main02.jpg) no-repeat right 0;
	background-size: contain;
}
#sp_css .m_fullTitle.s_specialExpress{
	background: url(/common/img/cmn_layer_bg.png) no-repeat -100px 0,
				url(/special_express/img/img_main02_sp.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_tj{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/tj/img/img_main.jpg) no-repeat right 0;
	background-size: cover;
}

/*201903追記*/
.m_fullTitle.s_useful{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/useful/img/img_main.jpg) no-repeat right 0;
	background-size: cover;
}
/*201903追記*/

.m_fullTitle.s_delay{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/useful/delay/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_customerCenter{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/customer_center/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_service{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/useful/service/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_women{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/women/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_vehicles{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/vehicles/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}
.m_fullTitle.s_wrapping{
	background: url(/common/img/cmn_layer_bg.png) no-repeat 0 0,
				url(/wrapping_train/img/img_main.jpg) no-repeat right 0;
	background-size: contain;
}

.m_fullTitle .m_fullTitleInner{
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	max-width: 980px;
	width: 100%;
	margin: auto;

}
.m_fullTitle .p_title{
	position: absolute;
	color: #fff;
	font-size: 32px;
	font-weight: bold;
	bottom: 58%;
	left: 20px;
}

.m_fullTitle .p_text{
	color: #fff;
	position: absolute;
	top: 52%;
	left: 20px;
	line-height: 1.8;
}
#sp_css .m_fullTitle{
	background-size: 0, cover;
	padding-top: 25%;
}
	
@media screen and (max-width: 640px){
	#sp_css .m_fullTitle{
		padding-top: 50%;
	}
}
#sp_css .m_fullTitle .p_title,
#sp_css .m_fullTitle .p_text{
	text-shadow: 1px 1px 3px #000;
}

#sp_css .m_fullTitle .p_title,
#sp_css .m_fullTitle .p_text{
	text-align: center;
	left: 0;
	right: 0;
	margin: 0 auto;
}
#sp_css .m_fullTitle .p_title{
	font-size: 22px;
	bottom: 52%;
}
#sp_css .m_fullTitle .p_text{
	top: 50%;
	line-height: 1.3;
}

.m_pageTitle{
	border-bottom: 2px solid #005bac;
	color: #005bac;
	font-size: 171.4%; /*24px*/
	font-weight: bold;
	margin-bottom: 40px;
	padding-bottom: 12px;
}
#sp_css .m_pageTitle{
	width: 100%;
	background-color: #005bac;
	text-align: center;
	color: #fff;
	font-size: 18px;
	margin: -10px -10px 10px;
	padding: 13px;
}
#sp_css .m_pageTitle:before{
	content: attr(data-subtitle);
	display: block;
	color: #7d9fd2;
	font-size: 12px;
	line-height: 1.8
}
.m_title01{
	display: table;
	width: 100%;
	background-color: #005bac;
	color: #fff;
	font-size: 128.6%;/*18px*/
	font-weight: bold;
	margin-bottom: 28px;
	padding: 14px;
	box-sizing: border-box;
}
#sp_css .m_title01{
	margin-bottom: 15px;
	padding: 10px;
}
.m_title02{
	display: table;
	width: 100%;
	border-left: 4px solid #005bac;
	font-size: 114.3%;/*16px*/
	font-weight: bold;
	margin-bottom: 10px;
	padding: 7px;
	box-sizing: border-box;
}
.m_title01 span.p_inner,
.m_title02 span.p_inner{
	display: table-cell;
	vertical-align: middle;
}

/*202002_追加*/
.m_title01_1{
	display: table;
	width: 100%;
	background-color: #005bac;
	color: #fff;
	font-size: 128.6%;/*18px*/
	font-weight: bold;
	margin-bottom: 28px;
	padding: 28px;
	box-sizing: border-box;
}
#sp_css .m_title01_1{
	margin-bottom: 15px;
	padding: 10px;
}
.m_title01_1 span.p_inner{
	display: table-cell;
	vertical-align: middle;
}
/*202002_追加_ここまで*/


.m_title02 a{
	color: #005bac;
	text-decoration: none;
}
.m_title02 a:hover{
	position: relative;
	color: #00adee;
	text-decoration: none;
}
.m_title02 a:after{
	content:">";
	display: inline-block;
	margin-left: 10px;
	-webkit-transform: scale(0.7,1);
	        transform: scale(0.7,1);
}
#sp_css .m_title02{
	font-size: 12px;
	padding: 5px;
}
.m_title03{
	font-size: 128.6%;
	font-weight: bold;
	margin-bottom: 20px;
}
#sp_css .m_title03{
	text-align: center;
	margin-bottom: 10px;
}

.m_title04{
	color: #005bac;
	font-size: 114.3%;/*16px*/
	font-weight: bold;
	margin-bottom: 10px;
}
#sp_css .m_title04{ font-size: 14px;}


.m_title04.sizeL{
	font-size: 171.4%;/*24px*/
}
#sp_css .m_title04.sizeL{ font-size: 18px;}


/* link 
------------------------*/
.m_link {
	position: relative;
	display: inline-block;
	color: #005bac;
	padding-left: 15px;
	text-decoration: underline;
}
.m_link:hover {
	color: #00adee;
	text-decoration: underline;
}
.m_link:before {
	content: "";
	position: absolute;
	top: 0.4em;
	left: 2px;
	border-left: 7px solid #005bac;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
}
.m_link.s_more{
	padding-left: 0px;
	text-decoration: none;
	padding-right: 12px;
}
.m_link.s_more:before{ display: none;}
.m_link.s_more:after{
	content: "";
	position: absolute;
	top: 0.4em;
	right: 2px;
	width: 4px;
	height: 4px;
	border-top: 1px solid #005bac;
	border-right: 1px solid #005bac;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
	margin: auto 0;
}
.m_link.s_more:hover:after{
	border-top-color: #00adee;
	border-right-color: #00adee;
}

.m_blankLink {
	display: inline-block;
	color: #005bac;
	background: url(/common/img/cmn_icon_blank_01.gif) no-repeat 0 0.3em;
	background-size: 12px;
	text-decoration: underline;
	padding-left: 15px;
}

.m_blankLink:hover {
	color: #00adee;
	text-decoration: underline;
}
.m_blankLink02:after{
	content: "";
	display: inline-block;
	vertical-align: top;
	width: 14px;
	height: 14px;
	margin-left: 2px;
	background: url(/common/img/cmn_icon_blank_03.gif) no-repeat 0px 1px;
}
.m_pdfLink{
	color: #005bac;
}
.m_pdfLink:after{
	content: "";
	display: inline-block;
	vertical-align: top;
	width: 13px;
	height: 17px;
	color: #005bac;
	margin-left: 3px;
	background: url(/common/img/cmn_icon_pdf.gif) no-repeat 0 0.2em;
}
.m_pdfLink:hover {
	color: #00adee;
	text-decoration: underline;
}
.m_pdfLink02,
a.m_pdfLink02{
	display: inline-block;
	background: url(/common/img/cmn_icon_pdf.gif) no-repeat 0 0.2em;
	background-size: 13px 14px;
	padding-left: 15px;
}
.m_pdfLink02 a,
a.m_pdfLink02{
	text-decoration: underline;
	color: #005bac;
}
.m_pdfLink02.c_fontS a,
a.m_pdfLink02.c_fontS{
	background-size: 11px 12px;
}
.m_pdfLink02 a,
a.m_pdfLink02:hover {
	color: #00adee;
	text-decoration: underline;
}

.m_searchLink01{
	display: inline-block;
	background: url(/common/img/cmn_icon_search_01.gif) no-repeat 0 0.25em;
	background-size: 13px 13px;
	text-decoration: underline;
	color: #005bac;
	padding-left: 15px;
}
.m_searchLink01:hover {
	color: #00adee;
	text-decoration: underline;
}

/*カラー設定*/
a.s_colorDefault{
	color: #e8783a !important;
	text-decoration: underline !important;
}
a.s_colorDefault:hover {
	color: #f0ac86 !important;
}

/* list 
------------------------*/
.m_list {
	margin: 10px 0;
}
.m_table .m_list {
	margin: 0;
}
.m_list > li {
	position: relative;
	margin-top: 7px;
}
.m_list > li:first-child,
.m_list.s_marginL > li:first-child{
	margin-top: 0px;
}
.m_list.s_marginL > li {
	margin-top: 25px;
}
#sp_css .m_list.s_marginL > li {
	margin-top: 20px;
}
#sp_css .m_list > li:first-child,
#sp_css .m_list.s_marginL > li:first-child{
	margin-top: 0px;
}
.m_list.s_circle > li {
	padding-left: 1.2em;
}
.m_list.s_circle > li:before {
	content: "●";
	position: absolute;
	top: 0;
	left: 0;
	-webkit-transform: scale(0.7);
	        transform: scale(0.7);
	color: #005bac;
}
.m_list.s_note > li {
	padding-left: 1.2em;
	margin-top: 3px;
}
.m_list.s_note > li:before {
	content: "※";
	position: absolute;
	top: 0;
	left: 0;
}
.m_list.s_number {
	padding-left: 25px;
}
.m_list.s_number > li {
	list-style-type: decimal;
}
.m_list.s_number.s_parentheses{
	padding-left: 0px;
}
.m_list.s_number.s_parentheses > li {
	position: relative;
	list-style-type:none;
	counter-increment: cnt;
	padding-left: 40px;
}
.m_list.s_number.s_parentheses > li:before{
	content: "（" counter(cnt) "）";
	position: absolute;
	top: 0;
	left: 0;
}
#sp_css .m_list.s_number.s_parentheses > li{
	padding-left: 35px;
}

.m_list.s_link01 li{
	display: inline-block;
	margin-left: 15px;
}
#sp_css .m_list.s_link01 li{
	display: table;
	width: 100%;
	border: 1px solid #eee;
	border-top: none;
	box-sizing: border-box;
	margin-left: 0;
	margin-top: 0;
}
#sp_css .m_list.s_link01 li:first-child{
	border-top: 1px solid #eee;
}
#sp_css .m_list.s_link01 li a{
	display: table-cell;
	width: 100%;
	padding: 14px 30px;
	text-decoration: none;
}
#sp_css .m_list.s_link01 li a:before{
	top: 50%;
	left: 15px;
	-webkit-transform: translate(0, -50%);
	    transform: translate(0, -50%);
}
.m_indentList {
	margin: 10px 0;
}
.m_indentList li {
	margin-top: 5px;
}
.m_indentList li:first-child {
	margin-top: 0;
}
.m_indentList .p_head {
	float: left;
	margin-right: 5px;
}
.m_indentList .p_text {
	overflow: hidden;
}


/*col
------------------------*/
.m_colList{
	letter-spacing: -1em;
	margin-left: -20px;
}
.m_colList >li{
	display: inline-block;
	border-left: 20px solid transparent;
	border-bottom: 20px solid transparent;
	letter-spacing: 0;
	vertical-align: top;
	box-sizing: border-box;
	margin-bottom: 0;
}
.m_colList.s_spaceL{
	margin-left: -40px;
}
.m_colList.s_spaceL > li{
	border-left: 40px solid transparent;
}

.m_colList.s_2col > li{ width: 50%;}
.m_colList.s_3col > li{ width: 33.3333%;}
.m_colList.s_4col > li{ width: 25%;}
.m_colList > li .p_image{
	text-align: center;
	margin-bottom: 10px;
}

@media screen and (max-width: 640px){
	#sp_css .m_colList.s_sp1col{
		margin-left: 0px;
	}
	#sp_css .m_colList.s_sp1col >li{
		width: 100%;
		border: 0px;
	}
}

@media screen and (max-width: 640px){
	#sp_css .m_colList{
		margin-left: -10px;
	}
	#sp_css .m_colList >li{
		width: 50%;
		border-left: 10px solid transparent;
		border-bottom: 10px solid transparent;
	}
}

/*img
------------------------*/
.m_leftImg {
	float: left;
	max-width: 300px;
	text-align: center;
	margin: 0px 30px 10px 0;
}
.m_rightImg {
	float: right;
	max-width: 300px;
	text-align: center;
	margin: 0 0 10px 15px;
}
#pc_css .m_leftImg.s_sizeWrap,
#pc_css .m_rightImg.s_sizeWrap{
	max-width: 400px;
}
#sp_css .m_leftImg.s_sizeWrap,
#pc_css .m_rightImg.s_sizeWrap{
	max-width: inherit;
	width: 100%;
}
#sp_css .m_leftImg.s_sizeWrap img,
#pc_css .m_rightImg.s_sizeWrap img{
	max-width: inherit;
	width: 100%;
}
.m_leftImg.s_box,
.m_rightImg.s_box{
	width: 300px;
	border: 1px solid #ddd;
	box-sizing: border-box;
}
.m_leftImg .p_title01,
.m_rightImg .p_title01{
	background-color: #eee;
	font-weight: bold;
	padding: 13px 15px;
}
.m_leftImg .p_inner,
.m_rightImg .p_inner{
	padding: 20px;
}

/*スマホ時*/
#sp_css .m_leftImg {
	float: none;
	margin: 0 auto 15px;
}
#sp_css .m_rightImg {
	float: none;
	margin: 0 auto 15px;
}

/*画像とテキスト、スマホ時反転*/
#sp_css .s_spReversal{ -webkit-transform: rotateX(180deg); transform: rotateX(180deg)}
#sp_css .s_spReversal > *{ -webkit-transform: rotateX(-180deg); transform: rotateX(-180deg)}


/*btn
------------------------*/
.m_btn{
	position: relative;
	display: block;
	background-color: #fff;
	border: 2px solid #005bac;
	text-decoration: none !important;
	width: 100%;
	color: #005bac;
	font-size: 128.6%;/*18px*/
	font-weight: bold;
	text-align: center;
	padding: 9px 35px 9px 15px;
	box-sizing: border-box;
	cursor: pointer;
}
.m_btn:after{
	content: "";
	position: absolute;
	top: 50%;
	right: 10px;
	border-left: 11px solid #005bac;
	border-top: 8px solid transparent;
	border-bottom: 8px solid transparent;
	-webkit-transform: translate(0, -50%);
	    transform: translate(0, -50%);
}
.m_btn:hover{
	background-color: #005bac;
	color: #fff !important;
}
.m_btn.s_arrowR:after{
	-webkit-transform: translate(0, -50%) rotate(180deg);
	    transform: translate(0, -50%) rotate(180deg);
	left: 10px;
	right: auto;
}
.m_btn.s_blank:after{
	content: "";
	background: url(/common/img/cmn_icon_blank_01.gif) no-repeat 0 0;
	width: 24px;
	height:24px;
	background-size: contain;
	border: none;
}
.m_btn.s_blank:hover:after{
	background: url(/common/img/cmn_icon_blank_01_on.gif) no-repeat 0 0;
	background-size: contain;
}
.m_btn:hover:after{
	border-left-color: #fff;
}


/*201903追記*/
.m_btn.orange{
	width: 90%;
	background-color: #e8783a;
	border: 2px solid #e8783a;
	color: #fff;
	border-radius: 5px;
	margin: 0 auto;
	padding: 9px 35px 9px 15px;
}
.m_btn.orange:after{
	border-left: 11px solid #fff;
}
.m_btn.orange:hover{
	background-color: #fff;
	color: #e8783a !important;
}
.m_btn.orange:hover:after{
	border-left-color: #e8783a;
}
.m_btn.orange.s_blank:after{
	content: "";
	background: url(/common/img/cmn_icon_blank_03.gif) no-repeat 0 0;
	width: 24px;
	height:24px;
	background-size: contain;
	border: none;
}
.m_btn.orange.s_blank:hover:after{
	background: url(/common/img/cmn_icon_blank_03_on.gif) no-repeat 0 0;
	background-size: contain;
}
/*201903追記*/


/*スマホ時*/
#sp_css .m_btn{
	padding: 10px 20px;
}
#sp_css .m_btn:after{
	right: 10px;
}
#sp_css .m_btn.s_arrowR:after{
	left: 10px;
	right: auto;
}
#sp_css .m_btn:after{
	border-left: 7px solid #005bac;
	border-top: 4px solid transparent;
	border-bottom: 4px solid transparent;
}
#sp_css .m_btn.s_blank:after{
	width: 15px;
	height: 15px;
	border: none;
}
#sp_css .m_btn:hover:after{ border-left-color: #fff;}


/*201903追記*/
#sp_css .m_btn.orange:after{
	border-left: 7px solid #fff;
}
/*201903追記*/


.m_btnSet{
	letter-spacing: -1em;
	margin-left: -20px;
}
.m_btnSet > li{
	display: inline-block;
	width: 50%;
	border-left: 20px solid transparent;
	letter-spacing: 0;
	vertical-align: top;
	box-sizing: border-box;
	margin-bottom: 0;
}
.m_btnSet > li:last-child{
	
}
#sp_css .m_btnSet >li {
	width: 100%;
	border-bottom: 20px solid transparent;
}
#sp_css .m_btnSet > li:last-child{
	border-bottom: 0px;
}
/*box
------------------------*/
.m_box {
	border: 1px solid #cecece;
	padding: 15px;
	box-sizing: border-box;
}
.m_box .p_title{
	font-size: 114.3%;
	font-weight: bold;
	margin-bottom: 12px;
}
.m_box .p_title.s_relation{
	display: inline-block;
	padding-left: 20px;
	background: url(/common/img/cmn_icon_relation.gif) no-repeat 0 0;
}
.m_box .p_title.s_station{
	display: inline-block;
	padding-left: 20px;
	background: url(/common/img/cmn_icon_station.gif) no-repeat 0 1px;
}
.m_box .p_title.s_phone{
	font-size: 142.9%;/*20px*/
	text-align: center;
}

.m_box.s_blue{
	background-color: #ebf5f7;
	border: none;
	box-sizing: border-box;
}
#sp_css .m_box .p_title{
	margin-bottom: 7px;
	
}
/* table 
------------------------*/
.m_table {
	width: 100%;
	margin: 10px 0 15px;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.m_table th,
.m_table td{
	border-right: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
	padding: 10px;
	box-sizing: border-box;
}
.m_table.type2 th,
.m_table.type2 td{
	padding: 10px 5px;
	font-size: 12px;
}
.m_table th {
	vertical-align: middle;
	background-color: #f5f5f5;
	font-weight: bold;
}

#pc_css .m_table.s_spLayout01 thead th{
	width: inherit !important;
}

#sp_css .m_table.s_spLayout01 tbody th,
#sp_css .m_table.s_spLayout01 tbody td{
	display: block;
	width: 100%;
}
#sp_css .m_table.s_spLayout01 tbody > tr > th,
#sp_css .m_table.s_spLayout01 tbody > tr > td{
	letter-spacing: normal;
	padding: 10px;
}
#sp_css .m_table.s_spLayout01 tbody > tr > th{
	text-align: center;
}
#sp_css .m_table.s_spLayout01 thead > tr{
	background-color: #eee;
	padding: 10px;
	box-sizing: border-box;
}

@media screen and (max-width: 640px){
	#sp_css .m_table.s_spLayout02 {
		display: block;
		position: relative;
		border-top: none;
		width: 100%;
	}
	#sp_css .m_table.s_spLayout02  thead {
		display: block;
		float: left;
	}
	#sp_css .m_table.s_spLayout02  tbody {
		display: block;
		width: auto;
		position: relative;
		overflow-x: auto;
		white-space: nowrap;
	}
	/*スクロールバー*/
	#sp_css .m_table.s_spLayout02  tbody::-webkit-scrollbar {
		height: 5px;
	}
	#sp_css .m_table.s_spLayout02  tbody::-webkit-scrollbar-track{
		border-radius: 5px;
		background: #eee;
	}
	#sp_css .m_table.s_spLayout02  tbody::-webkit-scrollbar-thumb{
		border-radius: 5px;
		background: #666;
	}
	#sp_css .m_table.s_spLayout02  th,
	#sp_css .m_table.s_spLayout02  td {
		display: block;
	}
	#sp_css .m_table.s_spLayout02  tr {
		display: inline-block;
		border-top: 1px solid #ddd;
	}
	#sp_css .m_table.s_spLayout02  tbody tr {
		margin-right: -4px;
		border-top: 1px solid #ddd;
		min-width: 70px;
	}
}
/*s_spLayout03*/
#sp_css .m_table.s_spLayout03 tr{
	display: block;
	letter-spacing: -1em;
	border-bottom: 1px solid #ddd;
	border-right: 1px solid #ddd;
	padding-top: 5px;
}
#sp_css .m_table.s_spLayout03 thead tr{
	background-color: #f5f5f5;
}
#sp_css .m_table.s_spLayout03 th,
#sp_css .m_table.s_spLayout03 td{
	display: inline-block;
	letter-spacing: 0;
	padding: 0px;
	border-right: none;
	border-bottom: none;
}
#sp_css .m_table.s_spLayout03 th{
	background-color: transparent;
	padding: 5px;
}
#sp_css .m_table.s_spLayout03 td{
	border-bottom: none;
	padding: 5px;
}

#sp_css .m_table.s_spLayout03 th,
#sp_css .m_table.s_spLayout03 td{ width: 50%;}


/*料金表*/
.m_table.s_price{
	border: none;
	font-size: 12px;
}
.m_table.s_price th,
.m_table.s_price td{
	border: none;
	border-right: 1px solid #ddd;
	border-top: 1px solid #ddd;
	-webkit-box-sizing: border-box;
	text-align: center;
	padding: 5px;
	box-sizing: border-box;
	font-size: 12px;
}
.m_table.s_price th {
	vertical-align: middle;
	background-color: #f5f5f5;
	font-weight: bold;
}
.m_table.s_price .s_noBor{
	border: none;
}
#sp_css .m_table.s_price th,
#sp_css .m_table.s_price td{
	min-width: 50px;
}
.m_table.s_price.s_reverse{
	border-bottom: none;
}

.m_table.s_price.s_reverse th{
	border-top: 1px solid #ddd;
}
.m_table.s_price tbody tr:last-child th{
	border-bottom: 1px solid #ddd; 
}
.m_table.s_price.s_reverse td{
	border-bottom: 1px solid #ddd; 
}
.m_table.s_price.s_reverse .s_noBor{
	border: none;
}
/*料金表スクロール*/
.m_table.s_priceScroll{
	display: block;
	position: relative;
	border-top: none;
	width: auto;
}

.m_table.s_priceScroll thead{
	display: block;
	float: left;
}
.m_table.s_priceScroll thead th{
	display: block;
	border-top: 1px solid #ddd;
	border-left: 1px solid #ddd;
}
.m_table.s_priceScroll thead tr{
	border-bottom: 1px solid #ddd;
}
.m_table.s_priceScroll tbody {
	display: block;
	width: auto;
	position: relative;
	overflow-x: auto;
	white-space: nowrap;

}
.m_table.s_priceScroll th,
.m_table.s_priceScroll td{
	border-top: 1px solid #ddd;
	width: auto;
	height: 50px;
	min-width: 75px;
}
.m_table.s_priceScroll th{
	border-top: 1px solid #ddd;
	line-height: 39px;
}
.m_table.s_priceScroll tbody tr:last-child td{
	border-bottom: 1px solid #ddd;
}
/*スクロールバー*/
.m_table.s_priceScroll tbody::-webkit-scrollbar {
	height: 10px;
}
.m_table.s_priceScroll tbody::-webkit-scrollbar-track{
	border-radius: 5px;
	background: #eee;
}
.m_table.s_priceScroll tbody::-webkit-scrollbar-thumb{
	border-radius: 5px;
	background: #666;
}
#sp_css .s_priceScroll tbody::-webkit-scrollbar{
	 height: 5px;
}
/*テーブルアイコン*/
.m_table .p_iconAfternoon,
.m_table .p_iconNightbreak{
	background-repeat: no-repeat;
	background-position: 20px center;
	padding-left: 90px;
}
.m_table .p_iconAfternoon{ background-image: url(../img/cmn_icon_afternoon.gif);}
.m_table .p_iconNightbreak{ background-image: url(../img/cmn_icon_nightbreak.gif);}


#sp_css .m_table .p_iconAfternoon,
#sp_css .m_table .p_iconNightbreak{
	background-position: 5px center;
	background-size: 31px 11px;
	padding-left: 40px;
}
.m_table .p_iconIsezaki,
.m_table .p_iconKamedo,
.m_table .p_iconNikkou,
.m_table .p_iconUtsunomiya,
.m_table .p_iconNoda,
.m_table .p_iconTojyo{
	position: relative;
	padding-left: 35px;
}
.m_table .p_iconIsezaki:before,
.m_table .p_iconKamedo:before,
.m_table .p_iconNikkou:before,
.m_table .p_iconUtsunomiya:before,
.m_table .p_iconNoda:before,
.m_table .p_iconTojyo:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	width: 16px;
	height: 6px;
	margin: auto 0;
}
.m_table .p_iconIsezaki:before{ background-color: #b50033;}
.m_table .p_iconKamedo:before{ background-color: #c0ad4a;}
.m_table .p_iconNikkou:before{ background-color: #f08200;}
.m_table .p_iconUtsunomiya:before{ background-color: #d9ae3d;}
.m_table .p_iconNoda:before{ background-color: #00a1e9;}
.m_table .p_iconTojyo:before{ background-color: #014099;}

#sp_css .m_table .p_iconIsezaki,
#sp_css .m_table .p_iconKamedo,
#sp_css .m_table .p_iconNikkou,
#sp_css .m_table .p_iconUtsunomiya,
#sp_css .m_table .p_iconNoda,
#sp_css .m_table .p_iconTojyo{
	padding-left: 20px;
}

#sp_css .m_table .p_iconIsezaki:before,
#sp_css .m_table .p_iconKamedo:before,
#sp_css .m_table .p_iconNikkou:before,
#sp_css .m_table .p_iconUtsunomiya:before,
#sp_css .m_table .p_iconNoda:before,
#sp_css .m_table .p_iconTojyo:before{
	left: 5px;
	width: 10px;
	height: 4px;
}

/*料金表*/
.m_priceBox{
	position: relative;
}
.m_priceBox .p_scroll{
	overflow-x: auto;
}
#sp_css .m_priceBox{
	max-width: 100%;}
#sp_css .m_priceBox .p_scroll{
	overflow: auto;
	white-space: nowrap;
}
.m_priceBox .p_priceHead{
	display: table;
	width: 100%;
	overflow: hidden;
}
.m_priceBox .p_priceHead .p_priceText,
.m_priceBox .p_priceHead .m_radioBtn{
	display: table-cell;
	vertical-align: middle;
}
.m_priceBox .p_priceHead .m_radioBtn{
	display: table;
	float: right;
}
.m_priceBox .p_priceHead .m_radioBtn .p_text,
.m_priceBox .p_priceHead .m_radioBtn .p_radioBtnItem{
	display: table-cell;
	vertical-align: middle;
	padding: 8px 0;
}
.m_priceBox .p_priceHead .m_radioBtn .p_text{
	width: 210px;
	font-size: 12px;
}
/*料金表：ラジオボタン*/
.m_radioBtn{
}
.m_radioBtn .p_radioBtnItem > li{
	display: inline-block;
	letter-spacing: 0;
	border: 1px solid #eee;
	box-sizing: border-box;
	margin-left: 6px;
}
.m_radioBtn .p_radioBtnItem > li:first-child{
	margin-left: 0px;
}
.m_radioBtn .p_radioBtnItem input {
	display: none;
}
.m_radioBtn input + span {
	position: relative;
	display: inline-block;
	width: 100px;
	height: 36px;
	line-height: 36px;
	text-align: center;
	font-size: 12px;
	cursor: pointer;
}
.m_radioBtn input:checked + span,
.m_radioBtn input + span:hover{
	color: #fff;
	background-color: #e8783a;
}
.m_radioBtn input:checked + span:before{
	content: "";
	position: absolute;
	left: 50%;
	bottom: -8px;
	border-left: 5px solid transparent;
	border-right: 5px solid transparent;
	border-top: 8px solid #e8783a;
	-webkit-transform: translate(-50%,0);
	transform: translate(-50%,0);
}

/*スマホ時*/
#sp_css .m_priceBox .p_priceHead .p_priceText,
#sp_css .m_priceBox .p_priceHead .m_radioBtn{
	vertical-align: bottom;
}
#sp_css .m_priceBox .p_priceHead .p_priceText{
	font-size: 12px;
	padding-bottom: 8px;
}
#sp_css .m_priceBox .p_priceHead .m_radioBtn{
	display: block;
	min-width: 160px;
}
#sp_css .m_radioBtn .p_radioBtnItem > li{
	margin-left: 3px;
}
#sp_css .m_radioBtn .p_radioBtnItem > li:first-child{
	margin-left: 0;
}
#sp_css .m_priceBox .p_priceHead .m_radioBtn .p_text,
#sp_css .m_priceBox .p_priceHead .m_radioBtn .p_radioBtnItem{
	display: block;
}
#sp_css .m_priceBox .p_priceHead .m_radioBtn .p_text{
	width: auto;
	font-size: 10px;
	margin-bottom: 3px;
	padding: 0px;
}
#sp_css .m_priceBox .p_priceHead .m_radioBtn .p_radioBtnItem{
	padding: 0 0 8px 0;
}
#sp_css .m_radioBtn input + span {
	width: 65px;
	font-size: 10px;
}

/*料金表JS：初期値*/
.js_ratesNum > li,
.js_fareNum > li{ display: none;}

.js_ratesNum > li{
	color: #005bac;
}

/*アンカーボタン
------------------------*/
.m_ancBtn{
	display: table;
	width: 100.1020%;
	margin-left: -1px;
	margin-bottom: 20px;
}
.m_ancBtn ul{
	display: table-row;
}
.m_ancBtn ul > li{
	overflow: hidden;
	position: relative;
	background-color: #ebf5f7;
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	display: table-cell;
	vertical-align: middle;
	box-sizing: border-box;
}
.m_ancBtn ul > li a:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	width: 12px;
	height: 12px;
	background-color: #005bac;
	border-radius: 50%;
	margin: auto 0;
}
.m_ancBtn ul > li a:after{
	content: "";
	position: absolute;
	top: -3px;
	bottom: 0;
	left: 13px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
	margin: auto 0;
}

.m_ancBtn ul > li a{
	position: relative;
	display: block;
	color: #005bac;
	text-decoration: underline;
	padding: 15px 15px 15px 30px;
	box-sizing: border-box;
}
.m_ancBtn ul > li a:hover{
	color: #00adee;
	text-decoration: underline;
}
.m_ancBtn.s_2col ul > li{ width: 50%;}
.m_ancBtn.s_3col ul > li{ width: 33.3333%;}
.m_ancBtn.s_4col ul > li{width: 25%;}

.m_ancBtn ul > li .p_image{
	text-align: center;
	margin-bottom: 10px;
}
.m_ancBtn ul > li .p_image img{ width: 100%;}

#sp_css .m_ancBtn{
	display: block;
	max-width: 100%;
	margin: 0 auto 5px;
}
#sp_css .m_ancBtn ul{
	display: inline;
}

#sp_css .m_ancBtn ul >li{
	background-color: transparent;
	display:inline-block;
	width: auto;
	margin-bottom: 5px;
	padding: 0px;
}
#sp_css .m_ancBtn ul >li a{
	padding: 0px 3px 0px 15px
}
#sp_css .m_ancBtn ul > li a:before{
	top: 3px;
	bottom: auto;
	left: 0px;
}
#sp_css .m_ancBtn ul > li a:after{
	top: 5px;
	bottom: auto;
	left: 3px;
}

/*手順
------------------------*/
.m_procedure{
	letter-spacing: -1em;
	width: 100%;
	text-align: center;
	margin: 20px 0;
}

.m_procedure > li{
	position: relative;
	display: inline-block;
	letter-spacing: 0;
	vertical-align: top;
	border: 4px solid #ebf5f7;
	border-radius: 7px;
	margin-left: 40px;
	margin-bottom: 20px;
	padding: 12px 10px 20px 45px;
	box-sizing: border-box;
	text-align: left;
}
.m_procedure > li:first-child{
	margin-left: 0px;
}
.m_procedure > li:before{
	content: '';
	position: absolute;
	top: 0px;
	bottom: 0px;
	left: -35px;
	background: url(/common/img/cmn_procedure_arrow_01.gif) no-repeat 0 0;
	width: 24px;
	height: 27px;
	background-size: contain;
	margin: auto 0;
}
.m_procedure > li:first-child:before{
	display: none;
}
.m_procedure > li .p_num{
	position: absolute;
	top: 10px;
	left: 10px;
}
.m_procedure > li .p_numTitle{
	color: #005bac;
	font-weight: bold;
	font-size: 114.3%;/*18px;*/
	margin-top: 4px;
	margin-bottom: 5px;
	line-height: 1.3;
}
#sp_css .m_procedure{
	margin: 10px 0;
}

#sp_css .m_procedure > li{
	width: 100% !important;
	height: auto !important;
	padding: 10px 10px 10px 35px;
	margin-left: 0px;
}
#sp_css .m_procedure.s_form > li{
	padding: 10px;
}
#sp_css .m_procedure > li .p_num{
	position: absolute;
	top: 9px;
	left: 5px;
}
#sp_css .m_procedure > li:before{
	position: absolute;
	top: -23px;
	bottom: auto;
	left: 0px;
	right: 0px;
	width: 16px;
	height: 19px;
	margin: 0 auto;
	-webkit-transform:rotate(90deg);
	        transform:rotate(90deg);
}
/*数字無し*/
.m_procedure.s_form li{
	text-align: center;
	font-weight: bold;
	color: #005bac;
	padding: 10px;
}
.m_procedure.s_form li.s_current{
	background-color: #005bac;
	border-color: #005bac;
	color: #fff;
}


/*次へ前へ
------------------------*/
.m_prevNextLink li{
	display: table;
	width: 100%;
}
.m_prevNextLink li:first-child{
	background-color: #ebf5f7;
}
.m_prevNextLink li .p_prev,
.m_prevNextLink li .p_next,
.m_prevNextLink li .p_top{
	display: table-cell;
	width: 50%;
	vertical-align: middle;
}
.m_prevNextLink li .p_prev a,
.m_prevNextLink li .p_next a,
.m_prevNextLink li .p_top a{
	position: relative;
	display: inline-block;
	color: #005bac;
	padding: 13px 10px 13px 30px;
}
.m_prevNextLink li .p_next{
	text-align: right;
}
.m_prevNextLink li .p_next a{
	padding: 10px 30px 10px 10px;
}
.m_prevNextLink li .p_prev a:hover,
.m_prevNextLink li .p_next a:hover,
.m_prevNextLink li .p_top a:hover{
	color: #00adee;
	text-decoration: underline;
}
.m_prevNextLink li .p_prev a:before,
.m_prevNextLink li .p_next a:before,
.m_prevNextLink li .p_top a:before{
	content: "";
	position: absolute;
	top: 0;
	bottom: 0;
	left: 8px;
	width: 12px;
	height: 12px;
	background-color: #005bac;
	border-radius: 50%;
	margin: auto 0;
}
.m_prevNextLink li .p_prev a:after,
.m_prevNextLink li .p_next a:after,
.m_prevNextLink li .p_top a:after{
	content: "";
	position: absolute;
	top: 0px;
	bottom: 0;
	left: 12px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #fff;
	border-right: 1px solid #fff;
	-webkit-transform: rotate(225deg);
	        transform: rotate(225deg);

	margin: auto 0;
}
.m_prevNextLink li .p_next a:before{
	left: auto;
	right: 8px;
}
.m_prevNextLink li .p_next a:after{
	left: auto;
	right: 12px;
	-webkit-transform: rotate(45deg);
	        transform: rotate(45deg);
}
/*スマホ時*/
#sp_css .m_prevNextLink li .p_prev a,
#sp_css .m_prevNextLink li .p_next a,
#sp_css .m_prevNextLink li .p_top a{
	display: block;
}

/*Q&A*
------------------------*/
.m_qanda{
	border-top: 1px solid #ddd;
	border-bottom: 1px solid #ddd;
}
.m_qanda .p_q{
	padding: 20px 50px;
}

.m_qanda .p_q{
	position: relative;
	background: url(/common/img/cmn_icon_q.gif) no-repeat 16px 16px #ebf6f7;
	color: #005bac;
	font-size: 116.7%;
	cursor: pointer;
}
.m_qanda .p_q:after{
	content: "";
	position: absolute;
	top: 24px;
	right: 16px;
	width: 5px;
	height: 5px;
	border-top: 1px solid #005bac;
	border-right: 1px solid #005bac;
	-webkit-transform: rotate(315deg);
	        transform: rotate(315deg);
}
.m_qanda.s_close .p_q:after{
	-webkit-transform: rotate(135deg);
	        transform: rotate(135deg);
}

.m_qanda.s_close .p_q{
	background-color: #fff;
}
.m_qanda .p_a{
	position: relative;
	background: url(/common/img/cmn_icon_a.gif) no-repeat 16px 16px #fff;
	padding: 20px 20px 20px 50px;
}
.m_phoneNumber{
	color: #005bac;
	font-size: 40px;
	font-weight: bold;
	line-height: 1em;
	white-space: nowrap;
}
#sp_css .m_phoneNumber{
	font-size: 32px;
}


/*タブ切替
------------------------*/
.m_tabArea{}
.m_tabArea .p_tabList{
	display: table;
	width: 100%;
	margin-bottom: 20px;
}
.m_tabArea .p_tabList > li{
	position: relative;
	display: table-cell;
	text-align: center;
	border-bottom: 2px solid #ddd;
	vertical-align: middle;
	background-color: #fff;
}
.m_tabArea .p_tabList.s_2col > li{ width: 50%;}
.m_tabArea .p_tabList.s_3col > li{ width: 33.333%;}
.m_tabArea .p_tabList.s_4col > li{ width: 25%;}
.m_tabArea .p_tabList.s_10col > li{ width: 10%;}

.m_tabArea .p_tabList > li:not(.s_current):hover{
	background-color: #feede3;
	box-shadow: -2px -2px 0 0px #fff inset;
}
.m_tabArea .p_tabList > li.s_current + li:hover{
	background-color: #feede3;
	box-shadow: 2px -2px 0 0px #fff inset;
}
.m_tabArea .p_tabList > li:not(.s_current):hover a{
	color: #e8783a;
} 
.m_tabArea .p_tabList > li.s_current{
	box-shadow: 0 -4px 0 0px #005bac;
	border-left: 2px solid #ddd;
	border-right: 2px solid #ddd;
	border-bottom: 2px solid transparent;
}
.m_tabArea .p_tabList > li.s_current a{
	color: #005bac;
}
.m_tabArea .p_tabList > li a{
	display: inline-block;
	color: #666;
	font-weight: bold;
	font-size: 114.3%;/*16px*/
	text-decoration: none;
	padding: 15px 7px;
	text-align: center;
	line-height: 1.2;
}
.m_tabArea .p_tabList > li a:before{
	content: "";
	position: absolute;
	bottom: 0px;
	left: 0px;
	width: 100%;
	height: 100%;
}
#sp_css .m_tabArea .p_tabList{
	margin-bottom: 10px;
}
#sp_css .m_tabArea .p_tabList > li a{
	font-size: 12px;
	padding: 5px 3px;
}

/*sp時タブレイアウト02*/
#sp_css .m_tabArea .p_tabList.s_spBox{
	display: block;
	margin-left: -1px;
}
#sp_css .m_tabArea .p_tabList.s_spBox > li{
	display: inline-block;
	background-color: #e7f4f5;
	border: none;
	box-shadow: none;
}
#sp_css .m_tabArea .p_tabList.s_spBox > li.s_current,
#sp_css .m_tabArea .p_tabList.s_spBox > li:not(.s_current):hover{
	background-color: #0b48a2;
}
#sp_css .m_tabArea .p_tabList.s_spBox > li.s_current a,
#sp_css .m_tabArea .p_tabList > li:not(.s_current):hover a{
	color: #fff;
}
#sp_css .m_tabArea .p_tabList.s_spBox > li a{
	padding: 11px 5px;
}
#sp_css .m_tabArea .p_tabList.s_spBox > li{
	border-left: 1px solid #fff;
	border-bottom: 1px solid #fff;
	box-sizing: border-box;
	vertical-align: top;
}
#sp_css .m_tabArea .p_tabList.s_spBox.s_sp2col > li{ width: 50%;}
#sp_css .m_tabArea .p_tabList.s_spBox.s_sp5col > li{ width: 20%;}

/*モーダル
------------------------*/
.m_modal {
	display: none;
}
.m_modal .p_modalBg {
	position: fixed;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	background: rgba(0,0,0,0.6);
	z-index: 100;

}
.m_modal .p_window {
	letter-spacing: -1em;
	position: absolute;

	left: 10px;
	right: 10px;
	bottom: 0;
	margin: 0 auto;
	text-align: center;
	box-sizing: border-box;
	z-index: 100;
}
.m_modal .p_window .p_winInner{
	position: relative;
	letter-spacing: 0;
	max-width: 980px;
	min-width: 100px;
	min-height: 100px;
	display: inline-block;
	padding: 15px;
	background-color: #fff;
	box-sizing: border-box;
}
/*閉じるボタン*/
.m_modal .p_closeBtn {
	position: absolute;
	top: -13px;
	right: 0;
	font-weight: bold;
	color: #fff;
	padding: 5px;
	cursor: pointer;
}
.m_modal .p_closeBtn:before{
	content: "×";
	font-size: 42px;
	position: absolute;
	left: -25px;
	top: -45px;
	bottom: 0;
}

/*路線図
------------------------*/
.m_lineList > li{
	width: 100%;
	height: 38px;
	border: 1px solid #dadada;
	border-top: none;
	box-sizing: border-box;
	display: table;
}
.m_lineList > li.s_noLine{
	border-left: 1px solid transparent;
	border-right: 1px solid transparent;
}
.m_lineList > li.s_noLine .p_line > li:after{
	top: -4px;
}
.m_lineList > li:hover a{
	background-color: #e8e8e8 !important;
}
.m_lineList > li > a{
	display:table-cell;
	vertical-align: middle;
	text-decoration: none;
}
.m_lineList > li > a:hover{
	color: inherit;
}
.m_lineList > li .p_line{
	margin: 0px 18px;
	float: left;
}
.m_lineList > li:first-child{
	border-top: 1px solid #dadada;
}
.m_lineList > li .p_line > li{
	position: relative;
	width: 18px;
	height: 18px;
	background-color: transparent;
	border: 2px solid transparent;
	border-radius: 50%;
	display: inline-block;
	vertical-align: middle;
	box-sizing: border-box;
	margin: 0 2px;
}
.m_lineList > li .p_line > li:after{
	content:"";
	position: absolute;
	top: -12px;
	left: 0px;
	right: 0px;
	width: 5px;
	height: 38px;
	background: red;
	margin: 0 auto;
}
.m_lineList > li .p_line > li.s_stop:before{
	content:"";
	position: absolute;
	bottom: 15px;
	left: 0px;
	right: 0px;
	width: 5px;
	height: 11px;
	border-bottom: 1px solid #8b8b8b;
	margin: 0 auto;
}
.m_lineList > li .p_line > li.s_stop:after{
	content:"";
	position: absolute;
	top: 15px;
	bottom: 0;
	left: 0px;
	right: 0px;
	width: 5px;
	height: 10px;
	border-top: 1px solid #8b8b8b;
	margin: 0 auto;
}

/*各路線*/
.m_lineList > li .p_line >/* li.s_rapid:after*/,
.m_lineList > li .p_line > li.s_rapid:before{
	background: #008ad0;
}
.m_lineList > li .p_line > li.s_sectionRapid:after,
.m_lineList > li .p_line > li.s_sectionRapid:before{
	background: #88c1e7;
}
.m_lineList > li .p_line > li.s_express:after,
.m_lineList > li .p_line > li.s_express:before{
	background: #e73799;
}
.m_lineList > li .p_line > li.s_sectionExpress:after,
.m_lineList > li .p_line > li.s_sectionExpress:before{
	background: #f0a6c8;
}
.m_lineList > li .p_line > li.s_semiExpress:after,
.m_lineList > li .p_line > li.s_semiExpress:before{
	background: #00ac41;
}
.m_lineList > li .p_line > li.s_sectionSemiExpress:after,
.m_lineList > li .p_line > li.s_sectionSemiExpress:before{
	background: #a8d6a3;
}
.m_lineList > li .p_line > li.s_local:after,
.m_lineList > li .p_line > li.s_local:before{
	background: #757477;
}
/*停車*/
.m_lineList > li .p_line > li.s_stop{ border: 2px solid #8b8b8b;}
.m_lineList > li .p_line > li.s_stop{ background-color: #fff;}
.m_lineList > li .p_line > li.s_stop.s_start:before{ display: none;}
.m_lineList > li .p_line > li.s_stop.s_end:after{ display: none;}
.m_lineList > li .p_line > li.s_noLine:after{ display: none;}
.m_lineList > li .p_line > li.s_noLine:before{ display: none;}


.m_lineList > li .p_lineName{
	overflow: hidden;
}

.m_lineList > li .p_lineName .p_jpName{
	color: #000;
	font-size: 12px;
	font-weight: bold;
	text-decoration: none;
	line-height: 1;
	vertical-align: middle;
	margin-right: 8px;
}
.m_lineList > li .p_lineName .p_enName{
	color: #0076bb;
	font-size: 10px;
	font-weight: bold;
	text-decoration: none;
	line-height: 1;
	vertical-align: middle;
}
/*強調*/
.m_lineList > li.s_emphasis a{ background-color: #f6f6f6;}
.m_lineList > li.s_emphasis .p_lineName .p_jpName{ font-size: 18px;}


/*押上用*/
.m_lineList > li.s_oshiage{
	position: relative;
	height: 76px;
}

.m_lineList > li.s_oshiage .p_lineName .p_jpName{
	position: absolute;
	top: 12px;
	left: 70px;
	font-size: 15px;
}
.m_lineList > li.s_oshiage .p_lineName .p_enName{
	position: absolute;
	top: 30px;
	left: 70px;
}
#sp_css .m_lineList > li.s_oshiage .p_lineName{
	position: static !important;
}
#sp_css .m_lineList > li.s_oshiage .p_lineName .p_jpName{
	position: absolute;
	bottom: auto;
	top: 10px;
	left: 10px;
	font-size: 12px;
}
#sp_css .m_lineList > li.s_oshiage .p_lineName .p_enName{
	position: absolute;
	top: 25px;
	left: 10px !important;
}
#sp_css .m_lineList > li.s_oshiage a{
	vertical-align: bottom;
}
.m_lineList > li.s_oshiage  .s_spBlock{ display: none;}

@media screen and (max-width: 400px){
	#sp_css .m_lineList > li.s_oshiage .p_lineName{
		position: static !important;
	}
	#sp_css .m_lineList > li.s_oshiage .p_lineName .p_jpName{
		position: absolute;
		bottom: auto;
		top: 6px;
		left: 5px;
		font-size: 10px;
	}
	#sp_css .m_lineList > li.s_oshiage .p_lineName .p_jpName .p_jpNameFontL{
		font-size: 12px;
	}
	#sp_css .m_lineList > li.s_oshiage .p_lineName .p_enName{
		position: absolute;
		top: 30px;
		left: 5px !important;
	}
	#sp_css .m_lineList > li.s_oshiage  .s_spBlock{ display: block;}
}
/*東京スカイツリー用*/
#sp_css .m_lineList > li.s_tokyoSky{
	position: relative;
	z-index: 2;
}
#sp_css .m_lineList > li.s_tokyoSky .p_lineName .p_jpName{
	font-size: 10px;
}

#sp_css .m_lineList > li .p_line > li{
	width: 12px;
	height: 12px;
	margin: 0 1px;
}
#sp_css .m_lineList > li .p_line{
	margin: 0px 10px;
}

#sp_css .m_lineList > li .p_line > li:after{
	top: -16px;
	width: 2px;
}
#sp_css .m_lineList > li.s_noLine .p_line > li:after{
	top: -7px;
	width: 2px;
	height: 39px;
}
#sp_css .m_lineList > li .p_line > li.s_stop:before{
	width: 2px;
	bottom: 9px;
	height: 14px;
}
#sp_css .m_lineList > li .p_line > li.s_stop:after{
	width: 2px;
	height: 12px;
	top: 9px;
}
#sp_css .m_lineList > li.s_emphasis .p_jpName{ font-size: 14px;}

#sp_css .m_lineList > li .p_lineName{
	margin-bottom: -10px;
	padding-bottom: 10px;
	position: relative;
}
#sp_css .m_lineList > li .p_jpName{
	margin-right: 0;
	vertical-align: top;
	font-size: 12px;
}

#sp_css .m_lineList > li .p_lineName .p_enName{
	position: absolute;
	bottom: 2px;
	left: 0;
}
#sp_css .m_lineList.s_isesaki > li .p_lineName{
	margin-bottom: -10px;
	padding-bottom: 10px;
	position: relative;
	line-height: 1.5;
}
#sp_css .m_lineList.s_isesaki > li .p_jpName{
	margin-right: 0;
	vertical-align: top;
	font-size: 12px;
}
#sp_css .m_lineList.s_isesaki > li .p_lineName .p_enName{
	position: absolute;
	bottom: 2px;
	left: 0;
}
#sp_css .m_lineList.s_isesaki > li .p_line > li{
	width: 12px;
	height: 12px;
	margin: 0 0px;
}
#sp_css .m_lineList.s_isesaki > li .p_line{
	margin: 0px 3px;
}
/*メニュー
------------------------*/
.m_mneu{

	display: none;
}
#sp_css .m_mneu{
	display: block;
	position: relative;
	margin-top: 40px;
	padding-bottom: 10px;
}
#sp_css .m_mneu > li{
	position: relative;
	width: 100%;
	box-sizing: border-box;
	background-color: #fff;
	border: 1px solid #005bac;
	border-top: none;
	margin-bottom: 0;
	cursor: pointer;
}
#sp_css .m_mneu > li:not(.s_current){
	display: none;
}
#sp_css .m_mneu > li.s_current{
	border-top: 1px solid #005bac;
}
#sp_css .m_mneu > li.s_current{
	position: absolute;
	bottom: 100%;
	left: 0;
}
#sp_css .m_mneu > li.s_current:after{
	content: "";
	position: absolute;
	top: 0;
	right: 0;
	width: 35px;
	height: 100%;
	background-color: #005bac;
}
#sp_css .m_mneu > li.s_current:before{
	content: "";
	position: absolute;
	top: 50%;
	right: 11px;
	border-left: 6px solid transparent;
	border-right: 6px solid transparent;
	border-top: none;
	border-bottom: 10px solid #fff;
	z-index: 10;
	-webkit-transform: translate(0, -50%);
	    transform: translate(0, -50%);
}
#sp_css .m_mneu.s_close > li.s_current:before{
	border-bottom: none;
	border-top: 10px solid #fff;
}
#sp_css .m_mneu > li a{
	display: block;
	font-weight: bold;
	color: #005bac;
	text-decoration: none;
	padding: 5px 40px 5px 5px;
}


/*データ
------------------------*/
.m_dataList{
}
.m_dataList >li{
	overflow: hidden;
	width: 100%;
	margin-bottom: 5px;
	box-sizing: border-box;
}
.m_dataList >li .p_data{
	float: left;
	width: 15%;
}
.m_dataList >li .p_text{
	float: right;
	width: 85%;
	padding: 0 10px;
	box-sizing: border-box;
}
#sp_css .m_dataList{
	border-bottom: 0px;
	padding-bottom: 0px;
	margin-bottom: 15px;
}
#sp_css .m_dataList >li:first-child{ padding-top: 0;}
#sp_css .m_dataList >li .p_data,
#sp_css .m_dataList >li .p_text{
	float: none;
	width: 100%;
	padding: 0;
}
#sp_css .m_dataList >li .p_data{
	font-size: 11px;
	margin-bottom: 5px;
}
/*JS初期化
------------------------*/
.js_tabContents { display: none;}
.js_toggleArea.s_close .js_toggleContents { display: none;}
.js_heightFix{ box-sizing: border-box;}






/* 2017年12月更新 乗得ポイントページ　/service/noritoku/
------------------------*/
.pointDeList {
	margin-bottom: 10px;
	display: table;
	width: 100%;
	font-feature-settings : "palt";
}
.pointDeList .pointSize {
	display: table-cell;
	width: 16%;
	font-size: 1.2rem;
	font-weight: bold;
	color: #595959;
	text-align: center;
	vertical-align: middle;
	background-color: #e0e0e0;
	border-radius: 12px;
	padding: 20px 0;
}
#sp_css .pointDeList .pointSize,
#sp_css .pointDeList .total{
	width: 15%;
	min-width: 90px;
	font-size: 1.0rem;
}
.pointDeList .pointSize .progression,
.pointDeList .total .progression{
	font-size: 1.3rem;
}
#sp_css .pointDeList .pointSize .progression,
#sp_css .pointDeList .total .progression {
	font-size: 1.05rem;
}
.pointDeList .total {
	display: table-cell;
	width: 16%;
	font-size: 1.2rem;
	font-weight: bold;
	color: #fff;
	text-align: center;
	vertical-align: middle;
	background-color: #ff8415;
	border-radius: 12px;
	padding: 20px 0;
}
.pointDeList dd p span.focus {
	color: #ab6100;
	font-size: 1.2rem;
	font-weight: bold;
}
.pointDeList .breakdown {
	display: table-cell;
	width: 82%;
	padding-left: 1.3%;
	vertical-align: middle;
}
.pointDeList .breakdown p {
	margin-bottom: 8px;
}
.pointDeList .breakdown .bd {
	display: inline-block;
	background-color: #f5f5f5;
	box-sizing: border-box;
	padding: 12px 15px;
}
.pointDeList .breakdown .calculation.clcln1 {
	margin-bottom: 8px;
}
.pointDeList .breakdown .calculation .cclnBd img.put {
	margin: 5px;
}
#sp_css .pointDeList .breakdown .calculation .cclnBd img.put {
	margin: 2px 5px;
}
.pointDeList .breakdown .calculation .cclnBd img.put.pack {
	margin-left: -5px;
} 
.pointDeList .breakdown .plus {
	display: block;
	margin: 0 auto 8px auto;
}
.psPlus {
	display: block;
	margin: 0 0 10px 48px;
}
#sp_css .psPlus {
	margin: 0 0 10px 36px;
}
.psEqual {
	display: block;
	margin: 0 0 10px 52px;
}
#sp_css .psEqual {
	display: block;
	margin: 0 0 10px 40px;
}
.pointDeList .breakdown .calculation {
	display: table;
	border: 1px solid #dddddd;
	overflow: hidden;
	box-sizing: border-box;
	padding: 10px 8px;
}
.pointDeList .breakdown .calculation.pointOnly {
	padding: 22px 10px;
}
.pointDeList .breakdown .calculation .cclnPoints {
	color: #ab6100;
	font-weight: 800;
	display: table-cell;
	vertical-align: middle;
	width: 41%;
}
.pointDeList .breakdown .calculation.long .cclnPoints {
	width: 45%;
}
#sp_css .pointDeList .breakdown .calculation .cclnPoints {
	display: block;
	width: 100%;
}
.pointDeList .breakdown .calculation .cclnBd {
	display: inline-block;
	background-color: #f5f5f5;
	box-sizing: border-box;
	padding: 12px 8px;
	width: 100%;
	white-space: nowrap;
}
.pointDeList dd .calculation {
	width: 100%;
}
#sp_css .pointDeList .breakdown .calculation .cclnBd {
	white-space: normal;
}


/* 2017年12月更新 東武携帯ネット会員サービスとは　/service/about/
------------------------*/
/* 特急券の発売列車・区間 */
.m_list.nom_note > li {
	padding-left: 2.0em;
	margin-top: 3px;
}
.m_list.nom_note > li:first-child:before,
.m_list.nom_note > li:nth-child(2):before,
.m_list.nom_note > li:nth-child(3):before,
.m_list.nom_note > li:nth-child(4):before,
.m_list.nom_note > li:nth-child(5):before,
.m_list.nom_note > li:nth-child(6):before {
	position: absolute;
	top: 0;
	left: 0;
}
.m_list.nom_note > li:first-child:before {
	content: "※1";
}
.m_list.nom_note > li:nth-child(2):before {
	content: "※2";
}
.m_list.nom_note > li:nth-child(3):before {
	content: "※3";
}
.m_list.nom_note > li:nth-child(4):before {
	content: "※4";
}
.m_list.nom_note > li:nth-child(5):before {
	content: "※5";
}
.m_list.nom_note > li:nth-child(6):before {
	content: "※6";
}

/* 即時決済型カードでお支払い時の引き落としの流れ */
.p_subSection {
	background-color: #f5f5f5;
	box-sizing: border-box;
	padding: 25px;
}
#sp_css .p_subSection {
	padding: 2.5%;
}
.p_subSection .flowList .blue,
.p_subSection .flowList .red{
	display: table;
	width: 100%;
	margin-bottom: 25px;
}
.p_subSection .flowList .blue .btnTxt,
.p_subSection .flowList .red .btnTxt{
	display: table-cell;
	width: 235px;
	vertical-align: middle;
	color: #fff;
	font-size: 0.95rem;
	text-align: center;
	font-weight: bold;
	border-radius: 12px;
	box-sizing: border-box;
	padding: 25px 10px;
	position: relative;
}
#sp_css .p_subSection .flowList .blue .btnTxt,
#sp_css .p_subSection .flowList .red .btnTxt{
	width: 160px;
	font-size: 0.8rem;
	border-radius: 8px;
	padding: 20px 0;
	white-space: nowrap;
}
.p_subSection .flowList .blue .btnTxt {
	background-color: #4762b2;
}
.p_subSection .flowList .red .btnTxt {
	background-color: #e25a5a;
}
.p_subSection .flowList .blue .btnTxt:after,
.p_subSection .flowList .red .btnTxt:after{
	display: block;
	content: '';
	position: absolute;
	bottom: -16px;
	right: 48%;
	width: 0;
	height: 0;
	background: transparent;
	border-left: 4px solid transparent;
	border-bottom: 0 solid transparent;
	border-right: 4px solid transparent;
	border-top: 7px solid #666666;
}
.p_subSection .flowList .blue:last-child .btnTxt:after,
.p_subSection .flowList .red:last-child .btnTxt:after{
	border: none;
}
.p_subSection .flowList .red .rede,
.p_subSection .flowList .blue .rede {
	display: table-cell;
	vertical-align: middle;
	padding-left: 2%;
}
#sp_css .p_subSection .flowList .red .rede,
#sp_css .p_subSection .flowList .blue .rede {
	display: table-cell;
	vertical-align: middle;
	padding-left: 2%;
}

.red_news{
	color: red;
	margin-top: 10px;
	padding: 18px;
	font-size: 16px;
} 

.red_news span{
	color: red;
	font-weight: 600;
}