﻿@charset "UTF-8";
@import url("//fonts.googleapis.com/css?family=Noto+Sans&display=swap");
@import url(//fonts.googleapis.com/earlyaccess/notosansjapanese.css);
a, a:visited {
  color: #5ea6f5;
  text-decoration: none;
}
a:hover, a:active, a:visited:hover, a:visited:active {
  color: #fa2e09;
  text-decoration: none;
}
a:focus, a:visited:focus {
  text-decoration: none;
}

input::-ms-clear {
  visibility: hidden;
}

body {
  background-color: transparent;
  margin: 0;
}

.modal .modal-body p {
  font-size: 14px;
  line-height: 18px;
}
.modal .modal-footer .modal-btn-color {
  background: #b5b5b5;
  color: #000000;
}
.modal .modal-footer .modal-btn-color:hover {
  background: #b5b5b5;
}
.modal .close {
  opacity: 0.5;
}
.modal .close:hover, .modal .close:focus {
  opacity: 0.75;
}
.modal a.btn {
  word-wrap: break-word;
  white-space: initial;
  overflow-wrap: break-word;
}

.is-error {
  background-color: #ffc0cb !important;
  border-color: #f00 !important;
  border-width: 1px;
  border-style: solid;
  border-radius: 5px !important;
}

.panel-notice {
  margin-top: 5px;
  margin-bottom: 10px;
  padding: 10px 10px;
  color: #a94442;
  border-color: #ebccd1;
  background-color: #f2dede;
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  display: flex;
}
.panel-notice.panel-none {
  display: none;
}
.panel-notice .notice-icon {
  margin-right: 5px;
}
@media screen and (max-width: 600px) {
  .panel-notice .panel-heading {
    font-size: 0.8em;
    padding: 2px;
  }
  .panel-notice .panel-body {
    font-size: 0.8em;
    padding: 2px;
  }
}

html, body, h1, h2, h3, h4, h5, h6, p, a, ul, ol, li, div {
  font-family: "Noto Sans", -apple-system, BlinkMacSystemFont, "Helvetica Neue", "Segoe UI", sans-serif;
}

*,
*::before,
*::after {
  box-sizing: border-box;
}

.container {
  padding-right: 0px;
  padding-left: 0px;
  width: 100%;
  max-width: 1200px;
  margin: 0 auto;
}

#search-area {
  margin: 0 auto;
  /* ホテル・出発地・到着地 */
}
#search-area input {
  cursor: pointer;
}
#search-area .select-box {
  margin: 0px;
}
#search-area .grid-inner {
  height: 100%;
  width: 100%;
  padding-top: 2px;
  padding-bottom: 2px;
}
#search-area .grid-item {
  float: left;
}
#search-area .form-group {
  line-height: 1.7;
  margin-bottom: 0;
  padding: 2px 0px 2px 0px;
}
#search-area .form-group label {
  width: 100%;
  margin: 0px;
  font-weight: 400;
  white-space: nowrap;
  overflow: hidden;
  text-overflow: ellipsis;
  vertical-align: top;
}
#search-area .form-control {
  font-weight: 400;
}
@media screen and (min-width: 600px) {
  #search-area .form-control {
    width: 100%;
  }
}
#search-area .l-grid-group:after {
  display: table;
  clear: both;
  content: "";
}
#search-area .l-triptype {
  width: 100%;
}
#search-area .l-hotel, #search-area .l-origin, #search-area .l-destination, #search-area .l-promotion-code {
  width: 100%;
}
@media screen and (min-width: 600px) {
  #search-area .l-hotel, #search-area .l-origin, #search-area .l-destination, #search-area .l-promotion-code {
    width: 50%;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-hotel, #search-area .l-origin, #search-area .l-destination, #search-area .l-promotion-code {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-hotel, #search-area .l-origin, #search-area .l-destination, #search-area .l-promotion-code {
    width: 25%;
  }
}
#search-area .l-departing-date {
  clear: both;
}
@media screen and (min-width: 600px) {
  #search-area .l-departing-date {
    clear: both;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-departing-date {
    clear: none;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-departing-date {
    clear: none;
  }
}
#search-area .l-departing-date, #search-area .l-returning-date, #search-area .l-check-in, #search-area .l-check-out {
  width: 50%;
}
@media screen and (min-width: 600px) {
  #search-area .l-departing-date, #search-area .l-returning-date, #search-area .l-check-in, #search-area .l-check-out {
    width: 50%;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-departing-date, #search-area .l-returning-date, #search-area .l-check-in, #search-area .l-check-out {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-departing-date, #search-area .l-returning-date, #search-area .l-check-in, #search-area .l-check-out {
    width: 12.5%;
  }
}
#search-area .l-cabin-class {
  width: 50%;
}
@media screen and (min-width: 600px) {
  #search-area .l-cabin-class {
    width: 50%;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-cabin-class {
    width: 33.3333333333%;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-cabin-class {
    width: 25%;
  }
}
#search-area .l-adults, #search-area .l-children, #search-area .l-child, #search-area .l-language, #search-area .l-currency {
  width: 25%;
}
@media screen and (min-width: 600px) {
  #search-area .l-adults, #search-area .l-children, #search-area .l-child, #search-area .l-language, #search-area .l-currency {
    width: 25%;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-adults, #search-area .l-children, #search-area .l-child, #search-area .l-language, #search-area .l-currency {
    width: 16.6666666667%;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-adults, #search-area .l-children, #search-area .l-child, #search-area .l-language, #search-area .l-currency {
    width: 12.5%;
  }
}
#search-area .l-search {
  width: 100%;
  clear: both;
}
@media screen and (min-width: 600px) {
  #search-area .l-search {
    width: 25%;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-search {
    width: 16.6666666667%;
    clear: none;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-search {
    width: 12.5%;
    clear: none;
  }
}
#search-area .l-search .btn {
  margin: 20px 0px 0px 0px;
}
@media screen and (min-width: 600px) {
  #search-area .l-search .btn {
    margin: 25px 0px 0px 0px;
  }
}
#search-area .l-mypage, #search-area .l-package-link {
  width: 50%;
  padding-top: 12px;
}
@media screen and (min-width: 600px) {
  #search-area .l-mypage, #search-area .l-package-link {
    width: 25%;
    padding-top: 32px;
    text-align: center;
  }
}
@media screen and (min-width: 9999px) {
  #search-area .l-mypage, #search-area .l-package-link {
    width: 16.6666666667%;
  }
}
@media screen and (min-width: 960px) {
  #search-area .l-mypage, #search-area .l-package-link {
    width: 12.5%;
  }
}

.datepicker-box {
  position: relative;
  margin: 0px;
}
.datepicker-box:before {
  display: block;
  content: "\f133";
  position: absolute;
  top: 50%;
  right: 8px;
  width: 11px;
  height: 15px;
  background: none;
  pointer-events: none;
  z-index: 1;
  font-family: "Font Awesome 5 Free";
  font-weight: 400;
  margin: -10px 0 0 0;
}
@media screen and (min-width: 600px) {
  .datepicker-box {
    width: 100%;
  }
}

.ui-datepicker {
  padding: 0.2em;
}
.ui-datepicker .ui-datepicker-group {
  padding: 0px;
}
.ui-datepicker .ui-datepicker-group .ui-datepicker-header {
  padding: 0px;
}
.ui-datepicker .ui-datepicker-group .ui-datepicker-header .ui-datepicker-prev, .ui-datepicker .ui-datepicker-group .ui-datepicker-header .ui-datepicker-next {
  top: 0px;
}

.datepicker-label {
  position: relative;
}

#search-area {
  max-width: 1200px;
}
#search-area .l-grid-group, #search-area .grid-item {
  padding-right: 2px;
  padding-left: 2px;
}
@media screen and (min-width: 600px) {
  #search-area .l-grid-group, #search-area .grid-item {
    padding-right: 6px;
    padding-left: 6px;
  }
}
#search-area .form-group label {
  line-height: unset;
  color: #ffffff;
  font-size: 14px;
}
@media screen and (min-width: 600px) {
  #search-area .form-group label {
    line-height: 1.8em;
  }
}
#search-area .form-group label.label-adultcount, #search-area .form-group label.label-childcount, #search-area .form-group label.childlabel {
  font-size: 0.8em;
}
@media screen and (min-width: 600px) {
  #search-area .form-group label.label-adultcount, #search-area .form-group label.label-childcount, #search-area .form-group label.childlabel {
    font-size: 14px;
  }
}
#search-area .form-control {
  font-size: 16px;
  height: 38px;
  padding: 6px 8px;
  background: #fff;
}
#search-area .form-control[readonly] {
  background-color: #fff;
}
#search-area .l-hotel {
  display: block;
}
#search-area .l-origin {
  display: block;
}
#search-area .l-destination {
  display: none;
}
#search-area .l-departing-date {
  display: block;
}
#search-area .l-returning-date {
  display: block;
}
#search-area .l-check-in {
  display: block;
}
#search-area .l-check-out {
  display: block;
}
#search-area .l-cabin-class {
  display: block;
}
#search-area .l-adults {
  display: block;
}
#search-area .l-children {
  display: block;
}
#search-area .l-language {
  display: block;
}
#search-area .l-currency {
  display: block;
}
#search-area .l-mypage {
  display: inline-block;
}
#search-area .l-promotion-code {
  display: block;
}
#search-area #search-btn-area .btn {
  text-align: center;
  height: 38px;
  line-height: 24px;
  width: 100%;
  font-size: 14px;
  font-weight: normal;
  padding: 6px 12px;
  background: #b5b5b5;
  color: #000000;
  border: 1px solid transparent;
}
#search-area #search-btn-area .btn:hover {
  opacity: 1;
  background: #b5b5b5;
}
#search-area #mypage-link-area a {
  font-size: 14px;
  color: #ffffff;
  border-bottom: 1px solid #ffffff;
}
#search-area #mypage-link-area a:hover {
  color: #ffffff;
  text-decoration: none;
}
#search-area #package-link-area a {
  font-size: 14px;
  color: #5ea6f5;
}
#search-area #package-link-area a:hover {
  color: #fb6636;
}

body#FlightSearch .l-destination {
  display: block !important;
}
body#FlightSearch .form-group .radio-group-triptype {
  display: -webkit-box;
  /*--- Androidブラウザ用 ---*/
  display: -ms-flexbox;
  /*--- IE10 ---*/
  display: -webkit-flex;
  /*--- safari（PC）用 ---*/
  display: flex;
}
@media screen and (min-width: 600px) {
  body#FlightSearch .form-group .radio-group-triptype {
    display: block;
  }
}
body#FlightSearch .form-group .radio-group-triptype label {
  margin: 0;
  width: 50%;
  padding: 3px;
  text-align: center;
  border: solid 1px #D2D2D7;
}
body#FlightSearch .form-group .radio-group-triptype label:nth-of-type(1) {
  border-radius: 3px 0 0 4px;
  border-right: none;
  font-weight: normal;
}
body#FlightSearch .form-group .radio-group-triptype label:nth-of-type(2) {
  border-radius: 0 3px 4px 0;
}
body#FlightSearch .form-group .radio-group-triptype label.selected {
  background-color: #007099;
  color: #ffffff;
}
@media screen and (min-width: 600px) {
  body#FlightSearch .form-group .radio-group-triptype label {
    width: unset;
    font-weight: normal;
    margin: 0 15px 0 5px;
    padding: unset;
    border: none;
    border-radius: unset;
  }
  body#FlightSearch .form-group .radio-group-triptype label.selected {
    background-color: unset;
    color: unset;
  }
}

.select2-container--default .select2-selection--single .select2-selection__arrow {
  height: 38px !important;
}

.select2-container .select2-selection--single .select2-selection__rendered {
  padding: 0 !important;
  line-height: unset;
}

.select2.select2-container.select2-container--default {
  width: 100% !important;
}

.select2-container--default .select2-results > .select2-results__options {
  max-height: 50vh;
}

.tdz-select2-dropdown--below, body.smartphone > span.select2-container.select2-container--default.select2-container--open span.select2-dropdown.select2-dropdown--below, body:not(.smartphone) > span.select2-container.select2-container--default.select2-container--open span.select2-dropdown.select2-dropdown--below {
  width: 25vw !important;
}

body.smartphone > span.select2-container.select2-container--default.select2-container--open span.select2-dropdown.select2-dropdown--below {
  font-size: 16px;
}

#ui-datepicker-div {
  font-size: calc(12px + 1vmin);
}
@media screen and (min-width: 600px) {
  #ui-datepicker-div {
    font-size: 14px;
  }
}
#ui-datepicker-div .custom-datepicker-title {
  padding: 5px;
}
@media screen and (min-width: 600px) {
  #ui-datepicker-div .custom-datepicker-title {
    padding: 5px 2px;
  }
}

.datepicker-box:before {
  display: block;
  color: #777;
}

#ui-datepicker-div {
  top: 0 !important;
}
#ui-datepicker-div .ui-datepicker-saturday a {
  color: #1e72ef;
}
#ui-datepicker-div .ui-datepicker-sanday a {
  color: #fd003c;
}
#ui-datepicker-div .ui-datepicker-holiday a {
  color: #fd003c;
}
#ui-datepicker-div .ui-widget-content {
  display: none;
}
#ui-datepicker-div .ui-datepicker-buttonpane {
  border: none;
  margin: 0;
}
#ui-datepicker-div .custom-datepicker-title .custom-datepicker-close {
  float: right;
  cursor: pointer;
}

@media screen and (max-width: 599px) {
  #ui-datepicker-div {
    width: 95vw !important;
    height: 95%;
    left: 50% !important;
    top: 50% !important;
    transform: translate(-50%, -50%) !important;
    -ms-transform: translate(-50%, -50%) !important;
    -webkit-transform: translate(-50%, -50%) !important;
  }
  #ui-datepicker-div .ui-datepicker-saturday a {
    color: #1e72ef;
  }
  #ui-datepicker-div .ui-datepicker-sanday a {
    color: #fd003c;
  }
  #ui-datepicker-div .ui-datepicker-holiday a {
    color: #fd003c;
  }
  #ui-datepicker-div .ui-widget-content {
    display: none;
  }
  #ui-datepicker-div .ui-datepicker-buttonpane {
    border: none;
    margin: 0;
  }
  #ui-datepicker-div .ui-state-default {
    padding: 10px 2px;
    background-image: none;
  }
  #ui-datepicker-div .ui-datepicker-header {
    font-size: 1.5em;
    background-image: none;
    border: none;
  }
  #ui-datepicker-div .ui-datepicker-header {
    background-color: #eee !important;
  }
  #ui-datepicker-div .ui-state-default {
    background-color: #fff !important;
    border: none !important;
    text-align: center !important;
  }
  #ui-datepicker-div .ui-state-active {
    color: #aaa;
  }
  #ui-datepicker-div .highlight .ui-state-default {
    color: #637f8e !important;
  }
  #ui-datepicker-div .custom-datepicker-title {
    font-weight: 600 !important;
  }
  #ui-datepicker-div .custom-datepicker-title .custom-datepicker-close {
    float: right;
    cursor: pointer;
  }

  .ui-datepicker-group {
    clear: both;
    width: 100% !important;
    padding: 5px 5px 5px 0;
  }
  .ui-datepicker-group.ui-datepicker-group-last {
    display: none;
  }
}
.datepicker {
  z-index: 99999999 !important;
}

.zero-hide {
  font-size: 16px;
  margin: 0;
  padding: 0;
  height: 0;
  width: 0;
  border: none;
  display: block;
}
