@charset "UTF-8";
@import url("../global.css");

/*--------------------------------------------*/
/*--　ヘッダー　--*/
#header .wrap .planesearch-btn a p {
  margin: 0;
}
#header .wrap .rentalcar-btn a p {
  margin: 0;
}

/*--------------------------------------------*/
/*--　contents　--*/
#contents {
  padding-top: 10px;
}

/*--------------------------------------------*/
/*--　検索フォーム　--*/
#form-box-area{
  position: relative;
  width:970px;
  text-align:left;
  line-height:1;
  margin:auto auto 10px auto;
  background-image:url(/img/pc2/route/airport/main_back_img01.png);
  background-repeat: no-repeat;
  background-position: center 80%;
  background-size: cover;
  overflow: hidden;
}
#form-box-area::before{
  content: '';
  background: inherit;
  /* -webkit-filter: blur(2px); */
  /* -moz-filter: blur(2px); */
  /* -o-filter: blur(2px); */
  /* -ms-filter: blur(2px); */
  /* filter: blur(2px); */
  position: absolute;
  top: -5px;
  left: -5px;
  right: -5px;
  bottom: -5px;
  z-index: 1;
}

/* form-box-area の背景画像に統合されたため、このIDは現在未使用 */
/* #airport_img-h2 > img{
  position: absolute;
  z-index: 4;
  bottom: 10px;
  right: 10px;
} */

#form-in-area{
  position: relative;
  z-index:10;
  vertical-align: top;
  display:inline-block;
  text-align:left;
  background-color: rgba(0,0,0,0.6);
  margin:20px;
  padding:20px;
  border-radius: 2px;
}
#form-in-area select {
  -moz-appearance: none;
  -webkit-appearance: none;
  appearance: none;
  border-radius: 0;
  border: 0;
  margin: 0;
  padding: 0;
  background: none transparent;
  vertical-align: middle;
  font-size: inherit;
  color: inherit;
  box-sizing: content-box;
  text-indent: .01px;
  text-overflow: "";
  background-color:#fff;
  border:1px solid #dddddd;
  border-radius: 4px;
  font-size:22px;
}
/*--------------------------------------------*/
/*--　往復、片道、周遊　--*/
#radio-choose{
}
#radio-choose ul{
margin: auto auto 10px auto;
font-size: 20px;
}
#radio-choose ul li{
  vertical-align: middle;
  display: inline-block;
  text-align: center;
  margin: auto;
}
#radio-choose ul li > label{
  vertical-align: middle;
  display:inline-block;
}
#radio-choose ul li.display-none{
  display: none;
  height:0;
}
.radio-input{
  display: none;
}
.radio-input + label{
  position:relative;
  color: #fff;
  background-color: #acb0b9;
  border-radius: 4px;
  padding: 10px 35px;
  text-align: right;
  cursor: pointer;
  margin-right: 25px;
  -webkit-transition: 0.4s ;
  transition: 0.4s ;
}
.radio-input + label:hover{
  background-color: #214ca1;
  -webkit-transition: 0.4s ;
  transition: 0.4s ;
}
.radio-input + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 5px;
  width: 15px;
  height: 15px;
  border: 1px solid #8e8e8e;
  background-color: rgba(255,255,255,0.6);
  border-radius: 50%;
}
.radio-input:checked + label{
  background-color: #214ca1;
  font-weight: 600;
}
.radio-input:checked + label::before{
  content: "";
  display: block;
  position: absolute;
  top: 10px;
  left: 5px;
  width: 15px;
  height: 15px;
  border: 1px solid #fff;
  background-color: #eb0f5d;
  border-radius: 50%;
}

/*--------------------------------------------*/
/*--　空港検索　--*/
.airport1{
  font-size:22px;
}
.airport2{
  font-size:22px;
}
ul.form-flight-area{
  text-align:left;
}
ul.form-flight-area li{
  text-align: left;
  margin:10px auto;
}
ul.form-flight-area li:nth-child(2){
  margin:10px auto;
}
ul.form-flight-area li > span{
  margin: auto;
  text-align: left;
  width: 100px;
  padding: 10px;
  vertical-align: middle;
  display:inline-block;
  color: #fff;
  background-color: #214ca1;
  border-radius: 4px 0 0 4px / 4px 0 0 4px;
}
.select-area{
  vertical-align: middle;
  display: inline-block;
  position: relative;

}
.select-area > i{
  position: absolute;
  right: 3%;
  top: 24%;
  font-size: 24px;
  color: #0f317b;
}
.departure-airport{}
.departure-airport > i{
  /*transform: rotate(45deg);*/
}
.arrival-airport{}
.arrival-airport > i{
  /*transform: rotate(45deg);*/
}
#form-in-area .select-area > select{
  padding: 0 10px;
  background-color:#fff;
  border:1px solid #dddddd;
  border-radius: 0 4px 4px 0 / 0 4px 4px 0;
  font-size:26px;
  width:220px;
  height: 41px;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  text-indent: .01px;
  text-overflow: "";
}
#form-in-area .select-area > select::-ms-expand {
  display: none;
}
.select-area > select:hover{
  box-shadow:0px 0px 3px 1px #2676fa;
  -moz-box-shadow:0px 0px 3px 1px #2676fa;
  -webkit-box-shadow:0px 0px 3px 1px #2676fa;
  -webkit-transition: 0.4s ;
  transition: 0.4s ;
}
.input-text-area > input:hover{
  box-shadow:0px 0px 3px 1px #2676fa;
  -moz-box-shadow:0px 0px 3px 1px #2676fa;
  -webkit-box-shadow:0px 0px 3px 1px #2676fa;
  -webkit-transition: 0.4s ;
  transition: 0.4s ;
}
/*--------------------------------------------*/
/*逆区間*/
.form-reverse-area{
  display:none;
}

/*--------------------------------------------*/
/*--　日付検索　--*/
.form-flight-day{
  font-size:22px;
/*
  vertical-align: middle;
  display:inline-block;
*/
}
#frm div:nth-child(4){
  margin: auto 0;
}
.form-flight-day ul{
}
.form-flight-day ul li{
  vertical-align: middle;
  display:inline-block;
  margin:3px auto;
}
.form-flight-day ul li:nth-child(2){
  /*margin:10px auto 10px 40px;*/
}
.input-text-area{
  vertical-align: middle;
  display:inline-block;
  position: relative;
}
.form-flight-day ul li > span{
  margin: auto;
  width: 100px;
  padding: 10px ;
  vertical-align: middle;
  display:inline-block;
  color: #fff;
  background-color: #214ca1;
  border-radius: 4px 0 0 4px / 4px 0 0 4px ;
}
.input-text-area > i{
  position: absolute;
  right:3%;
  top:24%;
  font-size:1.4rem;
  color:#0f317b;
}
.input-text-area > input[type=text]{
  padding: 6px 10px;
  background-color:#fff;
  border:1px solid #dddddd;
  border-radius: 0 4px 4px 0 / 0 4px 4px 0;
  font-size:22px;
  line-height:1.4;
  width:220px;
}
/*--------------------------------------------*/
/*--　決定　--*/
#form-search-submit{
  text-align:center;
  margin: 10px 0 auto auto;
}
#form-search-submit input[type=submit]{
-webkit-appearance: none;
  border:none;
  background:#ff6500;
  box-shadow:0px 2px 0px 1px #e05901;
  -moz-box-shadow:0px 2px 0px 1px #e05901;
  -webkit-box-shadow:0px 2px 0px 1px #e05901;
  color:#fff;
  text-align:center;
  font-size:24px;
  line-height:1.4;
  padding: 10px 0;
  width:80%;
  cursor: pointer;
  border-radius: 6px;
  position: relative;
  top:0px;
}
#form-search-submit input[type=submit]:hover{
  background:#e05901;
  box-shadow:0px 2px 0px 1px #bc510b;
  -moz-box-shadow:0px 2px 0px 1px #bc510b;
  -webkit-box-shadow:0px 2px 0px 1px #bc510b;
}
#form-search-submit input[type=submit]:active{
  background-color: #e05901;
  box-shadow:0px 0px 0px 0px #bc510b;
  -moz-box-shadow:0px 0px 0px 0px #bc510b;
  -webkit-box-shadow:0px 0px 0px 0px #bc510b;
  position: relative;
  top:2px;
  -webkit-transition: 0s ;
  transition: 0s ;
}

/*--------------------------------------------*/
/*--　記事コンテンツ　--*/
#app-airport-contents{
  margin: 20px auto;
}
.app-air-con-in{
  margin: 10px auto 20px auto;
  padding: 10px;
  line-height: 1.8;
  text-align: left;
  background-color: #fcfcfc;
}
.app-air-con-in > h2{
  font-size: 18px;
  font-weight: 500;
  color: #fff;
  margin: auto auto 20px auto;
  border-bottom: 1px solid;
  background-color: #204a9e;
  box-shadow: 0px 0px 0px 5px #204a9e;
}
.app-air-con-in > h3{
  font-size: 16px;
  font-weight: 500;
  color: #204a9e;
  margin: 20px auto 10px auto;
  padding: 4px 5px;
  background-color: #e3e9f6;
}
.app-air-con-in > h3::before{
  font-family: "Font Awesome 5 Free";
  content: "\f518";
  font-weight: 600;
  padding: 0 5px;
}
.app-air-con-in > h4{
  font-weight: 700;
  margin: 10px auto 5px auto;
  border-bottom: 1px solid #204a9e;
}
.app-air-con-in > p{
  margin: auto auto 10px auto;
}
.app-air-con-in > ul{
/*
  list-style-type: disc;
  list-style-position: outside;
  margin: auto auto auto 20px;
*/
}
.app-air-con-in > ul li::before{
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  font-weight: 600;
  font-size: 8px;
  padding: 0 5px;
  vertical-align: middle;
  display: inline-block;
}
.app-air-con-in table th,
.app-air-con-in table td {
    line-height: 1.5;
    border: solid 1px #939393;
    padding: 5px;
}
.app-air-con-in table th {
    width: 25%;
}

/*--------------------------------------------*/
/*--　コンテンツ　--*/
.app-airport{
  margin: 20px auto;
  text-align:left;
}
.app-airport-map{
  vertical-align: top;
  display: inline-block;
  width: 48%;
  text-align:left;
  margin: auto 1% auto auto;
}
.app-airport-map iframe{
  height: 500px !important;
}
.app-airport-access{
  vertical-align: top;
  display: inline-block;
  width: 48%;
  text-align:left;
  margin: auto auto auto 1%;
}
.app-airport-h2{
  font-size: 20px;
  color: #fff;
  padding: 5px;
  background-color: #214ca1;
}
.app-airport-h3{
  font-size: 15px;
  margin: 10px auto;
  padding: 5px 10px;
  background-color: #f0f1f4;
}
.app-airport-h4{
  font-size: 13px;
  font-weight: 600;
  color: #214ca1;
  margin: 10px auto;
}
.app-airport-h5{
  font-size: 13px;
  font-weight: 600;
  margin: auto auto 10px auto;
}
.app-airport-h5::before{
  font-family: "Font Awesome 5 Free";
  content: "\f068";
  font-weight: 600;
  padding: 0 10px;
}
.app-airport-h5::after{
  font-family: "Font Awesome 5 Free";
  content: "\f068";
  font-weight: 600;
  padding: 0 10px;
}
.app-airport-p{
  font-size: 18px;
  padding: 10px 0;
}
.app-airport-text{
  font-size: 13px;
  margin: auto;
}
.app-airport-ul{
  font-size: 12px;
  color: #4c4c4c;
  margin: auto auto 20px auto;
}
.app-airport-ul li{
  border-bottom:1px dotted #4c4c4c;
  margin: auto auto 10px auto;
  padding: 0 0 5px 0;
}
.app-airport-ul li > span{
  position: relative;
  list-style: disc outside;
  vertical-align: top;
  display: inline-block;
  width: 24%;
  padding: 0 3% 0 3%;
}
.app-airport-ul li > span::before{
  position: absolute;
  left: 0;
  top: 3px;
  font-family: "Font Awesome 5 Free";
  content: "\f111";
  font-weight: 600;
  font-size: 6px;
  color: #214ca1;
}
.app-airport-ul li > span::after{
  position: absolute;
  right: 0;
  top:0;
  font-family: "Font Awesome 5 Free";
  content: "\f30b";
  font-weight: 600;
  color: #214ca1;
}
.app-airport-ul li > strong{
  vertical-align: top;
  display: inline-block;
  width: 67%;
  margin: auto auto auto 3%;
}
.app-airport-ul-caution{
  font-size: 10px;
  color: #ff0000;
}
.icon-plane::before{
  font-family: "Font Awesome 5 Free";
  content: "\f072";
  font-weight: 600;
  -moz-transform: rotate(-45deg);
  -webkit-transform: rotate(-45deg);
  -o-transform: rotate(-45deg);
  -ms-transform: rotate(-45deg);
  transform: rotate(-45deg);
  padding: 0 5px 0 0;
}
.icon-ship::before{
  font-family: "Font Awesome 5 Free";
  content: "\f21a";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-train::before{
  font-family: "Font Awesome 5 Free";
  content: "\f238";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-metro::before{
  font-family: "Font Awesome 5 Free";
  content: "\f238";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-bus::before{
  font-family: "Font Awesome 5 Free";
  content: "\f207";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-taxi::before{
  font-family: "Font Awesome 5 Free";
  content: "\f1ba";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-car::before{
  font-family: "Font Awesome 5 Free";
  content: "\f1b9";
  font-weight: 600;
  padding: 0 5px 0 0;
}
.icon-map-marker-alt::before{
  font-family: "Font Awesome 5 Free";
  content: "\f3c5";
  font-weight: 600;
  padding: 0 5px 0 0;
}

.airportlist{
  margin: 20px auto 40px auto;
}
.airportlist > a{
  font-size: 16px;
  color: #fff;
  text-decoration: none;
  padding: 5px 40px;
  background-color: #ff9d00;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}
.airportlist > a:hover{
  background-color: #9e9e9e;
}


/*--------------------------------------------*/
/*--　口コミ　--*/
#reviews-contents{
  margin: 40px auto;
}
#reviews-contents > h1{
  text-align: left;
  font-size: 20px;
  padding: 5px;
  border-bottom: 3px solid #214ca1;
}
#reviews-contents > h1::before{
  display: inline-block;
  font-family: "Font Awesome 5 Free";
  content: "\f4ad";
  font-weight: 600;
  color: #214ca1;
  margin: auto 10px auto auto;
  padding: 0 10px 0 0;
  -moz-transform: rotateY(180deg);
  -webkit-transform: rotateY(180deg);
  -o-transform: rotateY(180deg);
  -ms-transform: rotateY(180deg);
  transform: rotateY(180deg);
}
#reviews-contents > h1 > strong{
  vertical-align: middle;
  display: inline-block;
  margin: auto auto auto 10px;
  padding: 0 0 0 10px;
  border-left: 2px solid #222222;
}

#review-items-area{
  text-align: left;
  padding: 5px 0;
  border-bottom: 3px solid #537bc8;
}
.review-items-h2{
  font-size: 20px;
}
.review-items-span{
  padding: 0 5px;
  font-size: 14px;
}
.review-items-span > i:nth-child(2){
  padding: 0 3px 0 0;
}
.review-items-span > i:nth-child(3){
  padding: 0 0 0 3px;
  font-size: 14px;
}
.review-items-span > i{
  font-style: normal;
  font-size: 20px;
}
.review-items-span > span{
  font-size: 14px;
}

.reviews-area{
  text-align: left;
  margin: -1px auto auto auto;
  padding:15px 0;
  border-top: 1px solid #e7e7e7;
  border-bottom: 1px solid #e7e7e7;
}
.rating-star{
  vertical-align: middle;
  display: inline-block;
  width:  20%;
  margin: auto;
  text-align: left;
}
.rating-star > span{
  display: block;
}
.rating-star > strong{
  display: inline-block;
}
.rating-star > strong::before{
  font-family: "Font Awesome 5 Free";
  content: "\f005\f005\f005\f005\f005";
  font-size: 24px;
  font-weight: 600;
  color: #ccc;
  letter-spacing: 0.3em;
}
.rating-star .rate0{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 0%, #ccc 0%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 0%, #ccc 0%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate5{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 7.8%, #ccc 7.8%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 7.8%, #ccc 7.8%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate10{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 20%, #ccc 20%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 20%, #ccc 20%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate15{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 27.5%, #ccc 27.5%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 27.5%, #ccc 27.5%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate20{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 40%, #ccc 40%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 40%, #ccc 40%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate25{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 47.8%, #ccc 47.8%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 47.8%, #ccc 47.8%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate30{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 60%, #ccc  60%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 60%, #ccc 60%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate35{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 67.5%, #ccc 67.5%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 67.5%, #ccc 67.5%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate40{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 80%, #ccc 80%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 80%, #ccc 80%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate45{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 87.8%, #ccc 87.8%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 87.8%, #ccc 87.8%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.rating-star .rate50{
background: linear-gradient(to right, #ffe00f 0%, #ffe00f 100%, #ccc 100%);background: -webkit-linear-gradient(to right, #ffe00f 0%, #ffe00f 100%, #ccc 100%);
-webkit-text-fill-color: transparent;-webkit-background-clip: text;
}
.reviews-title{
  vertical-align: middle;
  display: inline-block;
  font-size:  18px;
  text-align: left;
  width:  30%;
  margin: auto;
  padding: 20px 0;
  background-repeat: no-repeat;
  background-position: center right;
  background-size: 22%;
}
.sex-woman{
  background-image: url(/img/pc2/route/airport/woman.svg);
}
.sex-man{
  background-image: url(/img/pc2/route/airport/man.svg);
}
.reviews-area > p{
  position: relative;
  font-size: 14px;
  line-height: 1.8;
  padding: 10px 0;
  z-index: 5;
}
.reviews-target{
  height: 120px;
  margin: 0 auto;
  padding: 10px 0 0 0 !important;
  overflow: hidden;
}
.reviews-slide{
  position: relative;
  display: block;
  box-shadow: 0px -8px 8px 0px #fff;
  z-index: 10;
}
.reviews-slide > span{
  font-style: normal;
  color: #5f83f2;
  padding: 5px 0;
}
.reviews-slide > span:hover {
  cursor: pointer;
}
.reviews-img{
  margin: 20px auto;
}
.reviews-list{
  display: box;
  display: -webkit-box;
  display: -moz-box;
}
.reviews-list li{
  vertical-align: top;
  display: inline-block;
  width: 130px;
  height: 130px;
  overflow: hidden;
  background-color: #f6f6f6;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
  border: 1px solid #fff;
}
.reviews-list li > img{
  display: block;
  cursor: pointer;
}
.reviews-overlay{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 100;
  display: none;
  width: 100%;
  height:100%;
  text-align: center;
  background: rgba(0,0,0,0.7);
}
.reviews-overlay > div{
  position: fixed;
  width: 100%;
  height:100%;
  display: -webkit-flex;
  display: flex;
  -webkit-align-items: center;
  align-items: center;
  -webkit-justify-content: center;
  justify-content: center;
}
.reviews-bigimg{
  display: block;
  margin: auto;
  padding: 10px;
  width: 50%;
  background-color: #222222;
}
.reviews-bigimg > img{
  margin: auto;
}
.reviews-close{
  display: block;
  text-align:right;
  font-size: 14px;
  sposition: relative;
  top: 10px;
  right: 10px;
}
.reviews-close::after{
  display: block;
  cursor: pointer;
  color: #fff;
  font-family: "Font Awesome 5 Free";
  content: "\f00d";
  font-weight: 600;
}

/*--------------------------------------------*/
/*--　top星　--*/
#kutikomi-top{
  position: absolute;
  z-index: 50;
  right: 10px;
  bottom: 210px;
  display: block;
  text-align: right;
  margin: auto 10px auto auto;
}
#kutikomi-top > strong::before{
  font-size: 18px;
}
#kutikomi-top > span{
  font-size: 20px;
  color: #222222;
  padding: 0 0 0 5px;
  vertical-align: middle;
  display: inline-block;
}
