/*
Theme Name: OAS
Theme URL: https://www.okinawa-shuttle.co.jp/
Description: 沖縄エアポートシャトル多言語サイト専用テーマです。
Author: T.Yoshizawa ( Adop Inc. )
Version: 2019.07.01
Tags: 株式会社アドップ
License: GNU General Public License v2 or later
*/
@charset "UTF-8";


#wrapper{
	min-height:80px;
}
#wrapper #page{padding-top:80px;}





/********************************************************************************
* common
*********************************************************************************/
.sp-view{
	display:none !important;
}
.sp-flex{
	display:none !important;
}
.pc-view{
	display:block !important;
}
.spbr{display:none;}
@media(max-width:640px){
.sp-view{display:block !important;}
.sp-flex{display: -webkit-flex !important; display: -ms-flexbox; display: flex !important;}
.pc-view{display:none !important;}
.spbr{display:block;}
}

.inner{
	margin:0 auto;
	max-width:1000px;
	position:relative;
}

.inner-1200{
	margin:0 auto;
	max-width:1200px;
	position:relative;
}


@media(max-width:1000px){
	.inner{
		width:100%;
		padding-right:12px;
		padding-left:12px;
	}
	.inner-1200{
		width:100%;
		padding-right:12px;
		padding-left:12px;
	}
}


/********************************************************************************
* HEADER
*********************************************************************************/
header{
	width:100%;
	background:rgba(255,255,255,0.97);
	position:fixed;
	z-index:999;
}

.global{
	height:80px;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}
main{
	padding-top:80px;
}



.global-left{
	width:30%;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row wrap;flex-flow:row wrap;
	-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}
.global-left a{
	width:100%;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}

@media(max-width:767px){
	.global{height:50px;}
	main{padding-top:50px;}
	.global-left{width:40%;}
}



.global-left a img{max-width:250px;}
@media(max-width:800px){
.global-left a img{max-width:100%;}
}
@media(max-width:640px){
	.global-left{width:50%;}
	
}

.global-right{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}

.global-right [class^="link-"]{
	padding:0.5em 1em;
	border-radius: 0.3em;
	margin:0 0.8em;
}

.link-busviewer{
	background:#e41e79;
	color:#FFF;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;	
}
.link-lang{
	border:1px solid #333;
	color:#333;

}
.link-asp{
	background:#29a2d9;
	color:#FFF;
}
@media(max-width:860px){
	.link-busviewer,.link-asp{font-size:14px;}
}
@media(max-width:767px){
	.link-busviewer,.link-asp{display:none;}
}


.icon-ff::after{
	content:"";
	display:inline-block;
	width:0.45em;
	height:1em;
	margin-left:1em;
	background:url(/wp-content/themes/shuttle/images/icon-ff.svg) 100% 50% no-repeat;
}
.icon-ff-dark::after{
	content:"";
	display:inline-block;
	width:0.45em;
	height:1em;
	margin-left:1em;
	background:url(/wp-content/themes/shuttle/images/icon-ff-dark.svg) 100% 50% no-repeat;
}
.icon-bus::after{
	content:"";
	display:inline-block;
	width:1.6em;
	height:1em;
	margin-left:1em;
	background:url(/wp-content/themes/shuttle/images/icon-bus.svg) 100% 50% no-repeat;
}


/********************************************************************************
* HEADER

 toggle lang navi
*********************************************************************************/
#header-lang{
	display:none;
	animation: hide 0.4s linear 0s;
}
#header-lang.show{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	max-width:1000px;
	margin:0 auto;
	padding:1em 0;
	animation: show 0.4s linear 0s;
}
@keyframes show{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}
@keyframes hide{
    from{
        opacity: 1;
    }
    to{
        opacity: 0;
    }
}

#header-lang a{padding:0.5em 1em;border:1px solid #aaa;border-radius:0.3em;text-align:center;color:#333;margin:0 0.5em;}
@media(min-width:1000px){
	#header-lang a:hover{background:rgba(0,0,0,0.1);}
}
@media(max-width:767px){
#header-lang a{font-size:14px;}
}

@media(max-width:640px){
	#header-lang.show{-ms-flex-flow:row wrap; flex-flow:row wrap;}
	#header-lang a{width:28%;margin-top:1%;margin-bottom:1%;font-size:3.5vmin;}

}




/********************************************************************************
* HEADER

toggle global navi
*********************************************************************************/

#header-global{
	display:none;
	animation: hide 0.4s linear 0s;
}
#header-global.show{
	display:block;
	animation: show 0.4s linear 0s;
}
@keyframes show{
    from{
        opacity: 0;
    }
    to{
        opacity: 1;
    }
}
@keyframes hide{
    from{
        opacity: 1;
    }
    to{
        opacity: 0;
    }
}


#header-global .split-pc-3{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
}

#header-global .split-pc-3 ul{
	width:33.333%;
	padding:1em 2em 2em 2em;
}

#header-global .split-pc-3 ul li{border-bottom:1px dashed #999;}

#header-global .split-pc-3 ul:nth-of-type(2){
	background:rgba(0,0,0,0.1);
}
#header-global .split-pc-3 ul li a{
	padding:0.7em 0.2em;
	display:block;
	width:100%;
	font-size:15px;
	line-height:1.2em;
	color:#333;
	position:relative;
}

#header-global .split-pc-3 ul li a::after{
	content:"";
	display:inline-block;
	width:0.4em;
	height:1em;
	position:absolute;
	right:0.5em;
	background:url(/wp-content/themes/shuttle/images/icon-ff-dark.svg) 100% 50% no-repeat;	
}

@media(min-width:900px){
	#header-global .split-pc-3 ul li a:hover{background:rgba(0,0,0,0.1);}
}

@media(max-width:1000px){
	#header-global .split-pc-3 ul li a{font-size:13px;}
}

@media(max-width:900px){
	#header-global .split-pc-3 ul li a{font-size:14px;}
	#header-global .split-pc-3 ul{width:50%;}
	#header-global .split-pc-3 ul:nth-of-type(3){display:none;}
	#header-global .split-pc-3 ul:nth-of-type(2){background:transparent;}
}

@media(max-width:640px){
	#header-global .split-pc-3{-ms-flex-flow:row wrap; flex-flow:row wrap;}
	#header-global .split-pc-3 ul:nth-of-type(1){
		width:100%;padding:0;display: -webkit-flex; display: -ms-flexbox; display: flex;
		-ms-flex-flow:row wrap; flex-flow:row wrap;
		-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;}
	#header-global .split-pc-3 ul:nth-of-type(1) li{width:50%;}
	#header-global .split-pc-3 ul:nth-of-type(2){width:100%;padding:0 0 1em 0;}
	#header-global .split-pc-3 ul li a{padding:0.7em 0.5em;}
}

	
	
/********************************************************************************
* HEADER

header css hamburger menu
*********************************************************************************/
.menu-trigger,
.menu-trigger span {
  display: inline-block;
  transition: all .4s;
  box-sizing: border-box;
}
.menu-trigger {
  position: relative;
  width: 35px;
  height: 30px;
  margin:0 0.5em;
}
.menu-trigger span {
  position: absolute;
  left: 0;
  width: 100%;
  height: 2px;
  background-color: #333;
  border-radius: 2px;
}
.menu-trigger span:nth-of-type(1) {
  top: 0;
}
.menu-trigger span:nth-of-type(2) {
  top: 14px;
}
.menu-trigger span:nth-of-type(3) {
  bottom: 0;
}


.menu-trigger.active span:nth-of-type(1) {
  -webkit-transform: translateY(20px) rotate(-45deg);
  transform: translateY(14px) rotate(-45deg);
}
.menu-trigger.active span:nth-of-type(2) {
  opacity: 0;
}
.menu-trigger.active span:nth-of-type(3) {
  -webkit-transform: translateY(-20px) rotate(45deg);
  transform: translateY(-14px) rotate(45deg);
}


/********************************************************************************
* content-head コンテンツ画像ヘッダ(共通)
*********************************************************************************/
section.img-header{
	width:100%;
	min-height:450px;
	background-size:cover;
	background-repeat: none;
	background-position: 50% 50%;

}

section.img-header .overlay{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	width:100%;
	min-height:450px;
	padding:12px;
	background:url(/wp-content/themes/shuttle/images/overlay01.png) 0 0 repeat;
}


section.img-header h1{
	font-size:45px;
	color:#FFF;
	letter-spacing: 0.1em;
	filter: drop-shadow(0px 0px 4px rgba(0,0,0,.8));
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	-ms-flex-flow:column nowrap; flex-flow:column nowrap;
}
section.img-header h1 span{
	display:block;
	text-align:center;
	font-size:20px;
	line-height:1.5em;
	margin-top:2em;
	font-weight:500;
}

@media(max-width:900px){
	section.img-header h1{font-size:35px;}
	section.img-header h1 span{font-size:18px;}
}
@media(max-width:767px){
	section.img-header h1{font-size:28px;}
	section.img-header h1 span{font-size:17px;}
	section.img-header,section.img-header .overlay{min-height:350px;}
}
@media(max-width:640px){
	section.img-header h1{font-size:23px;}
	section.img-header h1 span{font-size:15px;}
	section.img-header,section.img-header .overlay{min-height:300px;}
}
@media(max-width:480px){
	section.img-header h1{font-size:5vmin;}
	section.img-header h1 span{font-size:3.2vmin;}
}







/********************************************************************************
* out-links
*********************************************************************************/

.out-links{display:none;}


@media(max-width:767px){
	.out-links{
	  display: -webkit-flex; display: -ms-flexbox; display: flex;
	  -ms-flex-flow:row nowrap; flex-flow:row nowrap;
	  -webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
	  -webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	  position: sticky;
	  position:-webkit-sticky;
	    bottom: 0;
	    z-index: 55;
	    padding:12px;
	    margin-top:-80px;

	}
	.out-links > *{
	  width:50%;
	  display:block;
	  color:#FFF;
	  text-align:center;
	  padding:1em 0;
	  font-size:15px;
	  letter-spacing: 0.01em;
	  display: -webkit-flex; display: -ms-flexbox; display: flex;
	  -webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	  -webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	  font-weight:bold;
	}

	.out-links .bus-viewer{
	  background:rgba(228,30,128,0.92);
	  border-radius:1em 0 0 1em;
	}
	.out-links .buy-ticket{
	  background:rgba(41,163,218,0.92);
	  border-radius:0 1em 1em 0;
	}
	.out-links .bus-viewer::before{
	  display:inline-block;
	  content:"";
	  width:1.5em;
	  height:1.5em;
	  margin-right:0.5em;
	  background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjEuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMCIgaWQ9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTAwIDEwMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGRkY7fQo8L3N0eWxlPgo8dGl0bGU+bG9jYXRpb248L3RpdGxlPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNjEuNSw0OUw2MS41LDQ5Yy0zLjUtMC4xLTYuMywyLjYtNi41LDZjMCwxLjYsMC42LDMuMSwxLjcsNC4yYzEuMiwxLjMsMi45LDIsNC42LDJoMC4xYzMuNCwwLjEsNi4zLTIuNiw2LjQtNgoJYzAtMS42LTAuNi0zLjEtMS43LTQuMkM2NC45LDQ5LjcsNjMuMiw0OSw2MS41LDQ5eiIvPgo8cGF0aCBjbGFzcz0ic3QwIiBkPSJNNTAsMS41Yy0yMC45LDAtMzcuOCwxNi40LTM3LjgsMzYuN2MwLDUuNCwxLjUsOS42LDMuMywxNC4zYzIuNyw3LjEsMjgsNDIuMSwyOCw0Mi4xYzMuOCw1LjIsOS45LDUuMiwxMy43LTAuMQoJYzAsMCwyNS4zLTM2LjQsMjcuNi00MmMxLjktNC41LDMtOS40LDMtMTQuM0M4Ny44LDE3LjksNzAuOSwxLjUsNTAsMS41eiBNNTAsNjYuMWMtMTUuOCwwLTI4LjctMTIuNS0yOC43LTI3LjlTMzQuMiwxMC4zLDUwLDEwLjMKCWM4LjgsMCwxNy4xLDMuOSwyMi42LDEwLjdoLTUuN2MtMC44LDAtMS41LDAuNS0xLjgsMS4zaC0xLjVsLTEzLjgsMC42Yy0wLjgsMC0xLjcsMC4yLTIuNSwwLjRjLTAuOCwwLjMtMS41LDAuOC0yLDEuNWwtMC42LDEKCWMtMC40LDAuOC0wLjcsMS42LTAuNywyLjV2MjMuOWMwLDAuMywwLDAuNS0wLjEsMC44Yy0wLjEsMC0wLjQsMC4xLTAuNSwxLjNsLTAuMSwwLjdjLTAuMSwwLjQsMC4xLDAuOCwwLjQsMS4xCgljMC4zLDAuMywwLjcsMC41LDEuMSwwLjVsMS4yLDAuMWMwLjcsMCwxLjksMC4xLDIuNywwLjFsMy44LDAuMWMwLTAuMywwLTAuNiwwLTAuOGMwLjItNC44LDQuMi04LjYsOS04LjZoMC4xYzIuNCwwLDQuOCwxLDYuNSwyLjcKCWMxLjYsMS42LDIuNSwzLjgsMi40LDYuMWwwLDBoMS41QzY2LjQsNjIuNSw1OC40LDY2LjEsNTAsNjYuMXogTTc4LjcsMzguMmMwLDEsMCwxLjktMC4yLDIuOGgtMy43Yy0wLjgsMC0xLjUtMC42LTEuNS0xLjQKCWMwLDAsMCwwLDAsMHYtOWMwLTAuOCwwLjctMS40LDEuNS0xLjRjMCwwLDAsMCwwLDBoMi4zQzc4LjIsMzIuMSw3OC43LDM1LjIsNzguNywzOC4yeiBNNzAuNywzMC43djljMCwwLjgtMC43LDEuNC0xLjUsMS40aC03LjkKCWMtMC44LDAtMS41LTAuNi0xLjUtMS40di05YzAtMC44LDAuNy0xLjQsMS41LTEuNGg3LjlDNzAsMjkuMiw3MC43LDI5LjksNzAuNywzMC43eiBNNTcuOCwzMS4zdjguNWMwLDAuNy0wLjYsMS4zLTEuMywxLjNoLTcuMQoJYy0wLjcsMC0xLjMtMC42LTEuMy0xLjNjMCwwLDAsMCwwLDB2LTguNWMwLTAuNywwLjYtMS4zLDEuMy0xLjNjMCwwLDAsMCwwLDBoNy4xQzU3LjIsMzAsNTcuOCwzMC42LDU3LjgsMzEuMwoJQzU3LjgsMzEuMyw1Ny44LDMxLjMsNTcuOCwzMS4zeiBNNDcuMiwzMC44djEyLjljMCwwLjYtMC40LDEtMSwxcy0xLTAuNC0xLTFWMzAuOGMwLTAuNiwwLjQtMSwxLTFTNDcuMiwzMC4zLDQ3LjIsMzAuOHoiLz4KPC9zdmc+Cg==') 50% 50% no-repeat;
	  background-size:contain;
	}
	.out-links .buy-ticket::before{
	  display:inline-block;
	  content:"";
	  width:1.5em;
	  height:1.5em;
	  margin-right:0.5em;
	  background:url('data:image/svg+xml;base64,PD94bWwgdmVyc2lvbj0iMS4wIiBlbmNvZGluZz0idXRmLTgiPz4KPCEtLSBHZW5lcmF0b3I6IEFkb2JlIElsbHVzdHJhdG9yIDIzLjEuMSwgU1ZHIEV4cG9ydCBQbHVnLUluIC4gU1ZHIFZlcnNpb246IDYuMDAgQnVpbGQgMCkgIC0tPgo8c3ZnIHZlcnNpb249IjEuMCIgaWQ9IuODrOOCpOODpOODvF8xIiB4bWxucz0iaHR0cDovL3d3dy53My5vcmcvMjAwMC9zdmciIHhtbG5zOnhsaW5rPSJodHRwOi8vd3d3LnczLm9yZy8xOTk5L3hsaW5rIiB4PSIwcHgiCgkgeT0iMHB4IiB2aWV3Qm94PSIwIDAgMTAwIDEwMCIgc3R5bGU9ImVuYWJsZS1iYWNrZ3JvdW5kOm5ldyAwIDAgMTAwIDEwMDsiIHhtbDpzcGFjZT0icHJlc2VydmUiPgo8c3R5bGUgdHlwZT0idGV4dC9jc3MiPgoJLnN0MHtmaWxsOiNGRkZGRkY7fQo8L3N0eWxlPgo8dGl0bGU+YnV5PC90aXRsZT4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTc4LjksMTkuNnY1LjdoLTUuN3YtNS43SDQuNnY0NS43SDk2VjE5LjZINzguOXogTTEwLjMsMzEuMWgyOC42djUuN0gxMC4zVjMxLjF6IE00NC42LDQ4LjJIMTAuM3YtNS43aDM0LjMKCVY0OC4yeiBNNzguOSw1OS43aC01LjdWNDguMmg1LjdWNTkuN3ogTTc4LjksNDIuNWgtNS43VjMxLjFoNS43VjQyLjV6Ii8+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik0zMi40LDczLjNjMC43LDAsMS41LDAuMSwyLjIsMC4yYzAuNiwwLjEsMS4yLDAuNCwxLjcsMC43YzAuNSwwLjMsMC45LDAuOCwxLjEsMS4zYzAuMywwLjYsMC40LDEuMywwLjQsMgoJYzAsMC44LTAuMiwxLjUtMC42LDIuMWMtMC40LDAuNi0xLDEuMS0xLjcsMS40YzAuOSwwLjIsMS44LDAuOCwyLjMsMS42YzAuNSwwLjgsMC44LDEuOCwwLjgsMi43YzAsMC44LTAuMSwxLjUtMC41LDIuMgoJYy0wLjMsMC42LTAuOCwxLjEtMS4zLDEuNWMtMC42LDAuNC0xLjIsMC43LTEuOSwwLjljLTAuNywwLjItMS41LDAuMy0yLjIsMC4zaC04LjJ2LTE3TDMyLjQsNzMuM3ogTTMxLjksODAuMgoJYzAuNiwwLDEuMi0wLjEsMS42LTAuNWMwLjUtMC40LDAuNy0xLDAuNy0xLjZjMC0wLjMtMC4xLTAuNy0wLjItMWMtMC4xLTAuMi0wLjMtMC41LTAuNi0wLjZjLTAuMy0wLjEtMC41LTAuMi0wLjgtMC4zCgljLTAuMy0wLjEtMC43LTAuMS0xLTAuMWgtMy41djRMMzEuOSw4MC4yeiBNMzIuMSw4Ny40YzAuMywwLDAuNywwLDEtMC4xYzAuMywwLDAuNi0wLjIsMC45LTAuM2MwLjMtMC4yLDAuNS0wLjQsMC42LTAuNwoJYzAuMi0wLjMsMC4yLTAuNywwLjItMS4xYzAuMS0wLjctMC4yLTEuNC0wLjctMS45Yy0wLjYtMC40LTEuMy0wLjYtMi0wLjZoLTR2NC43TDMyLjEsODcuNHoiLz4KPHBhdGggY2xhc3M9InN0MCIgZD0iTTUzLjYsODljLTEuNSwxLjItMy40LDEuOC01LjMsMS43Yy0xLjksMC4xLTMuOC0wLjUtNS4zLTEuN2MtMS4zLTEuMS0xLjktMi44LTEuOS01LjFWNzMuM2gzLjd2MTAuNgoJYzAsMC41LDAsMC45LDAuMSwxLjRjMC4xLDAuNCwwLjIsMC44LDAuNSwxLjJjMC4zLDAuNCwwLjYsMC42LDEsMC44YzAuNiwwLjIsMS4yLDAuMywxLjgsMC4zYzEsMC4xLDItMC4yLDIuNy0wLjkKCWMwLjYtMC44LDAuOS0xLjgsMC44LTIuOFY3My4zaDMuN3YxMC42QzU1LjcsODUuOCw1NSw4Ny43LDUzLjYsODl6Ii8+CjxwYXRoIGNsYXNzPSJzdDAiIGQ9Ik01Ni45LDczLjNoNC4ybDQsNi43bDQtNi43aDQuMWwtNi4zLDEwLjV2Ni41aC0zLjd2LTYuNkw1Ni45LDczLjN6Ii8+Cjwvc3ZnPgo=') 50% 50% no-repeat;
	  background-size:contain;
	}

}

	#wrapper main section#sitetop-busstop{
		padding-bottom:120px !important;
	}

	#wrapper main section:nth-last-child(1){
		padding-bottom:120px !important;
	}

@media(max-width: 767px){
	#wrapper main section:nth-last-child(1){
		padding-bottom:80px !important;
	}

	.out-links{
		margin-top: -80px;
		margin-bottom: 0;
	}
	.goto-top{
		margin-top: -80px !important;
	}
}






/********************************************************************************
* footer
*********************************************************************************/

/********************************************************************************
* footer

page top link
*********************************************************************************/

.goto-top{
	max-width:1000px;
	margin:0 auto;
	display:block;
	position:relative;
	height:44px;
	margin-top:-44px;
	z-index:9;
}

a.go-top{
	display: flex;
	justify-content: center;
	align-items: center;
	color:#FFF;
	background:#333;
	border-bottom:1px dashed #fff;
	padding:.2em;
	width:7em;
	height:44px;
	text-align:center;
	position:absolute;
	right:0;
}
a.go-top i{
	font-size:1.6em;
	transform: rotate(-90deg);
}

@media(max-width:767px){
	.goto-top{margin-bottom:2em;}
	a.go-top{
		display: flex;
		justify-content: center;
		align-items: center;
		color:#FFF;
		background:#00a0e9;
		padding:.5em;
		font-size:4vw;
		width:100%;
		text-align:center;
		border:none;
	}
	a.go-top i{
		font-size:6vw;
		transform: rotate(-90deg);
	}



}


/* footer
------------------------------*/

footer{
	background:#333333;
	color:#FFF;
	margin: 0 auto;
	position: relative;
	padding-top:0;
	padding-bottom:3em;
		text-align:center;
}

footer nav#big-footer{
	color:#FFF;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
	-webkit-align-items: flex-start; align-items: flex-start;
	padding:0.5em 0;
	margin-bottom:2em;
}

footer nav#big-footer ul{
	width:100%;
}


footer nav#big-footer ul li{
	width:100%;
}

footer nav#big-footer ul li a:hover{
	background:rgba(0,0,0,0.2);
}

footer nav#big-footer ul li a,footer nav#big-footer ul li label{
	color:#FFF;
	display:block;
	padding:0.5em;
	text-align:left;
	margin-bottom:0.5em;
	margin-top:0.5em;
	font-size:13px;
}
footer nav#big-footer ul li ul li a{
	text-indent:0.5em;
}
footer nav#big-footer ul li ul li a::before{
	content:"-\00a0";
}




footer nav#big-footer ul li label{
	font-weight:bold;
	font-size:1.1em;
}

	/*TOGGLE*/
	input[name^="open-"] { display: none !important;height:0px !important; }


@media(max-width:640px){
	footer nav#big-footer{-ms-flex-flow:column nowrap; flex-flow:column nowrap;padding:0;margin-bottom:0;}
	footer nav#big-footer ul{width:100%}
	footer nav#big-footer ul li{border-top:1px solid #FFF;}
	footer nav#big-footer ul li a,footer nav#big-footer ul li label{
		font-size:3.5vmin;
	}
	
	footer nav#big-footer ul li label{
		font-size:1em;
	}
	footer nav#big-footer ul li label::after{
		content:"";
		display:inline-block;
		width:1em;
		height:1em;
		position:absolute;
		right:1.9em;
		background:url(/wp-content/themes/shuttle/images/footer-plus.svg) 50% 50% no-repeat;
		transition: all .3s;
		transform: rotate(0);
	}



	/* toggle menu */
	#open-content ~ #open-content-menu,
	#open-info ~ #open-info-menu,
	#open-about ~ #open-about-menu
	{display:none;}


	#open-content:checked ~ #open-content-menu,
	#open-info:checked ~ #open-info-menu,
	#open-about:checked ~ #open-about-menu
	{display:block;}

	footer nav#big-footer ul li #open-content:checked + label::after,
	footer nav#big-footer ul li #open-about:checked + label::after,
	footer nav#big-footer ul li #open-info:checked + label::after{
		transition: all .3s;
		transform: rotate(-45deg);
	}
	/* toggle menu END */





	footer nav#big-footer ul li a{display:block;text-align:left;position:relative;}
	footer nav#big-footer ul li a:not(.open)::after{
		content:"";
		display:inline-block;
		width:0.5em;
		height:1em;
		position:absolute;
		right:1.5em;
		background:url(/wp-content/themes/shuttle/images/footer-ff.svg) 50% 50% no-repeat;
	}


}





nav.footer-lang-nav{
	border-top:1px solid #FFF;
	padding:1em;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
}
nav.footer-lang-nav a{
	color:#FFF;
	width:3em;
}




footer .corporate-name{
	text-align:center;
	font-size:18px;
	font-weight:300;
	line-height:2.3em;
	letter-spacing: 0.1em;
}
footer .characters{
	width:65%;
	margin:0 auto;
}

footer small.copyright{
	display:block;
	text-align:center;
	margin-top:2em;
	letter-spacing: 0.1em;
}


.footer-sp-logo{
	width:30%;
	margin:3vmin auto;
}


@media(max-width:640px){

	footer{
		padding-top:0;
	}

	footer .corporate-name{
		font-size:3vmin;
		line-height:2em;
	}

	footer .characters{
		width:90%;
	}
	footer small.copyright{
		font-size:3vmin;
		margin:0 auto;
	}

}






/********************************************************************************
* content icon
*********************************************************************************/

i[class^="icon-"]{
	width:1em;
	height:1em;
	display:inline-block;
}

i.icon-up::before{
	content:"\0bb";
	-moz-transform: rotate(-90deg);
	-webkit-transform: rotate(-90deg);
	-o-transform: rotate(-90deg);
	-ms-transform: rotate(-90deg); 
}


/* -------------------------------
    breadcrumbs
------------------------------- */
.breadcrumb {
    padding: 8px 0;
    margin-bottom: 30px;
    background: #FFF;
}
.breadcrumb ul {
    color: #2f2f2f;
    font-size: 12px;
    list-style: none;
}
.breadcrumb ul li {
    display: inline-block;
    vertical-align: middle;
}
.breadcrumb ul li::after {
    content: ">";
    display: inline-block;
    margin: 0 .5em;
    vertical-align: top;
}
.breadcrumb ul li:last-child::after {
    content: none;
}
.breadcrumb ul li a {
    color: #2f2f2f;
    text-decoration: none;
}







/********************************************************************************
* top-page
*********************************************************************************/

section#top-topics{
	padding-top:1em;
	padding-bottom:2em;
}

section#top-topics ul{
	list-style-type: none;
	border-top:1px solid #ccc;
}

section#top-topics ul li{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	padding:1em 0;
	border-bottom:1px solid #ccc;
}



section#top-topics ul li span{
	color:#9d7c52;
	padding-right:2em;
}

section#top-topics ul li a{
	color:#4d4d4d;
	line-height:1.3em;
	padding-right:1.8em;
	position:relative;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
}
@media(max-width:480px){
	section#top-topics ul li > *{
		font-size:3.5vmin;
	}
}

section#top-topics ul li a::after{
	content:"\0bb";
	display:inline-block;
	position:absolute;
	right:0.5em;
}







section#sitetop-catch{
	padding:3em 0
}




section#mailn-links{

}

.main-links-lists{
display: -webkit-flex; display: -ms-flexbox; display: flex;
-ms-flex-flow:row wrap;flex-flow:row wrap;
-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
margin:0 auto;
position:relative;
padding:0.8%;
}
.main-links-lists > *{
	width:49.6%;
	height:500px;
	margin-bottom:0.8%;
}

.article-timetable{
	background:url(/wp-content/themes/shuttle/images/article-timetable.jpg) 50% 50% no-repeat;
	background-size:cover;
}

.article-buy{
	background:url(/wp-content/themes/shuttle/images/article-buy.jpg) 50% 50% no-repeat;
	background-size:cover;
}

.article-resortlunch{
	background:url(/wp-content/themes/shuttle/images/article-resortlunch.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-access{
	background:url(/wp-content/themes/shuttle/images/article-access.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-good-value{
	background:url(/wp-content/themes/shuttle/images/article-good-value.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-rentacar{
	background:url(/wp-content/themes/shuttle/images/article-rentacar.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-photo_tabi{
	background:url(/wp-content/themes/shuttle/images/article-photo_tabi.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-beach{
	background:url(/wp-content/themes/shuttle/images/article-beach.jpg) 50% 50% no-repeat;
	background-size:cover;
}
.article-stories{
	background:url(/wp-content/themes/shuttle/images/article-stories.jpg) 50% 50% no-repeat;
	background-size:cover;
}

.main-links-lists > * > div{
	padding-top:2.5em;
	width:100%;
	height:100%;
	background:linear-gradient(to bottom, rgba(58,123,213,0.6),rgba(58,123,213,0.1),rgba(58,123,213,0),rgba(58,123,213,0));
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:column nowrap; flex-flow:column nowrap;
	-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	transition:all 0.7s;
	-webkit-transition:all 0.7s;
	position: relative;
}

.main-links-lists > * > div:hover{
	background:linear-gradient(to bottom, rgba(58,123,213,0.6),rgba(58,123,213,0.4),rgba(58,123,213,0.2),rgba(58,123,213,0));
	transition:all 0.7s;
	-webkit-transition:all 0.7s;
}

.main-links-lists > * > div h2,
.main-links-lists > * > div p{
	filter: drop-shadow(0 0  3px #111144);
}

.main-links-lists > * > div h2{
	color:#FFF; font-size:30px;
	line-height:1.6em;
}
.main-links-lists > * > div p{
	color:#FFF; font-size:18px;
	text-align:center;
	line-height:1.4em;
}
.main-links-lists > * > div span{
	padding:0.4em 1.5em;
	margin-top:1em;
	font-size:15px;
	border-radius:0.4em;
	text-align:center;
	background:#FFF;
	color:#666;
	border:1px solid #333;
	line-height:1.4em;
	position:absolute;
	bottom:10%;
}
.main-links-lists > * > div span:hover{
	background:#eee;
}
.main-links-lists > * > div span::after{
	position:relative;
	top:0.1em;
}

@media(max-width:1100px){
	.main-links-lists > *{height:400px;}
	.main-links-lists > * > div h2{font-size:26px;}
	.main-links-lists > * > div p{font-size:16px;}
	.main-links-lists > * > div span{font-size:14px;}
}
@media(max-width:900px){
	.main-links-lists > *{height:350px;}
}
@media(max-width:767px){
	.main-links-lists{padding:0;}
	.main-links-lists > *{width:100%;margin-bottom:1%;height:520px;}
}
@media(max-width:640px){
	.main-links-lists > *{height:70vmin;}
	.main-links-lists > * > div h2{font-size:24px;}
	.main-links-lists > * > div p{font-size:16px;}
	.main-links-lists > * > div span{font-size:14px;}
}
@media(max-height:480px){
	.main-links-lists > *{
		width:49.6%;
		height:100vh;
		margin-bottom:0.8%;
	}
	.main-links-lists > * > div h2{font-size:6vmin;}
	.main-links-lists > * > div p{font-size:3.8vmin;}
	.main-links-lists > * > div span{font-size:4vmin;}

}


@media(max-width:480px){
	.main-links-lists > *{height:90vmin;}	
}



.link-button-area{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row wrap;flex-flow:row wrap;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	padding:3em 12px 1em 12px;
}
.link-button-area a{
	background:#333333;
	max-width:480px;
	width:49%;
	margin:0.5%;
	color:#FFF;
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-webkit-justify-content: center;-ms-flex-pack: center;justify-content: center;
	-webkit-align-items: center;  -ms-flex-align: center; align-items: center;
	padding:1em;
	letter-spacing: 0.1em;
}
.link-button-area a:hover{
	background:#000;
}
.link-button-area a::after{
	content:"\0bb";
	display:inline-block;
	margin-left:2em;
}
.link-button-area a.back::after{
	content:"";
	display:none;
	margin-left:0;
}
.link-button-area a.back::before{
	content:"\0ab";
	display:inline-block;
	margin-right:2em;
}




@media(max-width:640px){
	.link-button-area{-ms-flex-flow:column nowrap; flex-flow:column nowrap;}
	.link-button-area a{width:100%;margin:1em 0;max-width:640px;}
}

section h1.section-header{
	font-size:30px;
	max-width:1000px;
	text-align:center;
	margin:0 auto;
	color:#4d4d4d;
	font-weight:600;
	letter-spacing: 0.2em;
}
section h1.section-header::after{
	content:"";
	display:block;
	width:4em;
	height:0.5em;
	border-bottom:1px solid #4d4d4d;
	margin:0 auto;
}


#sitetop-busmap,#sitetop-busstop{
	padding:3em 0;
}

#sitetop-busstop h1{margin-bottom:1em;}


@media(max-width:640px){
	#sitetop-busmap,#sitetop-busstop{
		padding:1em 0;
	}
	#sitetop-busstop{
		padding-bottom:3em;
	}

}

#gMap h3{
	margin-top:1em;
	line-height:1.8em;
	color:#4d4d4d;
	font-weight:600;
	letter-spacing: 0.1em;
	text-align:center;
	font-size:17px;
}



/********************************************************************************
* page common
*********************************************************************************/
a{
	color:#29a2d9;
}
#page section > a{
	display:inline-block;
	padding:0.5em 0;
	margin-bottom:1em;
}
#page section p a{
	display:inline-block;
	padding:0 0.5em;
}

#page a[target="_blank"]:not(.bus-viewer):not(.buy-ticket)::after{
	content:"";
	display:inline-block;
	margin-left:0.5em;
	position:relative;
	top:0.1em;
	width:1em;
	height:1em;
	background:url(/wp-content/themes/shuttle/images/outerlink_r.svg) 50% 50% no-repeat;
	background-size:cover;
}

#page .page-content h1,
#no-content h1{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	 -ms-flex-flow:row nowrap; flex-flow:row nowrap;
	 -webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
	 -webkit-align-items: center;  -ms-flex-align: center; align-items: center;
    background-color: #009fe8;
    color: #FFF;
    font-weight:600;
    padding: 0.7em 1em 0.7em 2em;
    letter-spacing: 0.15em;
    font-size:22px;
    line-height:1.3em;
    position:relative;
    margin-bottom:1em;
}
#page .page-content h1:before,
#no-content h1:before{
    content: '';
    display:block;
    width:1px;
    height:60%;
    border-left:6px solid #FFF;
    position:absolute;
    left:1em;
}


#page h2{
	font-size:20px;
	line-height:1.4em;
	color:#333;
	margin-bottom:1em;
}

#page h3{
	font-size:16px;
	line-height:1.4em;
	margin-bottom:1em;
	color:#333;
}

#page h4{
	background:#efefef;
	font-size:16px;
	line-height:1.4em;
	color:#333;
	padding:0.2em 0.5em;
}

#page h5{
	font-size:14px;
	line-height:1.4em;
	color:#333;
}

#page h6{
	font-size:13px;
	font-weight:500;
	line-height:1.4em;
	text-align:right;
	margin-bottom:2em;
	color:#333;
}
@media(max-width:767px){
	#page h6{text-align:left;}
}


#page p{
	font-size:16px;
	line-height:1.8em;
	text-align:justify;
	margin-bottom:1em;
}
@media(max-width:767px){
	#page p{line-height:1.5em;}
}

#page p + h2,
#page p + h3,
#page p + h4
{margin-top:2em;}


#page img + h2,
#page img + h3,
#page img + h4
{margin-top:2em;}

#page img{
	width:100%;
}


#page pre{
	padding:3.5em;
	background:#efefef;
	font-size:15px;
	max-width:100%;
    overflow: auto;
    white-space: pre-wrap;
    word-wrap: break-word;
    line-height:1.6em;
    text-align:justify;
    margin:2em 0;
}
#page  pre img{
	margin:1em 0;
}
@media(max-width:767px){
	#page pre{padding:2em;}
}

/* DL
******************/
dl.table-view{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row nowrap; flex-flow:row nowrap;
	-webkit-justify-content: flex-start;-ms-flex-pack: start;justify-content: flex-start;
	 -webkit-align-items: flex-start; align-items: flex-start;
	 margin:0.5em auto;
}
dl.table-view dt{
	white-space: nowrap;
	font-size:15px;
	font-weight:600;
	color: #333;
	line-height:1.5em;
}
dl.table-view dt:after{
	content:":";
	display:inline-block;
	margin-left:0.5em;
	margin-right:0.5em;
}
dl.table-view dd{
	display:block;
	font-size:15px;
	font-weight: 400;
    text-align: justify;
    color: #4E4E56;
    line-height:1.5em;
}



#wrapper #page .bread .breadcrumb a{
	color:#2f2f2f;
}



/********************************************************************************
* bus-trip
*********************************************************************************/
#page section[class^="mediacontent-"]{
	padding:3em 0;
	border-bottom:1px solid #efefef;
}
#page section[class^="mediacontent-"] h2{
	margin:0 auto;
	text-align:center;
	font-size:1.8em;
	letter-spacing: 0.1em;
	color:#2f2f2f;
	margin-bottom:2em;
}
#page section[class^="mediacontent-"] h2::after{
	content:"";
	width:4em;
	height:0.5em;
	display:block;
	margin:0 auto;
	border-bottom:1px solid #333;
}

#page section[class^="mediacontent-"] .inner{
	display: -webkit-flex; display: -ms-flexbox; display: flex;
	-ms-flex-flow:row wrap;flex-flow:row wrap;
	-webkit-justify-content: space-between;-ms-flex-pack: justify; justify-content: space-between;
	-webkit-align-items: flex-start; align-items: flex-start;
}

#page section[class^="mediacontent-"] .inner > *{
	width:32%;
}
@media(max-width:767px){
	#page section[class^="mediacontent-"] .inner > *{
		width:49%;
	}	
}
@media(max-width:480px){
	#page section[class^="mediacontent-"] .inner > *{
		width:100%;
	}	
}

.mediacontent-outer .inner > a{
	position:relative;
}

.mediacontent-outer .inner > a span:nth-of-type(1){
	font-size:12px;
	font-weight:600;
	display:block;
	padding:0.2em;
}

.mediacontent-outer .inner > a span:nth-of-type(2){
	font-size:14px;
	font-weight:400;
	display:block;
	padding:0.2em;
}

#page section.mediacontent-outer .inner > a[target="_blank"]::after{
	position:absolute;
	right:0;
	top:calc(100% - 1.2em);
}

.movie-box{
	margin-bottom:1.5em;
}

.js-video-overlay-trigger{
	display:block;
	width:100%;
	padding: 0.5em 1em;
    border-radius: 0.3em;
    margin: 0.3em 0;
	border: 1px solid #333;
    color: #333;
    font-size:14px;
    text-align:center;
}
.js-video-overlay-trigger:hover{
	background:#efefef;
}

.mediacontent-outer a{
	margin-bottom:1.5em;
}



