@charset "UTF-8";

#cont-top-map {
	border-radius: 0.5rem;
	background: url("/img/map-back.png") center / contain, #dcf0ff;
}

#cont-top-map #title-belt {
	position: absolute;
	z-index: 1;
	top: 0;
	left: 0;
	right: 0;
	bottom: 0;
	margin: auto;
	width: 100%;
	height: 100%;
	background: url('/img/map-logo01.png') center no-repeat, #FFFFFFFF;
	text-align: center;
	transition: all 0.5s cubic-bezier(0.01, 0.89, 0.77, 1.01);
	overflow: hidden;
	animation: title-belt_show 0.4s ease-in 0.5s forwards;
}
@keyframes title-belt_show { 100% {
	height: 40%;
	background: url('/img/map-logo01.png') center no-repeat, #FFFFFFAA;
} }
#cont-top-map:hover #title-belt.animationend {
	opacity: 0.3;
	transform: scaleY(-0.0);
}
#cont-top-map.show #title-belt {
	display: none;
}

#top-map {
	width: 960px;
	filter: drop-shadow(3px 5px 0 rgba(134,116,102,1.0));
}
#top-map text {
	display: none;
}
#top-map .top-map-area-title {
	fill: white;
	transition: all 0.2s cubic-bezier(0, 0.81, 0.18, 1.09);
	transform: scale(0.0);
	transform-origin: 50% 0%;
}
#top-map .top-map-area-title.black {
	fill: black;
}
#top-map a:hover .top-map-area-title, #top-map a.show .top-map-area-title {
	transform: scale(1.0);
}

#top-map .top-map-area {
	fill: #a0ae88;
}
#top-map a .top-map-area {
	fill: #92d050;
	transition: all 0.1s;
}
#top-map a:hover .top-map-area {
	fill: #ffc15a;
}
#top-map a:hover .top-map-area#hokkaido, #top-map a.show .top-map-area#hokkaido {
	fill: #be87ff;
}
#top-map a:hover .top-map-area#tohoku, #top-map a.show .top-map-area#tohoku {
	fill: #6464ff;
}
#top-map a:hover .top-map-area#kanto, #top-map a.show .top-map-area#kanto {
	fill: #7fd2ff;
}
#top-map a:hover .top-map-area#chubu, #top-map a.show .top-map-area#chubu {
	fill: #49ffd2;
}
#top-map a:hover .top-map-area#kinki, #top-map a.show .top-map-area#kinki {
	fill: #9aff22;
}
#top-map a:hover .top-map-area#chugoku, #top-map a.show .top-map-area#chugoku {
	fill: #fff422;
}
#top-map a:hover .top-map-area#shikoku, #top-map a.show .top-map-area#shikoku {
	fill: #ffa000;
}
#top-map a:hover .top-map-area#kyushu, #top-map a:hover .top-map-area#okinawa, #top-map a.show .top-map-area#kyushu, #top-map a.show .top-map-area#okinawa {
	fill: #ff5b3b;
}
#cont-top-map .top-map-area#hokkaido { animation: hokkaido_twinkle 0.4s 0.8s; }
@keyframes hokkaido_twinkle { 50% { fill:#be87ff; } }
#cont-top-map .top-map-area#tohoku { animation: tohoku_twinkle 0.4s 0.9s; }
@keyframes tohoku_twinkle { 50% { fill:#6464ff; } }
#cont-top-map .top-map-area#kanto { animation: kanto_twinkle 0.4s 1.0s; }
@keyframes kanto_twinkle { 50% { fill:#7fd2ff; } }
#cont-top-map .top-map-area#chubu { animation: chubu_twinkle 0.4s 1.1s; }
@keyframes chubu_twinkle { 50% { fill:#49ffd2; } }
#cont-top-map .top-map-area#kinki { animation: kinki_twinkle 0.4s 1.2s; }
@keyframes kinki_twinkle { 50% { fill:#9aff22; } }
#cont-top-map .top-map-area#chugoku { animation: chugoku_twinkle 0.4s 1.3s; }
@keyframes chugoku_twinkle { 50% { fill:#fff422; } }
#cont-top-map .top-map-area#shikoku { animation: shikoku_twinkle 0.4s 1.4s; }
@keyframes shikoku_twinkle { 50% { fill:#ffa000; } }
#cont-top-map .top-map-area#kyushu, #cont-top-map .top-map-area#okinawa { animation: kyushu-okinawa_twinkle 0.4s 1.5s; }
@keyframes kyushu-okinawa_twinkle { 50% { fill:#ff5b3b; } }

.top-map-link {
	position: absolute;
	top: 0;
	left: -100%;
	width: 100%;
	height: 100%;
	padding: 1.5rem;
	background: #FFFFFFCC;
	transition: all 0.2s;
	overflow-y: auto;
	color: gray;
}
.top-map-link.show {
	left: 0;
}
.top-map-link li {
	width: 50%;
	padding: 0.5rem;
	font-size: 1.3rem;
}
.top-map-link li:not(:last-child) {
	border-bottom: 1px solid silver;
}

.hokkaido::before {
	content: "北海道";
	font-weight: bold;
}
.tohoku::before {
	content: "東北";
	font-weight: bold;
}
.kanto::before {
	content: "関東";
	font-weight: bold;
}
.chubu::before {
	content: "中部";
	font-weight: bold;
}
.kinki::before {
	content: "近畿";
	font-weight: bold;
}
.chugoku::before {
	content: "中国";
	font-weight: bold;
}
.shikoku::before {
	content: "四国";
	font-weight: bold;
}
.kyushu-okinawa::before {
	content: "九州沖縄";
	font-weight: bold;
}

#parking-total {
	position: absolute;
	right: 0.5rem;
	bottom: 0.5rem;
	border: 3px solid orange;
	border-radius: 0.5rem;
	padding: 0.3rem 1rem;
	font-size: 1.5em;
	font-weight: bold;
	background-color: white;
}
#parking-total .count {
	color: red;
}

#search {
	padding: 4px;
	border-radius: 5px;
	background-color: #0097CE;
	color: white;
	text-align: center;
	font-weight: bold;
}
#search label {
	margin-right: 0.5rem;
}
#search input {
	width: 770px;
	margin-left: 0.5rem;
}
#search button {
	width: 70px;
}

.content-left {
	float: left;
}

#prefectures, #information, #what-is, #contract-flow {
	width: 680px;
}

#prefectures {
	text-align: justify;
}
#prefectures label {
	font-weight: bold;
}
#prefectures select {
	width: 9.5rem;
}

#information ul {
	max-height: 7rem;
	overflow-y: scroll;
}
#information ul li:not(:last-child) {
	border-bottom: 1px dotted #ccc;
}

.waitlist {
	position: relative;
}
.waitlist::before {
	content: '';
	position: absolute;
	top: -8px;
	left: -8px;
	width: 48px;
	height: 48px;
	background: url('/img/akimati.png') center center no-repeat;
}

#procedure {
	padding: 1rem 0;
}
#procedure ul {
	text-align: center;
}
#procedure ul li {
	position: relative;
	width: 6rem;
	height: 6rem;
	margin: 0 0.8rem;
	border-radius: 3rem;
	font-size: 1rem;
	text-align: center;
	background: #AFEBFF;
	box-shadow: 0 0 1px 1px #0097CE;
	line-height: 4.5rem;
	vertical-align: middle;
}
#procedure ul li div.nl {
	margin-top: 1rem;
	line-height: 1.2rem;
}
#procedure ul li div.step {
	position: absolute;
	top: 4.2rem;
	left: 1.9rem;
	line-height: 1rem;
	font-size: 0.7rem;
	color: #005DC5;
}
#procedure #period {
	position: relative;
	top: -2.2rem;
	width: 38rem;
	padding-right: 2px;
	margin: 0 auto;
	border-top: 2px solid #005DC5;
	text-align: center;
}
#procedure #period::after {
	content: "";
	position: absolute;
	top: -8px;
	right: -4px;
	font-size: 0;
	border-top: 4px solid transparent;
	border-right: 6px solid transparent;
	border-left: 6px solid #005DC5;
	border-bottom: 4px solid #005DC5;
}
#procedure #period span {
	padding: 0.3rem 1rem;
	background: #005DC5;
	color: white;
	line-height: 1.7rem;
	border-bottom-left-radius: 0.4rem;
	border-bottom-right-radius: 0.4rem;
}

#procedure-mob {
	display: none;
}

#procedure-mob li {
	margin-bottom: 0.2rem;
	calc(100% - 20px) ;
}

#procedure-mob .step {
	display: inline-block;
	background: #005DC5;
	padding: 0.1rem 0.6rem;
	margin-right: 0.2rem;
	border-radius: 1rem;
	color: white;
}
#procedure-mob li:nth-child(2) { margin-left: 2.5rem; }
#procedure-mob li:nth-child(3) { margin-left: 5rem; }
#procedure-mob li:nth-child(4) { margin-left: 7.5rem; }
#procedure-mob li:nth-child(5) { margin-left: 10rem; }

.content-right {
	float: right;
}

#twitter {
	width: 270px;
	height: 800px;
}

@media only screen and (max-width: 959px) {
	#cont-top-map #title-belt { background-size: 25%; animation: belt_hide 0.5s ease 1.0s forwards; }
	@keyframes belt_hide {
		99% { transform: scaleY(0.0); }
		100% { transform: scaleY(0.0); display: none; }
	}
	#cont-top-map .top-map-area#hokkaido { animation: hokkaido_twinkle 0.4s 1.3s; }
	#cont-top-map .top-map-area#tohoku { animation: tohoku_twinkle 0.4s 1.4s; }
	#cont-top-map .top-map-area#kanto { animation: kanto_twinkle 0.4s 1.5s; }
	#cont-top-map .top-map-area#chubu { animation: chubu_twinkle 0.4s 1.6s; }
	#cont-top-map .top-map-area#kinki { animation: kinki_twinkle 0.4s 1.7s; }
	#cont-top-map .top-map-area#chugoku { animation: chugoku_twinkle 0.4s 1.8s; }
	#cont-top-map .top-map-area#shikoku { animation: shikoku_twinkle 0.4s 1.9s; }
	#cont-top-map .top-map-area#kyushu, #cont-top-map:hover .top-map-area#okinawa { animation: kyushu-okinawa_twinkle 0.4s 2.0s; }
	#top-map { width:100%; height:auto; }
	.top-map-link { padding:0.2rem; }
	.top-map-link li { padding:0;font-size:0.9rem; }
	#parking-total { font-size:1em; }
	#search label { width:100%;margin:2px 0; }
	#search input { width:100%;margin:0; }
	#search button { width:100%;margin:2px 0; }
	.content-left, .content-right { float:none;width:100%; }
	#twitter { display:none; }
	#procedure { display:none; }
	#procedure-mob { display:block; }
	#twitter { display:none; }
	#prefectures, #information, #what-is, #contract-flow { width:100%; }
	#prefectures { display:none; }
}