/* ******************************************************************
 *	File name		: style.css
 *	Summary			: css base
 * ******************************************************************
 */

/* -----------------------------------------------------------------
   base
----------------------------------------------------------------- */
*{
/*	border:1px solid red !important;*/
}

body{
	background:url(../../images/bg_second.jpg) no-repeat center 0;
	background-size:100vw;
}
header{
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0 auto;
	padding:44px 20px 0;
	height:118px;
	text-align:center;
	z-index:10;
	}
	header h1{
		display:inline-block;
		position:relative;
		top:auto;
		left:auto;
		width:492px;
		max-width:100%;
		}
		header::before,
		header::after{
			content:" ";
			position:absolute;
			transition-duration:0.5s;
		}
		header::before{
			top:24px;
			left:10px;
			width:225px;
			height:106px;
			background:url(../../images/header_icon_01.png) no-repeat 0 0;
		}
		header::after{
			top:11px;
			left:743px;
			width:113px;
			height:127px;
			background:url(../../images/header_icon_02.png) no-repeat 0 0;
}
#lang{
	top:55px;
	left:auto;
	right:17px;
	width:132px;
	min-height:42px;
	}
	#lang h2{
		height:42px;
		font-size:0.9rem;
}

/* --- responsive --- */
@media screen and (max-width:1000px){
	header::before,
	header::after{
		display:none;
	}
}
@media screen and (max-width:767px){
	header h1{
	}
	#lang{
		top:0px;
		right:0px;
		width:80px;
		min-height:20px;
		}
		#lang h2{
			height:20px;
			font-size:0.6rem;
	}
}

/* ------------------------------------------------
   base2
------------------------------------------------- */

main{
}
#main_contents{
	display:block;
	position:relative;
	width:1000px;
	max-width:100%;
	margin:0 auto 30px;
	padding:30px 0;
	background:#FFF;
	-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
	-moz-border-radius:10px;
	-webkit-border-radius:10px;
	border-radius:10px;
}

/* --- responsive --- */
@media screen and (max-width:1000px){
	main::before{
		content:" ";
		position:absolute;
		width:100%;
		height:300px;
		background:linear-gradient(-180deg, rgba(255,255,255,0), rgba(255,255,255,1));
	}
	#main_contents{
		background:none;
		-moz-box-shadow:none;
		-webkit-box-shadow:none;
		box-shadow:none;
		-moz-border-radius:0px;
		-webkit-border-radius:0px;
		border-radius:0px;
	}
}
@media screen and (max-width:767px){
}

/* ------------------------------------------------
   section
------------------------------------------------- */

section{
	position:relative;
	width:100%;
	padding:0 20px;
}
section#plan_01{background:url(../../images/plan_bg_01.jpg) no-repeat right 0;}
section#plan_02{background:url(../../images/plan_bg_02.jpg) no-repeat right 0;}
section#plan_03{background:url(../../images/plan_bg_03.jpg) no-repeat right 0;}
section#plan_04{background:url(../../images/plan_bg_04.jpg) no-repeat right 0;}

/* --- responsive --- */
@media screen and (max-width:767px){
	section#plan_01{
		background:url(../../images/plan_bg_01.jpg) no-repeat right 0;
		background-size:178px;
	}
	section#plan_02{
		background:url(../../images/plan_bg_02.jpg) no-repeat right 0;
		background-size:178px;
	}
	section#plan_03{
		background:url(../../images/plan_bg_03.jpg) no-repeat right 0;
		background-size:178px;
	}
	section#plan_04{
		background:url(../../images/plan_bg_04.jpg) no-repeat right 0;
		background-size:178px;
	}
}


/* ------------------------------------------------
   ex
------------------------------------------------- */

#main_contents h2{
	position:relative;
	width:100%;
	margin:0 0 5px;
	font-weight:900;
	font-size:2.0rem;
	text-align:center;
	color:#000;
	}
	#main_contents h2 + .h2_jp{
		margin:0 0 15px;
		font-size:1.0rem;
		text-align:center;
		color:#999;
}
#main_contents p{
	font-size:1.0rem;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#main_contents h2{
		font-size:1.3rem;
	}
	#main_contents h2 + .h2_jp{
		font-size:0.87rem;
	}
	#main_contents p{
		font-size:0.80rem !important;
	}
}

/* ------------------------------------------------
   contents_explanation
------------------------------------------------- */

#contents_explanation{
	padding:0 50px;
	text-align:center;
}
#contents_explanation h2 + .h2_jp{
	position:relative;
	padding-bottom:5px;
}
#contents_explanation h2 + .h2_jp::before,
#contents_explanation h2 + .h2_jp::after{
	content:" ";
	position:absolute;
}
#contents_explanation h2 + .h2_jp::before{
	left:0px;
	bottom:0px;
	width:calc(100% - 15px);
	height:2px;
	background:linear-gradient(90deg, #00A1E8, #8EC31F);
}
#contents_explanation h2 + .h2_jp::after{
	bottom:-5px;
	right:-6px;
	border:6px solid transparent;
	border-left:15px solid #8EC31F;
}

#contents_explanation #taxi_fee{
	margin:15px auto 5px;
}

#contents_explanation #contents_jump{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:center;
	flex-wrap:wrap;
	list-style:none;
	}
	#contents_explanation #contents_jump li{
		width:400px;
		height:70px;
		margin:0 20px 20px;
		background:url(../../images/btn_plan_00.png) no-repeat 0 0;
		}
		#contents_explanation #contents_jump li:nth-child(1){background:url(../../images/btn_plan_01.png) no-repeat 0 0;}
		#contents_explanation #contents_jump li:nth-child(2){background:url(../../images/btn_plan_02.png) no-repeat 0 0;}
		#contents_explanation #contents_jump li:nth-child(3){background:url(../../images/btn_plan_03.png) no-repeat 0 0;}
		#contents_explanation #contents_jump li:nth-child(4){background:url(../../images/btn_plan_04.png) no-repeat 0 0;}
	#contents_explanation #contents_jump li a{
		display:-webkit-flex;
		display:flex;
		justify-content:flex-start;
		align-items:center;
		width:100%;
		height:100%;
		padding:0 10px 0 45px;
		font-size:1.4rem;
		text-decoration:none;
		color:#423D3D;
		transition-duration:0.5s;
	}
	#contents_explanation #contents_jump li:nth-child(2) a{color:#FFF;}
	#contents_explanation #contents_jump li:nth-child(4) a{color:#FFF;}
	#contents_explanation #contents_jump li a:hover{
		background:rgba(0,0,0,0.2);
	}

/* --- responsive --- */
@media screen and (max-width:767px){
	#contents_explanation{
		padding:0 20px;
		text-align:center;
	}
	#contents_explanation #contents_jump{
		}
		#contents_explanation #contents_jump li{
			width:100%;
			height:70px;
			margin:0 0px 20px;
		}
		#contents_explanation #contents_jump li a{
			font-size:1.1rem;
		}
}

/* ------------------------------------------------
   plan
------------------------------------------------- */

section{
	position:relative;
	padding:0 20px;
	text-align:center;
}
section .plan_head{
	position:relative;
	margin:0 0 15px;
	padding:48px 0 0 77px;
	text-align:left;
	}
	section .plan_head::before{
		content:" ";
		position:absolute;
		top:0px;
		left:-20px;
		width:108px;
		height:108px;
		border:2px solid #555;
		-moz-border-radius:50%;
		-webkit-border-radius:50%;
		border-radius:50%;
		z-index:0;
	}
	section .plan_head::after{
		content:" ";
		position:absolute;
		top:40px;
		left:37px;
		width:33px;
		height:44px;
		z-index:0;
	}
	section .plan_head h3{
		display:inline-block;
		position:relative;
		margin:0 10px 20px 0;
		font-weight:900;
		font-size:2.0rem;
		text-align:left;
		z-index:10;
	}
	section .plan_head span{
		display:inline-block;
		position:relative;
		top:-5px;
		margin:0 0 -7px 0;
		padding:7px 20px;
		background:#555;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		color:#FFF;
	}
	section .plan_head .plan_detail{
		width:530px;
		max-width:100%;
		padding-left:5px;
		font-size:1.05rem !important;
		text-align:justify;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	section .plan_head{
		padding:48px 0 0 0px;
		text-align:center;
	}
	section .plan_head h3{
		padding:0 0 0 77px;
		font-size:1.5rem;
		line-height:1.35;
		text-shadow:rgba(255,255,255,1) 0px 0px 0px;
		}
		section .plan_head span{
			margin:0 auto 0px;
		}
		section .plan_head .plan_detail{
			width:100%;
			padding-left:0px;
			font-size:0.87rem !important;
	}
}

/* ------------------------------------------------
   plan_flow
------------------------------------------------- */

section .plan_flow{
	}
	section .plan_flow ul{
		position:relative;
		list-style:none;
		}
		section .plan_flow ul::before{
			content:" ";
			position:absolute;
			left:calc(50% -3px);
			width:5px;
			height:100%;
			background:#C9C9CA;
			z-index:0;
	}
	section .plan_flow ul li{
		position:relative;
		width:100%;
		margin:0 auto !important;
		padding:15px 0;
		text-align:center;
		z-index:1;
	}
	section .plan_flow ul li:first-child{
		padding:0 0 15px 0;
	}
	section .plan_flow ul li:last-child{
		padding:15px 0 0 0;
	}
	section .plan_flow ul li .travel_time{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		top:-15px;
		width:100%;
		height:22px;
		text-align:center;
		z-index:1;
		}
		section .plan_flow ul li .travel_time p{
			display:inline-block;
			position:relative;
			margin:0 auto;
			font-size:0.87rem;
			background:#FFF;
			z-index:1;
	}
	section .plan_flow ul li .flow_box{
		display:inline-block;
		position:relative;
		min-width:240px;
		padding:10px 20px 7px;
		border:3px solid #555;
		background:#FFF;
		-moz-border-radius:10px;
		-webkit-border-radius:10px;
		border-radius:10px;
		z-index:10;
	}
	section .plan_flow ul li .flow_box p{
		font-size:1.2rem !important;
		margin:0 0 7px;
		}
		section .plan_flow ul li .flow_box p span{
			font-size:0.93rem;
	}
	section .plan_flow ul li .flow_box .flow_photo{
		width:440px;
		max-width:100%;
		margin:0 auto 7px;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	section .plan_flow ul li .flow_box .flow_photo{
		width:100%;
	}
}

/* doble */
section .plan_flow ul li .doble{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	position:relative;
	padding:40px 0;
	background:#FFF;
	width:100%;
	}
	section .plan_flow ul li .doble::before{
		content:" ";
		position:absolute;
		top:0px;
		left:20%;
		width:60%;
		height:calc(100% - 10px);
		border:5px solid #C9C9CA;
		-moz-border-radius:10px;
		-webkit-border-radius:10px;
		border-radius:10px;
		z-index:0;
	}
	section .plan_flow ul li .doble .select{
		display:none;
		margin:0 0 10px;
		font-weight:bold;
		font-size:1.5rem !important;
	}
	section .plan_flow ul li .doble .flow_photo{
		width:372px;
		max-width:100%;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	section .plan_flow ul li .doble{
		display:block;
		position:relative;
		padding:20px 20px 10px 20px;
		background:#FFF;
		width:100%;
		}
		section .plan_flow ul li .doble::before{
			content:" ";
			position:absolute;
			top:0px;
			left:0%;
			width:100%;
			height:100%;
			border:5px solid #C9C9CA;
			-moz-border-radius:10px;
			-webkit-border-radius:10px;
			border-radius:10px;
			-webkit-box-sizing: border-box;
			-moz-box-sizing: border-box;
			box-sizing: border-box;
			background:rgba(0,0,0,0.1);
			z-index:0;
		}
		section .plan_flow ul li .doble .select{
			display:block;
		}
		section .plan_flow ul li .doble .flow_box{
			width:100% !important;
			margin:0 0 10px;
		}
		section .plan_flow ul li .doble .flow_photo{
			width:100%;
	}
}

/* ------------------------------------------------
   plan 1
------------------------------------------------- */

section#plan_01 .plan_head::before{
	border:2px solid #B4D100;
}
section#plan_01 .plan_head::after{
	background:url(../../images/plan_num_01.png) no-repeat 0 0;
}
section#plan_01 .plan_head span{
	background:#B4D100;
	color:#000;
}
section#plan_01 .plan_flow ul li .flow_box{
	border:3px solid #B4D100;
}

/* ------------------------------------------------
   plan 2
------------------------------------------------- */

section#plan_02 .plan_head::before{
	border:2px solid #38BEEF;
}
section#plan_02 .plan_head::after{
	background:url(../../images/plan_num_02.png) no-repeat 0 0;
}
section#plan_02 .plan_head span{
	background:#38BEEF;
	color:#000;
}
section#plan_02 .plan_flow ul li .flow_box{
	border:3px solid #38BEEF;
}

/* ------------------------------------------------
   plan 3
------------------------------------------------- */

section#plan_03 .plan_head::before{
	border:2px solid #ECC300;
}
section#plan_03 .plan_head::after{
	background:url(../../images/plan_num_03.png) no-repeat 0 0;
}
section#plan_03 .plan_head span{
	background:#ECC300;
	color:#000;
}
section#plan_03 .plan_flow ul li .flow_box{
	border:3px solid #ECC300;
}

/* ------------------------------------------------
   plan 4
------------------------------------------------- */

section#plan_04 .plan_head::before{
	border:2px solid #9A4697;
}
section#plan_04 .plan_head::after{
	background:url(../../images/plan_num_04.png) no-repeat 0 0;
}
section#plan_04 .plan_head span{
	background:#9A4697;
	color:#FFF;
}
section#plan_04 .plan_flow ul li .flow_box{
	border:3px solid #9A4697;
}

/* ------------------------------------------------
   contents_explanation
------------------------------------------------- */

/* car miyagi */
#main_img #mi_car{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	z-index:3;
	}
	#main_img #mi_car span{
		display:block;
		position:absolute;
	}
	#main_img #mi_car span:nth-child(1){
		top:12.81vw;
		left:29.58vw;
		width:23.54vw;
		height:14.06vw;
		background:url(../../images/taxi_01.png) no-repeat 0 0;
		background-size:contain;
		animation:car_01 1.5s ease 0.2s both 1;
	}
	#main_img #mi_car span:nth-child(2){
		top:26.56vw;
		left:21.25vw;
		width:10.62vw;
		height:5.36vw;
		background:url(../../images/taxi_02.png) no-repeat 0 0;
		background-size:contain;
		animation:car_02 1.5s ease 0.6s both 1;
	}
	#main_img #mi_car span:nth-child(3){
		top:28.28vw;
		left:64.53vw;
		width:12.96vw;
		height:7.5vw;
		background:url(../../images/taxi_03.png) no-repeat 0 0;
		background-size:contain;
		animation:car_03 1.5s ease 0.9s both 1;
}

@keyframes car_01{
	0% {opacity:0;margin-left:-15vw;margin-top:3vw;}
	100% {opacity:1;margin-left:0vw;margin-top:0vw;}
}
@keyframes car_02{
	0% {opacity:0;margin-left:-10vw;}
	100% {opacity:1;margin-left:0vw;}
}
@keyframes car_03{
	0% {opacity:0;margin-left:10vw;margin-top:-3vw;}
	100% {opacity:1;margin-left:0vw;margin-top:0vw;}
}

/* mi_miyagi */
#main_img #mi_miyagi{
	position:absolute;
	top:10.46vw;
	left:55.72vw;
	width:14.01vw;
	height:16.35vw;
	background:url(../../images/miyagi.png) no-repeat 0 0;
	background-size:contain;
	z-index:2;
	animation:fade 1.5s ease 0.5s both 1;
}
@keyframes fade{
	0% {opacity:0;}
	100% {opacity:1;}
}

/* circle */
#main_img #circle{
	position:absolute;
	top:0px;
	left:0px;
	width:100%;
	height:100%;
	z-index:5;
}
#main_img #circle span{
	display:block;
	position:absolute;
	-moz-border-radius:50%;
	-webkit-border-radius:50%;
	border-radius:50%;
	background:#FFF;
}

#main_img #circle span:nth-child(1){
	top:5.1vw;
	left:23.75vw;
	width:8.64vw;
	height:8.64vw;
	background:url(../../images/circle_01.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(2){
	top:15.67vw;
	left:20.83vw;
	width:7.23vw;
	height:7.23vw;
	background:url(../../images/circle_02.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(3){
	top:24.53vw;
	left:34.73vw;
	width:9.63vw;
	height:9.63vw;
	background:url(../../images/circle_03.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(4){
	top:21.82vw;
	left:44.79vw;
	width:7.29vw;
	height:7.29vw;
	background:url(../../images/circle_04.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(5){
	top:23.8vw;
	left:51.35vw;
	width:9.89vw;
	height:9.89vw;
	background:url(../../images/circle_05.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(6){
	top:22.23vw;
	left:64.68vw;
	width:5.98vw;
	height:5.98vw;
	background:url(../../images/circle_06.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(7){
	top:18.48vw;
	left:68.02vw;
	width:7.65vw;
	height:7.65vw;
	background:url(../../images/circle_07.png) no-repeat 0 0;
	background-size:contain;
}
#main_img #circle span:nth-child(8){
	top:8.33vw;
	left:69.47vw;
	width:9.63vw;
	height:9.63vw;
	background:url(../../images/circle_08.png) no-repeat 0 0;
	background-size:contain;
}

#main_img #circle span:nth-child(1){animation:circle_anime 1.5s ease 0.0s both 1;}
#main_img #circle span:nth-child(2){animation:circle_anime 1.5s ease 0.2s both 1;}
#main_img #circle span:nth-child(3){animation:circle_anime 1.5s ease 0.4s both 1;}
#main_img #circle span:nth-child(4){animation:circle_anime 1.5s ease 0.6s both 1;}
#main_img #circle span:nth-child(5){animation:circle_anime 1.5s ease 0.8s both 1;}
#main_img #circle span:nth-child(6){animation:circle_anime 1.5s ease 1.0s both 1;}
#main_img #circle span:nth-child(7){animation:circle_anime 1.5s ease 1.2s both 1;}
#main_img #circle span:nth-child(8){animation:circle_anime 1.5s ease 1.4s both 1;}

@keyframes circle_anime{
	0% {opacity:0;transform:scale(0,0);}
	100% {opacity:1;transform:scale(1,1);}
}

/* --- responsive --- */
@media only screen and (max-width:767px){}

/* -----------------------------------------------------------------
   main_lead
----------------------------------------------------------------- */

#main_lead{
	position:relative;
	width:1040px;
	max-width:100%;
	margin:0px auto 40px;
	padding:0 20px;
	text-align:center;
	}
	#main_lead p{
		font-weight:normal;
		font-size:1.0rem;
		line-height:1.5;
		color:#000;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#main_lead p{
		font-size:0.80rem;
		line-height:1.5;
	}
}

/* -----------------------------------------------------------------
   plan
----------------------------------------------------------------- */

#plan .contents{
	text-align:center;
	}
	#plan #plan_list ul{
		display:-webkit-flex;
		display:flex;
		-webkit-box-pack:justify;
		-ms-flex-pack:justify;
		justify-content:space-between;
		flex-wrap:wrap;
		list-style:none;
		width:100%;
	}
	#plan #plan_list ul li{
		display:block;
		position:relative;
		width:24.5%;
		max-width:230px;
		margin:0px;
		padding:0px !important;
		background:#6AB82D;
	}
	#plan #plan_list ul li a{
		display:block;
		transition-duration:0.5s;
	}
	#plan #plan_list ul li a:hover{
		padding:10px;
}

/* --- responsive --- */
@media screen and (max-width:500px){
	#plan #plan_list ul{
		margin:0 -20px;
		width:calc(100% + 40px);
	}
	#plan #plan_list ul li{
		width:50%;
		max-width:50%;
		background:none;
	}
	#plan #plan_list ul li a:hover{
		padding:0px;
	}
}

/* -----------------------------------------------------------------
   how_to
----------------------------------------------------------------- */

#how_to #how_to_lead p{
	font-size:1.0rem;
}
#how_to #how_to_lead p span{
	color:rgba(106,184,45,1);
}
#how_to_contents{
	display:-webkit-flex;
	display:flex;
	-webkit-box-pack:justify;
	-ms-flex-pack:justify;
	justify-content:space-between;
	flex-wrap:wrap;
	width:960px;
	max-width:100%;
	margin:25px auto 30px;
	}
	#how_to_contents > div.accordion{
		width:33%;
		border-right:1px solid rgba(106,184,45,1);
		}
		#how_to_contents > div.accordion:last-child{
			border-right:none;
	}
	#how_to_contents > div.accordion h3{
		display:-webkit-flex;
		display:flex;
		justify-content:center;
		align-items:center;
		position:relative;
		width:210px;
		max-width:100%;
		height:60px;
		margin:0 auto 17px;
		font-weight:bold;
		background:rgba(106,184,45,1);
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		color:#FFF;
		line-height:1.35;
	}
	#how_to_contents > div.accordion .how_to_img{
		margin:35px auto 5px;
	}
	#how_to_contents > div.accordion .how_to_img:first-of-type{
		margin:0px auto 5px;
	}
	#how_to_contents > div.accordion p{
		margin:0 0 5px;
		padding-left:calc((100% - 210px)/2);
		font-size:0.87rem;
		text-align:left;
		line-height:1.35;
		color:#000;
	}
	#how_to_contents > div.accordion p b{
		display:inline-block;
		font-size:1.1rem;
		padding-left:1rem;
		text-indent:-1rem;
		color:#486A01;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#how_to #how_to_lead p{
		font-size:0.80rem !important;
		text-align:left;
		padding-left:1rem;
		text-indent:-1rem;
	}
	#how_to #how_to_lead p:first-child{
		text-align:center;
		margin:0 0 7px;
		padding-left:0rem;
		text-indent:0rem;
	}

	#how_to_contents > div.accordion{
		width:100%;
		margin:0 auto 10px;
		border-right:none;
		}
		#how_to_contents > div.accordion h3{
			width:100%;
			height:40px;
			margin:0 auto;
			padding-right:15px;
			}
			#how_to_contents > div.accordion h3::after{
				content:" ";
				position:absolute;
				top:calc(50% - 3px);
				right:10px;
				border:6px solid transparent;
				border-top:6px solid rgba(255,255,255,1);
			}
			#how_to_contents > div.accordion.open h3::after{
				content:" ";
				position:absolute;
				top:calc(50% - 9px);
				right:10px;
				border:6px solid transparent;
				border-bottom:6px solid rgba(255,255,255,1);
		}
		#how_to_contents > div.accordion h3 + div{
			display:none;
			padding:20px 10px;
			background:rgba(106,184,45,0.05);
		}
		#how_to_contents > div.accordion p{
			padding-left:0px;
			font-size:0.77rem;
		}
		#how_to_contents > div.accordion p b{
			font-size:0.87rem;
	}
}

/* -----------------------------------------------------------------
   companies
----------------------------------------------------------------- */

#companies{
	padding:30px 20px 20px;
	background:#6AB82D;
}
#companies h2,
#companies h2 + .h2_jp{
	color:#FFF;
}

#taxi_companies_table{
	position:relative;
	width:980px;
	max-width:100%;
	margin:0 auto 20px;
	padding:10px 20px 10px;
	background:#FFF;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
}
#taxi_companies_table table{
	display:block;
	position:relative;
	width:100%;
	padding-top:50px;
}
#taxi_companies_table table thead{
	display:table;
	position:absolute;
	top:0px;
	width:calc(100% - 25px);
	height:30px;
	}
	#taxi_companies_table table thead::after{
		content:" ";
		position:absolute;
		bottom:-10px;
		left:0px;
		width:100%;
		height:0px;
		border-bottom:2px dotted rgba(106,184,45,1);
	}
	#taxi_companies_table table thead tr{
	}
	#taxi_companies_table table thead th{
		position:relative;
		padding:5px;
		text-align:center;
		font-weight:normal;
		border-left:1px solid rgba(106,184,45,0.5);
		border-right:1px solid rgba(106,184,45,0.5);
	}
	/* 980 - 40 = 940 940 = 210 + 180 + 200 */
	#taxi_companies_table table thead th:nth-child(1){width:210px;}
	#taxi_companies_table table thead th:nth-child(2){width:350px;}
	#taxi_companies_table table thead th:nth-child(3){width:180px;}
	#taxi_companies_table table thead th:nth-child(4){width:200px;}


#taxi_companies_table table tbody{
	display:block;
	position:relative;
	width:100%;
	height:310px;
	padding-right:10px;
	overflow-y:scroll;
	}
	#taxi_companies_table table tbody::-webkit-scrollbar{
		width:15px;
	}
	#taxi_companies_table table tbody::-webkit-scrollbar-track{
		background-color:#DDD;
	}
	#taxi_companies_table table tbody::-webkit-scrollbar-thumb{
		background-color:#999;
	}

	#taxi_companies_table table tbody tr{
		display:table;
		position:relative;
		margin:0 0 20px;
		padding:20px;
		}
		#taxi_companies_table table tbody tr::after{
			content:" ";
			position:absolute;
			bottom:-10px;
			left:0px;
			width:100%;
			height:0px;
			border-bottom:1px solid rgba(106,184,45,0.5);
	}
	#taxi_companies_table table tbody td{
		padding:0 10px;
		border-right:1px solid rgba(106,184,45,0.5);
	}
	/* 980 - 40 = 940 940 = 210 + 180 + 200 */
	#taxi_companies_table table tbody td:nth-child(1){width:210px;}
	#taxi_companies_table table tbody td:nth-child(2){width:350px;}
	#taxi_companies_table table tbody td:nth-child(3){width:180px;}
	#taxi_companies_table table tbody td:nth-child(4){width:200px;}

/* Area */
#taxi_companies_table table tbody td:nth-child(1){
	padding:0;
	border-right:none;
}
#taxi_companies_table table tbody td:nth-child(1) p{
	display:-webkit-flex;
	display:flex;
	justify-content:center;
	align-items:center;
	width:100%;
	height:40px;
	font-size:0.95rem;
	text-align:center;
	background:#CCC;
	color:#000;
	}
	#taxi_companies_table table tbody td:nth-child(1).a_green p{background:#CEE4B2;}
	#taxi_companies_table table tbody td:nth-child(1).a_yellow p{background:#FFFAB4;}
	#taxi_companies_table table tbody td:nth-child(1).a_purple p{background:#E7DBEC;}
	#taxi_companies_table table tbody td:nth-child(1).a_blue p{background:#A5D8D2;}

/* Taxi Company */
#taxi_companies_table table tbody td:nth-child(2){
	font-weight:bold;
	font-size:1.1rem;
	text-align:left;
}

/* Phone No. */
#taxi_companies_table table tbody td:nth-child(3){
	padding:3px 10px;
	text-align:center;
	}
	#taxi_companies_table table tbody td:nth-child(3) a{
		display:-webkit-flex;
		display:flex;
		justify-content:flex-start;
		align-items:center;
		width:100%;
		padding-left:40px;
		height:34px;
		margin:0 auto;
		font-size:0.95rem;
		text-decoration:none;
		background:url(../../images/phon.png) no-repeat 10px center;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		box-shadow: 0px 0px 5px rgba(0,0,0,0.4);
		color:#000;
		transition-duration:0.5s;
		}
		#taxi_companies_table table tbody td:nth-child(3) a:hover{
			text-decoration:none;
			background:url(../../images/phon.png) no-repeat 10px center rgba(106,184,45,0.5);
			-moz-box-shadow: 0px 0px 5px rgba(0,0,0,0.8);
			-webkit-box-shadow: 0px 0px 5px rgba(0,0,0,0.8);
			box-shadow: 0px 0px 5px rgba(0,0,0,0.8);
			color:#000;
}

/* Car Type */
#taxi_companies_table table tbody td:nth-child(4) p{
	display:inline-block;
	width:50px;
	height:40px;
	-moz-border-radius:6px;
	-webkit-border-radius:6px;
	border-radius:6px;
	}
	#taxi_companies_table table tbody td:nth-child(4) p:nth-child(1){background:#FED900;}
	#taxi_companies_table table tbody td:nth-child(4) p:nth-child(2){background:#94B321;}
	#taxi_companies_table table tbody td:nth-child(4) p:nth-child(3){background:#52C3F1;}
	#taxi_companies_table table tbody td:nth-child(4) p.on{
		opacity:1;
	}
	#taxi_companies_table table tbody td:nth-child(4) p.off{
		background:#999;
		opacity:0.2;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#taxi_companies_table{
		padding:10px 10px 10px 20px;
	}
	#taxi_companies_table table{
		padding-top:0px;
	}
	#taxi_companies_table table thead{
		display:none;
	}
	#taxi_companies_table table tbody{
		height:310px;
		padding-right:10px;
		}
		#taxi_companies_table table tbody tr{
			display:block;
			padding:10px 0;
			border-bottom:1px solid rgba(106,184,45,0.5);
			}
			#taxi_companies_table table tbody tr::after{
				display:none;
		}

		#taxi_companies_table table tbody td{
			display:block;
			width:100%;
			padding:0px;
			border-right:none;
		}

	/* Area */
	#taxi_companies_table table tbody td:nth-child(1){
		width:100%;
	}
	#taxi_companies_table table tbody td:nth-child(1) p{
		height:30px;
		font-size:0.87rem;
	}

	/* Taxi Company */
	#taxi_companies_table table tbody td:nth-child(2){
		width:100%;
		padding:15px 10px;
		text-align:center;
		font-size:1.0rem;
	}

	/* Phone No. */
	#taxi_companies_table table tbody td:nth-child(3){
		width:180px;
		margin:0 auto 10px;
	}

	/* Car Type */
	#taxi_companies_table table tbody td:nth-child(4){width:100%;}
	#taxi_companies_table table tbody td:nth-child(4) p{
		display:inline-block;
		width:50px;
		height:40px;
		-moz-border-radius:6px;
		-webkit-border-radius:6px;
		border-radius:6px;
		}
		#taxi_companies_table table tbody td:nth-child(4) p:nth-child(1){background:#FED900;}
		#taxi_companies_table table tbody td:nth-child(4) p:nth-child(2){background:#94B321;}
		#taxi_companies_table table tbody td:nth-child(4) p:nth-child(3){background:#52C3F1;}
		#taxi_companies_table table tbody td:nth-child(4) p.on{
			opacity:1;
		}
		#taxi_companies_table table tbody td:nth-child(4) p.off{
			background:#999;
			opacity:0.2;
	}
}

/* -----------------------------------------------------------------
   apps
----------------------------------------------------------------- */

#apps{
	padding:20px;
}
#apps_table{
	text-align:center;
}
#apps_table table{
	position:relative;
	width:844px;
	max-width:100%;
	margin:0 auto 10px;
	border:1px solid rgba(106,184,45,0.5);
	}
	#apps_table table th,
	#apps_table table td{
		padding:7px 10px;
		border:1px solid rgba(106,184,45,0.5);
	}
	#apps_table table th{
		text-align:center;
	}
	#apps_table table thead th:nth-child(1){
		background:#EBF1B8;
	}
	#apps_table table th:nth-child(1){width:127px;}
	#apps_table table th:nth-child(2){width:80px;}
	#apps_table table th:nth-child(3){width:80px;}
	#apps_table table th:nth-child(4){width:110px;}
	#apps_table table th:nth-child(5){width:430px;}

	#apps_table table td{
		min-height:90px;
		font-size:0.9rem;
		line-height:1.3;
	}
	#apps_table table td:nth-child(1){
		font-weight:bold;
		font-size:1.1rem;
	}
	#apps_table table td:nth-child(2) a:hover,
		#apps_table table td:nth-child(3) a:hover{
		transition-duration:0.5s;
		filter: hue-rotate(120deg);
	}
	#apps_table table td:nth-child(5){
		text-align:left;
}

/* --- responsive --- */
@media screen and (max-width:767px){
	#apps_table table{
		display:block;
		width:100%;
		margin:0 auto 10px;
		border:none;
		}
		#apps_table table thead{
			display:none;
		}
		#apps_table table tbody,
		#apps_table table tr{
			display:block;
			width:100%;
			text-align:center;
		}
		#apps_table table tr{
			margin:0 0 20px;
			padding:10px 0px;
			border:1px solid #000;
		}
		#apps_table table th,
		#apps_table table td{
			display:block;
			padding:0px;
			border:none;
		}
		#apps_table table td{
			width:100%;
			text-align:center;
			min-height:0px;
			font-size:0.77rem;
			line-height:1.3;
		}
		#apps_table table td:nth-child(1){
			margin:0 0 15px;
		}
		#apps_table table td:nth-child(2),
		#apps_table table td:nth-child(3){
			display:inline-block;
			width:80px;
			}
			#apps_table table td:nth-child(2)::after{
				content:"Google Play";
				display:inline-block;
				font-size:0.77rem;
				text-align:center;
			}
			#apps_table table td:nth-child(3)::after{
				content:"App Store";
				display:inline-block;
				font-size:0.77rem;
				text-align:center;
		}
		#apps_table table td:nth-child(4){
			margin:10px 0;
			padding:7px 10px;
			background:rgba(0,0,0,0.1);
		}
		#apps_table table td:nth-child(5){
			text-align:center;
	}
	#apps_table + p{
		font-size:0.70rem;
	}
}



