@charset "UTF-8";

/*-----------------------------------------------------------------------
* プレビューサイト用
*-----------------------------------------------------------------------*/
aside#previewsite{
	position: absolute;
	top: 150px;
	left: 50%;
	margin-left:-250px;
	width: 500px;
	font-size: 12px;
	background-color: rgba(251, 236, 187, 0.95);
	color: #0e0e0e;
	padding: 30px 30px 16px;
	text-align:center;
	-webkit-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-ms-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
}

aside#previewsite h5{
	font-size:16px;
	margin-bottom:12px;
}

aside#previewsite p{
	text-align:left;
}

aside#previewsite p strong{
	font-weight: bold;
	color:#e50012;
}


/*-----------------------------------------------------------------------
* common
*-----------------------------------------------------------------------*/

html, body, header, main, footer {
	min-width: 1140px;
}

@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 100;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 200;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 300;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Medium");
	font-weight: 400;
}
@font-face {
	font-family: "Yu Gothic";
	src: local("Yu Gothic Bold");
	font-weight: bold;
}
@font-face {
	font-family: "Helvetica Neue";
	src: local("Helvetica Neue Regular");
	font-weight: 100;
}
@font-face {
	font-family: "Helvetica Neue";
	src: local("Helvetica Neue Regular");
	font-weight: 200;
}

html, body, input, button, textarea, select {
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif;
	font-size: 14px;
	line-height: 1.6;
	letter-spacing: 0.1em;
}


/* IE10以上 */
@media all and (-ms-high-contrast: none) {
	html, body, input, button, textarea, select {
		font-family: Verdana, Meiryo, sans-serif;
	}
	footer nav#footernav ul li#pushnate {
		display: none;
	}
}

body{
	-webkit-text-size-adjust: 100%;
}

h1{
	font-size: 12px;
	font-weight: normal;
	color: rgba(255,255,255,0.6);
	padding: 13px 446px 0 276px;
	height: 40px;
	overflow: hidden;
	text-align: left;
	text-overflow: ellipsis;
	white-space: nowrap;
}

h2{
	font-size: 28px;
	margin-bottom: 44px;
}

h3{
	font-size: 22px;
	margin-bottom: 40px;
}

h4{
	font-size: 20px;
	margin-bottom: 36px;
}

h5{
	font-size: 18px;
	margin-bottom: 32px;
}

body.simpleheader main{
	/*キャンペーンバナーなし*/
	padding-top: 105px;
	
	/*キャンペーンバナーあり
	padding-top: 145px;
	*/
}

h1,
article section,
header nav ul,
footer nav,
main nav ul{
	max-width: 1280px;
	margin: 0 auto;
}

main > article{
	padding-top: 80px;
	padding-bottom: 60px;
}

main article#mv{
	padding-top: 40px;
	padding-bottom: 0;
	height: 300px;
	position: relative;
	z-index: 0;
	overflow: hidden;
	background-position-y: -90px;
}

body.simpleheader main article#mv{
	padding-top: 0;
	height: auto;
}

main article#mv:before{
	content: '';
	background: inherit;
	-webkit-animation: image_blur 2s ease-out;
	-moz-animation: image_blur 2s ease-out;
	-ms-animation: image_blur 2s ease-out;
	animation: image_blur 2s ease-out;
	position: absolute;
	top:0; left:0; right:0; bottom:0;
	z-index: -1;
}

article section{
	padding-left: 16px;
	padding-right: 16px;
}

main article#mv h2 {
	font-size: 36px;
	line-height: 1.2;
}
main article#mv h2 img.subtitle {
	display: block;
	margin: 0 auto;
}
main article#mv section:first-child{
	padding: 124px 0 0 0;
	height: 215px;
}
main h2{
}
main table{
	margin: 40px auto;
}
main th,main td{
	padding: 20px 24px 19px;
}


/*-----------------------------------------------------------------------
* header
*----------------------------------------------------------------------- */

header{
	position: absolute;
	top:0;
	z-index: 100;
	width: 100%;
	-webkit-transition: background-color 0.4s linear;
	-moz-transition: background-color 0.4s linear;
	transition: background-color 0.4s linear;
}
header.fixed{
	position: fixed;
	-webkit-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-ms-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
}
header.fixed nav#mainnav{
	background: rgba(255,255,255,0.95);
}
header.fixed h1 {
	color: rgba(255,255,255,0.6);
}

header nav{
	-webkit-transition: background-color 0.4s linear;
	-moz-transition: background-color 0.4s linear;
	transition: background-color 0.4s linear;
}
header nav#exnav{
	margin-top: -40px;
	border-bottom: 1px solid rgba(0, 0, 0, 0);
}
header.fixed nav#exnav{
	border-bottom: 1px solid #0e0e0e;
	background: #0e0e0e;
}

header a{
	color:#fff;
	display: inline-block;
	text-align: left;
	text-decoration: none;
	font-weight: bold;
	-webkit-transition: background-color 0.4s linear;
	-moz-transition: background-color 0.4s linear;
	transition: background-color 0.4s linear;
}

header nav#head__banner{
	background-image: url(/img/common/header_banner_akitabi.jpg?20251017);
	background-repeat: repeat-x;
    background-position: center top;
    background-size: auto 100%;
	position: relative;
	height: 40px;
}

header nav#head__banner a{
	position: absolute;
    inset: 0;
}

header nav#mainnav{
	min-width: 1180px;
}

header nav#mainnav ul li a{
	height: 64px;
	font-size: 13px;
	/*padding: 24px 16px 0;*/
	padding: 24px 10px 0;
}
header.fixed nav#mainnav ul li a{
	color:#0e0e0e;
}
header nav#mainnav ul li.mainnav-about a {
	padding-left: 34px;
	background-image: url(/img/common/badge-newbie.png);
	background-size: 18px auto;
	background-position: top 20px left 12px;
}
header nav#mainnav ul li a span {
  display: inline-block;
  height: 100%;
  padding: 0 4px;
	-webkit-transition: color 0.4s linear;
	-moz-transition: color 0.4s linear;
	transition: color 0.4s linear;
}
header nav#mainnav ul li.selected a span,
header nav#mainnav ul li a:hover span {
	color: #038de1;
	border-bottom: 3px solid #038de1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
header nav#mainnav ul li a:hover {
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
/*
header nav#mainnav ul li.selected a,
header nav#mainnav ul li a:hover{
	color: #038de1;
	border-bottom: 3px solid #038de1;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
*/
header nav#exnav ul li a{
	height: 40px;
	padding: 12px 20px 0 36px;
	font-size: 12px;
	background-color: #333;
	background-position: 16px center;
}
header nav#exnav ul li:nth-child(2){
	float: left;
	display: none;
}
header.fixed nav#exnav ul li:nth-child(2){
	display: inline-block;
}
header nav#exnav ul li:nth-child(2) a{
	position: relative;
	margin-left: 16px;
}
header nav#exnav ul li:nth-child(2) a::before{
	position: absolute;
	top: 6px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	left: 16px;
	width: 6px;
	height: 6px;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #fff;
	border-right-width: 2px;
	border-right-style: solid;
	border-right-color: #fff;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
header nav#exnav ul li#mlogout{
	/*display: none;*/
}
header nav#exnav ul li:nth-child(3) a{
	height: 40px;
	padding: 12px 20px 0 40px;
	font-size: 12px;
	background-color: #333;
	background-image: url(/img/common/icon-logout-wh.png);
	background-position: 18px center;
	background-size: 14px;
}
header nav#exnav ul li:nth-child(4) a{
	height: 40px;
	padding: 12px 20px 0 38px;
	font-size: 12px;
	background-color: #333;
	background-image: url(/img/common/icon-new-wh.png);
	background-position: 16px center;
	background-size: 14px;
}
header nav#exnav ul li:nth-child(5) a{
	background-color: #0e0e0e;
	background-image: url(/img/common/icon-member-wh.png);
	background-size: 14px;
}
header nav#exnav ul li:last-child a{
	color: #0e0e0e;
	background-color: #fcff00;
	background-image: url(/img/common/icon-wifi-bk.png);
	background-size: 18px;
}
header nav#exnav ul li:nth-child(2) a:hover,
header nav#exnav ul li:nth-child(3) a:hover,
header nav#exnav ul li:nth-child(4) a:hover,
header nav#exnav ul li:nth-child(5) a:hover,
header nav#exnav ul li:last-child a:hover{
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
header nav#exnav ul li a:hover,
header nav#exnav ul li:nth-child(5) a:hover{
	background-color: #444;
}
header nav#exnav ul li:last-child a:hover{
	background-color: #d6d900;
}

header nav ul{
	text-align: right;
	padding-left: 0;
}
header nav ul li{
	display: inline-block;
	margin: 0;
	text-indent: 0;
}
header nav#exnav ul li:first-child,
header nav#mainnav ul li:first-child{
	float: left;
	position: relative;
}

header nav#exnav ul li:first-child a,
header nav#mainnav ul li:first-child a{
	padding: 0;
	background-color: transparent;
	-webkit-transition: -webkit-opacity 0.4s linear;
	-moz-transition: -moz-opacity 0.4s linear;
	transition: opacity 0.4s linear;
	vertical-align: middle;
}
header nav#exnav ul li:first-child a:hover,
header nav#mainnav ul li:first-child a:hover{
	vertical-align: middle;
	background-color:transparent;
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}
header nav#exnav ul li:first-child a{
	position: absolute;
	z-index: 101;
	left: -62px;
	top: -137px;
	width: 318px;
	height: 137px;
}
header nav#mainnav ul li:first-child a{
	width: 250px;
	height: 64px;
	display: none;
	border: none;
}
header nav#mainnav ul li:first-child a img {
	padding: 17px 0 17px;
}
header nav#mainnav ul li{
	background-image: url(/img/common/nav-divline-w.png);
	background-position: right center;
}
header.fixed nav#mainnav ul li{
	background-image: url(/img/common/nav-divline-g.png);
}
header nav#mainnav ul li:first-child,
header nav#mainnav ul li:last-child,
header.fixed nav#mainnav ul li:first-child,
header.fixed nav#mainnav ul li:last-child{
	background-image: none;
}


header nav#mainnav ul li.mainnav-business {
	position: relative;
}



header nav#mainnav.mainnav-none_proper ul li:nth-last-child(2)::after {
	display: none;
}
header nav#mainnav.mainnav-none_proper ul li:last-child {
	position: relative;
}
header nav#mainnav.mainnav-none_proper ul li:last-child::after {
	position: absolute;
	content: " ";
	display: inline-block;
	top: 4px;
	right: 2px;
	width: 22px;
	height: 23px;
	vertical-align: middle;
	pointer-events: none;
	background: url(/img/common/badge-new.png) center center no-repeat;
}

/*-----------------------------------------------------------------------
* navi
*----------------------------------------------------------------------- */
main nav#breadcrumb{
	height: 50px;
	margin: 0 0 -50px;
	padding: 4px 0 0;
	position: relative;
	z-index: 1;
}
main nav#directrylink{
	padding-top: 16px;
	padding-bottom: 16px;
	background: #232323;
}

main nav ul{
	text-align: left;
}
main nav#directrylink ul{
	background: url(/img/common/link.png) 8px center no-repeat;
	padding-left: 64px;
}

main nav ul li{
	font-size: 11px;
}
main nav#breadcrumb ul {
	height: 100%;
	overflow: hidden;
}
main nav#breadcrumb ul li{
	padding-left: 24px;
	position: relative;
}
main nav#breadcrumb.white ul li{
	color:#fff;
}
nav#breadcrumb ul li::before{
	position: absolute;
	top: 0;
	left: 6px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	width: 6px;
	height: 6px;
	border-top-width: 1px;
	border-top-style: solid;
	border-top-color: #0e0e0e;
	border-right-width: 1px;
	border-right-style: solid;
	border-right-color: #0e0e0e;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
nav#breadcrumb.white ul li::before{
	border-top-color: #fff;
	border-right-color: #fff;
}
main nav#breadcrumb ul li:first-child{
	margin-left: 20px;
	padding-left: 0;
}
nav#breadcrumb ul li:first-child::before{
	content:none;
}
main nav#breadcrumb ul li a{
	color: #0e0e0e;
	display: inline-block;
	padding: 10px 4px;
	text-decoration: underline;
}
main nav#breadcrumb.white ul li a{
	color: #fff;
}
main nav#breadcrumb ul li:first-child a{
	padding-left: 0;
	display: inline-block;
}
main nav#breadcrumb ul li:first-child a img {
	position: relative;
	top: -1px;
	width: 14px;
}


/*-----------------------------------------------------------------------
* footer
*----------------------------------------------------------------------- */

footer{
	text-align: center;
	background: #2b94e4;
	color: #fff;
}

footer .foot-nav-logo{
	margin: 0;
	display: inline-block;
}
footer .foot-nav-logo a{
	display: inline-block;
	width:200px;
}
footer #foot-nav{
	padding-top: 48px;
	border-right: 16px solid #fff;
	border-left: 16px solid #fff;
}
footer #foot-nav .appealBox {
	width: 320px;
	vertical-align: middle;
	letter-spacing: -.4em;
	margin: 30px auto 0;
}
footer #foot-nav .appealBox .appealIcon {
	display: inline-block;
	width: 30%;
	margin: 0 4px;
    letter-spacing: normal;
}
footer nav{
	padding-left: 16px;
	padding-right: 16px;
}
footer nav#footersns{
}
footer nav#footernav{
}
footer nav#footernav div{
	border-top: 1px solid #6bb4ec;
	display: inline-block;
	text-align: left;
}
footer nav a{
	font-size: 12px;
	color: #fff;
	text-decoration: none;
}
footer nav a:hover strong,
footer nav a:hover{
	text-decoration: underline;
}
footer nav#footersns ul{
	padding: 32px 0;
}
footer nav#footernav ul{
	display: inline-block;
	vertical-align: top;
	margin: 24px 48px 36px 0;
	padding-left: 0;
}
footer nav#footernav ul:last-of-type{
	margin-right: 0;
}
footer nav#footernav ul li{
	display: block;
	text-align: left;
}
footer nav#footernav ul li a{
	padding: 2px 0;
	display: inline-block;
}
footer nav#footernav ul li a:hover .is-adjust_position {
	text-decoration: underline;
}
footer nav#footernav ul li:nth-of-type(1) a,
footer nav#footernav ul:last-of-type li a {
	font-size: 13px;
	font-weight: bold;
	padding: 7px 0;
	display: inline-block;
	line-height: 1.9;
}
footer nav#footersns li {
	margin: 4px;
}
footer nav#footersns li a {
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}
footer nav#footersns li a:hover{
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
footer nav#footersns li a img {
	width: 40px;
	padding: 2px;
}


/* 20191008 contact fix */
footer address .is-sp_br {
  display: none;
}
footer address{
	background: #eaf5fc;
	font-style: normal;
	display: inline-block;
	margin-bottom: 48px;
	padding: 30px 50px 30px 49px;
}
footer address h3,
footer address> p,
footer address a {
	display: inline-block;
	text-align: left;
  vertical-align: middle;
}
footer address h3 {
  margin: 0 32px 0 0;
  position: relative;
  top: -2px;
  width: 140px;
}
footer address> p {
  margin: 0 30px 0 0;
  color: #0e0e0e;
  font-size: 13px;
  font-weight: bold;
  letter-spacing: 0.05em;
  line-height: 1.5;
  text-shadow: 0 0 0 #0e0e0e;
}
footer address a {
  margin: 0;
  text-decoration: none;
}
footer address a p{
	margin-bottom: 0;
  font-size: 14px;
	line-height: 1;
	font-weight: bold;
	background-color: #2b94e4;
	background-size: 14px;
	text-indent: 0;
	height: auto;
	color: #fff;
	text-decoration: none;
	padding: 20px 83px 19px 84px;
  position: relative;
}
footer address a p::after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
  content: '';
  display: block;
  height: 12px;
  margin: -6px 22px 0 0;
  position: absolute;
  right: 0;
  transform: rotate(-45deg);
  top: 50%;
  width: 12px;
}



footer #footercorp{
	background: #fff;
	color: #0e0e0e;
	text-align: left;
	padding: 30px 16px;
	overflow: hidden;
}
footer #footercorp img{
	margin: 4px;
}
footer #footercorp small{
	font-family: "Helvetica Neue", Helvetica, Verdana, Arial, sans-serif;
	font-size: 11px;
	font-style: italic;
	letter-spacing: 0;
}
footer #footercorp p{
	display: inline-block;
	margin-bottom: 0;
}
footer #footercorp p:nth-of-type(1){
	float: left;
}
footer #footercorp p:nth-of-type(2){
	float: right;
}


/*-----------------------------------------------------------------------
* modal
*----------------------------------------------------------------------- */

.modal{
	display: none;
	position: fixed;
	top:0;
	left: 0;
	width: 100%;
	height: 100%;
	background: rgba(0,0,0,0.8);
	z-index: 999;
}
.modal .wrapper{
	background: #f0f5f9;
	max-width: 720px;
	font-weight: normal;
	font-size: 16px;
	-webkit-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-moz-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	-ms-box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	box-shadow: 0px 2px 4px rgba(0,0,0,0.3);
	max-height: 90%;
	overflow: auto;
	text-align: right;

	position: absolute;
	top: 50%;
	left: 50%;
	-webkit-transform: translate(-50%, -50%);
	transform: translate(-50%, -50%);
}
.modal .wrapper .content{
	background: #fff;
	padding: 32px;
	text-align: center;
	font-size: 14px;
	line-height: 1.8;
}
.modal .wrapper h4{
	text-align: center;
	font-size: 22px;
	margin: 24px 0 36px;
}
.modal .wrapper h5 {
	font-size: 16px;
	margin-bottom: 12px;
	color: #038de1;
}

.modal .wrapper p{
	margin: 0 0 2em;
}

.modalclose{
	display: inline-block;
	border-left: 3px solid #fff;
	padding: 20px 80px;
	font-size: 14px;
	font-weight: bold;
	color: #0e0e0e;
	text-decoration: none;
	position: relative;
	-webkit-transition: background-color 0.4s linear;
	-moz-transition: background-color 0.4s linear;
	transition: background-color 0.4s linear;
}
.modalclose:hover{
	background: #038de1;
	color: #fff;
	-webkit-opacity: 1;
	-moz-opacity: 1;
	opacity: 1;
}
.modalclose::before,
.modalclose::after{
	position: absolute;
	top: 0;
	left: 24px;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
	background: #666;
}
.modalclose::before{
	width: 14px;
	height: 2px;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}
.modalclose::after{
	width: 14px;
	height: 2px;
	-webkit-transform: rotate(-45deg);
	transform: rotate(-45deg);
}
.modalclose:hover::before,
.modalclose:hover::after{
	background: #fff;
}

label,
select,
option {
	cursor: pointer;
}

/*-----------------------------------------------------------------------
* qa
*----------------------------------------------------------------------- */
main article#qa{
	text-align: center;
	padding-top: 80px;
	padding-bottom: 80px;
	background: #fff;
}
main article#qa br.is-sp_br {
	display: none;
}
main article#qa dl{
	max-width: 1000px;
	margin: 0 auto 40px;
	font-weight: bold;
	text-align: left;
}
main article#qa dt{
	margin-top: 2px;
	font-size: 16px;
	color: #fff;
	background-color: #71baf6;
	padding: 22px 72px 21px;
	background-image: url(/img/common/icon-qa-q.png);
	background-repeat: no-repeat;
	background-position: 40px 25px;
	position: relative;
	cursor: pointer;
	-webkit-transition: -webkit-opacity 0.4s linear;
	-moz-transition: -moz-opacity 0.4s linear;
	transition: opacity 0.4s linear;
}
main article#qa dt:hover{
-webkit-opacity: 0.6;
-moz-opacity: 0.6;
opacity: 0.6;
}

main article#qa dt:nth-of-type(1){
	background-color: #2b94e4;
}
main article#qa dt:nth-of-type(2){
	background-color: #3d9de8;
}
main article#qa dt:nth-of-type(3){
	background-color: #4ea8ef;
}
main article#qa dt:nth-of-type(4){
	background-color: #5caff2;
}
main article#qa dd{
	font-size: 14px;
	background-color: #fff;
	padding: 20px 72px;
	background-image: url(/img/common/icon-qa-a.png);
	background-repeat: no-repeat;
	background-position: 40px 22px;
	display: none;
}
main article#qa dt::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}
main article#qa dt::after{
	right: 20px;
	width: 16px;
	height: 16px;
	background: url(/img/common/icon-qa-plus.png);
}
main article#qa dt.open::after{
	background: url(/img/common/icon-qa-minus.png);
}


/*-----------------------------------------------------------------------
* airportmap
*----------------------------------------------------------------------- */

main .airportmap{
	width: 800px;
	margin: 0 auto;
	padding-bottom: 50px;
	position: relative;
}
main .airportmap #lockerlink{
	display: inline-block;
	position: absolute;
	left: 30px;
	top: 30px;
	z-index: 1;
}
body#toppage main .airportmap #lockerlink{
	display: none;
}

main .airportmap ul.mapul{
	/* lazyload */
	/* background-image: url(/img/delivery/airportmap-bg.png); */
	background-position: left top;
	background-repeat: no-repeat;
	position: relative;
	width: 754px;
	height: 458px;
	margin: 0 auto;
}

main .airportmap ul.mapul li{
	text-align: left;
	display: block;
	position: absolute;
	background-repeat: no-repeat;
	background-position: left bottom;
	z-index: 1;
}

main .airportmap ul.mapul li a{
	display: block;
	padding: 12px 6px;
	box-sizing: content-box;
	position: absolute;
	z-index: 10;
}

main .airportmap ul.mapul li.cts{
	background-image: url(/img/delivery/airportmap-cts-line.png);
	width:134px;
	height: 82px;
	left: 596px;
	top: 100px;
}
main .airportmap ul.mapul li.nrt{
	background-image: url(/img/delivery/airportmap-nrt-line.png);
	width:216px;
	height: 42px;
	left: 494px;
	top: 324px;
}
main .airportmap ul.mapul li.hnd{
	background-image: url(/img/delivery/airportmap-hnd-line.png);
	width:208px;
	height: 86px;
	left: 470px;
	top: 361px;
}
main .airportmap ul.mapul li.ngo{
	background-image: url(/img/delivery/airportmap-ngo-line.png);
	width:157px;
	height: 86px;
	left: 359px;
	top: 363px;
}
main .airportmap ul.mapul li.kix{
	background-image: url(/img/delivery/airportmap-kix-line.png);
	width:147px;
	height: 190px;
	left: 264px;
	top: 184px;
}
main .airportmap ul.mapul li.fuk{
	background-image: url(/img/delivery/airportmap-fuk-line.png);
	width:160px;
	height: 71px;
	left: 0px;
	top: 291px;
}


main .airportmap ul.mapul li a {
	line-height: 1.0;
}
main .airportmap ul.mapul li.cts a{
	width:110px;
	height: 14px;
	right: -4px;
	bottom: 0;
}
main .airportmap ul.mapul li.nrt a{
	width:136px;
	height: 14px;
	right: 0;
	top: -15px;
}
main .airportmap ul.mapul li.hnd a{
	width:103px;
	height: 13px;
	right: 0;
	bottom: 2px;
}
main .airportmap ul.mapul li.ngo a{
	width:133px;
	height: 13px;
	right: 0;
	bottom: 19px;
}
main .airportmap ul.mapul li.kix a{
	width:129px;
	height: 33px;
	left: 4px;
	top: -1px;
}
main .airportmap ul.mapul li.kix a img,
main .airportmap ul.mapul li.ngo a img{
	display: block;
}
main .airportmap ul.mapul li.nrt a img:nth-of-type(1),
main .airportmap ul.mapul li.kix a img:nth-of-type(1),
main .airportmap ul.mapul li.ngo a img:nth-of-type(1),
main .airportmap ul.mapul li.fuk a img:nth-of-type(1) {
	margin-bottom: 8px;
}
main .airportmap ul.mapul li.fuk a{
	width:101px;
	height: 33px;
	left: -3px;
	top: -14px;
}


/*-----------------------------------------------------------------------
* planmap
*----------------------------------------------------------------------- */
main nav.tab.planmap{
	border-bottom: none;
	margin: 40px auto;
	width: 1000px;
	height: 363px;
	background: url(/img/plan/map-bg_pc.png) right top no-repeat;
	background-size: 657px auto;
	position: relative;
}
main nav.tab.planmap {
	text-align: left;
}
main nav.tab.planmap ul {
	display: inline-block;
	vertical-align: top;
}

main nav.tab.planmap ul#areaSelect {
	position: relative;
	width: 340px;
}
main nav.tab.planmap ul#areaSelect li {
	height: 51px;
	background-color: #fff;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(1),
main article#multi nav.tab.planmap ul#areaSelect li {
	width: 100%;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(n+2) {
	width: 50%;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(n+6) {
	position: absolute;
	right: 0;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(-n+8):not(:nth-of-type(5)) a,
main article#multi nav.tab.planmap ul#areaSelect li:not(:last-of-type) a {
	border-bottom: 3px solid #fff;
}
main article#single nav.tab.planmap ul#areaSelect li:not(:nth-of-type(1)):nth-of-type(-n+5) a {
	border-right: 1px solid #fff;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(n+6) a {
	border-left: 2px solid #fff;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(6) {
	top: 51px;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(7) {
	top: 102px;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(8) {
	top: 153px;
}
main article#single nav.tab.planmap ul#areaSelect li:nth-of-type(9) {
	top: 204px;
}
main nav.tab.planmap ul li{
	display: block;
	text-align: left;
	margin: 0;
	width: auto;
	vertical-align: middle;
}
main nav.tab.planmap ul li a{
	color: #0e0e0e;
	text-decoration: none;
	font-size: 13px;
	position: relative;
	letter-spacing: 0.02em;
	line-height: 50px;
	background-color: #e5eef4;
	display: block;
	font-weight: bold;
	text-align: left;
	height: 51px;
}
main nav.tab.planmap ul li a.selected,
main nav.tab.planmap ul li a:hover{
	background-color: #038de1;
	color: #fff;
}
main nav.tab.planmap ul li a,
main nav.tab.planmap ul li a.selected {
	padding: 0 12px 0 29px;
}
main nav.tab.planmap ul li a::before,
main nav.tab.planmap ul li a::after{
	position: absolute;
	top: 0;
	bottom: 0;
	margin: auto;
	content: "";
	vertical-align: middle;
}

main nav.tab.planmap ul li a::before{
	left: 9px;
	width: 9px;
	height: 2px;
	background: #0e0e0e;
}

main nav.tab.planmap ul li a::after{
	left: 11px;
	width: 6px;
	height: 6px;
	border-top-width: 2px;
	border-top-style: solid;
	border-top-color: #0e0e0e;
	border-right-width: 2px;
	border-right-style: solid;
	border-right-color: #0e0e0e;
	-webkit-transform: rotate(45deg);
	transform: rotate(45deg);
}

main nav.tab.planmap ul li a.selected::before,
main nav.tab.planmap ul li a:hover::before{
	background: #fff;
}
main nav.tab.planmap ul li a.selected::after,
main nav.tab.planmap ul li a:hover::after{
	border-top-color: #fff;
	border-right-color: #fff;
}
main nav.tab.planmap ul.overray{
	position: absolute;
	width: 657px;
	top:0;
	right:0;
}


/* clickable map ---------------------------------------------------------------------- */
main area {
	outline: none;
}
main nav.tab.planmap ul li a#hovHawaii.addHover,
main nav.tab.planmap ul li a#hovAmericaN.addHover,
main nav.tab.planmap ul li a#hovAmericaS.addHover,
main nav.tab.planmap ul li a#hovEurope.addHover,
main nav.tab.planmap ul li a#hovOceania.addHover,
main nav.tab.planmap ul li a#hovAsiaE.addHover,
main nav.tab.planmap ul li a#hovAsiaSE.addHover,
main nav.tab.planmap ul li a#hovAsiaCW.addHover,
main nav.tab.planmap ul li a#hovAfrica.addHover {
	background-color: #038de1;
	color: #fff;
	-webkit-opacity: 0.6;
	-moz-opacity: 0.6;
	opacity: 0.6;
}
main nav.tab.planmap ul li a#hovHawaii.addHover::before,
main nav.tab.planmap ul li a#hovAmericaN.addHover::before,
main nav.tab.planmap ul li a#hovAmericaS.addHover::before,
main nav.tab.planmap ul li a#hovEurope.addHover::before,
main nav.tab.planmap ul li a#hovOceania.addHover::before,
main nav.tab.planmap ul li a#hovAsiaE.addHover::before,
main nav.tab.planmap ul li a#hovAsiaSE.addHover::before,
main nav.tab.planmap ul li a#hovAsiaCW.addHover::before,
main nav.tab.planmap ul li a#hovAfrica.addHover::before {
	background-color: #fff
}
main nav.tab.planmap ul li a#hovHawaii.addHover::after,
main nav.tab.planmap ul li a#hovAmericaN.addHover::after,
main nav.tab.planmap ul li a#hovAmericaS.addHover::after,
main nav.tab.planmap ul li a#hovEurope.addHover::after,
main nav.tab.planmap ul li a#hovOceania.addHover::after,
main nav.tab.planmap ul li a#hovAsiaE.addHover::after,
main nav.tab.planmap ul li a#hovAsiaSE.addHover::after,
main nav.tab.planmap ul li a#hovAsiaCW.addHover::after,
main nav.tab.planmap ul li a#hovAfrica.addHover::after {
	border-color: #fff;
}
main nav.tab.planmap ul.overray::before {
	z-index: 1;
	position: absolute;
	top: 0;
	right: 0;
	content: '';
	display: block;
	width: 100%;
	height: 100%;
	background-image: none;
	background-size: 100%;
	opacity: 0.45;
}
main nav.tab.planmap ul.overray.hovHawaii::before {
	background-image: url(/img/plan/map-hawaii.png);
}
main nav.tab.planmap ul.overray.hovAmericaN::before {
	background-image: url(/img/plan/map-america-n.png);
}
main nav.tab.planmap ul.overray.hovAmericaS::before {
	background-image: url(/img/plan/map-america-s.png);
}
main nav.tab.planmap ul.overray.hovEurope::before {
	background-image: url(/img/plan/map-europe.png);
}
main nav.tab.planmap ul.overray.hovOceania::before {
	background-image: url(/img/plan/map-oceania.png);
}
main nav.tab.planmap ul.overray.hovAsiaE::before {
	background-image: url(/img/plan/map-asia-e.png);
}
main nav.tab.planmap ul.overray.hovAsiaSE::before {
	background-image: url(/img/plan/map-asia-se.png);
}
main nav.tab.planmap ul.overray.hovAsiaCW::before {
	background-image: url(/img/plan/map-asia-cw.png);
}
main nav.tab.planmap ul.overray.hovAfrica::before {
	background-image: url(/img/plan/map-africa.png);
}
main nav.tab.planmap ul.overray li img {
	position: relative;
	z-index: 10;
}


/*-----------------------------------------------------------------------
* responsive
*----------------------------------------------------------------------- */

@media screen and (max-width: 1179px) {
}

@media screen and (max-width: 1023px) {
}

@media screen and (max-width: 979px) {
}

@media screen and (max-width: 879px) {
}

@media screen and (min-width: 768px) { /*pc*/
}
@media screen and (max-width: 767px) { /*smartphone*/
}

@media screen and (max-width: 719px) {
}

@media screen and (max-width: 479px) {
}
@media screen and (max-width: 320px) {
}


/*-----------------------------------------------------------------------
* printer fix
*-----------------------------------------------------------------------*/
@media print {
	header,
	footer {
		display: none;
	}
}


/* header_login_name_20190618_matsuyama */
header nav#exnav ul li#mlogout{
	padding: 8px 10px;
	text-align: center;
	line-height: 13px;
	background-color: #444;
	height: 40px;
}
header nav#exnav ul li#mlogout span{
	font-size: 10px;
}


/* chatbot */
#chatbtn{
	position: fixed;
	right: 20px;
	bottom:20px;
	z-index: 9999;
	display: none;
}
#chatbtn a{
	display: block;
	width: 160px;
	height: auto;
}
#chatbtn-close {
	position:fixed;
	right: 10px;
    bottom: 10px;
	width: 32px;
	height: 32px;
	opacity: 1;
	z-index: 99999;
	background-color: #000;
	border-radius:100%;
	cursor: pointer;
}
#chatbtn-close:before, #chatbtn-close:after {
	position: absolute;
	left: 15px;
	top: 7px;
	content: ' ';
	height: 18px;
	width: 2px;
	background-color: #fff;
}
#chatbtn-close:before {
	transform: rotate(45deg);
}
#chatbtn-close:after {
	transform: rotate(-45deg);
}

#konnect-container{
	top:500px;
	opacity: 0;
}

.konnect-chat-initializer-content-text{
	display: none !important;
	font-family: -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Yu Gothic", YuGothic, Verdana, Meiryo, "M+ 1p", sans-serif !important;
	font-weight: bold !important;
}
.konnect-chat-initializer-content-icon img{
	height: auto !important;
	width: 120px !important;
	border-radius:0% !important;
}


/* 20200114 pocketalk only rental */
footer nav#footernav ul li a .is-adjust_position {
  display: inline-block;
  text-indent: -0.2em;
}