@charset "utf-8";

/* -----------------------------------------
	mainVisual
----------------------------------------- */

/*トップページ*/
#toppage #mainVisual {
	overflow: hidden;
	position: relative;
}


#toppage #mainVisual .top_slider {
	position: relative;
	margin-left: auto;
	margin-right: auto;
	max-width: 1110px;
}
#toppage #mainVisual .top_slider .swiper-container {
	width: 100%;
	height: 100%;
	overflow: visible;
	position: relative;
}

#toppage #mainVisual .swiper-button-prev,
#toppage #mainVisual .swiper-button-next {
	position: absolute;
	bottom: 20px;
	width: 30px;
	height: 30px;
	z-index: 10;
	cursor: pointer;
}
#toppage #mainVisual .swiper-button-prev:hover,
#toppage #mainVisual .swiper-button-next:hover,
#toppage #mainVisual .swiper-slide a:hover img {
	opacity: 0.7;
}
#toppage #mainVisual .swiper-button-prev {
	background: url(/material/img/top/ico_slide_prev.svg) no-repeat;
	left: 20px;
	right: auto;
}
#toppage #mainVisual .swiper-button-next {
	background: url(/material/img/top/ico_slide_next.svg) no-repeat;
	left: 51px;
	right: auto;
}

#toppage #mainVisual .swiper-pagination {
	left: 90px;
	bottom: 23px;
	right: auto;
	width: auto;
}

#toppage #mainVisual .swiper-pagination .swiper-pagination-bullet {
	width: 12px;
	height: 12px;
	background: #fff;
	border-radius: 50%;
	opacity: 1;
}

#toppage #mainVisual .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
	width: 12px;
	height: 12px;
	background: #008803;
	border-radius: 50%;
	opacity: 1;
}

#toppage #mainVisual .moreBtn {
	position: absolute;
	bottom: 20px;
	right: 20px;
	border: 1px solid #ffffff;
	border-radius: 5px;
	padding: 10px 30px 10px 15px;
	background: rgba(0,0,0,0.8);
	color: #fff;
	text-decoration: none;
}

#toppage #mainVisual a:hover .moreBtn {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#toppage #mainVisual .moreBtn:after {
	content: "";
	display: block;
	background: url(/material/img/top/ico_slide_more_w.svg) no-repeat;
	background-size: contain;
	width: 9px;
	height: 13px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}


@media screen and (max-width: 1210px) and (min-width: 751px) {

	#toppage #mainVisual .top_slider .swiper-container {
		padding: 0 45px;
	}
	#toppage #mainVisual .swiper-pagination {
		left: 135px;
	}

	#toppage #mainVisual .swiper-button-prev {
		left: 65px;
	}
	#toppage #mainVisual .swiper-button-next {
		left: 96px;
	}

}


/*第二トップ*/
#mainVisual.main2 {
	background: #f1f9f1;
	min-height: 240px;
}

/*第三トップ*/
#mainVisual.main3 {
	min-height: 170px;
}

/*第三トップ以下*/
#mainVisual.main4 {
	min-height: 170px;
}

.mainVisual_in {
	max-width: 1130px;
	width: 100%;
	margin:0 auto;
	padding: 40px 10px 0;
}

#mainVisual.main2 .mainVisual_in {
	padding: 25px 10px 0;
}




/* -----------------------------------------
	パンくず
----------------------------------------- */
#breadcrumb {
	max-width: 1130px;
	width: 100%;
	margin: 0 auto;
	padding: 10px 10px 0;
}

#breadcrumb .bread {
	display: flex;
	align-items: center;
	flex-wrap: wrap;
}

#breadcrumb .bread > li {
	font-size: 1.3rem;
	margin: 0 10px 0 0;
	display: inline-block;
}
#breadcrumb .bread > li a {
	font-size: 1.3rem;
}

#breadcrumb .bread > li + li:before {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_link.svg) no-repeat;
	width: 6px;
	height: 10px;
	margin: 0 10px 0 0;
}



@media screen and (max-width: 750px){

	#toppage #mainVisual {
		overflow: hidden;
		position: relative;
	}

	#toppage #mainVisual .top_slider {
		max-width: 100%;
	}

	#toppage #mainVisual .swiper-button-prev,
	#toppage #mainVisual .swiper-button-next {
		display: none;
	}


	#toppage #mainVisual .swiper-pagination {
		left: 0;
		right: 0;
		margin: auto;
		bottom: 3%;
		width: auto;
	}

	#toppage #mainVisual .swiper-pagination .swiper-pagination-bullet {
		width: 12px;
		height: 12px;
		background: #fff;
		border-radius: 50%;
		opacity: 1;
	}

	#toppage #mainVisual .swiper-pagination .swiper-pagination-bullet.swiper-pagination-bullet-active {
		width: 12px;
		height: 12px;
		background: #008803;
		border-radius: 50%;
		opacity: 1;
	}

	#toppage #mainVisual .moreBtn {
		display: none;
	}

	/*第二トップ*/
	#mainVisual.main2 {
		background: #f1f9f1;
		min-height: auto;
	}

	/*第三トップ*/
	#mainVisual.main3 {
		min-height: auto;
	}

	/*第三トップ以下*/
	#mainVisual.main4 {
		min-height: auto;
	}

	.mainVisual_in {
		max-width: 100%;
		width: 100%;
		margin:0 auto;
		padding: 3% 2%;
	}

	#mainVisual.main2 .mainVisual_in {
		padding: 3% 2%;
	}

	/* -----------------------------------------
		パンくず
	----------------------------------------- */
	#breadcrumb {
		max-width: 100%;
		width: 100%;
		padding: 3%;
		border-top: 1px solid #ddd;
		background: #f8f8f8;
	}
}



/* -----------------------------------------
	mainContents
----------------------------------------- */
#mainContents {
	width: 100%;
	position: relative;
}

#mainContents .container {
	width: 100%;
	padding-top: 70px;
}

#mainContents .container > .contentsWrapper {
	max-width: 970px;
	width: 100%;
	margin: 0 auto;
	padding: 0 10px;
}

#mainContents .container > .contentsWrapper > .wrapper {
	padding-bottom: 150px;
}

/*第二トップ以下*/

#mainContents .container.railwayInfo,
#mainContents .container.travelInfo,
#mainContents .container.suicaallInfo {
	width: 100%;
	padding-top: 40px;
}

#mainContents .container.railwayInfo > .contentsWrapper > .wrapper,
#mainContents .container.travelInfo > .contentsWrapper > .wrapper {
	padding-bottom: 40px;
}



@media screen and (max-width: 1550px) {
	#toppage #mainContents.s_open .container > .contentsWrapper {
		max-width: 970px;
		width: auto;
		margin: 0 auto 0 280px;
		padding: 0 10px;
	}
}



@media screen and (max-width: 1050px) and (min-width: 751px){
	#mainContents.haveSide .container > .contentsWrapper {
		max-width: 970px;
		width: 100%;
		margin: 0 auto;
		padding: 0 45px;
	}
}




/*レイアウト　2カラム*/
.col2 {
	display: flex;
	flex-wrap: wrap;
	justify-content: space-between;
}

.col2 > * {
	max-width: 460px;
	width: 48.5%;
	margin-bottom: 20px;
}

/*レイアウト　3カラム*/
.col3 {
	display: flex;
	flex-wrap: wrap;
}

.col3 > * {
	width: 31.3%;
	margin-right: 3%;
	margin-bottom: 20px;
}

.col3 > *:nth-child(3n){
	margin-right: 0;
}

/*レイアウト　4カラム*/
.col4 {
	display: flex;
	flex-wrap: wrap;
}

.col4 > * {
	width: 23%;
	margin-right: 2.6%;
	margin-bottom: 20px;
}

.col4 > *:nth-child(4n){
	margin-right: 0;
}


@media screen and (max-width: 750px){

	#mainContents {
		width: 100%;
		position: relative;
	}

	#mainContents .container {
		width: 100%;
		padding-top: 15%;
	}

	#mainContents .container > .contentsWrapper {
		max-width: 100%;
		width: 100%;
		margin: 0 auto;
		padding: 0 4%;
	}


	#mainContents .container > .contentsWrapper > .wrapper {
		padding-bottom: 25%;
	}

	/*第二トップ以下*/
	#mainContents .container.railwayInfo,
	#mainContents .container.travelInfo,
	#mainContents .container.suicaallInfo {
		width: 100%;
		padding-top: 10%;
	}

	#mainContents .container.railwayInfo > .contentsWrapper > .wrapper,
	#mainContents .container.travelInfo > .contentsWrapper > .wrapper {
		padding-bottom: 10%;
	}


	/*レイアウト　2カラム_sp1カラム*/
	.col2 {
		display: block;
	}

	.col2 > * {
		max-width: 100%;
		width: 100%;
		margin-bottom: 5%;
	}

	/*レイアウト　2カラム_sp2カラム*/
	.col2.sp_col2 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.col2.sp_col2 > * {
		width: 48%;
		margin-right: 0;
		margin-bottom: 5%;
	}

	/*レイアウト　3カラム_sp1カラム*/
	.col3 {
		display: block;
	}

	.col3 > * {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5%;
	}

	/*レイアウト　3カラム_sp2カラム*/
	.col3.sp_col2 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.col3.sp_col2 > * {
		width: 48%;
		margin-right: 0;
		margin-bottom: 5%;
	}


	/*レイアウト　4カラム_sp1カラム*/
	.col4 {
		display: block;
	}

	.col4 > * {
		width: 100%;
		margin-right: 0;
		margin-bottom: 5%;
	}

	/*レイアウト　4カラム_sp2カラム*/
	.col4.sp_col2 {
		display: flex;
		justify-content: space-between;
		flex-wrap: wrap;
	}

	.col4.sp_col2 > * {
		width: 48%;
		margin-right: 0;
		margin-bottom: 5%;
	}
}




/* -----------------------------------------
	sidebar
----------------------------------------- */

#side div {display: block;}


@media screen and (min-width: 751px){
#side {
	position: absolute;
	top: 0;
	height: 100%;
}

/*デフォルトで開いている*/
#side.show .sidebar {
	width: 270px;
	height: 100%;
	background: #fff;
	position: relative;
	left: 0;
	z-index: 999;
	box-shadow: 1px 0px 3px 0px rgba(0, 0, 0, 0.2);
	transition-duration: .2s;
}

#side.show.close .sidebar {
	left: -270px;
	position: absolute;
}

#side.show .sideBtn {
	background: url(/material/img/ico_side_arrow.png) no-repeat;
	position: absolute;
	cursor: pointer;
	top: 40px;
	width: 40px;
	height: 40px;
	left: 270px;
	z-index: 999;
	transition: left .2s;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
}

#side.show.close .sideBtn {
	background: url(/material/img/ico_side_arrow_c.png) no-repeat;
	position: absolute;
	cursor: pointer;
	top: 40px;
	width: 40px;
	height: 435px;
	left: 0;
	z-index: 999;
}


/*デフォルトで閉じている*/
#side.hide .sidebar {
	width: 270px;
	height: 100%;
	background: #fff;
	position: absolute;
	left: -270px;
	z-index: 999;
	box-shadow: 1px 0px 3px 0px rgba(0, 0, 0, 0.2);
	transition-duration: .2s;
}

#side.hide.open .sidebar {
	left: 0;
	position: relative;
}

#side.hide .sideBtn {
	background: url(/material/img/ico_side_arrow_c.png) no-repeat;
	position: absolute;
	cursor: pointer;
	top: 40px;
	width: 40px;
	height: 435px;
	left: 0;
	z-index: 999;
	transition: left .2s;
}

#side.hide.open .sideBtn {
	background: url(/material/img/ico_side_arrow.png) no-repeat;
	position: absolute;
	cursor: pointer;
	top: 40px;
	width: 40px;
	height: 40px;
	left: 270px;
	z-index: 999;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
}

}


/*検索パネル*/
#divWrapperOfJS .hidden {display: none;}

#side #side_searchPanel {
	padding: 20px;
}

#side #side_searchPanel .list-tab {
	display: flex;
	justify-content: center;
	margin-bottom: 20px;
}

#side #side_searchPanel .box-tab {
	display: none;
}

#side #side_searchPanel .box-tab.on {
	display: block;
}

#side #side_searchPanel .list-tab li {
	padding: 5px;
	border-bottom: 5px solid #ddd;
	font-weight: bold;
	color: #333;
	font-size: 1.3rem;
	cursor: pointer;
	transition-duration: .2s;
	transition-timing-function: ease-out;
}

#side #side_searchPanel .list-tab li.active {
	color: #008803;
	border-bottom: 5px solid #008803;
	transition-duration: .2s;
	transition-timing-function: ease-out;
}


#side #side_searchPanel .sp_title {
	display: none;
}

#side #side_searchPanel .noService-box {
	height: 100px;
}

#side #side_searchPanel .ekinet-area-link {
	text-align: center;
	margin-bottom: 5px;
}
#side #side_searchPanel .ekinet-area-link a img {
	width: 59px;
	height: 17px;
}

/*空席・予約*/
#side #side_searchPanel #cont_tab1 .cont-box .b-box dl {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dt {
	font-size: 1.2rem;
	width: 48px;
	text-align: right;
	margin-right: 10px;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd {
	width: calc(100% - 58px);
	display: flex;
	align-items: center;
}
#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox {
	position: relative;
	margin-right: 5px;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox.select02 {
	margin-left: 10px;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox.w100p {
	width: 100%;
	margin: 0;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox.w100p select {
	width: 100%;
}

#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 7px solid #bbb;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 7px solid transparent;
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 5px;
	margin: auto;
	pointer-events: none;
}
#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox select {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px 20px 5px 5px;
	font-size: 1.2rem;
}

#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn {
	width: 170px;
	margin: 20px auto 15px;
	position: relative;
}

#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn button {
	display: flex;
	justify-content: center;
	background: #008803;
	border-radius: 3px;
	width: 100%;
	height: 100%;
	color: #fff;
	cursor: pointer;
	padding: 10px;
}

#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn button:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn button:before {
	content: "";
	display: block;
	background: url(/material/img/header/ico_header_search.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-right: 7px;
}



/*乗換・運賃*/
#side #side_searchPanel #cont_tab2 .cont-box .b-box dl {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dt {
	font-size: 1.2rem;
	width: 48px;
	text-align: right;
	margin-right: 10px;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd {
	width: calc(100% - 58px);
	display: flex;
	align-items: center;
}
#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox {
	position: relative;
	margin-right: 5px;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox.select02 {
	margin-left: 10px;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox.w100p {
	width: 100%;
	margin: 0;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox.w100p select {
	width: 100%;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 7px solid #bbb;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 7px solid transparent;
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 5px;
	margin: auto;
	pointer-events: none;
}
#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox select {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px 20px 5px 5px;
	font-size: 1.2rem;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box .ekinet-radio {
	display: flex;
	justify-content: space-around;
	width: 50%;
	margin: 10px auto 0;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box .sText {
	font-size: 1.1rem;
	margin-bottom: 10px;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box .station dt {
	font-size: 1.2rem;
	width: 40px;
	text-align: left;
	margin-right: 0;
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box .station dd {
	width: calc(100% - 45px);
}

#side #side_searchPanel #cont_tab2 .cont-box .b-box .station input[type="text"] {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px;
	width: 170px;
	margin: 0 5px;
}

#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn {
	width: 190px;
	margin: 20px auto 15px;
	position: relative;
}

#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn button {
	display: flex;
	justify-content: center;
	background: #008803;
	border-radius: 3px;
	width: 100%;
	height: 100%;
	color: #fff;
	cursor: pointer;
	padding: 10px;
}

#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn button:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn button:before {
	content: "";
	display: block;
	background: url(/material/img/header/ico_header_search.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-right: 7px;
}


/*JR＋宿泊タブ*/
#side #side_searchPanel #cont_tab3 .cont-box dl {
	display: flex;
	align-items: center;
	margin-bottom: 5px;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dt {
	font-size: 1.2rem;
	width: 48px;
	text-align: right;
	margin-right: 10px;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd {
	width: calc(100% - 58px);
	display: flex;
	align-items: center;
}
#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox {
	position: relative;
	margin-right: 5px;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox.select02 {
	margin-left: 10px;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox.w100p {
	width: 100%;
	margin: 0;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox.w100p select {
	width: 100%;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 7px solid #bbb;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 7px solid transparent;
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 5px;
	margin: auto;
	pointer-events: none;
}
#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox select {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px 20px 5px 5px;
	font-size: 1.2rem;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_person_open,
#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_area_open {
	display: block;
	width: 100%;
	border-radius: 3px;
	border: 1px solid #ddd;
	padding: 5px 20px 5px 5px;
	position: relative;
	font-size: 1.2rem;
	color: #333;
	text-decoration: none;
	cursor: pointer;
}

#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_person_open:after,
#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_area_open:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 7px solid #bbb;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 7px solid transparent;
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 5px;
	margin: auto;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail {
	position: absolute;
	background: #fff;
	top: 100px;
	right: -290px;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
	padding: 25px 25px 20px 20px;
	transition: opacity .8s, visibility .8s;
	opacity: 0;
	visibility: hidden;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail.show {
	opacity: 1;
	visibility: visible;
}


#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-left: 15px solid transparent;
	border-right: 20px solid #fff;
	border-bottom: 15px solid transparent;
	position: absolute;
	top: 42px;
	left: -35px;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail #ekinet-person-close {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail #ekinet-person-close:before {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(-45deg);
	position: absolute;
	top: 0;
	left: 10px;
}
#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail #ekinet-person-close:after {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	left: 10px;
}


#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-person_select {
	justify-content: center;
	margin-bottom: 15px;
}
#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-person_select dt {
	text-align: left;
	margin-right: 5px;
	width: auto;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-person_select dd {
	position: relative;
	margin-right: 10px;
	width: 35px;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-person_select dd:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 7px solid #bbb;
	border-right: 3px solid transparent;
	border-left: 3px solid transparent;
	border-bottom: 7px solid transparent;
	position: absolute;
	top: 5px;
	bottom: 0;
	right: 5px;
	margin: auto;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-person_select select {
	border: 1px solid #ddd;
	border-radius: 3px;
	padding: 5px 15px 5px 5px;
	font-size: 1.2rem;
	width: 100%;
}


#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-area-btn button,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .ekinet-area-btn button {
	display: block;
	background: #008803;
	border-radius: 3px;
	color: #fff;
	cursor: pointer;
	padding: 5px;
	width: 170px;
	margin: 0 auto;
}

#side #side_searchPanel #cont_tab3 .cont-box #ekinet-person-detail .ekinet-area-btn button:hover,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .ekinet-area-btn button:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#side #side_searchPanel #cont_tab3 #ekinet-area-detail {
	position: absolute;
	background: #fff;
	top: 10px;
	right: -495px;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
	padding: 20px;
	transition: opacity .8s, visibility .8s;
	opacity: 0;
	visibility: hidden;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail.show {
	opacity: 1;
	visibility: visible;
}


#side #side_searchPanel #cont_tab3 #ekinet-area-detail:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-left: 15px solid transparent;
	border-right: 20px solid #fff;
	border-bottom: 15px solid transparent;
	position: absolute;
	top: 200px;
	left: -35px;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail #ekinet-area-close {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail #ekinet-area-close:before {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(-45deg);
	position: absolute;
	top: 0;
	left: 10px;
}
#side #side_searchPanel #cont_tab3 #ekinet-area-detail #ekinet-area-close:after {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	left: 10px;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail #ekinet-area-txt {
	margin-bottom: 10px;
}


#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select {
	display: flex;
	margin-bottom: 20px;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat02 ul,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat03 ul {
	display: none;
	height: 256px;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat03 ul {
	overflow: auto;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat01 ul li,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat02 ul li,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat03 ul li {
	border-bottom: 1px solid #ddd;
	padding: 5px;
	text-align: center;
	cursor: pointer;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat01 ul li.area_checked,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat02 ul li.area_checked,
#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat03 ul li.area_checked {
	background: #e2f3e2;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat01 {
	width: 105px;
	border-right: 1px solid #ddd;
}


#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat02 {
	width: 77px;
	border-right: 1px solid #ddd;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select .ekinet-area-detail-cat03 {
	width: 250px;
}

#side #side_searchPanel #cont_tab3 #ekinet-area-detail .area_select dl dt {
	background: #444;
	color: #fff;
	text-align: center;
	padding: 5px;
}




#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn {
	width: 170px;
	margin: 20px auto 15px;
	position: relative;
}

#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn button {
	display: flex;
	justify-content: center;
	background: #008803;
	border-radius: 3px;
	width: 100%;
	height: 100%;
	color: #fff;
	cursor: pointer;
	padding: 10px;
}

#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn button:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn button:before {
	content: "";
	display: block;
	background: url(/material/img/header/ico_header_search.svg) no-repeat;
	background-size: contain;
	width: 20px;
	height: 20px;
	margin-right: 7px;
}
#side #side_searchPanel #cont_tab3 .travelLink {
	text-align: center;
}
#side #side_searchPanel #cont_tab3 .travelLink a {
	padding-left: 15px;
	font-size: 1.3rem;
}

#side #side_searchPanel #cont_tab3 .travelLink a:before {
	top: 3px;
}


#side #side_searchPanel #cont_tab3 .drpNotesBtn {
	display: flex;
	justify-content: center;
	align-items: center;
	background: #e2f3e2;
	border-radius: 3px;
	padding: 5px;
	cursor: pointer;
	margin: 5% auto;
	font-size: 1.2rem;
	width: 60%;
}
#side #side_searchPanel #cont_tab3 .drpNotesBtn:before {
	content: "";
	display: block;
	background: url(/material/img/ico_surprised.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 14px;
	margin-right: 5px;
}
#side #side_searchPanel #cont_tab3 .drpNotesBtn:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#side #side_searchPanel #cont_tab3 #drpNotesBox {
	position: absolute;
	width: 530px;
	background: #fff;
	top: 50px;
	left: 300px;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
	padding: 25px 25px 20px 20px;
	transition: opacity .8s, visibility .8s;
	opacity: 0;
	visibility: hidden;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox.show {
	opacity: 1;
	visibility: visible;
}


#side #side_searchPanel #cont_tab3 #drpNotesBox:before {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 15px solid transparent;
	border-left: 15px solid transparent;
	border-right: 20px solid #fff;
	border-bottom: 15px solid transparent;
	position: absolute;
	top: 210px;
	left: -35px;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotes-close {
	text-indent:100%;
	white-space:nowrap;
	overflow:hidden;
	display: block;
	width: 20px;
	height: 20px;
	position: absolute;
	top: 10px;
	right: 10px;
	cursor: pointer;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotes-close:before {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(-45deg);
	position: absolute;
	top: 0;
	left: 10px;
}
#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotes-close:after {
	content: "";
	display: block;
	width: 1px;
	height: 20px;
	background: #999;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	left: 10px;
}


#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotesBox_title {
	font-weight: bold;
	text-align: center;
	margin-bottom: 10px;
	font-size: 1.6rem;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox .text {
	margin-bottom: 15px;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotesBox_dl {
	font-size: 1.3rem;
	margin-bottom: 15px;
}

#side #side_searchPanel #cont_tab3 #drpNotesBox .drpNotesBox_dl dt {
	font-size: 1.5rem;
	margin-bottom: 5px;
}

/*エラー吹き出し*/

#area_err {
	position: absolute;
	background: #fff;
	top: 205px;
	right: -235px;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
	padding: 10px;
	border: 3px solid #eb0000;
	color: #eb0000;
}

#area_err:before {
	content: "";
	display: block;
	background: #fff;
	width: 13px;
	height: 13px;
	border-top: 3px solid #eb0000;
	border-left: 3px solid #eb0000;
	transform: rotate(-45deg);
	position: absolute;
	top: 12px;
	left: -10px;
}

#member_err {
	position: absolute;
	background: #fff;
	top: 134px;
	right: -313px;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
	padding: 10px;
	border: 3px solid #eb0000;
	color: #eb0000;
}

#member_err:before {
	content: "";
	display: block;
	background: #fff;
	width: 13px;
	height: 13px;
	border-top: 3px solid #eb0000;
	border-left: 3px solid #eb0000;
	transform: rotate(-45deg);
	position: absolute;
	top: 12px;
	left: -10px;
}


/*運行情報*/
#trainInfo .trainInfo_h {
	background: #333;
	padding: 10px 10px 10px 20px;
	font-size: 1.8rem;
	display: flex;
	justify-content: space-between;
}

#trainInfo .trainInfo_h a {
	color: #fff;
}

#trainInfo .trainInfo_h .help {
	display: block;
}


#trainInfo .noData {
	padding: 30px 20px;
	display: none;
}

#trainInfo .noData.show{display: block;}

#trainInfo .trainInfo_list > li a {
	background: #fff;
	display: flex;
	align-items: center;
	padding: 15px 20px;
	position: relative;
	color: #333;
}

#trainInfo .trainInfo_list > li.delay a {background: #fff5d8;}
#trainInfo .trainInfo_list > li.adjust a {background: #ffe8e8;}


#trainInfo .trainInfo_list > li a img {
	margin-right: 5px;
}

#trainInfo .trainInfo_list > li a:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.3);
	z-index: 99;
	text-decoration: none;
	transition-duration: .2s;
	transition-timing-function: ease-out;
}



#trainInfo .trainInfo_list > li a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
}
#trainInfo .infoDelay {
	width: 170px;
	margin: 15px auto;
}
#trainInfo .infoDelay a {
	display: block;
	background: #008803;
	border-radius: 5px;
	color: #fff;
	padding: 10px;
	text-align: center;
	position: relative;
}

#trainInfo .infoDelay a:hover {
	text-decoration: none;
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


#trainInfo .infoDelay.blank a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_blank_w.svg) no-repeat;
	background-size: contain;
	width: 10px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}


/*運休情報*/
#infoStop .infoStop_h {
	background: #333;
	color: #fff;
	padding: 10px 10px 10px 20px;
	font-size: 1.8rem;
}

#infoStop .infoStop_list {
	margin-bottom: 20px;
}

#infoStop .infoStop_list > li a {
	background: #fff;
	display: flex;
	align-items: center;
	padding: 15px 20px;
	position: relative;
	color: #333;
}


#infoStop .infoStop_list > li a:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.3);
	z-index: 99;
	text-decoration: none;
	transition-duration: .2s;
	transition-timing-function: ease-out;
}


#infoStop .infoStop_list > li a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
}

#infoStop .infoStop_list02 {
	padding: 0 20px;
}
#infoStop .infoStop_list02 > li:not(:last-child) {
	margin-bottom: 10px;
}
#infoStop .infoStop_list02 > li a {
	position: relative;
	display: block;
	font-size: 1.3rem;
}

#infoStop .infoStop_list02 > li a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 0;
}

#infoStop .infoStop_list02 > li.blank a:after {
	background: url(/material/img/ico_blank.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
}


#infoStop .infoStop_list02 > li a .pdfLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pdf.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin-left: 5px;
}

.sp_btn {
	display: none;
}

@media screen and (max-width: 750px){

	#side {
		position: fixed;
		top: auto;
		bottom: 0;
		height: auto;
		z-index: 100;
	}

	#side .sidebar {
		width: 100%;
		height: auto;
		background: #fff;
		position: relative;
		left: auto;
		z-index: auto;
		box-shadow: none;
		transition-duration: .2s;
	}

	#side .sideBtn {
		display: none;
	}

	.sp_btn {
		display: flex;
		justify-content: space-around;
		background: #008803;
		width: 100vw;
		padding: 0 3%;
		height: 18vw;
	}
	
	.sp_btn > li {
		padding: 3% 2% 2%;
		margin-bottom: 2%;
		width: 22%;
	}
	

	.sp_btn > li.active {
		background: #fff;
		border-bottom-left-radius: 5px;
		border-bottom-right-radius: 5px;
	}



	#side #side_searchPanel {
		padding: 0;
	}
	#side #side_searchPanel .list-tab {
		display: none;
	}

	#side #side_searchPanel .box-tab {
		display: block;
		padding: 5%;
	}

	#side #side_searchPanel .cont-box .sp_title {
		display: block;
		font-weight: bold;
		color: #fff;
		background: #333;
		padding: 2%;
		font-size: 1.8rem;
		text-align: center;
		margin-bottom: 5%;
	}
	
	#side #side_searchPanel .noService-box {
		height: 20vw;
	}

	#side #side_searchPanel #cont_tab1 {
		position: absolute;
		display: block;
		width: 100vw;
		background: #fff;
		padding: 5%;
		bottom: -200vw;
		transition: bottom .2s;
		z-index: -1;
	}

	#side #side_searchPanel #cont_tab1.open {
		background: #fff;
		position: absolute;
		padding: 5%;
		bottom: 0;
		box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
		transition: bottom .2s;
	}
	#side #side_searchPanel #cont_tab1 .cont-box .b-box {
		display: none;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .sp_area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .sp_area-btn a {
		display: flex;
		justify-content: center;
		background: #008803;
		border-radius: 3px;
		width: 100%;
		height: 100%;
		color: #fff;
		padding: 4%;
		font-weight: bold;
	}
	#side #side_searchPanel #cont_tab1 .cont-box .sp_area-btn a:hover{
		box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
		transition-duration: .2s;
		text-decoration: none;
	}
	
	#side #side_searchPanel #cont_tab1 .cont-box .sp_area-btn a:before {
		content: "";
		display: block;
		background: url(/material/img/header/ico_header_search.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		margin-right: 7px;
	}
	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl {
		display: flex;
		align-items: center;
		margin-bottom: 3%;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dt {
		font-size: 1.3rem;
		width: 18%;
		text-align: right;
		margin-right: 2%;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd {
		width: calc(100% - 20%);
		display: flex;
		align-items: center;
	}
	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox {
		position: relative;
		margin-right: 5px;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox.select02 {
		margin-left: 10px;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .b-box dl dd .selectBox select {
		border: 1px solid #ddd;
		border-radius: 3px;
		padding: 5px 20px 5px 5px;
		font-size: 1.6rem;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn button {
		width: 100%;
		height: 100%;
		color: #fff;
		cursor: pointer;
		padding: 4%;
		font-weight: bold;
	}


	#side #side_searchPanel #cont_tab1 .cont-box .ekinet-area-btn button:before {
		content: "";
		display: block;
		background: url(/material/img/header/ico_header_search.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		margin-right: 7px;
	}

	/*乗換・運賃*/
	#side #side_searchPanel #cont_tab2 {
		position: absolute;
		background: #fff;
		display: block;
		width: 100vw;
		padding: 5%;
		bottom: -200vw;
		transition: bottom .2s;
		z-index: -1;
	}

	#side #side_searchPanel #cont_tab2.open {
		background: #fff;
		position: absolute;
		padding: 5%;
		bottom: 0;
		box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
		transition: bottom .2s;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl {
		display: flex;
		align-items: center;
		margin-bottom: 3%;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dt {
		font-size: 1.3rem;
		width: 18%;
		text-align: right;
		margin-right: 2%;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd {
		width: calc(100% - 20%);
		display: flex;
		align-items: center;
	}
	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox {
		position: relative;
		margin-right: 5px;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox.select02 {
		margin-left: 10px;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box dl dd .selectBox select {
		border: 1px solid #ddd;
		border-radius: 3px;
		padding: 5px 20px 5px 5px;
		font-size: 1.6rem;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box .ekinet-radio {
		display: flex;
		justify-content: space-around;
		width: 50%;
		margin: 3% auto 0;
	}


	#side #side_searchPanel #cont_tab2 .cont-box .b-box .sText {
		font-size: 1.2rem;
		margin-bottom: 3%;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box .station dt {
		font-size: 1.3rem;
		width: 15%;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box .station dd {
		width: calc(100% - 15%);
	}

	#side #side_searchPanel #cont_tab2 .cont-box .b-box .station input[type="text"] {
		border: 1px solid #ddd;
		border-radius: 3px;
		padding: 5px;
		width: 100%;
		margin: 0 5px;
		font-size: 1.6rem;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .sp_area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn button {
		width: 100%;
		height: 100%;
		color: #fff;
		cursor: pointer;
		padding: 4%;
		font-weight: bold;
	}

	#side #side_searchPanel #cont_tab2 .cont-box .ekinet-area-btn button:before {
		content: "";
		display: block;
		background: url(/material/img/header/ico_header_search.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		margin-right: 7px;
	}


	/*JR＋宿泊タブ*/
	#side #side_searchPanel #cont_tab3 {
		position: absolute;
		background: #fff;
		display: block;
		width: 100vw;
		padding: 5%;
		bottom: -200vw;
		transition: bottom .2s;
		z-index: -1;
	}

	#side #side_searchPanel #cont_tab3.open {
		background: #fff;
		position: absolute;
		padding: 5%;
		box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
		transition: bottom .2s;
	}

	#side #side_searchPanel #cont_tab3 .cont-box .b-box,
	#side #side_searchPanel #cont_tab3 .ekinet-area-link {
		display: none;
	}

	#side #side_searchPanel #cont_tab3 .cont-box .sp_area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab3 .cont-box .sp_area-btn a {
		display: flex;
		justify-content: center;
		background: #008803;
		border-radius: 3px;
		width: 100%;
		height: 100%;
		color: #fff;
		padding: 4%;
		font-weight: bold;
	}
	#side #side_searchPanel #cont_tab3 .cont-box .sp_area-btn a:hover{
		box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
		transition-duration: .2s;
		text-decoration: none;
	}
	
	#side #side_searchPanel #cont_tab3 .cont-box .sp_area-btn a:before {
		content: "";
		display: block;
		background: url(/material/img/header/ico_header_search.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		margin-right: 7px;
	}
	

	#side #side_searchPanel #cont_tab3 .cont-box dl {
		display: flex;
		align-items: center;
		margin-bottom: 3%;
	}

	#side #side_searchPanel #cont_tab3 .cont-box dl dt {
		font-size: 1.3rem;
		width: 18%;
		text-align: right;
		margin-right: 2%;
	}

	#side #side_searchPanel #cont_tab3 .cont-box dl dd {
		width: calc(100% - 20%);
		display: flex;
		align-items: center;
	}
	#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox {
		position: relative;
		margin-right: 5px;
	}

	#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox.select02 {
		margin-left: 10px;
	}


	#side #side_searchPanel #cont_tab3 .cont-box dl dd .selectBox select {
		border: 1px solid #ddd;
		border-radius: 3px;
		padding: 5px 20px 5px 5px;
		font-size: 1.6rem;
	}

	#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_person_open,
	#side #side_searchPanel #cont_tab3 .cont-box dl dd .ekinet_area_open {
		display: block;
		padding: 5px 20px 5px 5px;
		position: relative;
		font-size: 1.6rem;
	}


	#ekinet-person-detail {
		position: absolute;
		background: #fff;
		top: auto;
		bottom: auto;
		right: auto;
		left: auto;
		width: 90%;
		height: auto;
		padding: 5%;
		display: none;
		z-index: 9999;
	}

	#ekinet-person-detail:before {
		content: none;
	}

	#ekinet-person-detail #ekinet-person-close {
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		top: 10px;
		right: 10px;
		cursor: pointer;
	}

	#ekinet-person-detail #ekinet-person-close:before {
		content: "";
		display: block;
		width: 2px;
		height: 20px;
		background: #999;
		transform: rotate(-45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}
	#ekinet-person-detail #ekinet-person-close:after {
		content: "";
		display: block;
		width: 2px;
		height: 20px;
		background: #999;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}


	#ekinet-person-detail .ekinet-person_select {
		display: flex;
		align-items: center;
		justify-content: center;
		margin-bottom: 5%;
	}
	#ekinet-person-detail .ekinet-person_select dt {
		font-size: 1.3rem;
		text-align: left;
		margin-right: 1%;
		width: 15%;
	}

	#ekinet-person-detail .ekinet-person_select dd {
		position: relative;
		margin-right: 2%;
		width: 20%;
	}


	#ekinet-person-detail .ekinet-person_select select {
		border: 1px solid #ddd;
		border-radius: 3px;
		padding: 7px 15px 7px 5px;
		font-size: 1.6rem;
		width: 100%;
	}

	.ekinet-person_select dd:after {
		content: "";
		display: block;
		width: 0;
		height: 0;
		border-top: 7px solid #bbb;
		border-right: 3px solid transparent;
		border-left: 3px solid transparent;
		border-bottom: 7px solid transparent;
		position: absolute;
		top: 5px;
		bottom: 0;
		right: 5px;
		margin: auto;
	}


	#ekinet-person-detail .ekinet-area-btn button{
		padding: 3%;
		width: 90%;
		margin: 0 auto;
		display: block;
		background: #008803;
		border-radius: 3px;
		color: #fff;
		cursor: pointer;
	}


	#ekinet-area-detail {
		position: absolute;
		background: #fff;
		top: auto;
		bottom: auto;
		right: auto;
		left: auto;
		width: 90%;
		height: auto;
		padding: 5% 5% 5%;
		z-index: 9999;
		display: none;
	}

	#ekinet-area-detail #ekinet-area-close {
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		top: 10px;
		right: 10px;
		cursor: pointer;
	}

	#ekinet-area-detail #ekinet-area-close:before {
		content: "";
		display: block;
		width: 2px;
		height: 20px;
		background: #999;
		transform: rotate(-45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}
	#ekinet-area-detail #ekinet-area-close:after {
		content: "";
		display: block;
		width: 2px;
		height: 20px;
		background: #999;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}

	#ekinet-area-txt {
		text-align: center;
		margin-bottom: 10px;
	}


	#ekinet-area-detail.area_select01 #ekinet-area-return,
	#ekinet-area-detail.area_select02 #ekinet-area-return {
		display: block;
		background: url(/material/img/header/ico_header_sp_return.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		position: absolute;
		top: 10px;
		left: 10px;
	}

	#ekinet-area-detail .area_select {
		margin-bottom: 5%;
		height: 100vw;
		overflow: hidden;
		overflow-y: auto;
		position: relative;
	}
	#ekinet-area-detail .area_select > dl {
		width: 100%;
		height: auto;
		position: absolute;
	}
	
	#ekinet-area-detail .area_select > .ekinet-area-detail-cat01{
		left: 0;
		transition-duration: .2s;
	}
	#ekinet-area-detail .area_select > .ekinet-area-detail-cat02 {
		left: 100%;
		transition-duration: .2s;
	}
	#ekinet-area-detail .area_select > .ekinet-area-detail-cat03 {
		left: 200%;
		transition-duration: .2s;
	}

	#ekinet-area-detail.area_select01 .area_select > .ekinet-area-detail-cat01{
		left: -100%;
		transition-duration: .2s;
	}
	#ekinet-area-detail.area_select01 .area_select > .ekinet-area-detail-cat02 {
		left: 0;
		transition-duration: .2s;
	}
	#ekinet-area-detail.area_select01 .area_select > .ekinet-area-detail-cat03 {
		left: 100%;
		transition-duration: .2s;
	}

	#ekinet-area-detail.area_select02 .area_select > .ekinet-area-detail-cat01{
		left: -200%;
		transition-duration: .2s;
	}
	#ekinet-area-detail.area_select02 .area_select > .ekinet-area-detail-cat02 {
		left: -100%;
		transition-duration: .2s;
	}
	#ekinet-area-detail.area_select02 .area_select > .ekinet-area-detail-cat03 {
		left: 0;
		transition-duration: .2s;
	}


	
	#ekinet-area-detail .area_select > dl dt {
		background: #333;
		color: #fff;
		padding: 2%;
		text-align: center;
	}
	#ekinet-area-detail .area_select > dl dd ul {
		padding: 3% 0;
	}

	#ekinet-area-detail .area_select > dl dd ul li {
		padding: 3%;
		border-bottom: 1px solid #ddd;
		text-align: center;
	}

	#ekinet-area-detail .area_select ul li.area_checked {
		background: #e2f3e2;
	}

	#ekinet-area-detail .ekinet-area-btn button {
		padding: 3%;
		width: 35%;
		margin: 0 auto;
		display: block;
		background: #008803;
		border-radius: 3px;
		color: #fff;
		cursor: pointer;
	}

	#ekinet-area-detail .area_select .ekinet-area-detail-cat03 ul {
		overflow: auto;
	}



	#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn {
		width: 100%;
		margin: 8% auto 2%;
		position: relative;
	}

	#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn button {
		display: flex;
		justify-content: center;
		background: #008803;
		border-radius: 3px;
		width: 100%;
		height: 100%;
		color: #fff;
		cursor: pointer;
		padding: 4%;
		font-weight: bold;
	}


	#side #side_searchPanel #cont_tab3 .cont-box .b-box > .ekinet-area-btn button:before {
		content: "";
		display: block;
		background: url(/material/img/header/ico_header_search.svg) no-repeat;
		background-size: contain;
		width: 20px;
		height: 20px;
		margin-right: 7px;
	}


	#side #side_searchPanel #cont_tab3 .drpNotesBtn {
		background: #e2f3e2;
		border-radius: 3px;
		padding: 2%;
		text-align: center;
		cursor: pointer;
		margin: 3% auto;
		font-size: 1.2rem;
		width: 60%;
	}


	#drpNotesBox {
		position: absolute;
		background: #fff;
		top: auto;
		bottom: auto;
		right: auto;
		left: auto;
		width: 90%;
		height: auto;
		padding: 4%;
		display: none;
		z-index: 9999;
	}


	#drpNotesBox:before {
		content: none;
	}

	#drpNotesBox .drpNotes-close {
		text-indent:100%;
		white-space:nowrap;
		overflow:hidden;
		display: block;
		width: 20px;
		height: 20px;
		position: absolute;
		top: 10px;
		right: 10px;
		cursor: pointer;
	}

	#drpNotesBox .drpNotes-close:before {
		content: "";
		display: block;
		width: 1px;
		height: 20px;
		background: #999;
		transform: rotate(-45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}
	#drpNotesBox .drpNotes-close:after {
		content: "";
		display: block;
		width: 1px;
		height: 20px;
		background: #999;
		transform: rotate(45deg);
		position: absolute;
		top: 0;
		left: 10px;
	}


	#drpNotesBox .drpNotesBox_title {
		font-weight: bold;
		text-align: center;
		margin-bottom: 3%;
		font-size: 1.6rem;
	}

	#drpNotesBox .text {
		margin-bottom: 3%;
		font-size: 3.6vw;
	}

	#drpNotesBox .drpNotesBox_dl {
		font-size: 3.5vw;
		margin-bottom: 3%;
	}

	#drpNotesBox .drpNotesBox_dl dt {
		font-size: 3.8vw;
		margin-bottom: 2%;
	}


	#side_modal-bg {
		width: 100%;
		background-color: rgba(0,0,0,0.5);
		position: absolute;
		top: 0;
		overflow: hidden;
		left: 0;
		z-index: 1000;
		display: none;
	}

	/*エラー吹き出し*/

	#area_err {
		position: absolute;
		width: 80%;
		top: auto;
		left: 0;
		right: 0;
		bottom: 47vw;
		margin: auto;
	}

	#area_err:before,
	#member_err:before{
		content: none;
	}

	#member_err {
		position: absolute;
		width: 80%;
		top: auto;
		left: 0;
		right: 0;
		bottom: 70vw;
		margin: auto;
	}




	/*運行情報*/
	#trainInfoBox {
		position: absolute;
		display: block;
		background: #fff;
		padding: 5%;
		bottom: -150vw;
		transition: bottom .2s;
		z-index: -1;
		width: 100vw;
	}

	#trainInfoBox.open {
		background: #fff;
		position: absolute;
		padding: 5%;
		bottom: 0;
		box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.2);
		transition: bottom .2s;
	}
	#trainInfo {display: block;}
	#trainInfo .noData {
		padding: 5% 2%;
	}

	#trainInfo .trainInfo_h {
		background: #333;
		padding: 2%;
		font-size: 1.8rem;
		display: block;
		text-align: center;
		position: relative;
	}


	#trainInfo .trainInfo_h .help {
		display: block;
		position: absolute;
		width: 30px;
		height: 30px;
		right: 10px;
		top: 0;
		bottom: 0;
		margin: auto;
	}
	#trainInfo .trainInfo_list {
		display: flex;
		flex-wrap: wrap;
		margin-top: 3%;
	}
	#trainInfo .trainInfo_list > li {
		width: 32%;
		margin-right: 2%;
		margin-bottom: 2%;
	}
	
	#trainInfo .trainInfo_list > li:nth-child(3n) {
		margin-right: 0;
	}

	#trainInfo .trainInfo_list > li a {
		border: 1px solid #ddd;
		border-radius: 5px;
		display: flex;
		flex-wrap: wrap;
		height: 100%;
		align-items: center;
		justify-content: center;
		padding: 10% 5%;
		position: relative;
		color: #333;
		font-size: 3.4vw;
	}

	#trainInfo .trainInfo_list > li.delay a,
	#trainInfo .trainInfo_list > li.adjust a {font-weight: bold; border: none;}
	#trainInfo .trainInfo_list > li a img {
		margin:0 38% 10%;
		width: 100%;
		display: block;
	}
	#trainInfo .trainInfo_list > li a:after {
		content: none;
	}
	#trainInfo #trainInfo_btn {
		display: flex;
	}
	
	#trainInfo .infoDelay {
		width: 40%;
		margin: 2% auto 5%;
	}
	#trainInfo .infoDelay a {
		padding: 5%;
	}

	/*運休情報*/
	#infoStop .infoStop_h {
		text-align: center;
		padding: 2%;
	}

	#infoStop .infoStop_list {
		margin :3% 0 5%;
		display: flex;
		justify-content: space-between;
	}

	#infoStop .infoStop_list > li {
		width: 48%;
	}

	#infoStop .infoStop_list > li a {
		background: #fff;
		display: flex;
		justify-content: center;
		align-items: center;
		padding: 5%;
		position: relative;
		color: #333;
		border: 1px solid #ddd;
		border-radius: 5px;
	}


	#infoStop .infoStop_list > li a:after {
		content: none;
	}

	#infoStop .infoStop_list02 {
		padding: 0;
	}
	#infoStop .infoStop_list02 > li:not(:last-child) {
		margin-bottom: 3%;
	}

}

/*----------------------------------
印刷時スタイル
------------------------------------*/

@media print {
	#side{
		display: none;
	}
}


/* -----------------------------------------
	pageTop
----------------------------------------- */

.pageTop {
	position: fixed;
	bottom: 20px;
	right: 20px;
	z-index: 98;
}


.pageTop a {
	display: block;
	width: 60px;
	height: 60px;
	border-radius: 50%;
	background: #008803;
	position: relative;
	box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.5);
}

.pageTop a:hover {
	transition-duration: .2s;
	box-shadow: 0px 3px 9px 0px rgba(0, 0, 0, 0.5);
}

.pageTop a img {
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	right: 0;
	margin: auto;
}


@media screen and (max-width: 750px){

	.pageTop {
		position: fixed;
		bottom: 20px;
		right: 10px;
		z-index: 98;
	}

	.pageTop a {
		display: block;
		width: 40px;
		height: 40px;
		border-radius: 50%;
		background: #008803;
		position: relative;
		box-shadow: 0px 1px 6px 0px rgba(0, 0, 0, 0.5); 
	}

	.pageTop a img {
		width: 50%;
	}
}


/* -----------------------------------------
	汎用スタイル
----------------------------------------- */

/*見出し*/
.heading01 {
	font-size: 4.1rem;
	color: #008803;
	text-align: center;
}

.heading01 .image {
	display: block;
	text-align: center;
}

.main2 .heading01 .image img {width: 70px;}

.heading01_black {
	font-size: 4.1rem;
	color: #333;
	text-align: center;
}

.heading02 {
	font-size: 3.6rem;
	text-align: center;
	margin-bottom: 80px;
}

.heading03 {
	font-size: 2.0rem;
	text-align: center;
	margin-bottom: 60px;
}

.heading_link01 a {
	display: block;
	text-align: center;
	padding: 15px 30px;
	text-decoration: none;
	color: #333;
	background: #eee;
	font-size: 2.4rem;
	position: relative;
}

.heading_link01 a:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.3);
	transition-duration: .2s;
}

.heading_link01 a:after {
	content: "";
	display: block;
	border-top: 3px solid #008803;
	border-right: 3px solid #008803;
	width: 8px;
	height: 8px;
	transform: rotate(45deg);
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 20px;
}

@media screen and (max-width: 750px){
	.heading01 {
		font-size: 3rem;
		color: #008803;
		text-align: center;
	}

	.heading01 .image {
		width: 17%;
		margin: 0 auto;
	}

	.main2 .heading01 .image img {width: 100%;}
	.main2 .heading01 {font-size: 3rem;}

	.heading01_black {
		font-size: 3rem;
		color: #333;
		text-align: center;
	}

	.heading02 {
		font-size: 2.7rem;
		text-align: center;
		margin-bottom: 15%;
	}

	.heading03 {
		font-size: 2.0rem;
		text-align: center;
		margin-bottom: 8%;
	}

	.heading_link01 a {
		padding: 3% 5% 3% 3%;
		font-size: 2.2rem;
	}

	.heading_link01 a:after {
		right: 3%;
	}
}



/*リンクスタイル*/
.link a,
.linkBlank a,
.linkLeft a{
	position: relative;
	padding-left: 20px;
	display: inline-block;
}

.linkLeft a {
	padding-left: 15px;
}

.linkPage a {
	padding-left: 20px;
	position: relative;
	display: inline-block;
}

span.link a,
span.linkBlank a,
span.linkLeft a {
	position: relative;
	padding-left: 20px;
	display: inline;
	margin-left: 5px;
}

.link a:before {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 5px;
	left: 2px;
}

.linkBlank a:before {
	content: "";
	display: block;
	background: url(/material/img/ico_blank.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 5px;
	left: 0;
}

.linkLeft a:before {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	transform: rotate(-180deg);
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 0;
	margin: auto;
}


.linkPage a:before {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	transform: rotate(90deg);
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 5px;
	margin: auto;
}

.pdfLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pdf.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin:0 5px;
}

.pamphLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pamphlet.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	vertical-align: middle;
	margin-left: 5px;
}

.linkRight a {
	position: relative;
	padding-right: 15px;
	display: inline-block;
}
.linkRight a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	right: 0;
	margin: auto;
}


.link02 a,
.linkBlank02 a{
	position: relative;
	padding: 10px 25px 10px 10px;
	display: block;
	border-bottom: 1px solid #ddd;
}

.link02 a:hover,
.linkBlank02 a:hover{
	text-decoration: none;
	border-bottom: 1px solid #008803;
}

.link02 a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_link.svg) no-repeat;
	background-size: contain;
	width: 6px;
	height: 10px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}

.linkBlank02 a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_blank.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}



/*ボタンスタイル*/
.btn a {
	display: block;
	background: #008803;
	border-radius: 3px;
	color: #fff;
	padding: 20px 15px;
	text-align: center;
}

.btn02 a {
	display: block;
	background: #e2f3e2;
	border-radius: 3px;
	color: #333;
	padding: 20px 15px;
	text-align: center;
}

.btn03 a {
	display: block;
	background: #eee;
	border-radius: 3px;
	color: #333;
	padding: 20px 15px;
	text-align: center;
}

.btn a:hover,
.btn02 a:hover,
.btn03 a:hover {
	text-decoration: none;
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}


.btn.blank a,
.btn02.blank a,
.btn03.blank a {
	position: relative;
	padding: 20px 25px;
}

.btn.blank a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_blank_w.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}

.btn .pdfLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pdf_w.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}

.btn .pamphLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pamphlet_w.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}


.btn02.blank a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_blank_g.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}

.btn02 .pdfLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pdf_g.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}

.btn02 .pamphLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pamphlet_g.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}


.btn03.blank a:after {
	content: "";
	display: block;
	background: url(/material/img/ico_blank_b.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	right: 10px;
}

.btn03 .pdfLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pdf_b.svg) no-repeat;
	background-size: contain;
	width: 12px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}

.btn03 .pamphLink:after {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_pamphlet_b.svg) no-repeat;
	background-size: contain;
	width: 14px;
	height: 12px;
	vertical-align: middle;
	margin:0 8px;
}

.btn04 a {
	display: block;
	width: calc(100% - 20px);
	background: #e2f3e2;
	border-radius: 3px;
	color: #333;
	padding: 20px 15px;
	text-align: center;
	position: relative;
}

.btn04 a:after {
	content: "";
	display: block;
	width: 0;
	height: 0;
	border-top: 30px solid transparent;
	border-right: 0 solid transparent;
	border-bottom: 30px solid transparent;
	border-left: 20px solid #e2f3e2;
	position: absolute;
	right: -20px;
	top: 0;
	bottom: 0;
	margin: auto;
}

.btn04 a:hover {
	text-decoration: none;
	color: #fff;
}

.btn04 a:hover {
	background: #008803;
}
.btn04 a:hover:after {
	border-left-color: #008803;
}

.btnPrint a {
	display: inline-block;
	width: 80px;
	background: #eee;
	border-radius: 3px;
	color: #333;
	padding: 10px 15px 10px 30px;
	text-align: center;
	position: relative;
}

.btnPrint a:before {
	content: "";
	display: block;
	background: url(/material/img/ico_print.svg) no-repeat;
	background-size: contain;
	width: 18px;
	height: 14px;
	position: absolute;
	top: 0;
	bottom: 0;
	left: 10px;
	margin: auto;
}

.btnPrint a:hover {
	text-decoration: none;
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.5);
	transition-duration: .2s;
}

/*画像ありボタン*/
.imgBtn a {
	display: block;
	background: #fff;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

.imgBtn a .text {
	padding: 10px;
	text-align: center;
}

.imgBtn a:hover {text-decoration: none;}

.imgBtn a:hover {
	transition-duration: .2s;
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.2);
}

/*バナーリンク*/
.bnrLink:hover img {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.2);
	transition-duration: .2s;
}


/*リストスタイル*/
.listDot > li {
	padding-left: 15px;
	position: relative;
}

.listDot > li:before {
	content: "";
	display: block;
	background: #333;
	width: 6px;
	height: 6px;
	border-radius: 50%;
	position: absolute;
	top: 0.5em;
	left: 1px;
}

/*カード型ボックス*/
.cardsBox {
	background: #fff;
	padding: 30px;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

/*カード型ボックス_リンクあり*/
.cardsBox_link {
	background: #fff;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

.cardsBox_link > a {
	padding: 30px;
	display: block;
	height: 100%;
	text-decoration: none;
	color: #333;
}

.cardsBox_link > a:hover {
	box-shadow: 0px 1px 8px 0px rgba(0, 0, 0, 0.2);
	transition-duration: .2s;
}

/*pdf_linkBox*/
.pdf_linkBox {
	display: flex;
	max-width: 970px;
	width: 100%;
	margin: 0 auto;
	padding: 20px 10px;
}

.pdf_linkBox .pdf_img {
	margin-right: 20px;
}

@media screen and (max-width: 750px){
	/*カード型ボックス*/
	.cardsBox {
		padding: 5%;
	}


	.cardsBox_link > a {
		padding: 5%;
	}
	
	/*pdf_linkBox*/
	.pdf_linkBox {
		display: none;
	}

}


/*テーブルレイアウト*/
.basicTable,
.basicTable02,
.basicTable03{
	background: #fff;
	width: 100%;
	padding: 10px;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

.basicTable > table,
.basicTable02 > table,
.basicTable03 > table{
	width: 100%;
	border-collapse: collapse;
	table-layout: fixed;
}

.basicTable > table th,
.basicTable02 > table th,
.basicTable03 > table th {
	padding: 20px 10px;
	text-align: center;
	vertical-align: middle;
}

.basicTable.tdCenter > table td,
.basicTable02.tdCenter > table td,
.basicTable03.tdCenter > table td {
	text-align: center;
}

.basicTable > table td,
.basicTable02 > table td,
.basicTable03 > table td {
	padding: 20px 10px;
	vertical-align: middle;
}

.basicTable > table td + td,
.basicTable02 > table td:not(:first-child)  {
	border-left: 1px solid #ddd;
}

.basicTable > table tbody tr:not(:last-child),
.basicTable02 > table tbody tr:not(:last-child){
	border-bottom: 1px solid #ddd;
}

.basicTable > table th {
	background: #f8f8f8;
}

.basicTable03 > table th {
	background: #eee;
}

.basicTable03 > table thead th {
	border-bottom: 1px solid #ddd;
}

.basicTable03 > table thead th + th,
.basicTable03 > table tbody th + th {
	border-left: 1px solid #ddd;
}

.basicTable03 > table tbody th {
	border-bottom: 1px solid #ddd;
}

.basicTable03 > table tbody tr:last-child th,
.basicTable03 > table tbody tr:last-child td {
	border-bottom: none;
}

.btnon {border-top: none !important;}
.brnon {border-right: none !important;}
.blnon {border-left: none !important;}
.bbnon {border-bottom: none !important;}

.basicTable03 > table tbody td {
	border: 1px solid #ddd;
}

.basicTable03 > table tbody td:last-child {
	border-right: none;
}

.basicTable .basicHeading,
.basicTable .basicHeading th,
.basicTable02 .basicHeading,
.basicTable02 .basicHeading th,
.basicTable03 .basicHeading,
.basicTable03 .basicHeading th {
	background: #eee;
}


.basicTable03.bgColor01 > table tbody th {
	border-right: 1px solid #ddd;
}

.bg01 {background: #e2f3e2 !important;}
.bg02 {background: #f1f9f1 !important;}


@media screen and (max-width: 750px){

	/*テーブルレイアウト*/

	.basicTable > table,
	.basicTable02 > table,
	.basicTable03 > table{
		width: 100%;
		border-collapse: collapse;
		table-layout: fixed;
	}

	.basicTable > table th,
	.basicTable02 > table th,
	.basicTable03 > table th {
		padding: 1%;
		font-size: 3.5vw;
	}

	.basicTable > table td,
	.basicTable02 > table td,
	.basicTable03 > table td {
		padding: 1%;
		font-size: 3.5vw;
	}
	
	.scroll {
		width: auto;
		overflow-x: auto;
		transform: scaleY(-1);
		padding: 15px 10px 10px;
	}
	.scroll::-webkit-scrollbar {
		height: 8px;
	}
	.scroll::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	.scroll::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #008803;
	}
	.scroll table {
		width:auto;
		position: relative;
		white-space: nowrap;
		transform: scaleY(-1);
	}
	.scroll table::after {
		content: "";
		display: block;
		position: absolute;
		background: #fff;
		width: 10px;
		height: 100%;
		top: 0;
		left: 100%;
	}
	
	.scroll table tr th,
	.scroll table tr td{
		width: 100%;
		padding: 10px 20px;
	}

	.scroll table tr:nth-child(1) th {
		height: auto;
	}

	.scroll02 > table {
		display: flex;
		width: 100%;
	}
	 .scroll02 > table thead {
		display: block;
		width:auto;
	}
	.scroll02 > table thead th {
		width: auto;
	}
	.scroll02 > table tbody{
		display: block;
		width:auto;
		overflow-x: auto;
		white-space: nowrap;
	  }

	.scroll02 table tbody::-webkit-scrollbar {
		height: 8px;
	}
	.scroll02 table tbody::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	.scroll02 table tbody::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #008803;
	}
	.scroll02 table tbody tr {
		display: inline-block;
		margin: 0 -3px;
	}
	.scroll02 table tbody tr:not(:last-child) {
		border-bottom: none;
	}
	.scroll02 table tr th,
	.scroll02 table tr td{
		display: block;
		padding: 10px 20px;
	}
	.scroll02 table tr td {border-bottom: 1px solid #ddd;}
	.scroll02 table tr td:nth-of-type(1) {
		border-left: 1px solid #ddd;
	}
}



.exmp {
	display: inline-block;
	background: #333;
	color: #fff;
	padding: 2px 5px;
}


/*注意喚起*/
.noteBox {
	border: 1px solid #eb0000;
	padding: 30px;
}

.noteBox .noteBox_h {
	text-align: center;
	margin-bottom: 20px;
	font-size: 1.6rem;
	color: #eb0000;
}

.noteBox .noteBox_text {
	color: #eb0000;
}

/*白背景画像*/
.imgBox {
	background: #fff;
	padding: 30px;
	text-align: center;
}

/*グレー背景ボックス*/
.grayBox {
	background: #eee;
	padding: 30px;
}

@media screen and (max-width: 750px){
	/*注意喚起*/
	.noteBox {
		border: 1px solid #eb0000;
		padding: 5%;
	}

	.noteBox .noteBox_h {
		text-align: center;
		margin-bottom: 5%;
		font-size: 1.6rem;
		color: #eb0000;
	}

	.noteBox .noteBox_text {
		color: #eb0000;
	}
	/*白背景画像*/
	.imgBox {
		padding: 5%;
	}

	/*グレー背景ボックス*/
	.grayBox {
		padding: 5%;
	}
}


/*モーダル*/
.modalBox .modalClick .modalImg,
.modalBox .modalClick .modalText {
	cursor: pointer;
}
.modalBox .modalClick .modalImg:hover img {
	opacity: 0.7;
}

.modalBox .modalClick .modalText {
	position: relative;
	text-decoration: underline;
}
.modalBox .modalClick .modalText:hover{
	text-decoration: none;
}

.modalBox .modalClick .modalText:before {
	content: "";
	display: inline-block;
	background: url(/material/img/ico_search_b.svg) no-repeat;
	background-size: contain;
	vertical-align: middle;
	width: 19px;
	height: 19px;
	margin-right: 10px;
}

.modalContents {
	display: none;
	background: #fff;
	position: absolute;
	width: 98%;
	max-width: 950px;
	margin: auto;
	padding: 20px;
	z-index: 9999;
	box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
}

.modalContents .close {
	position: absolute;
	display: block;
	width: 30px;
	height: 30px;
	cursor: pointer;
	top: -35px;
	right: -10px;
}
.modalContents .close:before {
	content: "";
	display: block;
	width: 4px;
	height: 28px;
	background: #fff;
	transform: rotate(-45deg);
	position: absolute;
}
.modalContents .close:after {
	content: "";
	display: block;
	width: 4px;
	height: 28px;
	background: #fff;
	transform: rotate(45deg);
	position: absolute;
}


.modal-bg {
	display: none;
	width: 100%;
	background-color: rgba(0,0,0,0.5);
	position: absolute;
	top: 0;
	left: 0;
	z-index: 1;
}

@media screen and (max-width: 750px){

	/*モーダル*/
	.modalContents {
		display: none;
		background: #fff;
		position: absolute;
		z-index: 2;
		width: 96%;
		max-width: 100%;
		margin: auto;
		padding: 3%;
		z-index: 2;
		box-shadow: 0px 1px 2px 0px rgba(0, 0, 0, 0.2);
	}

	.modalContents .close {
		position: absolute;
		display: block;
		width: 30px;
		height: 30px;
		cursor: pointer;
		top: -35px;
		right: -10px;
	}
	.modalContents .close:before {
		content: "";
		display: block;
		width: 4px;
		height: 28px;
		background: #fff;
		transform: rotate(-45deg);
		position: absolute;
	}
	.modalContents .close:after {
		content: "";
		display: block;
		width: 4px;
		height: 28px;
		background: #fff;
		transform: rotate(45deg);
		position: absolute;
	}


	.modal-bg {
		display: none;
		width: 100%;
		background-color: rgba(0,0,0,0.5);
		position: absolute;
		top: 0;
		left: 0;
		z-index: 1;
	}
}

/*QAアイコン*/

.question,
.answer{
	display: flex;
	align-items: flex-start;
	margin-bottom: 15px;
}

.question > .icon {
	background: #ff4848;
	display: block;
	color: #fff;
	width: 22px;
	height: 22px;
	text-align: center;
	margin-right: 10px;
}
.answer > .icon {
	background: #e0f4ff;
	display: block;
	width: 22px;
	height: 22px;
	text-align: center;
	margin-right: 10px;
}

.question > .text,
.answer > .text {
	width: calc(100% - 32px);
}

.question > .text {
	font-weight: bold;
}


/*タブ*/
.tabList01 {
	display: flex;
	justify-content: center;
}

.tabList01 > li {
	padding: 10px 20px;
	border-bottom: 5px solid #ddd;
	font-weight: bold;
	color: #333;
	font-size: 1.8rem;
	cursor: pointer;
}

.tabList01 > li.active {
	color: #008803;
	border-bottom: 5px solid #008803;
	transition-duration: .2s;
	transition-timing-function: ease-out;
}


.tabList01 > li a {
	display: block;
	color: #333;
	text-decoration: none;
}

.tabList01 > li.active a {
	color: #008803;
}

@media screen and (max-width: 750px){

	/*タブ*/
	.tabList01 > li {
		font-size: 1.8rem;
		cursor: pointer;
	}
	
	.tabList01.sp_scroll {
		width: auto;
		justify-content: flex-start;
		position: relative;
		overflow-x: auto;
		white-space: nowrap;
		padding-bottom: 3%;
	}
	.tabList01.sp_scroll::-webkit-scrollbar {
		height: 5px;
	}
	.tabList01.sp_scroll::-webkit-scrollbar-track {
		border-radius: 5px;
		background: #eee;
	}
	.tabList01.sp_scroll::-webkit-scrollbar-thumb {
		border-radius: 5px;
		background: #666;
	}
}
