@charset "UTF-8";
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/*　SearchForm　*/
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/* iOSでのデフォルトスタイルをリセット */
input[type="submit"],
input[type="button"] {
  border-radius: 0;
  -webkit-box-sizing: content-box;
  -webkit-appearance: button;
  appearance: button;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
input[type="submit"]::-webkit-search-decoration,
input[type="button"]::-webkit-search-decoration {
  display: none;
}
input[type="submit"]::focus,
input[type="button"]::focus {
  outline-offset: -2px;
}
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;
}
#form-in-area{
  padding: 4vw 0 2vw;
  background-color: #fff;
}
#tabs-list{
  display: -webkit-flex;
  display: flex;
  -webkit-justify-content: space-around;
  justify-content: space-around;
  width: 100%;
  margin: auto;
  list-style-type: none;
}
#tabs-list li{
  -webkit-flex-basis: 100%;
  flex-basis: 100%;
}
#tabs-list li > input{
  display: none;
}
#tabs-list li > .panel-label{
  display: block;
  width:96%;
  font-size: 5vw;
  font-weight: 600;
  margin: auto;
  padding: 2vw 0;
  color: #858585;
  background-color: #e6e6e6;
  border: 1px solid #fff;
  position: relative;
}
#tabs-list li > input[type="radio"]:checked + .panel-label{
  background-color: #4277e6;
  color: #fff;
  border: 1px solid #fff;
}
#tabs-list li > input[type="radio"]:checked + .panel-label::after{
  position: absolute;
  bottom: -33%;
  left: 50%;
  transform: translateX(-50%);
  -webkit-transform: translateX(-50%);
  -ms-transform: translateX(-50%);
  font-family: "Font Awesome 5 Free";
  content: "\f0d7";
  color: #4277e6;
  font-size: 8vw;
}
#frm{
  margin: 1vh auto;
}
.form-section-text{
  overflow: hidden;
  text-align: left;
  font-size: 3vw;
  font-weight: 700;
  width: 92vw;
  margin: auto;
}
.form-section-text > span {
  position: relative;
  display: inline-block;
  margin: 0 1vw;
  padding: 0 1vw;
  text-align: left;
  font-size: 3.5vw;
  font-weight: 600;
  color: #214ca1;
}
/*.form-section-text > span::before,*/
.form-section-text > span::after {
  position: absolute;
  top: 50%;
  content: '';
  width: 100vw;
  height: 1px;
  background-color: #214ca1;
}
.form-section-text > span::before {
  right: 100%;
}
.form-section-text > span::after {
  left: 100%;
}

.form-go-next{}
.form-go-back{}
.form-flight-area{
  vertical-align: middle;
  display: inline-block;
  list-style-type: none;
  width: 79%;
}
.form-flight-area li{
  margin: 2vw auto;
  position: relative;
}
.form-flight-area li > span{
  vertical-align: middle;
  display: inline-block;
  width: 25%;
  font-size: 5vw;
  margin: auto;
}
.select-area{
  vertical-align: middle;
  display: inline-block;
  width: 70%;
  margin: auto auto auto 4%;
  text-align: left;
}
.select-area > select{
  font-size: 6vw;
  padding: 2vw ;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  width: 92%;
  background-color: #fff;
  box-shadow:0px 2px 4px -2px #f3f3f3 inset;
  border: 1px solid #898989;
  position: relative;
  z-index: 5;
}
.form-flight-area li::after{
  position: absolute;
  z-index: 7;
  top: 2.5vw;
  right: 1.5vw;
  font-size: 6vw;
  font-weight: 600;
  font-family: "Font Awesome 5 Free";
  content: "\f0dc";
  color: #204ca0;
}

.form-reverse-area{
  vertical-align: middle;
  display: inline-block;
  width: 20%;
}
.form-reverse-area > a{
  display: block;
  width:74%;
  margin: auto auto auto 8%;
  padding: 4vw 0;
  background-color: #fff;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  border: 1px solid #898989;
}
.form-reverse-area > a > i{
  font-size: 6vw;
  -moz-transform: rotate(90deg);
  -webkit-transform: rotate(90deg);
  -o-transform: rotate(90deg);
  -ms-transform: rotate(90deg);
  transform: rotate(90deg);
}
.form-flight-day{

}
.form-flight-day ul,
.form-flight-day2 ul{
  list-style-type: none;
}
.form-flight-day ul li{

}
.form-flight-day ul li > span{
  vertical-align: middle;
  display: inline-block;
  width: 19%;
  font-size: 5vw;
  text-align:left;
  margin: auto;
}
.form-flight-day2 ul li > span{
  vertical-align: middle;
  display: inline-block;
  width: 19%;
  font-size: 5vw;
  text-align:left;
  margin: auto;
}
.input-text-area{
  vertical-align: middle;
  display: inline-block;
  width: 71%;
  margin: auto;
  text-align: left;
  position: relative;
}
.input-text-area > a {
  display: block;
  position: absolute;
  top: 50%;
  right: 12%;
  transform: translateY(-50%);
  -webkit-transform: translateY(-50%);
  -ms-transform: translateY(-50%);
  font-size: 6vw;
  z-index: 10;
}
.input-text-area > input[type="text"]{
  font-size: 6vw;
  padding: 2vw ;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  width: 92%;
  box-shadow:0px 2px 4px -2px #f3f3f3 inset;
  border: 1px solid #898989;
  position: relative;
  z-index: 5;
}
#form-search-submit{
  margin: 2vh auto auto auto;
}
#form-search-submit input[type=submit]{
  -webkit-appearance: none;
  border:none;
  background:#ff7b02;
  box-shadow:0px 2px 0px 1px #d76b08;
  -moz-box-shadow:0px 2px 0px 1px #d76b08;
  -webkit-box-shadow:0px 2px 0px 1px #d76b08;
  color:#fff;
  font-size: 6vw;
  font-weight: 600;
  padding: 1.4vh 0;
  width:82%;
  cursor: pointer;
  border-radius: 2px;
  -moz-border-radius: 2px;
  -webkit-border-radius: 2px;
  position: relative;
  top:0px;
}

/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/*　Calendar　*/
/*^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^*/
/*
#ui-datepicker-div{
  background-color: #fff!important;
  width: 100%!important;
  position: fixed !important;
  top: 0 !important;
  left: 0 !important;
  z-index: 900 !important;
  height: 100vh !important;
  overflow: auto !important;
  -webkit-overflow-scrolling: touch !important;
  overflow-scrolling: touch !important;
  display:none;
}
#ui-datepicker-div > * {
  -webkit-transform: translateZ(0px);
}
.ui-datepicker-group-first{
  margin: 12vw auto;
}
.ui-datepicker-group-last{
  margin: auto auto 36vw auto;
}
.ui-datepicker-group-middle{
  margin: auto auto 12vw auto;
}
.ui-datepicker-prev{
  display: none;
}
.ui-datepicker-next{
  display: none;
}
.ui-datepicker-title{
  font-size: 7vw;
  margin: auto auto 5vw auto;
}
.ui-datepicker-year{
  font-size: 7vw;
}
.ui-datepicker-month{
  padding: 0 0 0 2vw;
  font-size: 7vw;
}
.dtp-calendar-title{
  position: fixed;
  top: 0;
  left: 0;
  z-index: 950;
  text-align: left;
  padding: 1vh 0 1vh 2vh;
  font-size: 4vw;
  font-weight: 600;
  color: #fff;
  width: 100%;
  background-color: #204ca0;
  box-shadow:0px 0px 6px 0px #656565;
}
.ui-datepicker-buttonpane{
  position: fixed;
  bottom: 0;
  left: 0;
  z-index: 950;
  text-align: left;
  padding: 1vh 0 1vh 2vh;
  font-size: 4vw;
  font-weight: 600;
  color: #fff;
  width: 100%;
  background-color: #204ca0;
  box-shadow:0px 0px 6px 0px #656565;
}
.ui-datepicker-calendar{
  width: 100%;
}
.ui-datepicker-calendar th{
  font-size: 6vw;
  font-weight: 500;
  border-bottom: 1px solid #d6d6d6;
  background-color: #fff;
}
.ui-datepicker-calendar td{
  background-color: #fff;
}
.ui-state-active{
  background-color: #fff000;
}
.ui-state-default{
  font-size: 6vw;
  font-weight: 500;
  display: block;
  color: #222222;
  padding: 2vw 0;
  text-decoration: none;
  border-radius: 4px;
  -moz-border-radius: 4px;
  -webkit-border-radius: 4px;
}
.ui-state-highlight{
  background-color: #fef78d;
}
.ui-datepicker-current-day > a{
  background-color: #fef124 !important;
}
span.ui-state-default{
  color: #e1e1e1;
}
a.ui-state-default{
  color: #222222;
}
.class-saturday > a{
  color: #3976fb;
}
.class-sunday > a{
  color: #ff0000;
}
.ui-datepicker-current{
  display: none;
}
.ui-datepicker-close{
  border: none;
  background-color: #fff;
  font-size: 4vw;
  width: 90%;
  padding: 1vh 0;
}

.ui-datepicker-calendar td a[data-lowestfare]::after {
  content: attr(data-lowestfare);
  display: block;
  padding: 0;
  font-size: 3vw;
  font-weight: 400;
  color: #666;
  letter-spacing:0;
}
*/

/* 料金内訳 */
.break-down {
  text-align: right !important;
  text-align: left;
  display: inline-block;
  width: 35vw;
  margin-top:1vw;
  margin-bottom: 5px;
  /*background-color: red;*/
}

.break-down.right {
  text-align: right;
}

.break-down-title{
  position: relative;
  /*padding-left: 35px;*/
  font-size: 1em;
  cursor: pointer;
}
.break-down-title > span {
  margin-left: 20px;
}

.break-down-title:before {
  content: "";
  position: absolute;
  left: 20vw;

  transition: all 0.2s ease-in-out;
  /*   要素の動きを指定 */

  display: block;
  width: 5px;
  height: 5px;
  border-top: solid 2px #000;
  border-right: solid 2px #000;

  -webkit-transform: rotate(135deg);
  transform: rotate(135deg);
  /* transform: rotateで要素の角度を指定 */
}

.break-down-title.right:before {
  left: 110px;
}

.break-down-title.open:before {
  -webkit-transform: rotate(-45deg);
  transform: rotate(-45deg);
  top: 0.5vw;
  /*   .openクラスがついた時の要素の角度を指定 */
}
.detail-fee{
  text-align: left;
  margin-bottom:5px;
}
