﻿@charset "utf-8";

@media screen and (min-width:961px) {
	.divicon {
		display: table-cell;
		background-color: #FFFFF0;
		border : 2px solid #000000;
		border-radius: 4px;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
	}

	span.busstop {
		width: 124px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #FFFFFF;
		background-color: #2C4A9B;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
	}

	span.busstopclosebutton {
		display: table-cell;
		color: #FFFFFF;
		margin: 1px 1px;        /* apply the needed vertical margins */
		background-color: #00000000;
		white-space: nowrap;
		font-size: 16px;
		position: absolute;
		top: -2px;
		left: 110px;
	}
	
	span.route {
		width: 36px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
		border: 2px solid #000000;
		border-radius: 5px;
	}
	
	span.routeRed {
		width: 36px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
		border: 3px solid #FF0000;
		border-radius: 5px;
	}
	
	span.routeLong {
		width: 122px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
		border: 2px solid #000000;
		border-radius: 5px;
	}
	
	span.routeLongRed {
		width: 122px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 12px;
		font-weight: bold;
		border: 3px solid #FF0000;
		border-radius: 5px;
	}

	span.width25p {
		font-size: 1.0rem;
		width: 24%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}
	
	span.width50p {
		font-size: 1.0rem;
		width: 49%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}
	
	span.width100p {
		font-size: 1.0rem;
		width: 99%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}
	
    section.typeA .tabLabel {	/* タブ */
    	margin-right: 3px;
    	padding: 3px 12px;
    	flex: 1;
    	order: -1;
    	border-radius: 3px 3px 0 0;
		font-size: 1.0rem;
		font-weight: bold;
    	color: #444;
    	background: #FEE8EA;
    	transition: .5s ;
    	cursor: pointer;
    }

	input[type="button"].blueButton {
		width: 40%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #B1EBFE;
		font-size: 1.0rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #2ca9b4;
		border-radius: 15px;
	}
	
	input[type="button"].greenButton {
		width: 40%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #B1FEB9;
		font-size: 1.0rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #2ca9b4;
		border-radius: 15px;
	}

	input[type="button"].redButton {
		width: 15%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #FAC0BF;
		font-size: 1.0rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #DE6A64;
		border-radius: 15px;
	}
}

@media screen and (max-width:960px) {
	.divicon {
		display: table-cell;
		background-color: #FFFFF0;
		border : 1px solid #000000;
		border-radius: 2px;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
	}

	span.busstop {
		width: 78px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #FFFFFF;
		background-color: #2C4A9B;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
	}

	span.busstopclosebutton {
		display: table-cell;
		color: #FFFFFF;
		margin: 1px 1px;        /* apply the needed vertical margins */
		background-color: #00000000;
		white-space: nowrap;
		font-size: 14px;
		position: absolute;
		top: -4px;
		left: 68px;
	}
	
	span.route {
		width: 21px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
		border: 1px solid #000000;
		border-radius: 4px;
	}
	
	span.routeRed {
		width: 21px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
		border: 2px solid #FF0000;
		border-radius: 4px;
	}
	
	span.routeLong {
		width: 74px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
		border: 1px solid #000000;
		border-radius: 4px;
	}
	
	span.routeLongRed {
		width: 74px;
		display: inline-block; /* change the display type           */
		text-align: center;
		margin: 1px 1px;        /* apply the needed vertical margins */
		color: #000000;
		background-color: #fff;
		opacity: 1.0;
		white-space: nowrap;
		font-size: 8px;
		font-weight: bold;
		border: 2px solid #FF0000;
		border-radius: 4px;
	}

	span.width25p {
		font-size: 0.8rem;
		width: 24%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}
	
	span.width50p {
		font-size: 0.8rem;
		width: 49%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}
	
	span.width100p {
		font-size: 0.8rem;
		width: 99%;
		margin: 0 3 0 3;
		padding: 0 3 0 3;
	}

    section.typeA .tabLabel {	/* タブ */
    	margin-right: 3px;
    	padding: 3px 12px;
    	flex: 1;
    	order: -1;
    	border-radius: 3px 3px 0 0;
		font-size: 0.8rem;
		font-weight: bold;
    	color: #444;
    	background: #FEE8EA;
    	transition: .5s ;
    	cursor: pointer;
    }

	input[type="button"].blueButton {
		width: 40%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #B1EBFE;
		font-size: 0.7rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #2ca9b4;
		border-radius: 15px;
	}
	
	input[type="button"].greenButton {
		width: 40%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #B1FEB9;
		font-size: 0.7rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #2ca9b4;
		border-radius: 15px;
	}

	input[type="button"].redButton {
		width: 15%;
		padding: 1px 1px 1px 1px;
		margin: 1px 1px 1px 1px;
		background: #FAC0BF;
		font-size: 0.7rem;
		font-weight: bold;
		color: #000;
		border: 3px solid #DE6A64;
		border-radius: 15px;
	}
}

a.white:link {
    color: #FFFFFF;
}

a.white:visited {
    color: #FFFFFF;
}

a.red:link{
	font-weight: bold;
    color: #FF0000;
}

a.red:visited{
	font-weight: bold;
    color: #FF0000;
}

span.busstopCurrent {
	font-size: 1.2rem;
	font-weight: bold;
	width: 100%;
	text-align: left;
	margin: 0.0rem 0.25rem 0.25rem 0.0rem;
	padding: 0 0 0 0;
}

#mapdock {
	overflow: hidden;
	margin-bottom: 0.4rem;
}

#map {
	float: left;
	width: 100%;
	height: 640px;
	margin-bottom: 0.4rem;
	z-index:0;
}

#mapmask {
	width: 100%;
	height: 640px;
	position: absolute;
	margin-bottom: 0.4rem;
	top:0; 
	left:0;
	z-index:1; 
	pointer-events:none;
	background:rgba(0, 0, 0, 0.5);
	opacity:0.0; 
	transition:0.5s;
}

.mapshow{
	opacity:1.0;
}
  
#mapmessage{
	width:90%;
	position: absolute;
	margin-left:5%;
	text-align:center;
	top:50%;
	-webkit-transform:translateY(-50%);
	-ms-transform:translateY(-50%);
	transform:translateY(-50%);
	color:#ffffff;
	font-size: 2.0rem;
}

#controlbar {
	margin-bottom: 0.4rem;
}

input[type="button"].blueButton:hover {
	background: #FF9300;
}

input[type="button"].greenButton:hover {
	background: #FF9300;
}

input[type="button"].redButton:hover {
	background: #FF9300;
}

span.routeNameLabel {
	display: table-cell;
    color: #FFFFFF;
	background-color: #2C4A9B;
	opacity: 0.0;
	white-space: nowrap;
	font-size: 20px;
	font-weight: bold;
	margin: 3 3 3 3;
	position: absolute;
	top: 11px;
	left: 50px;
}

#dock1 {
}

#busstops200m {
}

.overlaybutton {
	display: table-cell;
	color: #f00;
	background-color: #ff4;
	opacity: 1.0;
	white-space: nowrap;
	font-size: 12px;
	font-weight: bold;
	margin: 3 3 3 3;
	padding: 3 3 3 3;
}

.routeNameIcon {
	display: table-cell;
    color: #FFFFFF;
	background-color: #2C4A9B;
	border : 12px solid #00000000;
	opacity: 1.0;
	white-space: nowrap;
	font-size: 32px;
	font-weight: bold;
	margin: 3 3 3 3;
	padding: 3 3 3 3;
}

span.routeRed:link {
    color: #FF0000;
}

span.routeRed:visited {
    color: #FF0000;
}

span.routeLongRed:link {
    color: #FF0000;
}

span.routeLongRed:visited {
    color: #FF0000;
}

span.overlaybutton {
    color: #fff;
	background-color: #f00;
	opacity: 1.0;
	white-space: nowrap;
	font-size: 12px;
	font-weight: bold;
    border: 1px solid #000;
    border-radius: 8px;
}

span.routeNameIcon {
    color: #FFFFFF;
	background-color: #2C4A9B;
	opacity: 1.0;
	white-space: nowrap;
	font-size: 32px;
	font-weight: bold;
    border: 5px solid #FFFFFF;
    border-radius: 8px;
	margin: 8 8 8 8;
}

span.width30p {
    font-size: 1.0rem;
    width: 30%;
    margin: 0 3 0 3;
    padding: 0 3 0 3;
}

    /*ベース*/
    section.typeA{
		font-family: "ヒラギノ角ゴ Pro W3","Hiragino Kaku Gothic Pro","メイリオ","Meiryo","sans-serif";
    	display: flex;
    	flex-wrap: wrap;
    }

    section.typeA::after {
    	content: '';
    	width: 100%;
    	height: 3px;
    	order: -1;
    	display: block;
    	background: #DE6A64;
    }

    section.typeA .tabLabel:nth-last-of-type(1){
		margin-right: 0;
	}

    section.typeA input {		/* ラジオボタン非表示 */
    	display: none;
    }

    section.typeA .content {	/* 本文 */
    	width: 100%;
    	height: 0;
    	overflow: hidden;
    	opacity: 0;
    }

    /*アクティブ設定*/
    section.typeA input:checked + .tabLabel {
    	color: #fff;
    	background: #DE6A64;
    }

    section.typeA input:checked + .tabLabel + .content {
    	padding: 15px;
		height: 200px;
    	overflow-y: scroll;
    	transition: .5s opacity;
    	opacity: 1;
    }
