@charset "Shift_JIS";

body, input, select, textarea, table, th, td, li, a, 
.jlnsp-SearchPanelTokusyu {
  font-family: 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
}
#jsiChangeContents {
  margin-bottom: 20px;
}
.jlnsp-SearchPanelTokusyu h1 {
  padding: 7px 12px;
  background: #efebe6;
  color: #5b4843;
  font-size: 14px;
  line-height: 18px;
  font-weight: bold;
}
.jlnsp-careerChoice, 
.isOneCareer {
  margin: 12px 0 0;
}
.jlnsp-careerChoice dt {
  display: none;
}
.jlnsp-careerChoice .selectPackList_a, 
.isOneCareer__selectPackList {
  padding: 0 4px;
  border-bottom: 2px solid #e77611;
}
.jlnsp-careerChoice .selectPackList_a::after, 
.isOneCareer__selectPackList::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.jlnsp-careerChoice .selectPackList_a > li, 
.isOneCareer__selectPackList > li {
  padding: 0 2px;
  box-sizing: border-box;
  float: left;
}
.jlnsp-careerChoice .selectPackList_a > li {
  width: 33.3%;
}
.isOneCareer__selectPackList > li {
  width: 50%;
}
.jlnsp-careerChoice li input[type="radio"] {
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
}
.jlnsp-careerChoice .selectPackList_a > li > label, 
.isOneCareer__selectPackList > li > .isOneCareer__selectPackList__wrap {
  display: block;
  padding: 5px 0;
  border: 2px solid #bcb6b3;
  border-bottom: 0;
  border-radius: 4px 4px 0 0;
  background: #fff;
  color: #3b1800;
  font-size: 10px;
  line-height: 1.5;
  font-weight: bold;
  text-align: center;
}
.jlnsp-careerChoice .selectPackList_a > li.selectPackList_a_active > label, 
.isOneCareer__selectPackList > li.isOneCareer__selectPackList--active > .isOneCareer__selectPackList__wrap {
  margin-bottom: -2px;
  border-color: #e77611;
  border-bottom: 2px solid #fff;
  color: #e77611;
}
.jlnsp-careerChoice .selectPackList_a > li > label > .selectPackList_a__logo, 
.isOneCareer__selectPackList > li > .isOneCareer__selectPackList__wrap > .isOneCareer__selectPackList__logo {
  display: block;
  height: 20px;
  padding: 20px 0 0;
  box-sizing: border-box;
}
.jlnsp-careerChoice .selectPackList_a > li > label > .selectPackList_a__logo + span {
  display: block;
  white-space: nowrap;
}
@media (max-width: 374px){
  .jlnsp-careerChoice .selectPackList_a > li > label > .selectPackList_a__logo + span {
    letter-spacing: -0.5px;
  }
}
.jlnsp-careerChoice .selectPackList_a > li > label[for="jal"] > .selectPackList_a__logo, 
.isOneCareer__selectPackList > li.isOneCareer__selectPackList--JAL > .isOneCareer__selectPackList__wrap > .isOneCareer__selectPackList__logo {
  background: transparent url("/smart/dp/images/logo_JAL_l.png") no-repeat center center / 55px 15px;
}
.jlnsp-careerChoice .selectPackList_a > li > label[for="ana"] > .selectPackList_a__logo, 
.isOneCareer__selectPackList > li.isOneCareer__selectPackList--ANA > .isOneCareer__selectPackList__wrap > .isOneCareer__selectPackList__logo {
  background: transparent url("/smart/dp/images/logo_ANA_l.png") no-repeat center center / 59px 15px;
}
.jlnsp-careerChoice .selectPackList_a > li > label[for="jr"] > .selectPackList_a__logo, 
.isOneCareer__selectPackList > li.isOneCareer__selectPackList--JR > .isOneCareer__selectPackList__wrap > .isOneCareer__selectPackList__logo {
  background: transparent url("/smart/dp/images/logo_JR_l.png") no-repeat center center / 28px 15px;
}

/*
* 共通検索パネルパーツ
*/
.jlnsp-dp-search__travel-item, 
.dpModules_searchpanelDp_searchPanel form > ul > li {
  padding: 12px;
  border-bottom: 1px solid #bcb6b3;
}
.jlnsp-dp-search__travel-item__rowBlock, 
.dpModules_searchpanelDp_searchPanel form > ul > li > dl {
  display: block;
  width: 100%;
}
.jlnsp-dp-search__travel-item__rowBlock::after, 
.dpModules_searchpanelDp_searchPanel form > ul > li > dl::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.jlnsp-dp-search__travel-item .jlnsp-dp-search__travel-item__title, 
.dpModules_searchpanelDp_headTitle {
  width: 65px;
  margin: 0;
  float: left;
  color: #3b1800;
  font-size: 12px;
  line-height: 1.5;
  font-weight: bold;
}
.jlnsp-dp-search__travel-item .jlnsp-dp-search__travel-item__title > span, 
.dpModules_searchpanelDp_headTitle > span {
  display: block;
  font-size: 10px;
}
.jlnsp-dp-search__travel-item .jlnsp-dp-search__travel-item__content, 
.dpModules_searchpanelDp_searchPanel form > ul > li > dl > dd {
  width: calc(100% - 73px);
  float: right;
  color: #5b4843;
  font-size: 12px;
  line-height: 1.5;
}
.jlnsp-dp-search__travel-item .jlnsp-dp-search__travel-item__label, 
.dpModules_searchpanelDp_subhead {
  margin: 0 0 2px 0;
  color: #5b4843;
  font-size: 10px;
  line-height: 1.5;
  font-weight: normal;
}
.jsc-show, 
.jsc-close {
  position: relative;
  padding: 0 18px 0 0;
  font-size: 12px;
  line-height: 1.5;
}
.jsc-show:link, 
.jsc-show:visited, 
.jsc-close:link, 
.jsc-close:visited {
  color: #1558ce;
}
.jsc-show::after, 
.jsc-close::after {
  position: absolute;
  right: 2px;
  bottom: 0;
  content: "";
  width: 5px;
  height: 5px;
  margin: auto;
  border-right: 2px solid #918b8a;
  border-bottom: 2px solid #918b8a;
  pointer-events: none;
}
.jsc-show::after {
  top: -6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.jsc-close::after {
  top: 2px;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
.c-input-select {
  position: relative;
  display: inline-block;
  width: 100%;
}
.c-input-select select {
  width: 100%;
  height: 32px;
  padding: 0 24px 0 8px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  background: #fff;
  overflow: hidden;
  cursor: pointer;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  color: #3b1800;
  font-size: 14px;
  line-height: 30px;
  text-overflow: ellipsis;
  white-space: nowrap;
}
.c-input-select::after {
  position: absolute;
  right: 12px;
  top: -6px;
  bottom: 0;
  content: "";
  width: 7px;
  height: 7px;
  margin: auto;
  border-right: 2px solid #918b8a;
  border-bottom: 2px solid #918b8a;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
  pointer-events: none;
}

/* 旅行期間 */
.jlnsp-dp-search__travel-period::after, 
.dpModules_searchpanelDp_atob::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.jlnsp-dp-search__travel-item__from, 
.dpModules_searchpanelDp_atob li {
  position: relative;
  display: block;
  width: calc(50% - 10px);
  float: left;
}
.jlnsp-dp-search__travel-item__from.to, 
.dpModules_searchpanelDp_atob li:last-of-type {
  margin-left: 20px;
}
.jlnsp-dp-search__travel-item__from.to::before, 
.dpModules_searchpanelDp_atob li:last-of-type::before {
  position: absolute;
  left: -20px;
  bottom: 0;
  content: "〜";
  display: block;
  width: 20px;
  color: #3b1800;
  font-size: 14px;
  line-height: 32px;
  text-align: center;
}
.jlnsp-dp-search__travel-item__from .researchFlDay {
  height: 32px;
  padding: 0 0 0 8px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  box-sizing: border-box;
  overflow: hidden;
  color: #3b1800;
  font-size: 14px;
  line-height: 30px;
}
#checkInDateLabel,
#checkOutDateLabel,
#checkInDateLabel2,
#checkOutDateLabel2 {
  display: none;
}
/* 旅行期間 end */

/* 利用空港 */
.jlnsp-dp-search__travel-airport > dt {
  display: none;
}
.departure-arrival {
  padding: 0 0 12px;
}
.flList .researchFlAirport + .researchFlAirport {
  margin: 12px 0 0;
}
.flList .researchFlAirport.isDisabled {
  -webkit-tap-highlight-color: rgba(0, 0, 0, 0);
}
#dep_bap_wrap > div, 
#dep_aap_wrap > div, 
#arr_bap_wrap > div, 
#arr_aap_wrap > div, 
#dep_bap_ana_wrap > div, 
#dep_aap_ana_wrap > div, 
#arr_bap_ana_wrap > div, 
#arr_aap_ana_wrap > div {
  display: none;
}
.flList li.researchFlAirport select {
}
.departure-arrival + nav {
  text-align: right;
}
.returning {
  display: none;
}
.returning > label {
  display: inline-block;
  margin-bottom: 10px;
}
/* 利用空港 end */

/* 宿泊 */
.jlnsp-dp-search__travel-distination dd .pref + .area {
  margin: 12px 0 0;
}
.ndpSepa .selWrap span.textArea {
  display: none;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period {
  display: none;
  margin: 12px 0 0;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period > .from, 
.jlnsp-dp-search__travel-check-in-out .check-item.period > .to {
  position: relative;
  display: block;
  width: calc(50% - 10px);
  float: left;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period > .to {
  margin-left: 20px;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period > .to::before {
  position: absolute;
  left: -20px;
  bottom: 0;
  content: "〜";
  display: block;
  width: 20px;
  color: #3b1800;
  font-size: 14px;
  line-height: 32px;
  text-align: center;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period > nav {
  clear: both;
}
.jlnsp-dp-search__travel-check-in-out .check-item > nav {
  padding-top: 12px;;
  text-align: right;
}
.jlnsp-dp-search__travel-check-in-out .check-in-out-info, 
.dpModules_searchpanelDp_staylength .dpModules_searchpanelDp_subhead {
  font-size: 14px;
  font-weight: normal;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period .c-input-select::after {
  display: none;
}
.jlnsp-dp-search__travel-check-in-out .check-item.period .c-input-select > select {
  padding-right: 0;
  text-overflow: inherit;
}
.jlnsp-dp-search__travel-distination dd > .config-item {
  display: block;
  width: calc((100% - 16px) / 3);
  box-sizing: border-box;
  float: left;
}
.jlnsp-dp-search__travel-distination dd > .config-item.adults {
  display: block;
  width: calc(((100% - 16px) / 3) + 8px);
  padding-left: 8px;
}
.jlnsp-dp-search__travel-distination dd > .config-item.children {
  float: right;
}
#roomNumSelectWrap,
#adultNumSelectWrap,
#roomNumSelectWrap_ana,
#adultNumSelectWrap_ana,
.config-item .ndpSepaInput {
  width: 100%;
}
#roomNumSelectWrap .c-input-select select,
#adultNumSelectWrap .c-input-select select,
#roomNumSelectWrap_ana .c-input-select select,
#adultNumSelectWrap_ana .c-input-select select {
  text-overflow: inherit;
}
.ndpSepa .selWrap select {
  cursor: pointer;
}
.ndpSepaInput {
  height: 32px;
  padding: 0 4px 0 8px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 14px;
  line-height: 30px;
}
/* 子供人数モーダル部 */
.jlnsp-overlayJal,
.jlnsp-overlayAna {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 130%;
  background: #333;
  z-index: 4;
}
.jlnsp-dp-search__travel #setChldNum,
.jlnsp-dp-search__travel #setChldNum_ana {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  margin: 36.5px 16px;
  padding: 16px 0;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 5;
}
div#setChldNum div.ar,
div#setChldNum_ana div.ar,
div#setChldNumDP div.ar {
  padding: 0 16px 8px;
  box-sizing: border-box;
  color: #3b1800;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
}
.setChildWrapper {
  height: calc(100% - 32px - 49px);
  padding: 8px 16px;
  overflow-y: scroll;
  box-sizing: border-box;
}
.setChildWrapper .withLine {
  display: table;
  width: 100%;
  margin: 8px 0 0;
}
.setChildWrapper > dl:first-of-type {
  margin-top: 0;
  padding-bottom: 8px;
  border-bottom: 1px solid #bcb6be;
}
.dTCell {
  display: table-cell;
  vertical-align: middle;
}
.setChildWrapper .text02 {
  color: #3b1800;
  font-size: 14px;
  line-height: 1.5;
}
.setChildWrapper .text02 > small {
  display: block;
  color: #5b4843;
  font-size: 12px;
}
.setChildWrapper .setNum {
  width: 90px;
  text-align: right;
}
.setChildWrapper .selWrap > .c-input-select {
  width: 62px;
}
.setChildWrapper .selWrap > .c-input-select > select {
  height: 40px;
  line-height: 38px;
  text-overflow: inherit;
}
.setChildWrapper .selWrap > .c-input-select + span {
  color: #3b1800;
  font-size: 16px;
  line-height: 1.5;
}
.setChildNum__bottom {
  height: 49px;
  padding: 16px 16px 0;
  border-top: 1px solid #bcb6b3;
  box-sizing: border-box;
}
.setChildNum__bottom::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.setChildNum__bottom .closeChildSetting {
  width: calc((100% - 12px) / 2);
  float: left;
}
.setChildNum__bottom .setChildSetting {
  width: calc((100% - 12px) / 2);
  float: right;
}
.setChildNum__bottom .closeChildSetting > a, 
.setChildNum__bottom .setChildSetting > a {
  display: block;
  height: 32px;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 12px;
  line-height: 30px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
.setChildNum__bottom .closeChildSetting > a {
  border: 1px solid #938c89;
  background: #f4f2f2;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eae6e5));
  background: -webkit-linear-gradient(#fff, #eae6e5);
  background: linear-gradient(#fff, #eae6e5);
  color: #3b1800;
}
.setChildNum__bottom .setChildSetting > a {
  border: 1px solid #2171e0;
  background: #2297f4;
  background: -webkit-gradient(linear, left top, left bottom, from(#38affc), to(#0174e7));
  background: -webkit-linear-gradient(#38affc, #0174e7);
  background: linear-gradient(#38affc, #0174e7);
  color: #fff;
}
/* 子供人数モーダル部 end */
/* 宿泊 end */

/* レンタカー */
.rentacarBoxInner,
.rentacarBoxInnerANA {
  position: relative;
}
.rentacarCheck {
  display: block;
}
#rentacarchk,
#rentacarchk_ana {
  display: none;
}
label[for=rentacarchk],
label[for=rentacarchk_ana] {
  display: block;
  padding-left: 22px;
  color: #3b1800;
  font-size: 14px;
  line-height: 1.5;
  text-indent: -22px;
  cursor: pointer;
}
input[name=rentacar] + label.jlnsp-checkbox--disabled, 
input[name=rentacar_ana] + label.jlnsp-checkbox--disabled {
  cursor: inherit;
  pointer-events: none;
}
label[for=rentacarchk] > span:first-of-type, 
label[for=rentacarchk_ana] > span:first-of-type {
  position: relative;
  top: 2px;
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  border: 2px solid #bcb6b3;
  border-radius: 2px;
  background: #fff;
  box-sizing: border-box;
  vertical-align: top;
}
input[name=rentacar]:checked + label > span:first-of-type, 
input[name=rentacar_ana]:checked + label > span:first-of-type {
  border: 2px solid #e77611;
  background-color: #e77611;
}
input[name=rentacar] + label.jlnsp-checkbox--disabled > span:first-of-type, 
input[name=rentacar_ana] + label.jlnsp-checkbox--disabled > span:first-of-type {
  border: 2px solid #bcb6b3;
  background-color: #fff;
}
input[name=rentacar]:checked + label > span:first-of-type::after, 
input[name=rentacar_ana]:checked + label > span:first-of-type::after, 
input[name=rentacar] + label.jlnsp-checkbox--disabled > span:first-of-type::after, 
input[name=rentacar_ana] + label.jlnsp-checkbox--disabled > span:first-of-type::after {
  position: absolute;
  top: -2px;
  left: 2px;
  content: "";
  display: inline-block;
  width: 6px;
  height: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
input[name=rentacar]:checked + label > span:first-of-type::after, 
input[name=rentacar_ana]:checked + label > span:first-of-type::after {
  border-right: 2px solid #fff;
  border-bottom: 2px solid #fff;
}
input[name=rentacar] + label.jlnsp-checkbox--disabled > span:first-of-type::after, 
input[name=rentacar_ana] + label.jlnsp-checkbox--disabled > span:first-of-type::after {
  border-right: 2px solid #bcb6b3;
  border-bottom: 2px solid #bcb6b3;
}

/* 予約期限過ぎアラート */
#jalRentaNg, 
#jalRentaNgANA {
  position: relative;
  display: block;
  padding-left: 22px;
  color: #3b1800;
  font-size: 14px;
  line-height: 1.5;
  text-indent: -22px;
}
#jalRentaNg > input,
#jalRentaNgANA > input {
  display: none;
}
#jalRentaNg > input + label::before,
#jalRentaNgANA > input + label::before {
  position: relative;
  top: 2px;
  content: "";
  display: inline-block;
  width: 16px;
  height: 16px;
  margin-right: 6px;
  border: 2px solid #e6e6e6;
  border-radius: 2px;
  background: #eee;
  box-sizing: border-box;
  vertical-align: top;
}
.rentaNgSub {
  display: block;
  margin: 0 0 0 -22px;
  color: #5b4843;
  font-size: 12px;
  text-indent: 0;
}
/* 予約期限過ぎアラート end */

/* 予約期限過ぎチェック外れポップアップ */
.rentaNgPopup {
  position: absolute;
  left: -16px;
  top: -69px;
  padding: 8px 34px 8px 12px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
  box-shadow: 0 2px 4px rgba(0, 0, 0, .5);
  z-index: 200;
  color: #ca1738;
  font-size: 14px;
  line-height: 1.5;
  font-weight: bold;
}
.rentaNgPopup::before {
  position: absolute;
  left: 15px;
  bottom: -15px;
  content: "";
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-top: 8px solid #fff;
  z-index: 1;
}
.rentaNgPopup::after {
  position: absolute;
  left: 15px;
  bottom: -18px;
  content: "";
  width: 0;
  height: 0;
  border: 8px solid transparent;
  border-top: 8px solid #bcb6b3;
}
.rentaNgPopup > span {
  display: block;
  color: #5b4843;
  font-size: 12px;
  font-weight: normal;
}
.closeNgPopup {
  position: absolute;
  right: 3px;
  top: 3px;
  display: block;
  width: 24px;
  height: 24px;
  background: transparent url("/smart/modules/dp/images/close_round.svg") no-repeat center center / 14px 14px;

}
/* 予約期限過ぎチェック外れポップアップ end */
/* レンタカー end */

/* 検索ボタン */
.buttonBoxB, 
.dpModules_searchpanelDp_searchBtnWrapper {
  width: auto;
  margin: 12px 28px 20px;
  padding: 0;
}
.buttonBoxB > a, 
a.dpModules_searchpanelDp_searchBtn {
  display: block;
  height: 40px;
  border: 1px solid #2171e0;
  border-radius: 4px;
  background: #2297f4;
  background: -webkit-gradient(linear, left top, left bottom, from(#38affc), to(#0174e7));
  background: -webkit-linear-gradient(#38affc, #0174e7);
  background: linear-gradient(#38affc, #0174e7);
  box-sizing: border-box;
  color: #fff;
  font-size: 14px;
  line-height: 38px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
.buttonBoxB > a.btnActive, 
a.dpModules_searchpanelDp_searchBtn.btnActive {
  border-top: 1px solid #91b0cb;
  border-bottom: 1px solid #00496e;
  background-color: #1075ad;
}
/* 検索ボタン end */
/* カレンダー ovrelay */
#calendarOverlayWindow {
  display: block;
}
div#jalanCalendar div.cal_baseDiv label.cal_indexMonth {
  display: block;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
  line-height: 1.6;
}
div#jalanCalendar table th {
  font-size: 13px;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
}
div#jalanCalendar table td {
  font-size: 21px;
  padding: 0;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
  line-height: 1.4;
}
div#jalanCalendar table td a {
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
}
/* カレンダー ovrelay end */

/* iOS8バグ対応 */
#iOS8_back {
  position: fixed;
  left: 0;
  top: 0;
  display: none;
  width: 100%;
  height: 100%;
  background: rgba(0, 0, 0, .7);
}
.iOS8Panel {
  position: absolute;
  left: 50%;
  display: none;
  width: 90%;
  height: 300px;
  margin-left: -45%;
  border: solid 3px #aaa;
  border-radius: 5px;
  background: #fff;
  box-sizing: border-box;
  overflow: auto;
  overflow-scrolling:touch;
  -webkit-overflow-scrolling:touch;
  -webkit-user-select: none;
  -webkit-box-shadow: 0 0 20px rgba(0, 0, 0, .5);
}
.iOS8Panel li {
  padding: 10px 5px 10px 40px;
  border-bottom: solid 1px #ddd;
}
.iOS8Panel li.airChg {
  -webkit-tap-highlight-color: rgba(65, 172, 255, .3);
}
.iOS8Panel li.airport_list {
  padding-left: 20px;
  background: #eee;
  font-weight: bold;
}
#iOS8PanelClose::before, 
#iOS8PanelClose::after {
  position: absolute;
  left: -20px;
  top: 278px;
  content: "";
  width: 0;
  height: 0;
  border-style: solid;
  border-width: 8px 8px 0;
  border-color: #ffad6a transparent transparent transparent;
  opacity: .5;
}
#iOS8PanelClose::after {
  top: 290px;
}
.arrowHide::before, 
.arrowHide::after {
  display: none;
}
#iOS8PanelClose {
  position: absolute;
  right: 2%;
  display: none;
  width: 30px;
  height: 30px;
  margin-top: -19px;
  border: solid 3px #aaa;
  border-radius: 30px;
  background: #333;
  z-index: 500;
  color: #fff;
  font-weight: bold;
  font-size: 22px;
  line-height: 30px;
  text-align: center;
}
/* //iOS8バグ対応 */
/* iOS8ズレ対応 */
.chWrapMin {
  width: 95px;
  float: left;
}
/* //iOS8ズレ対応 */

.dpModules_searchpanelDp_jr_itinerary .dpModules_searchpanelDp_dateInput,
.dpModules_searchpanelDp_air_itinerary .dpModules_searchpanelDp_dateInput {
  height: 32px;
  padding: 0 0 0 8px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  box-sizing: border-box;
  overflow: hidden;
  color: #3b1800;
  font-size: 14px;
  line-height: 30px;
}
.dpModules_searchpanelDp_pref,
.dpModules_searchpanelDp_area {
  margin-top: 12px;
}
.dpModules_searchpanelDp_jr_stayPeriod > .dpModules_searchpanelDp_multiColumn > dd::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.dpModules_searchpanelDp_staylength > .dpModules_searchpanelDp_subhead {
  margin-bottom: 0;
}
.dpModules_searchpanelDp_optionBox {
  display: none;
  margin-top: 12px;
  clear: both;
}
.dpModules_searchpanelDp_optionBox .c-input-select::after {
  display: none;
}
.dpModules_searchpanelDp_jr_stayPeriod .dpModules_searchpanelDp_jr_stayPeriod_checkIn {
  color: #3b1800;
  font-size: 14px;
  line-height: 32px;
}
a.dpModules_searchpanelDp_showToggle {
  position: relative;
  display: block;
  margin-top: 12px;
  padding: 0 18px 0 0;
  float: right;
  color: #1558ce;
  font-size: 12px;
  line-height: 1.5;
}
a.dpModules_searchpanelDp_showToggleOn {
  display: none;
}
a.dpModules_searchpanelDp_showToggle::after {
  position: absolute;
  right: 2px;
  bottom: 0;
  content: "";
  width: 5px;
  height: 5px;
  margin: auto;
  border-right: 2px solid #918b8a;
  border-bottom: 2px solid #918b8a;
  pointer-events: none;
}
a.dpModules_searchpanelDp_showToggleOn::after {
  top: 2px;
  -webkit-transform: rotate(225deg);
  transform: rotate(225deg);
}
a.dpModules_searchpanelDp_showToggleOff::after {
  top: -6px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}

.dpModules_searchpanelDp_jr_rooms .dpModules_searchpanelDp_numPeopleRoom::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.dpModules_searchpanelDp_jr_rooms .dpModules_searchpanelDp_numPeopleRoom > li {
  width: calc((100% - 16px) / 3);
  box-sizing: border-box;
  float: left;
}
.dpModules_searchpanelDp_jr_rooms .dpModules_searchpanelDp_numPeopleRoom > li:nth-of-type(2) {
  width: calc(((100% - 16px) / 3) + 8px);
  padding-left: 8px;
}
.dpModules_searchpanelDp_jr_rooms .dpModules_searchpanelDp_numPeopleRoom > li:last-of-type {
  float: right;
}
.dpModules_searchpanelDp_numPeopleRoom .dpModules_searchpanelDp_itemSelect select {
  font-size: 14px;
  line-height: 1.2;
}
.dpModules_searchpanelDp_numPeopleRoom .dpModules_searchpanelDp_jr_rooms_total {
  color: #3b1800;
  font-size: 14px;
  line-height: 32px;
}
.dpModules_searchpanelDp_itemChild {
  position: relative;
  width: 100%;
  height: 32px;
  padding: 0 8px;
  border: 1px solid #bcb6b3;
  border-radius: 4px;
  box-sizing: border-box;
  z-index: 1;
  color: #3b1800;
  font-size: 14px;
  line-height: 30px;
  cursor: pointer;
}
.dpModules_searchpanelDp_children_panel {
  position: fixed;
  top: 0;
  left: 0;
  display: none;
  width: 100%;
  height: 130%;
  background: #333;
  z-index: 4;
}
.dpModules_searchpanelDp_children_panelWrap {
  position: fixed;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
  width: auto;
  margin: 36.5px 16px;
  padding: 16px 0;
  border-radius: 4px;
  background: #fff;
  box-sizing: border-box;
  overflow: hidden;
  z-index: 5;
}
.dpModules_searchpanelDp_children_panelWrap__top {
  padding: 0 16px 8px;
  box-sizing: border-box;
  color: #3b1800;
  font-size: 16px;
  line-height: 1.5;
  font-weight: bold;
}
.dpModules_searchpanelDp_children_panel_inner {
  height: calc(100% - 32px - 49px);
  padding: 8px 16px;
  overflow-y: scroll;
  box-sizing: border-box;
}
.dpModules_searchpanelDp_children_panel_inner > dl {
  display: table;
  width: 100%;
  margin: 8px 0 0;
}
.dpModules_searchpanelDp_children_panel_inner > dl:first-of-type {
  margin-top: 0;
  padding-bottom: 8px;
  border-bottom: 1px solid #bcb6be;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dt, 
.dpModules_searchpanelDp_children_panel_inner > dl > dd {
  display: table-cell;
  vertical-align: middle;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dt {
  color: #3b1800;
  font-size: 14px;
  line-height: 1.5;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dt > small {
  color: #5b4843;
  font-size: 12px;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dd {
  width: 90px;
  text-align: right;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dd .c-input-select {
  width: 62px;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dd .c-input-select > select {
  height: 40px;
  line-height: 38px;
  text-overflow: inherit;
}
.dpModules_searchpanelDp_children_panel_inner > dl > dd .c-input-select + span {
  margin-left: 0.25em;
  color: #3b1800;
  font-size: 16px;
  line-height: 1.5;
}
.dpModules_searchpanelDp_children_panelWrap__bottom {
  height: 49px;
  padding: 16px 16px 0;
  border-top: 1px solid #bcb6b3;
  box-sizing: border-box;
}
.dpModules_searchpanelDp_children_panelWrap__bottom::after {
  content: "";
  display: block;
  height: 0;
  visibility: hidden;
  clear: both;
}
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnClose {
  width: calc((100% - 12px) / 2);
  float: left;
}
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnSet {
  width: calc((100% - 12px) / 2);
  float: right;
}
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnClose > a, 
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnSet > a {
  display: block;
  height: 32px;
  border-radius: 4px;
  box-sizing: border-box;
  font-size: 12px;
  line-height: 30px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnClose > a {
  border: 1px solid #938c89;
  background: #f4f2f2;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#eae6e5));
  background: -webkit-linear-gradient(#fff, #eae6e5);
  background: linear-gradient(#fff, #eae6e5);
  color: #3b1800;
}
.dpModules_searchpanelDp_children_panelWrap__bottom .dpModules_searchpanelDp_children_btnSet > a {
  border: 1px solid #2171e0;
  background: #2297f4;
  background: -webkit-gradient(linear, left top, left bottom, from(#38affc), to(#0174e7));
  background: -webkit-linear-gradient(#38affc, #0174e7);
  background: linear-gradient(#38affc, #0174e7);
  color: #fff;
}
.dpModules_searchpanelDp_roomSelect {
  margin-top: 12px;
  padding-left: calc(((100% - 16px) / 3) + 8px);
}
.dpModules_searchpanelDp_panelActive {
  display: block;
}
.dpModules_searchpanelDp_bookingConf {
  display: none;
}

/************************************************************
* カレンダー
************************************************************/
div.dpModules_searchpanelDp_cal {
  background-color: #333;
  width: 100%;
  position: absolute;
  padding: 24px 0 80px 0;
  margin: 2% 0;
  z-index: 100;
  display: none;
}

div.dpModules_searchpanelDp_cal > ul > li { display: none;}
div.dpModules_searchpanelDp_cal table {
  width: 100%;
  background-color: #ffad80;
  line-height: 1.0;
  border-collapse: collapse;
  margin-top: 10px;
}
div.dpModules_searchpanelDp_cal table th,
div.dpModules_searchpanelDp_cal table td {
  text-align: center;
  vertical-align: middle;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;  line-height: 1.0;
}
div.dpModules_searchpanelDp_cal table th {
  padding: 3px 0;
  font-size: 13px;
  font-weight: normal;
  color: #fff;
  background-color: #333;
}

div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_weekDay,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_saturday,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_sunday,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_holiday {
  padding: 0;
}

div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_unuse,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_weekDay a,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_saturday a,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_sunday a,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_holiday a {
  padding: 7px 0;
}

div.dpModules_searchpanelDp_cal table th.dpModules_searchpanelDp_list_sunday {
  color: #c00;
}
div.dpModules_searchpanelDp_cal table th.dpModules_searchpanelDp_list_saturday {
  color: #0072E2;
}
div.dpModules_searchpanelDp_cal table td {
  padding: 0 0 1px 1px;
  font-size: 21px;
  border-top: 1px solid #aaa;
  border-right: 1px solid #aaa;
  background-color: #e6e6e6;
  background: -webkit-linear-gradient(#fff, #e6e6e6) repeat scroll 0 0 transparent;
  background: -o-linear-gradient(#fff, #e6e6e6) repeat scroll 0 0 transparent;
  background: linear-gradient(#fff, #e6e6e6) repeat scroll 0 0 transparent;
}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_unuse {
  padding: 7px 0;
  color: #aaa;
}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_beforeDay,
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_afterEndDay {
  padding: 7px 0;
  color: #888;
  font-weight: bold;
}
div.dpModules_searchpanelDp_cal table td a {
  display: block;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;  font-weight: bold;
  text-decoration: none;
  color: #333;
  line-height: 1.4;
}

div.dpModules_searchpanelDp_cal .dpModules_searchpanelDp_list table td {
  line-height: 1.4;
}

div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_sunday a { color: #cc0000;}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_holiday a { color: #cc0000;}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_saturday a { color: #0072e2;}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_selectDay {
  background-image: url(/smart/dp/images/cal_current.png) !important;
  border: 1px solid #f60 !important;
}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_selectDay a {
  color: #fff !important;
}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_today {
  background:#ffd8c2;
  font-weight: bold;
  color: #888;
}
div.dpModules_searchpanelDp_cal table td.dpModules_searchpanelDp_list_today a {
  color: #333;
}
/* navi */
div.dpModules_searchpanelDp_cal div.dpModules_searchpanelDp_list_ctrl a.dpModules_searchpanelDp_list_prevMonthBtn { float: left;}
div.dpModules_searchpanelDp_cal div.dpModules_searchpanelDp_list_ctrl a.dpModules_searchpanelDp_list_nextMonthBtn { float: right;}
div.dpModules_searchpanelDp_cal div.dpModules_searchpanelDp_list_ctrl a {
  display: block;
  width: 20px;
  height: 20px;
  background-image: url(/smart/dp/images/button.png);
  background-repeat: no-repeat;
  text-indent: -9999px;
  margin:0px 0px -26px 0px;
  overflow: hidden;
  padding: 5px;
}
div.dpModules_searchpanelDp_cal div.dpModules_searchpanelDp_list_ctrl a.dpModules_searchpanelDp_list_prevMonthBtn { background-position: 5px 5px;}
div.dpModules_searchpanelDp_cal div.dpModules_searchpanelDp_list_ctrl a.dpModules_searchpanelDp_list_nextMonthBtn { background-position: -25px 5px;}
/* caption */
div.dpModules_searchpanelDp_cal .dpModules_searchpanelDp_list {
  margin-left: auto;
  margin-right: auto;
  text-align: center;
  clear: both;
}
div.dpModules_searchpanelDp_cal .dpModules_searchpanelDp_list_title {
  display: block;
  height: 25px;
  margin-bottom: 5px;
  padding-top: 3px;
  color: #fff;
  font-family: Arial, 'メイリオ', Meiryo, 'ヒラギノ角ゴ Pro W3', 'Hiragino Kaku Gothic Pro', 'ＭＳ Ｐゴシック', "MS PGothic", sans-serif;
  font-size: 100%;
  line-height: 1.6;
  font-weight: bold;
}
/* close button */
div.dpModules_searchpanelDp_cal .dpModules_searchpanelDp_list_closeBtn {
  position: absolute;
  text-align: center;
  width: 100%;
  bottom: 0;
  margin: 0 0 40px;
}
div.dpModules_searchpanelDp_cal .dpModules_searchpanelDp_list_closeBtn a {
  display: inline;
  padding: 7px calc(20px + 1em) 3px;
  border: 1px solid #6a6a6a;
  border-radius: 8px;
  background: -webkit-gradient(linear, left top, left bottom, from(#fff), to(#ddd));
  color: #333;
  font-size: 14px;
  font-weight: bold;
  text-decoration: none;
  text-align: center;
}
div.dpModules_searchpanelDp_cal > ul,
div.dpModules_searchpanelDp_cal > div {
  margin: 10px;
}
div#dpModules_searchpanelDp_cal_overlay {
  height: 100% !important;
  width: 100%;
  opacity: .75;
  background-color: #000;
  position: fixed;
  top: 0;
  left: 0;
  -webkit-tap-highlight-color: rgba(0,0,0,0);
  display: none;
  z-index: 99;
}

/* カレンダー販売期間外選択制御 */
#jalanCalendar_contents a.is-disabled.is-disabled {
  color: #888;
  pointer-events: none;
}