@charset "UTF-8";

/*---------------------------------------------
PC
---------------------------------------------*/
@media screen and (min-width: 769px) {

	a:hover img,
	input[type="image"]:hover {
		opacity: 0.7;
		filter: alpha(opacity=70);
		-ms-filter: "alpha( opacity=70 )";
		-moz-opacity: 0.7;
	}

	a:hover {
		opacity: 0.7;
	}

	.spOnly {
		display: none !important;
	}

	.midashibox {
		background-image: url(../img/station.jpg);
		height: 200px;
		background-repeat: no-repeat;
		background-position: center 0;
		overflow: hidden;
	}

	.midashibox h1 {
		width: 1000px;
		margin: 40px auto;
	}

	.midashibox p {
		font-weight: normal;
		font-size: 16px;
		width: 1000px;
		margin: -35px auto;
		color: #000;
		text-shadow: #fff 0px 0px 5px, #fff 0px 0px 5px, #fff 2px 0px 5px;
	}

	#maincolumn {
		width: 1000px;
		height: 800px;
		margin: 0 auto;
	}

	#maincolumn .catch0 {
		line-height: 180%;
		margin-top: 50px;
	}

	#maincolumn .catch1 {
		line-height: 180%;
		margin-top: 15px;
	}

	#maincolumn .catch2 {
		margin: 15px 0;
	}

	h2 {
		background-image: url(../img/hone.png);
		background-repeat: no-repeat;
		background-size: 30px;
		background-position: 0;
		padding-left: 40px;
		margin: 45px 0 0 5px;
	}

	.leftcolumn {
		float: left;
		width: 765px;
		margin-right: -40px;
	}

	h3 {
		background-color: #cfcfcf;
		display: inline-block;
		width: 215px;
		text-align: center;
		font-size: 14px;
		padding: 5px 0 5px;
		margin-bottom: 6px;
	}

	.leftcolumn p:nth-child(3) {
		background-color: #f1f9fb;
		text-align: center;
	}

	#maincolumn .accbox {
		margin: 0 0 10px 10px;
		width: 743px;
		border: 0;
		border-spacing: 0;
		padding: 0;
	}

	#maincolumn .btn_search {
		text-align: center;
		padding: 50px 0 100px;
	}

	#maincolumn .btn_search input {
		background-color: #00349a;
		width: 250px;
		height: 40px;
		color: #fff;
		font-weight: bold;
		border: none;
		font-size: 16px;
	}

	#maincolumn .routename {
		font-size: 14px;
		color: #00349a;
	}

	#maincolumn .st_last label:first-child {
		display: inline-block;
		margin: 5px 0 1px;
	}

	#maincolumn .stationlist {
		line-height: 1.1em;
		margin: 0 0 0 1em;
		border: 1px solid #c9cccf;
		overflow: hidden;
		display: inline-table;
		*display: inline;
	}

	#maincolumn .stationlist li {
		float: left;
		list-style: none;
		cursor: pointer;
		height: 136px;
	}

	#maincolumn .stationlist li {
		text-align: center;
		display: block;
	}

	#maincolumn .stationlist li.bg2x {
		background: #d5d7d9;
	}

	#maincolumn .stationlist li:hover {
		background: #a1c5f5;
	}

	*html #maincolumn .stationlist li {
		padding: 3px 1px 3px 4px;
	}

	#maincolumn .stationlist li label {
		width: 1em;
		line-height: 1.1em;
		margin-left: 1px;
		cursor: pointer;
		height: 82%;
		padding: 4px;
		display: block;
		-ms-writing-mode: tb-rl;
		text-align: left;
	}

	#maincolumn .stationlist li .komoji {
		display: block;
		line-height: 0.8em;
		margin-left: 0.1em;
		margin-bottom: 0.3em;
	}

	#maincolumn .stationlist li input {
		*margin: 0 0 0 -3px;
		margin-right: 0!important;

	}
}

/*---------------------------------------------
SP
---------------------------------------------*/
@media screen and (max-width: 768px) {
	.pcOnly {
		display: none !important;
	}

	input {
		border: 1px solid #ddd;
		margin-right: 1em;
		margin-left: 10px;
	}

	.midashibox {
		overflow: hidden;
		width: 100%;
	}

	.midashibox h1 {
		background-image: url(../img/station_sp.jpg);
		background-repeat: no-repeat;
		background-position: right 0;
		background-size: auto 100px;
		background-color: #fff;
		height: 100px;
		width: 100%;
		font-size: 18px;
		padding: 35px 0 0 10px;
		color: #000;
		text-shadow: white 1px 1px 0, white -1px -1px 0,
			white -1px 1px 0, white 1px -1px 0,
			white 0px 1px 0, white 0 -1px 0,
			white -1px 0 0, white 1px 0 0;
	}

	.midashibox p {
		font-weight: normal;
		font-size: 10px;
		width: 100%;
		padding: 10px 10px;
		color: #000;
	}

	#maincolumn {
		width: 100%;
		margin: 0 auto;
		display: table;
		padding: 0 10px 0 10px;
	}

	#maincolumn .search_area_route {
		display: table-cell;
	}

	#maincolumn .leftcolumn h2 {
		background-image: url(../img/hone.png);
		background-repeat: no-repeat;
		background-size: 16px;
		background-position: 0 3px;
		text-align: left;
		padding: 0 0 10px 26px;
		font-size: 16px;
	}

	#maincolumn .leftcolumn .catch2 {
		font-size: 12px;
		padding-bottom: 10px;
		line-height: 1.6;
	}

	#maincolumn .leftcolumn .ttl2 {
		background-size: 16px;
		background-position: 0 32px;
		text-align: left;
		padding: 30px 0 10px 26px;
		font-size: 16px;
	}

	.leftcolumn p img {
		width: 100%;
		margin-bottom: 10px;
	}

	#maincolumn .routename {
		display: inline-block;
		width: 85%;
		font-size: 16px;
		color: #00349a;
		padding: 10px 0px 10px 10px;
	}

	#maincolumn .accbox tr td:first-child li.routename {
		padding: 0px 0px 2px 0;
	}

	#maincolumn .stationlist {
		max-width: 800px;
		clear: both;
		margin: 0px;
		font-size: 16px;
		transition: all 0.3s;
		background-color: #eaf2ff8c;
	}

	#maincolumn .stationlist li {
		list-style: none;
		padding: 10px 0 10px 10px;
		cursor: pointer;
		width: 100%;
	}

	#maincolumn .stationlist li:not(:last-of-type) {
		border-bottom: 1px solid #ccc;
	}

	#maincolumn .stationlist:last-of-type li:first-child {
		border-top: 1px solid #ccc;
	}

	#maincolumn .stationlist:first-of-type li:first-child {
		border-top: 8px solid #849fcc;
	}

	*html #maincolumn .stationlist li {
		padding: 3px 1px 3px 4px;
	}

	#maincolumn .stationlist li label {
		line-height: 1.1em;
		margin-left: 14px;
		padding-top: 3px;
	}

	#maincolumn .stationlist li .komoji {
		line-height: 0.8em;
		margin-left: 0.1em;
		margin-bottom: 0.3em;
	}

	#maincolumn .stationlist li input {
		margin-left: 0;
		margin-right: 0;
	}

	#maincolumn .btn_search {
		width: 100%;
		text-align: center;
		padding: 20px 0 30px;
	}

	#maincolumn .btn_search input {
		background-color: #00349a;
		width: 250px;
		height: 40px;
		color: #fff;
		font-weight: bold;
		border: none;
		font-size: 16px;
		margin-right: 0px;
		margin-left: 0px;
	}

	.accbox {
		padding: 0;
		line-height: 1.6;
	}
	.accbox li {
		padding: 0 5px;
	}

	/*ラベル*/
	.accbox label {
		display: inline-block;
		font-weight: normal;
		border-bottom: dotted 1px #ddd;
		width: 100%;
	}

	/*アイコンを表示*/

	.routename {
		position: relative;
		padding: 0 0 0 16px;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 15px;
	}

	.routename::after{
		content: "";
		position: absolute;
		bottom: 15px;
		right: -5%;
		border-top: 12px solid #00349a;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
		transition: all 0.3s;
	}

	.routename {
		position: relative;
		padding: 0 0 0 16px;
		color: #000;
		vertical-align: middle;
		text-decoration: none;
		font-size: 15px;
	}

	.routename::after{
		content: "";
		position: absolute;
		bottom: 15px;
		right: -5%;
		border-top: 12px solid #00349a;
		border-left: 8px solid transparent;
		border-right: 8px solid transparent;
	}

	label.on .routename::after{
		transform: rotate(-180deg);
		transition: all 0.3s;
	}

	.accbox .accinbox {
		display: none;
	}

	.accbox .accshow p {
		margin: 15px 10px
	}

	.cssacc.on + label ,
	.stationlist li label {
		border-bottom: none;
		padding-bottom: 5px;
		width: 90%;
	}

	.cssacc {
		margin: 0;
		display: inline;
		vertical-align: middle;
	}


}