@charset "UTF-8";
/*******************************************************************************
*
* 列車検索条件入力
*
*******************************************************************************/
/*=========================================
ボタンテンプレート
=========================================*/
/* デフォルトCSSを無効にするだけのCSS */
/* 高強調ボタン大 */
/* 高強調ボタン中 */
/* 高強調ボタン小 */
/* 高強調ボタン小　インライン */
/* 高強調ボタン大　背景緑 */
/* 高強調ボタン中　背景緑 */
/* 高強調ボタン小　背景緑 */
/* 高強調ボタン小　背景緑　インライン */
/* 高強調ボタン大　背景白 */
/* 高強調ボタン中　背景白 */
/* 高強調ボタン小　背景白 */
/* 高強調ボタン小　背景白　インライン */
/* 中強調ボタン大　緑 */
/* 中強調ボタン中　緑 */
/* 中強調ボタン小　緑 */
.top_formEntryBtnViaW button {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 36px;
  background-color: #fff;
  color: #007a52;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  text-decoration: none;
  text-align: center;
  /*outline: none;*/
  padding: 0 12px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  cursor: pointer;
  position: relative;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryBtnViaW button {
    padding-left: 1.4em;
    padding-right: 1.4em;
  }
}
.top_formEntryBtnViaW button:hover, .top_formEntryBtnViaW button:active {
  background-color: #f2f9f2;
  color: #007a52;
}
.top_formEntryBtnViaW button.nonselect {
  color: #a6a6a6;
  cursor: default;
}
.top_formEntryBtnViaW button.nonselect:hover, .top_formEntryBtnViaW button.nonselect:active {
  background-color: #fff;
}

/* 中強調ボタン小　緑　インライン */
/* 中強調ボタン大　背景緑 */
/* 中強調ボタン中　背景緑 */
/* 中強調ボタン小　背景緑 */
/* 中強調ボタン小　背景緑　インライン */
/* 中強調ボタン大　青 */
/* 中強調ボタン中　青 */
/* 中強調ボタン小　青 */
/* 中強調ボタン小　青　インライン */
/* サブボタン小　青 */
/* サブボタン小　緑 */
/* サブボタン小　グレー */
/* ボタン内のフォントサイズ変更 */
.tmp_btn_font-small {
  font-size: 70%;
}

/* アイコン設置用 */
.tmp_btn_icon-posLeft {
  padding-left: 30px !important;
}

.tmp_btn_icon-posRight {
  padding-right: 30px !important;
}

.tmp_btn_icon-back-green::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngreen-icon.png") no-repeat left top;
  background-size: 7px 11px;
}
.tmp_btn_icon-back-green.nonselect::before {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
}

.tmp_btn_icon-next-green::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngreen-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}
.tmp_btn_icon-next-green.nonselect::after {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}

.tmp_btn_icon-back-blue::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnblue-icon.png") no-repeat left top;
  background-size: 7px 11px;
}
.tmp_btn_icon-back-blue.nonselect::before {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
}

.tmp_btn_icon-next-blue::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnblue-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}
.tmp_btn_icon-next-blue.nonselect::after {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}

.tmp_btn_icon-back-red::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnred-icon.png") no-repeat left top;
  background-size: 7px 11px;
}
.tmp_btn_icon-back-red.nonselect::before {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
}

.tmp_btn_icon-next-red::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnred-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}
.tmp_btn_icon-next-red.nonselect::after {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}

.tmp_btn_icon-back-gray::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
}

.tmp_btn_icon-next-gray::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtngray-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}

.tmp_btn_icon-back-white::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnwhite-icon.png") no-repeat left top;
  background-size: 7px 11px;
}

.tmp_btn_icon-next-white::after {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  right: 15px;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnwhite-icon.png") no-repeat left top;
  background-size: 7px 11px;
  transform: scale(-1, 1);
}

.tmp_btn_icon-timeSelect {
  padding-right: 30px;
  position: relative;
  text-decoration: none;
  /*&::before {
  	position: absolute;
  	content:"";
  	display: block;
  	width: 3px;
  	height: 3px;
  	right:3px;
  	top:0;
  	bottom:3px;
  	margin-top: auto;
  	margin-bottom: auto;
  	border-top:1px solid $primary_blue;
  	border-right:1px solid $primary_blue;
  	transform: rotate(-45deg);
  }*/
}
.tmp_btn_icon-timeSelect::after {
  position: absolute;
  content: "";
  display: block;
  width: 24px;
  height: 15px;
  right: 0;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_timeSelect-icon.png") no-repeat;
  background-size: 24px 15px;
}

.tmp_btn_icon-rentacar::before {
  content: "";
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 25px;
  height: 25px;
  margin-right: 10px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resultrentacar-icon.png") no-repeat left top;
  background-size: 25px 25px;
}

.tmp_btn_icon-twitter::before {
  content: "";
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 25px;
  height: 25px;
  margin-right: 10px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_resulttwitter-icon.png") no-repeat left top;
  background-size: 25px 25px;
}

/* ボタン幅調整用 */
@media print, screen and (min-width: 750px) {
  .pc_w380px {
    max-width: 380px;
    width: 100%;
  }
}

/*=========================================
検索条件
=========================================*/
.top_formSubTitle {
  margin-bottom: 0.5em;
  padding-left: 15px;
  padding-right: 15px;
  font-size: 1.25rem;
  font-weight: bold;
}
@media print, screen and (min-width: 750px) {
  .top_formSubTitle {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
.top_formSubTitle:last-of-type {
  margin-bottom: 0;
}

.top_formErrorList {
  width: 100%;
  height: auto;
  list-style-type: none;
}

.top_formErrorListItem {
  color: #b42700;
  font-weight: bold;
  margin-bottom: 0.5em;
}
.top_formErrorListItem:last-of-type {
  margin-bottom: 0;
}

.top_formEntryStationH {
  color: #007a52;
  font-size: 1.2rem;
  font-weight: bold;
}
.top_formEntryStationH span {
  color: #000;
  font-size: 0.8rem;
  font-weight: normal;
}

.top_formEntryStationNote {
  margin-bottom: 3px;
  width: 100%;
  font-size: 0.75em;
}

.tour_errorMsgTmpW {
  display: none;
}

.tour_errorMsgW {
  display: none;
}
.tour_errorMsg .tour_errorMsgW {
  display: block;
}

.rentacar_errorMsgTmpW {
  display: none;
}

.rentacar_errorMsgW {
  display: none;
}
.rentacar_errorMsg .rentacar_errorMsgW {
  display: block;
}

.top_formEntryStation-nonBusinessHours {
  color: #b42700;
  font-weight: bold;
  margin-top: 0.5em;
  margin-bottom: 0.5em;
}

.top_formEntryDateSelectRtH {
  width: 100%;
  font-weight: bold;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectRtH {
    width: 100%;
    max-width: 3em;
    display: flex;
    align-items: center;
    padding-left: 8px;
}
}

.top_formEntryDateTabRoundtripInner {
  width: 100%;
  height: auto;
  display: none;
  background: #f0f3f5;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabRoundtripInner {
    padding: 12px 36px 16px 15px;
    border-radius: 0 3px 3px 3px;
}
  }
.top_formEntryDateTabRoundtrip .top_formEntryDateTabRoundtripInner {
  display: none;
}
.active + .top_formEntryDateTabRoundtripInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .active + .top_formEntryDateTabRoundtripInner {
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
}
}

.top_formEntryDateInnerW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateInnerW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateInnerW {
    padding-bottom: 0;
  }
}

.top_formEntryDateRoundtripInnerH {
  width: 100%;
  font-size: 1.05rem;
  font-weight: bold;
  margin-top: 25px;
  padding-bottom: 5px;
  background: url("/top/jrticket/img/ts_header-bg-1.png") no-repeat left bottom;
  background-size: 29px 3px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateRoundtripInnerH {
    margin-top: 0;
    font-size: 0.938rem;
}
}

.top_formEntryDateRoundtripSelectW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateRoundtripSelectW {
    position: relative;
    margin-top: 10px;
  }
}
.top_formEntryDateRoundtripSelectW:last-of-type {
  margin-top: 16px;
  padding-top: 16px;
  border-top: 1px solid #d9d9d9;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateRoundtripSelectW .top_formEntryDateSelectRtH {
    margin-top: 0;
    width: 70px;
    max-width: none;
    font-size: 0.938rem;
    padding-left: 5px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateRoundtripSelectW .top_formEntryDateSelectTime {
    margin-left: 70px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateRoundtripSelectW .top_formEntryDateSelectDep {
    min-width: auto;
  }
}
.top_seaOpt .top_formEntryDateRoundtripSelectW {
  margin-top: 0;
}
@media print, screen and (min-width: 750px) {
  .top_seaOpt .top_formEntryDateRoundtripSelectW {
    justify-content: flex-start;
  }
}

.top_formEntryAc-subW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAc-subW {
    padding-left: 15px;
    padding-right: 36px;
    align-items: center;
  }
}

.top_formEntryStaff {
    	width: 100%;
  height: auto;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: center;
  margin-bottom: 20px;
    }
@media print, screen and (min-width: 750px) {
  .top_formEntryStaff {
    width: 50%;
    padding-right: 22px;
    margin-right: 50%;
  }
}

.top_formEntryAdlutIncW,
.top_formEntryChildIncW {
  width: 30px;
  height: auto;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutIncW,
  .top_formEntryChildIncW {
    width: 26px;
  }
}

.top_formEntryAdlutIncBtn,
.top_formEntryChildIncBtn {
  width: 30px;
  height: 30px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formacinc_on-icon.png") no-repeat left top;
  background-size: 30px 30px;
  border: none;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  outline: none;
  box-sizing: border-box;
  cursor: pointer;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutIncBtn,
  .top_formEntryChildIncBtn {
    width: 26px;
    height: 26px;
    background-size: 26px 26px;
  }
}
.top_formEntryAdlutIncBtn.off,
.top_formEntryChildIncBtn.off {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formacinc_off-icon.png") no-repeat left top;
  background-size: 30px 30px;
  cursor: default;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutIncBtn.off,
  .top_formEntryChildIncBtn.off {
    background-size: 26px 26px;
}
}

.top_formEntryAdlutDecW, .top_formEntryChildDecW {
  width: 30px;
  height: auto;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutDecW, .top_formEntryChildDecW {
    margin-right: 20px;
    width: 26px;
}
}
.entryStaff .top_formEntryAdlutDecW,
.entryStaff .top_formEntryChildDecW {
  margin-right: 0;
}

.top_formEntryAdlutDecBtn,
.top_formEntryChildDecBtn {
  width: 30px;
  height: 30px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formacdec_on-icon.png") no-repeat left top;
  background-size: 30px 30px;
  border: none;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  outline: none;
  box-sizing: border-box;
  cursor: pointer;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutDecBtn,
  .top_formEntryChildDecBtn {
    width: 26px;
    height: 26px;
    background-size: 26px 26px;
  }
}
.top_formEntryAdlutDecBtn.off,
.top_formEntryChildDecBtn.off {
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formacdec_off-icon.png") no-repeat left top;
  background-size: 30px 30px;
  cursor: default;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutDecBtn.off,
  .top_formEntryChildDecBtn.off {
    background-size: 26px 26px;
  }
}

.top_formEntryAcHelp-notxtBtn {
  display: flex !important;
  align-items: center;
}

.top_formEntryKabuotonaCkW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: block;
  margin-top: 25px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryKabuotonaCkW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryKabuotonaCkW {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 0;
    max-width: 530px;
    margin-top: 14px;
  }
}
.searchNotuse .top_formEntryKabuotonaCkW {
  display: none;
}

.top_formEntryKabuotonaCkWDl {
    width: 100%;
  height: auto;
}

.top_formEntryKabuotonaCkWDt {
  width: 100%;
  height: auto;
}

.top_formEntryKabuotonaCkWDd {
  display: none;
  width: 100%;
  height: auto;
  padding: 0 0 0 20px;
  box-sizing: content-box;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryKabuotonaCkWDd {
    padding: 0 0 0 18px;
  }
}

.top_formEntryOptionRcInner {
  width: 100%;
  height: auto;
}

.top_optionRcAttLead {
  font-size: 1rem;
  font-weight: bold;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcAttLead {
    margin-top: 15px;
    font-size: 0.875rem;
  }
}
.top_optionRcAttLead span {
  display: inline-block;
  font-weight: normal;
  font-size: 0.8rem;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcAttLead span {
    display: block;
    font-size: 0.75rem;
  }
}

.top_optionRcAttW {
  width: 100%;
  height: auto;
  border: 1px solid #007a52;
  background: #e9f0e9;
  padding: 15px;
  margin-top: 15px;
  margin-bottom: 15px;
}

.top_optionRcAttList {
  width: 100%;
  height: auto;
}

.top_optionRcAttListItem {
  font-size: 0.8rem;
  padding-left: 1.5em;
  margin-bottom: 0.7em;
  position: relative;
  line-height: 1.7;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcAttListItem {
    font-size: 0.75rem;
  }
}
.top_optionRcAttListItem::before {
  position: absolute;
  content: "※";
  top: 0;
  left: 0;
  width: 1.5em;
  height: 1.5em;
  display: block;
}
.top_optionRcAttListItem:last-of-type {
  margin-bottom: 0;
}

.top_optionRcTypeW {
  width: 100%;
  height: auto;
}

.top_optionRcTypeDt {
  width: 100%;
  height: auto;
  margin-bottom: 12px;
}

.top_optionRcTypeDtBtn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: auto;
  border: none;
  border-radius: 5px;
  font-size: 1rem;
  font-weight: bold;
  font-family: inherit;
  text-decoration: none;
  text-align: left;
  outline: none;
  padding: 15px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  cursor: pointer;
  position: relative;
  background: #fff;
  color: #000;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcTypeDtBtn {
    background: #f0f3f5;
    font-size: 0.875rem;
  }
}
.top_optionRcTypeDtBtn span.typeTxt {
  display: inline-block;
}
.top_optionRcTypeDtBtn span.typeCapacity {
  background: #f0f3f5;
  color: #007a52;
  font-size: 0.8rem;
  padding: 5px;
  border-radius: 3px;
  display: inline-block;
  margin-left: auto;
  margin-right: 35px;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcTypeDtBtn span.typeCapacity {
    background: #fff;
  }
}
.top_optionRcTypeDtBtn .idxSearchWRentacarOptHBtn-icon {
  right: 15px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
}
.top_optionRcTypeDtBtn .idxSearchWRentacarOptHBtn-txt {
  font-size: 0.7rem;
  font-weight: normal;
  position: absolute;
  width: auto;
  height: 1em;
  top: 0;
  bottom: -2.3em;
  margin-top: auto;
  margin-bottom: auto;
  right: 15px;
}
.top_optionRcTypeDtBtn .idxSearchWRentacarOptHBtn-txt.open {
  display: block;
}
.top_optionRcTypeDtBtn .idxSearchWRentacarOptHBtn-txt.close {
  display: none;
}

.spOptionActive .idxSearchWRentacarOptHBtn-icon::after,
.top_optionRcTypeDtBtn.active .idxSearchWRentacarOptHBtn-icon::after {
  display: none;
}

.active .idxSearchWRentacarOptHBtn-txt.open {
  display: none;
}
.active .idxSearchWRentacarOptHBtn-txt.close {
  display: block;
}

.top_optionRcTypeDd {
  display: none;
  width: 100%;
  overflow: hidden;
}

.top_optionRcTypeDdList {
  width: 100%;
  height: auto;
  padding: 10px;
}

.top_optionRcTypeDdListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1em;
}

.top_optionRcTypeHelpW {
  text-align: right;
}
.top_optionRcTypeHelpW button, .top_optionRcTypeHelpW a {
  font-size: 0.8rem;
}

.form_option_rctype {
  width: 100%;
  height: auto;
  display: flex !important;
  flex-wrap: nowrap;
  justify-content: space-between;
  align-items: flex-start;
}
.form_option_rctype span.typeTxt {
  display: inline-block;
  width: auto;
  font-size: 0.9rem;
  color: #666666;
  margin-top: 0;
  font-weight: bold;
}
@media print, screen and (min-width: 750px) {
  .form_option_rctype span.typeTxt {
    margin-left: 0;
    font-size: 0.875rem;
    width: 70%;
  }
}
.form_option_rctype span.typeTxt span.typeTxtSub {
  font-size: 0.8rem;
  margin-left: 0;
  font-weight: bold;
}
.form_option_rctype span.typeCapacity {
  display: inline-block;
  width: auto;
  font-size: 0.7rem;
  background: #fff;
  color: #007a52;
  padding: 5px 12px;
  border-radius: 3px;
  font-weight: bold;
}
@media print, screen and (min-width: 750px) {
  .form_option_rctype span.typeCapacity {
    background: #e9f0e9;
    margin-left: auto;
    font-size: 0.8rem;
    padding: 2px 12px;
  }
}

.top_optionRcSeatW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcSeatW {
    max-width: 271px;
  }
}

.top_optionRcSeatDt {
  width: 70%;
  height: auto;
  font-size: 0.9rem;
  color: #666666;
  padding-left: 15px;
  font-weight: bold;
  margin-bottom: 13px;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcSeatDt {
    font-size: 0.875rem;
    line-height: 1.2;
  }
}
.top_optionRcSeatDt span {
  font-weight: normal;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcSeatDt span {
    font-size: 0.7rem;
  }
}

.top_optionRcSeatDd {
  width: 25%;
  height: auto;
  margin-bottom: 13px;
}

.top_optionRcEtcW {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #d9d9d9;
}

.top_optionRcEtcWlabel {
  color: #333;
}
.top_optionRcEtcWlabel span {
  font-size: 0.8rem;
  font-weight: normal;
}

.top_optionRcEtcAttW {
  margin-top: 20px;
  padding-top: 20px;
  border-top: 1px solid #d9d9d9;
}

.top_optionRcEtcAttList {
  width: 100%;
  height: auto;
}

.top_optionRcEtcAttListItem {
  font-size: 0.8rem;
  position: relative;
  padding-left: 1em;
  line-height: 1.7;
}
.top_optionRcEtcAttListItem::before {
  position: absolute;
  content: "※";
  width: 1em;
  height: 1em;
  top: 0;
  left: 0;
  display: block;
}
@media print, screen and (min-width: 750px) {
  .top_optionRcEtcAttListItem {
    font-size: 0.75rem;
  }
}

.top_formEntryOptionList {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.top_formEntryOptionTerm {
  width: 100%;
  margin-top: 25px;
  padding-bottom: 20px;
  font-weight: bold;
}
.top_formEntryOptionTerm:last-of-type {
  margin-top: 20px;
}
.top_formEntryOptionTerm.tPkeyword {
  width: 100% !important;
  border: none !important;
  padding-bottom: 15px !important;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionTerm {
    width: 100%;
    padding-bottom: 10px;
    border: none;
    margin-top: 10px;
    font-size: 0.938rem;
  }
  .optCol2 .top_formEntryOptionTerm {
    width: 6rem;
    margin-top: 25px;
    padding-bottom: 20px;
    border-bottom: 1px solid #d9d9d9;
  }
  .optCol2 .top_formEntryOptionTerm:last-of-type {
    border: none;
  }
}

.top_formEntryOptionDesc {
  width: 100%;
  margin-top: 5px;
  padding-bottom: 20px;
  border-bottom: 1px solid #d9d9d9;
  font-size: 0.9rem;
}
.top_formEntryOptionDesc:last-of-type {
  border: none;
  padding-bottom: 0;
}
.top_formEntryOptionDesc.tPkeyword {
  width: 100% !important;
  margin-top: 0 !important;
  padding-left: 0 !important;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionDesc.tPkeyword {
    width: 100%;
  }
  .top_formEntryOptionDesc.tPkeyword input:placeholder-shown {
    font-size: 0.875rem;
  }
  .top_formEntryOptionDesc.tPkeyword input::-webkit-input-placeholder {
    font-size: 0.875rem;
  }
  .top_formEntryOptionDesc.tPkeyword input:-moz-placeholder {
    font-size: 0.875rem;
  }
  .top_formEntryOptionDesc.tPkeyword input::-moz-placeholder {
    font-size: 0.875rem;
  }
  .top_formEntryOptionDesc.tPkeyword input:-ms-input-placeholder {
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionDesc {
    width: 100%;
  }
  .optCol2 .top_formEntryOptionDesc {
    width: calc(100% - 6rem);
    margin-top: 25px;
    padding-bottom: 20px;
  }
}

.top_formEntryOptionTrainList {
  width: 100%;
  height: auto;
}

.top_formEntryOptionTrainListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1.2em;
  color: #666666;
  font-weight: bold;
  font-size: 0.875rem;
}
.top_formEntryOptionTrainListItem:last-of-type {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionTrainListItem {
    margin-bottom: 10px;
  }
}

.top_formEntryOptionTrainSubList {
  width: 100%;
  height: auto;
  padding-left: 22px;
  margin-top: 0.8em;
}

.top_formEntryOptionTrainSubListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1.2em;
  color: #666666;
  font-weight: bold;
  font-size: 0.875rem;
}

.top_formEntryOptionSaleListW {
  margin-top: 25px;
}

.top_formEntryOptionCheckTxt {
  margin-top: 5px;
  padding-left: 25px;
  color: #666666;
  font-size: 0.8rem;
  font-weight: normal;
  line-height: 1.3;
}

.top_formEntryOptionRadio {
  display: none;
}
.top_formEntryOptionRadio + label {
  display: block;
  padding-left: 25px;
  position: relative;
}
.top_formEntryOptionRadio + label::before {
  position: absolute;
  content: "";
  width: 20px;
  height: 20px;
  top: 1px;
  left: 0;
  border: 2px solid #626262;
  border-radius: 50%;
  box-sizing: border-box;
}
.top_formEntryOptionRadio + label span {
  display: block;
  font-size: 0.8rem;
  font-weight: normal;
  margin-top: 0.3em;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionRadio + label span {
    display: inline;
    margin-left: 1em;
    margin-top: 0;
  }
}
.top_formEntryOptionRadio:checked + label::before {
  border-color: #007a52;
}
.top_formEntryOptionRadio:checked + label::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 6px;
  left: 5px;
  border-radius: 50%;
  background-color: #007a52;
  box-sizing: border-box;
}
.top_formEntryOptionRadio:disabled + label {
  color: #a6a6a6;
}
.top_formEntryOptionRadio:disabled + label::before {
  border-color: #a6a6a6;
}
.top_formEntryOptionRadio:disabled:checked + label {
  color: #a6a6a6;
}
.top_formEntryOptionRadio:disabled:checked + label::before {
  border-color: #a6a6a6;
}
.top_formEntryOptionRadio:disabled:checked + label::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 6px;
  left: 5px;
  border-radius: 50%;
  background-color: #a6a6a6;
  box-sizing: border-box;
}

.top_formEntrySubmitbtnW {
  width: 100%;
  height: auto;
}
.top_formEntrySubmitbtnW input, .top_formEntrySubmitbtnW button {
  height: 60px;
  font-size: 1.2rem;
  transition-duration: .4s;
}

.top_formEntrySubmitbtnW input:focus, .top_formEntrySubmitbtnW button:focus {
  outline: solid 2px #06e;
  transition-duration: 0s;
}


@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitbtnW input, .top_formEntrySubmitbtnW button {
    font-size: 1rem;
    height: 48px;
  }
  .top_formEntrySubmitbtnW input:hover, .top_formEntrySubmitbtnW button:hover {
    background-color: #1f81cc !important;
    border-color: #1f81cc !important;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitbtnW {
    max-width: 280px;
    width: 56%;
  }
}
.rentacarPagemove .top_formEntrySubmitbtnW {
  display: none;
}
.searchNotuse .top_formEntrySubmitbtnW {
  display: none;
}

.top_formEntrySubmitOptbtnW {
  width: 100%;
  height: auto;
  display: none;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitOptbtnW {
    max-width: 200px;
    width: 40%;
    margin-left: 20px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitOptbtnW.active {
    display: block;
  }
}
.searchNotuse .top_formEntrySubmitOptbtnW {
  display: none !important;
}

.top_formEntrySubmitOptbtn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: 100%;
  height: 60px;
  background-color: #f0f3f5;
  color: #007a52;
  border: 1px solid #f0f3f5;
  border-radius: 5px;
  font-size: 1rem;
  font-weight: bold;
  font-family: inherit;
  text-decoration: none;
  text-align: left;
  /*outline: none;*/
  padding: 0 12px;
  margin-left: auto;
  margin-right: auto;
  line-height: 1;
  cursor: pointer;
  position: relative;
  transition-duration: .4s;
}

.top_formEntrySubmitOptbtn:focus {
  outline: solid 2px #06e;
  transition-duration: 0s;
}

@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitOptbtn {
    padding-left: 12px;
    padding-right: calc(1.4em + 7%);
    height: 40px;
    font-size: 0.9rem;
  }
  .top_formEntrySubmitOptbtn.rentacar {
    height: 48px;
    line-height: 1.4;
  }
}
.top_formEntrySubmitOptbtn:hover, .top_formEntrySubmitOptbtn:active {
  background-color: #e4ebf0;
  border-color: #e4ebf0;
  color: #007a52;
}

/* 閉じるボタン */
.optionCloseBtn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: space-between;
  width: auto;
  height: 60px;
  background-color: #fff;
  color: #007a52;
  border: 1px solid #fff;
  border-radius: 5px;
  font-size: 1rem;
  font-weight: bold;
  font-family: inherit;
  text-decoration: none;
  text-align: left;
  /*outline: none;*/
  padding: 0 12px;
  margin-left: auto;
  line-height: 1;
  cursor: pointer;
  position: relative;
}

.optionCloseBtn:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .optionCloseBtn {
    padding-left: 10px;
    padding-right: 10px;
    height: 36px;
    font-size: 0.9rem;
    position: absolute;
    right: 16px;
    bottom: 16px;
  }
}
.optionCloseBtn:hover, .optionCloseBtn:active {
  background-color: #e4ebf0;
  border-color: #e4ebf0;
  color: #007a52;
}

/*=========================================
乗車駅降車駅選択時のポップアップ
=========================================*/
.topPuStGeton {
  /*	position: fixed;
  	//top: 100%;
  	top: 100%;
  	left: 0;
  	width: 100%;
  	height: 100vh;
  	z-index:9999;
  	background:$white;
  	transition-duration: .5s;

  	@include pc {*/
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 9999;
  /*	}*/
  box-shadow: 0px 0px 1px 0px #cccccc;
}
.topPuStGeton.active {
  /*		top: 0;

  		@include pc {*/
  display: block;
  top: 100%;
  /*		}*/
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton.active {
    /*position: fixed;
    left: 128px;
    right: 527px;
    margin-left: auto;
    margin-right: auto;*/
    position: fixed;
    margin-left: auto;
    margin-right: auto;
    left: 18px;
    right: 526px;
  }
}

.topPuStGeton_tabWrapper {
  width: 100%;
  height: 100%;
  /*	margin-top: 20px;*/
  background: linear-gradient(to bottom, #fff, #fff 43px, #f5f5f5 43px);
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabWrapper {
    height: auto;
    margin-top: 0;
    background: linear-gradient(to bottom, #fff, #fff 46px, #f5f5f5 46px);
    border: 1px solid #d9d9d9;
  }
}
.topPuStGeton_tabWrapper.bgGray {
  background: #f5f5f5;
}
.topPuStGeton_tabWrapper h4 {
  position: relative;
}
.topPuStGeton_tabWrapper h4 .close {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-radius: 10px;
  width: 20px;
  height: 20px;
  background-color: #1a70b2;
}
.topPuStGeton_tabWrapper h4 .close::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.topPuStGeton_tabWrapper h4 .close::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(-45deg);
}

.topPuRcGeton_tabWrapper {
  width: 100%;
  height: 100%;
  /*	margin-top: 20px;*/
  background: #f5f5f5;
}
@media print, screen and (min-width: 750px) {
  .topPuRcGeton_tabWrapper {
    height: auto;
    margin-top: 0;
    border: 1px solid #d9d9d9;
  }
}
.topPuRcGeton_tabWrapper.bgGray {
  background: #f5f5f5;
}
.topPuRcGeton_tabWrapper h4 {
  position: relative;
}
.topPuRcGeton_tabWrapper h4 .close {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-radius: 10px;
  width: 20px;
  height: 20px;
  background-color: #1a70b2;
}
.topPuRcGeton_tabWrapper h4 .close::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.topPuRcGeton_tabWrapper h4 .close::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(-45deg);
}

.topPuStGeton_tabW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-bottom: 20px;
  position: relative;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabW {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}
.topPuStGeton_tabW li.tab {
  width: 100%;
  height: auto;
  padding-top: 43px;
}
.topPuStGeton_tabW li.tab:last-of-type {
  padding-top: 0;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabW li.tab {
    padding-top: 46px;
  }
}

.topPuStGeton_tabStInner {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStInner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.active + .topPuStGeton_tabStInner {
  display: block;
}

.topPuRcGeton_tabStInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .topPuRcGeton_tabStInner {
    padding-left: 15px;
    padding-right: 15px;
  }
}

.topPuStGeton_tabStH-st {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  right: 50%;
  /*	width:10em;*/
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topPuStGeton_tabStH-st:focus {
  outline: solid 2px #06c;
}

@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStH-st {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 0;
    border-top: none;
    border-left: none;
  }
}
.topPuStGeton_tabStH-st.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topPuStGeton_tabStH-st.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStH-st.active::before {
    width: 100px;
  }
}

.topPuStGeton_tabStH-for {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 50%;
  /*	width:10em;*/
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topPuStGeton_tabStH-for:focus {
  outline: solid 2px #06c;
}

@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStH-for {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 50%;
    border-top: none;
    border-right: none;
  }
}
.topPuStGeton_tabStH-for.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topPuStGeton_tabStH-for.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStH-for.active::before {
    width: 100px;
  }
}

.topPuStGeton_tabStFormGeton {
  padding-top: 15px;
}

.topPuStGeton_tabStFormGetonLead {
  font-size: 0.8rem;
  color: #666666;
}

.topPuStGeton_tabStFormGetonW {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStFormGetonW {
    display: none;
  }
}

.topPuStGeton_tabStRecent {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topPuStGeton_tabStRecentHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGeton_tabStRecentListW {
  width: 100%;
  height: auto;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentListW {
    margin-top: 10px;
  }
}

.topPuStGeton_tabStRecentList {
  width: 100%;
  height: auto;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentList {
    overflow-y: auto;
    height: 100%;
    border: none;
    background: none;
  }
}
.topPuStGeton_tabStRecentList li {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9;
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
.topPuStGeton_tabStRecentList li:last-of-type {
  border-bottom: none;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentList li {
    border: none;
  }
}

.topPuStGeton_tabStRecentListBtn {
  width: 100%;
  height: auto;
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  /*outline: none;*/
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topPuStGeton_tabStRecentListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentListBtn {
    padding: 8px 0;
  }
}
.topPuStGeton_tabStRecentListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStRecentListBtn.more {
    color: #1a70b2;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.topPuStGeton_tabStForInner {
  display: none;
}
.active + .topPuStGeton_tabStForInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForInner {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 10px;
  }
}

.topPuStGeton_tabStForStname {
  padding-top: 15px;
}

.topPuStGeton_tabStForStnameLead {
  font-size: 1.0rem;
  font-weight: bold;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForStnameLead {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGeton_tabStForSelect {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topPuStGeton_tabStForSelectHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGeton_tabStForSelectHeader-btn {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  background: none;
  padding: 0 0 0 10px;
  border: none;
  font-family: inherit;
  outline: none;
  cursor: pointer;
  color: #1a70b2;
  position: relative;
  font-size: 1rem;
  font-weight: bold;
  position: relative;
}
.topPuStGeton_tabStForSelectHeader-btn::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 0;
  margin-top: auto;
  margin-bottom: auto;
  width: 7px;
  height: 11px;
  background: url(/Personal/reserve/wb/img/trainsearch/ts_resultnextprevbtnblue-icon.png) no-repeat left top;
  background-size: 7px 11px;
}

.topPuStGeton_tabStForSelectHeader-pref {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectHeader-pref {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGeton_tabStForSelectListW {
  width: 100%;
  /*	height: 65vh;*/
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectListW {
    height: 360px;
    max-height: 360px;
    margin-top: 10px;
  }
}
/* 降車駅と合わせるため */
/* @media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForStname + .topPuStGeton_tabStForSelect .topPuStGeton_tabStForSelectListW {
    height: 325px;
  }
} */


.topPuStGeton_tabStForSelectList {
  width: 100%;
  height: 100%;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
  overflow-y: scroll;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectList {
    border: none;
    background: none;
    overflow-y: auto;
  }
}
.topPuStGeton_tabStForSelectList li {
  width: 100%;
  height: auto;
  /* border-bottom: 1px solid #d9d9d9; */ /*製造の関係上topPuStGeton_tabStForSelectListBtnにスタイルを移動*/
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
/* .topPuStGeton_tabStForSelectList li:last-of-type {
  border-bottom: none;
} */ /*製造の関係上topPuStGeton_tabStForSelectListBtnにスタイルを移動*/
/* @media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectList li {
    border: none;
  }
} */  /*製造の関係上topPuStGeton_tabStForSelectListBtnにスタイルを移動*/

.topPuStGeton_tabStForSelectListBtn {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9; /*製造の関係上liタグのスタイルを移動*/
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  outline: none;
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topPuStGeton_tabStForSelectListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

.topPuStGeton_tabStForSelectList:last-of-type {
  border-bottom: none;
} /*製造の関係上liタグのスタイルを移動*/
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectListBtn {
    padding: 8px 0;
    border: none; /*製造の関係上liタグのスタイルを移動*/
  }
}
.topPuStGeton_tabStForSelectListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topPuStGeton_tabStForSelectListBtn.more {
    color: #a6a6a6;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.topPuStGetoff {
  /*	position: fixed;
  	//top: 100%;
  	top: 100%;
  	left: 0;
  	width: 100%;
  	height: 100vh;
  	z-index:9999;
  	background:$white;
  	transition-duration: .5s;

  	@include pc {*/
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 9999;
  /*	}*/
  box-shadow: 0px 0px 1px 0px #cccccc;
}
.topPuStGetoff.active {
  /*		top: 0;

  		@include pc {*/
  display: block;
  top: 100%;
  /*		}*/
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff.active {
    /*position: fixed;
    left: 128px;
    right: 527px;
    margin-left: auto;
    margin-right: auto;*/
    position: fixed;
    margin-left: auto;
    margin-right: auto;
    left: 60px;
    right: 18px;
  }
}

.topPuStGetoff_tabWrapper {
  width: 100%;
  height: 100%;
  /*	margin-top: 20px;*/
  background: linear-gradient(to bottom, #fff, #fff 43px, #f5f5f5 43px);
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabWrapper {
    height: auto;
    margin-top: 0;
    background: linear-gradient(to bottom, #fff, #fff 46px, #f5f5f5 46px);
    border: 1px solid #d9d9d9;
  }
}
.topPuStGetoff_tabWrapper.bgGray {
  background: #f5f5f5;
}
.topPuStGetoff_tabWrapper h4 {
  position: relative;
}
.topPuStGetoff_tabWrapper h4 .close {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-radius: 10px;
  width: 20px;
  height: 20px;
  background-color: #1a70b2;
}
.topPuStGetoff_tabWrapper h4 .close::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.topPuStGetoff_tabWrapper h4 .close::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(-45deg);
}

.topPuStGetoff_tabW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-bottom: 20px;
  position: relative;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabW {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}
.topPuStGetoff_tabW li.tab {
  width: 100%;
  height: auto;
  padding-top: 43px;
}
.topPuStGetoff_tabW li.tab:last-of-type {
  padding-top: 0;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabW li.tab {
    padding-top: 46px;
  }
}

.topPuStGetoff_tabStInner {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStInner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.active + .topPuStGetoff_tabStInner {
  display: block;
}

.topPuStGetoff_tabStH-st {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  right: 50%;
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topPuStGetoff_tabStH-st:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStH-st {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 0;
    border-top: none;
    border-left: none;
  }
}
.topPuStGetoff_tabStH-st.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topPuStGetoff_tabStH-st.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStH-st.active::before {
    width: 100px;
  }
}

.topPuStGetoff_tabStH-for {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 50%;
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topPuStGetoff_tabStH-for:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStH-for {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 50%;
    border-top: none;
    border-right: none;
  }
}
.topPuStGetoff_tabStH-for.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topPuStGetoff_tabStH-for.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStH-for.active::before {
    width: 100px;
  }
}

.topPuStGetoff_tabStFormGeton {
  padding-top: 15px;
}

.topPuStGetoff_tabStFormGetonLead {
  font-size: 0.8rem;
  color: #666666;
}

.topPuStGetoff_tabStFormGetonW {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStFormGetonW {
    display: none;
  }
}

.topPuStGetoff_tabStRecent {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topPuStGetoff_tabStRecentHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGetoff_tabStRecentListW {
  width: 100%;
  height: auto;
  /* max-height: 65vh; */
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentListW {
    margin-top: 10px;
  }
}

.topPuStGetoff_tabStRecentList {
  width: 100%;
  height: auto;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentList {
    border: none;
    background: none;
  }
}
.topPuStGetoff_tabStRecentList li {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9;
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
.topPuStGetoff_tabStRecentList li:last-of-type {
  border-bottom: none;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentList li {
    border: none;
  }
}

.topPuStGetoff_tabStRecentListBtn {
  width: 100%;
  height: auto;
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  /*outline: none;*/
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topPuStGetoff_tabStRecentListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentListBtn {
    padding: 8px 0;
  }
}
.topPuStGetoff_tabStRecentListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStRecentListBtn.more {
    color: #1a70b2;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.topPuStGetoff_tabStForInner {
  display: none;
}
.active + .topPuStGetoff_tabStForInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForInner {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 10px;
  }
}

.topPuStGetoff_tabStForStname {
  padding-top: 15px;
}

.topPuStGetoff_tabStForStnameLead {
  font-size: 0.8rem;
  color: #666666;
}

.topPuStGetoff_tabStForSelect {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topPuStGetoff_tabStForSelectHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topPuStGetoff_tabStForSelectListW {
  width: 100%;
  /*	height: 65vh;*/
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectListW {
    height: 360px;
    max-height: 360px;
    margin-top: 10px;
  }
}

.topPuStGetoff_tabStForSelectList {
  width: 100%;
  height: 100%;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
  overflow-y: scroll;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectList {
    border: none;
    background: none;
    overflow-y: auto;
  }
}
.topPuStGetoff_tabStForSelectList li {
  width: 100%;
  height: auto;
  /* border-bottom: 1px solid #d9d9d9; */ /*製造の関係上topPuStGetoff_tabStForSelectListBtnにスタイルを移動*/
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
/* .topPuStGetoff_tabStForSelectList li:last-of-type {
  border-bottom: none;
} */ /*製造の関係上topPuStGetoff_tabStForSelectListBtnにスタイルを移動*/
/* @media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectList li {
    border: none;
  }
} */ /*製造の関係上topPuStGetoff_tabStForSelectListBtnにスタイルを移動*/

.topPuStGetoff_tabStForSelectListBtn {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9; /*製造の関係上liタグのスタイルを移動*/
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  outline: none;
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topPuStGetoff_tabStForSelectListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

.topPuStGetoff_tabStForSelectListBtn:last-of-type {
  border-bottom: none;
}/*製造の関係上liタグのスタイルを移動*/
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectListBtn {
    padding: 8px 0;
    border: none; /*製造の関係上liタグのスタイルを移動*/
  }
}
.topPuStGetoff_tabStForSelectListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topPuStGetoff_tabStForSelectListBtn.more {
    color: #a6a6a6;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.topFormEntryVia1,
.topFormEntryVia2,
.topFormEntryVia3 {
  /*	position: fixed;
  	//top: 100%;
  	top: 100%;
  	left: 0;
  	width: 100%;
  	height: 100vh;
  	z-index:9999;
  	background:$white;
  	transition-duration: .5s;

  	@include pc {*/
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 9999;
  /*	}*/
  box-shadow: 0px 0px 1px 0px #cccccc;
}
.topFormEntryVia1.active,
.topFormEntryVia2.active,
.topFormEntryVia3.active {
  /*		top: 0;

  		@include pc {*/
  display: block;
  top: 100%;
  /*		}*/
}
@media print, screen and (min-width: 750px) {
.topFormEntryVia1.active,
.topFormEntryVia2.active,
.topFormEntryVia3.active {
    /*position: fixed;
    left: 128px;
    right: 527px;
    margin-left: auto;
    margin-right: auto;*/
    position: fixed;
    margin-left: auto;
    margin-right: auto;
    left: 160px;
    right: 395px;
  }
}

.topFormEntryVia_tabWrapper {
  width: 100%;
  height: 100%;
  /*	margin-top: 20px;*/
  background: linear-gradient(to bottom, #fff, #fff 43px, #f5f5f5 43px);
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabWrapper {
    height: auto;
    margin-top: 0;
    background: linear-gradient(to bottom, #fff, #fff 46px, #f5f5f5 46px);
    border: 1px solid #d9d9d9;
  }
}
.topFormEntryVia_tabWrapper h4 {
  position: relative;
}
.topFormEntryVia_tabWrapper h4 .close {
  content: '';
  position: absolute;
  top: 50%;
  right: 0;
  margin-top: -10px;
  border-radius: 10px;
  width: 20px;
  height: 20px;
  background-color: #1a70b2;
}
.topFormEntryVia_tabWrapper h4 .close::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.topFormEntryVia_tabWrapper h4 .close::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(-45deg);
}

.topFormEntryVia_tabW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-bottom: 20px;
  position: relative;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabW {
    max-width: none;
    width: 100%;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}
.topFormEntryVia_tabW li.tab {
  width: 100%;
  height: auto;
  padding-top: 43px;
}
.topFormEntryVia_tabW li.tab:last-of-type {
  padding-top: 0;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabW li.tab {
    padding-top: 46px;
  }
}

.topFormEntryVia_tabStInner {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStInner {
    padding-left: 15px;
    padding-right: 15px;
  }
}
.active + .topFormEntryVia_tabStInner {
  display: block;
}

.topFormEntryVia_tabStH-st {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  right: 50%;
  /*	width:10em;*/
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topFormEntryVia_tabStH-st:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStH-st {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 0;
    border-top: none;
    border-left: none;
  }
}
.topFormEntryVia_tabStH-st.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topFormEntryVia_tabStH-st.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStH-st.active::before {
    width: 100px;
  }
}

.topFormEntryVia_tabStH-for {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 50%;
  /*	width:10em;*/
  width: 50%;
  height: 43px;
  padding: 0;
  border: 1px solid #d9d9d9;
  border-bottom: none;
  /*	border-radius: 5px 5px 0 0;*/
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.topFormEntryVia_tabStH-for:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStH-for {
    width: 50%;
    height: 46px;
    border-radius: 0;
    left: 50%;
    border-top: none;
    border-right: none;
  }
}
.topFormEntryVia_tabStH-for.active {
  border-color: #f5f5f5;
  background: #f5f5f5;
  color: #007a52;
  cursor: default;
}
.topFormEntryVia_tabStH-for.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 8em;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStH-for.active::before {
    width: 100px;
  }
}

.topFormEntryVia_tabStFormGeton {
  padding-top: 15px;
}

.topFormEntryVia_tabStFormGetonLead {
  font-size: 0.8rem;
  color: #666666;
}

.topFormEntryVia_tabStFormGetonW {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStFormGetonW {
    display: none;
  }
}

.topFormEntryVia_tabStRecent {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topFormEntryVia_tabStRecentHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topFormEntryVia_tabStRecentListW {
  width: 100%;
  height: auto;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentListW {
    margin-top: 10px;
  }
}

.topFormEntryVia_tabStRecentList {
  width: 100%;
  height: auto;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentList {
    overflow-y: auto;
    height: 100%;
    border: none;
    background: none;
  }
}
.topFormEntryVia_tabStRecentList li {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9;
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
.topFormEntryVia_tabStRecentList li:last-of-type {
  border-bottom: none;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentList li {
    border: none;
  }
}

.topFormEntryVia_tabStRecentListBtn {
  width: 100%;
  height: auto;
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  outline: none;
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topFormEntryVia_tabStRecentListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentListBtn {
    padding: 8px 0;
  }
}
.topFormEntryVia_tabStRecentListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStRecentListBtn.more {
    color: #1a70b2;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

.topFormEntryVia_tabStForInner {
  display: none;
}
.active + .topFormEntryVia_tabStForInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForInner {
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 10px;
  }
}

.topFormEntryVia_tabStForStname {
  padding-top: 15px;
}

.topFormEntryVia_tabStForStnameLead {
  font-size: 0.8rem;
  color: #666666;
}

.topFormEntryVia_tabStForSelect {
  width: 100%;
  height: auto;
  margin-top: 15px;
}

.topFormEntryVia_tabStForSelectHeader {
  width: 100%;
  height: auto;
  font-size: 1rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectHeader {
    font-size: 0.8rem;
    font-weight: normal;
  }
}

.topFormEntryVia_tabStForSelectListW {
  width: 100%;
  /*	height: 65vh;*/
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectListW {
    height: 340px;
    max-height: 340px;
    margin-top: 10px;
  }
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForStname + .topFormEntryVia_tabStForSelect .topFormEntryVia_tabStForSelectListW {
    height: 306px;
  }
}

.topFormEntryVia_tabStForSelectList {
  width: 100%;
  height: 100%;
  border: 1px solid #d9d9d9;
  border-radius: 5px;
  margin: 0;
  padding: 0;
  background: #fff;
  overflow-y: scroll;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectList {
    border: none;
    background: none;
    overflow-y: auto;
  }
}
.topFormEntryVia_tabStForSelectList li {
  width: 100%;
  height: auto;
  /* border-bottom: 1px solid #d9d9d9; */ /*製造の関係上topFormEntryVia_tabStForSelectListBtnにスタイルを移動*/
  color: #1a70b2;
  font-weight: bold;
  font-size: 0.9rem;
}
/* .topFormEntryVia_tabStForSelectList li:last-of-type {
  border-bottom: none;
} */ /*製造の関係上topFormEntryVia_tabStForSelectListBtnにスタイルを移動*/
/* @media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectList li {
    border: none;
  }
} */ /*製造の関係上topFormEntryVia_tabStForSelectListBtnにスタイルを移動*/

.topFormEntryVia_tabStForSelectListBtn {
  width: 100%;
  height: auto;
  border-bottom: 1px solid #d9d9d9; /*製造の関係上liタグのスタイルを移動*/
  display: block;
  padding: 12px;
  text-align: left;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: bold;
  font-family: inherit;
  border: none;
  /*outline: none;*/
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}

.topFormEntryVia_tabStForSelectListBtn:focus {
  outline: solid 2px #06e;
  width: calc(100% - 4px);
  margin-left: 2px;
  margin-top: 2px;
}

.topFormEntryVia_tabStForSelectListBtn:last-of-type {
  border-bottom: none;
}/*製造の関係上liタグのスタイルを移動*/
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectListBtn {
    padding: 8px 0;
    border: none; /*製造の関係上liタグのスタイルを移動*/
  }
}
.topFormEntryVia_tabStForSelectListBtn.more {
  text-align: center;
}
@media print, screen and (min-width: 750px) {
  .topFormEntryVia_tabStForSelectListBtn.more {
    color: #a6a6a6;
    padding-top: 10px;
    padding-bottom: 10px;
  }
}

/*=========================================
日付を選択ポップアップ
=========================================*/
.topPuCalendar-1, .topPuCalendar-2, .topPuCalendar-3 {
  position: absolute;
  left: 0;
  width: 100%;
  height: 0;
  z-index: 1500;
  background: #fff;
  transition-duration: .5s;
  overflow: hidden;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar-1, .topPuCalendar-2, .topPuCalendar-3 {
    display: none;
    position: absolute;
    top: 100%;
    left: 0;
    right: 0;
    margin-left: auto;
    margin-right: auto;
    max-width: 780px;
    height: auto;
    z-index: 1500;
    border: 1px solid #d9d9d9;
    border-radius: 5px;
    padding: 19px;
    transition-duration: 0s;
  }
}
.topPuCalendar-1.active, .topPuCalendar-2.active, .topPuCalendar-3.active {
  overflow: hidden;
  -webkit-overflow-scrolling: touch;
  pointer-events: auto;
  height: 100vh;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar-1.active, .topPuCalendar-2.active, .topPuCalendar-3.active {
    display: block;
    top: calc(100% + 5px);
    box-shadow: 0 0 2px #bbb;
    height: auto;
  }
}

.topPuCalendar_headerW {
  width: 100%;
  height: auto;
  position: relative;
}

.topPuCalendar_header {
  width: 100%;
  height: auto;
  background: #007a52;
  color: #fff;
  text-align: center;
  padding: 12px 0;
  font-size: 0.9rem;
  font-weight: normal;
}

.topPuCalendar_headerBtnClose {
  position: absolute;
  display: block;
  width: 24px;
  height: 100%;
  left: 6px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  padding: 0;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  font-size: 0;
  outline: none;
  background: none;
  border: none;
  box-sizing: border-box;
  cursor: pointer;
}
.topPuCalendar_headerBtnClose::before {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  bottom: 0;
  left: 9px;
  margin-top: auto;
  margin-bottom: auto;
  width: 2px;
  height: 18px;
  background: #fff;
  transform: rotate(45deg);
}
.topPuCalendar_headerBtnClose::after {
  position: absolute;
  display: block;
  content: "";
  top: 0;
  bottom: 0;
  left: 9px;
  margin-top: auto;
  margin-bottom: auto;
  width: 2px;
  height: 18px;
  background: #fff;
  transform: rotate(-45deg);
}

.topPuCalendar_wrapper {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  overflow-x: auto;
  overflow-y: scroll;
  -webkit-overflow-scrolling: touch;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_wrapper {
    order: 2;
    overflow-y: auto;
    height: auto;
  }
}

.topPuCalendar_mainW {
  width: 100%;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainW {
    order: 3;
    overflow-x: scroll;
    overflow-y: auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: auto;
  }
}

.topPuRcCalendar_mainW,
.topPuTourCalendar_mainW {
  width: 100%;
}
@media print, screen and (min-width: 750px) {
  .topPuRcCalendar_mainW,
  .topPuTourCalendar_mainW {
    order: 3;
    overflow-x: scroll;
    overflow-y: auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    width: auto;
  }
}

.topPuCalendar_main {
  width: 100%;
  height: auto;
}

.topPuCalendar_mainBox {
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBox {
    min-width: 360px;
    margin-right: 20px;
  }
  .topPuCalendar_mainBox:last-of-type {
    margin-right: 0;
  }
}
.topPuCalendar_mainBox:nth-child(n + 2) .topPuCalendar_mainBoxDd-week {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBox:nth-child(n + 2) .topPuCalendar_mainBoxDd-week {
    display: block;
  }
}

.topPuCalendar_mainBoxDl {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
}

.topPuCalendar_mainBoxDt {
  display: block;
  width: 100%;
  height: auto;
  font-weight: bold;
  border-bottom: 1px solid #d9d9d9;
  margin-top: 20px;
  margin-left: 15px;
  margin-right: 15px;
  padding-bottom: 5px;
  order: 2;
}
.topPuCalendar_mainBox:first-of-type .topPuCalendar_mainBoxDt {
  margin-top: 40px;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBox:first-of-type .topPuCalendar_mainBoxDt {
    margin-top: 20px;
  }
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDt {
    order: 1;
    margin-right: 0;
    margin-left: 0;
  }
}

.topPuCalendar_mainBoxDd-week {
  position: absolute;
  display: block;
  width: 100%;
  height: auto;
  background: #f5f5f5;
  padding-left: 15px;
  padding-right: 15px;
  border-bottom: 1px solid #d9d9d9;
  order: 1;
  z-index: 20;
  top: 100vh;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDd-week {
    position: static;
    order: 2;
    padding-left: 0;
    padding-right: 0;
    border-bottom: 0;
    background: none;
  }
}

.topPuCalendar_mainBoxWeekList {
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}

.topPuCalendar_mainBoxWeekListItem {
  display: block;
  width: calc(100% / 7);
  text-align: center;
  font-size: 0.8rem;
  font-weight: bold;
  padding-top: 4px;
  padding-bottom: 4px;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxWeekListItem {
    color: #a6a6a6;
    margin-top: 8px;
    margin-bottom: 8px;
  }
}

.topPuCalendar_mainBoxDd-day {
  display: block;
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 10px;
  margin-top: 7px;
  order: 3;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDd-day {
    padding-left: 0;
    padding-right: 0;
    overflow: hidden;
  }
}

.topPuCalendar_mainBoxDayList {
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList {
    width: 364px;
  }
}
.topPuCalendar_mainBoxDayList.start1::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 0);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start1::before {
    width: calc(52px * 0);
  }
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+8) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+8) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+8) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+7) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+7) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+7) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start2::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 1);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start2::before {
    width: calc(52px * 1);
  }
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+7) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+7) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+7) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+6) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+6) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start2 li:nth-of-type(7n+6) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start3::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 2);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start3::before {
    width: calc(52px * 2);
  }
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+6) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+6) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+6) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+5) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+5) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start3 li:nth-of-type(7n+5) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start4::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 3);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start4::before {
    width: calc(52px * 3);
  }
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+5) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+5) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+5) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+4) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+4) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start4 li:nth-of-type(7n+4) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start5::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 4);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start5::before {
    width: calc(52px * 4);
  }
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+4) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+4) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+4) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+3) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+3) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start5 li:nth-of-type(7n+3) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start6::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 5);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start6::before {
    width: calc(52px * 5);
  }
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+3) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+3) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+3) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+2) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+2) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start6 li:nth-of-type(7n+2) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start7::before {
  content: "";
  display: block;
  width: calc((100% / 7) * 6);
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayList.start7::before {
    width: calc(52px * 6);
  }
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+2) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+2) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+2) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+1) div {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+1) div a {
  color: #1a70b2;
}
.topPuCalendar_mainBoxDayList.start7 li:nth-of-type(7n+1) div a:hover {
  color: #44a3ec;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+1) div {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+1) div a {
  color: #b42700;
}
.topPuCalendar_mainBoxDayList.start1 li:nth-of-type(7n+1) div a:hover {
  color: #44a3ec;
}

.topPuCalendar_mainBoxDayListItem {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: calc((100% / 7) - 5px);
  min-height: calc(((100vw - 25px) / 7) - 5px);
  height: auto;
  text-align: center;
  font-size: 0.8rem;
  font-weight: bold;
  margin-right: 5px;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayListItem {
    width: 48px;
    height: 48px;
    min-height: auto;
    margin-right: 4px;
  }
}
.topPuCalendar_mainBoxDayListItem > div {
  width: 100%;
  height: 100%;
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
}
.topPuCalendar_mainBoxDayListItem .nonSelect {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: calc(((100vw - 25px) / 7) - 5px);
  min-height: calc(((100vw - 25px) / 7) - 5px);
  background: url("/Personal/reserve/wb/img/trainsearch/ts_calendarnonselect-bg.png") repeat left top;
  border-radius: 10px;
  color: #a6a6a6;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_mainBoxDayListItem .nonSelect {
    width: 48px;
    height: 48px;
    min-height: auto;
  }
}
.topPuCalendar_mainBoxDayListItem a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
  text-decoration: none;
  color: #000;
  border: 1px solid #fff;
}
.topPuCalendar_mainBoxDayListItem a:hover {
  color: #44a3ec;
  border: 1px solid #44a3ec;
  border-radius: 10px;
}
.topPuCalendar_mainBoxDayListItem .today {
  display: flex;
  align-items: center;
  justify-content: center;
}
.topPuCalendar_mainBoxDayListItem .today a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
}
.topPuCalendar_mainBoxDayListItem .today a .days {
  display: flex;
  align-items: center;
  justify-content: center;
  background: #1a70b2;
  color: #fff;
  border-radius: 60%;
  padding: 4px;
  margin-top: -10px;
  width: 2em;
}
.topPuCalendar_mainBoxDayListItem .today a .todayTxt {
  position: absolute;
  display: block;
  width: auto;
  height: auto;
  top: calc(100% - 1.4em);
  left: 0;
  right: 0;
  margin-left: auto;
  margin-left: auto;
  color: #666666;
  font-weight: normal;
  font-size: 0.7rem;
}
.topPuCalendar_mainBoxDayListItem .before a {
  display: flex;
  flex-wrap: wrap;
  align-items: center;
  justify-content: center;
  position: relative;
}
.topPuCalendar_mainBoxDayListItem .before a .days {
  display: flex;
  align-items: center;
  justify-content: center;
  border-radius: 50%;
  padding: 6px;
}
.topPuCalendar_mainBoxDayListItem .before a .beforeTxt {
  position: absolute;
  display: block;
  width: auto;
  height: auto;
  top: calc(100% - 1.3em);
  left: 0;
  right: 0;
  margin-left: auto;
  margin-left: auto;
  color: #666666;
  font-weight: normal;
  font-size: 0.7rem;
}

.topPuCalendar_att {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  padding: 15px;
  padding-bottom: 30px;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_att {
    order: 1;
    padding-left: 0;
    padding-right: 0;
  }
}

.topPuCalendar_attTxt {
  font-size: 0.8rem;
}

.topPuCalendar_attBtn {
  display: inline-block;
  text-align: center;
  text-decoration: none;
  font-size: 0.8rem;
  font-weight: normal;
  font-family: inherit;
  border: none;
  outline: none;
  background: none;
  position: relative;
  box-sizing: border-box;
  color: #1a70b2;
  cursor: pointer;
}
.topPuCalendar_attBtn:hover {
  color: #44a3ec;
}

.topPuCalendar_scroll {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .topPuCalendar_scroll {
    order: 2;
    width: 100%;
    height: auto;
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
  }
}

@media print, screen and (min-width: 750px) {
  .topPuCalendar_scrollBtn {
    width: 10em;
  }
}

/*=========================================
日付を選択ポップアップ
=========================================*/
.ckSeat_formTrain {
  width: 100%;
  height: auto;
  padding: 20px 15px;
}
@media print, screen and (min-width: 750px) {
  .ckSeat_formTrain {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
    padding-bottom: 40px;
  }
}

.ckSeat_formTrainHeader {
  font-size: 1.05rem;
  font-weight: bold;
  padding-bottom: 5px;
  background: url(/Personal/reserve/wb/img/trainsearch/ts_header-bg-1.png) no-repeat left bottom;
  background-size: 29px 3px;
  margin-top: 45px;
}
.ckSeat_formTrainHeader:first-of-type {
  margin-top: 0;
}

.ckSeat_trainCardItem {
  width: 100%;
  height: auto;
  padding: 10px;
  border: 1px solid #d9d9d9;
  margin-bottom: -1px;
  background-color: #fff;
}
.ckSeat_trainCardItem:first-of-type {
  margin-top: 10px;
  border-radius: 5px 5px 0 0;
}
.ckSeat_trainCardItem:last-of-type {
  margin-bottom: 30px;
  border-radius: 0 0 5px 5px;
}
.ckSeat_trainCardItem:last-child {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .ckSeat_trainCardItem {
    padding: 19px;
  }
}

.ckSeat_formTrainContent {
  margin-top: 10px;
  color: #666666;
}

/*=========================================
おトクなきっぷ予約検索トップ
=========================================*/
/* きっぷ予約トップ共通 */
.top_seaTitleW {
  margin-bottom: 10px;
  padding: 20px 15px 0;
}
@media print, screen and (min-width: 750px) {
  .top_seaTitleW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}

.top_seaTitle {
  margin-top: 0px;
  margin-bottom: 20px;
  padding-bottom: 5px;
  background: url(/Personal/reserve/wb/img/trainsearch/ts_header-bg-1.png) no-repeat left bottom;
  background-size: 29px 3px;
  font-size: 1.05rem;
  font-weight: bold;
}
@media print, screen and (min-width: 750px) {
  .top_seaTitle {
    margin-bottom: 15px;
  }
}
.top_seaTitle:last-child {
  margin-bottom: 0;
}

/* ピックアップ */
.top_seaPickup {
  padding: 20px 15px;
}
@media print, screen and (min-width: 750px) {
  .top_seaPickup {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}

.top_seaPickupList {
  display: flex;
  flex-wrap: wrap;
  margin: -7.5px;
}
@media print, screen and (min-width: 750px) {
  .top_seaPickupList {
    margin: -10px;
  }
}

.top_seaPickupListItem {
  width: calc(50% - (7.5px * 2));
  margin: 7.5px;
}
@media print, screen and (min-width: 750px) {
  .top_seaPickupListItem {
    width: calc(25% - (10px * 2));
    margin: 10px;
  }
}
.top_seaPickupListItem a {
  display: block;
  color: inherit;
  text-decoration: none;
}
.top_seaPickupListItem a:hover {
  color: inherit;
  opacity: 0.7;
}

.top_seaPickupListImgW {
  border-radius: 5px;
  overflow: hidden;
}
.top_seaPickupListImgW img {
  width: 100%;
  vertical-align: top;
}

.top_seaPickupListTxtW {
  margin-top: 10px;
}
.top_seaPickupListTxtW:first-child {
  margin-top: 0;
}

.top_seaPickupListTitle {
  display: inline;
  color: #1a70b2;
  font-size: 1rem;
}
.top_seaPickupListTitle::after {
  content: '\3e';
  margin-left: 0.6em;
  font-size: 0.9rem;
  line-height: 1.5277777778;
}
.top_seaPickupListTitle p {
  display: inline;
  text-decoration: underline;
  line-height: 1;
}

.top_seaPickupListTxt {
  margin-top: 6px;
  font-size: 0.9rem;
  line-height: 1.5;
}

/* 検索 */
.top_seaOptW {
  font-size: 0.9rem;
}
.top_seaOptW.bg-gray {
  background-color: #f5f5f5;
}
@media print, screen and (min-width: 750px) {
  .top_seaOptW .column2.top_formEntryOptionTrainList {
    display: flex;
    flex-wrap: wrap;
  }
}
@media print, screen and (min-width: 750px) {
  .top_seaOptW .column2 .top_formEntryOptionTrainListItem {
    width: 50%;
    padding-right: 20px;
  }
}

.top_seaOpt {
  padding: 20px 15px;
}
@media print, screen and (min-width: 750px) {
  .top_seaOpt {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}

/* 出発&目的地 */
@media print, screen and (min-width: 750px) {
  .top_formEntryGetW {
    display: flex;
    justify-content: space-between;
  }
}

/* フリーワード */
@media print, screen and (min-width: 750px) {
  .top_seaFreeWord {
    width: 450px;
  }
}


/*=========================================
フォームテンプレート
=========================================*/
/* 1行テキストエリア */
.top_formEntryInput-text label {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: 6em;
  min-height: 40px;
  height: 2rem;
  background: #007a52;
  color: #fff;
  font-size: 1rem;
  border-radius: 5px 0 0 5px;
  line-height: 1;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text label {
    width: 7em;
  }
}

.top_formEntryInput-text input {
  display: block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  display: flex;
  align-items: center;
  justify-content: center;
  width: calc(100% - 6em);
  min-height: 40px;
  height: 2rem;
  font-size: 1rem;
  border: 1px solid #a6a6a6;
  border-left: none;
  border-radius: 0 5px 5px 0;
  padding-left: 8px;
  padding-right: 8px;
  line-height: 1;
}

.top_formEntryInput-text input:focus {
  outline: solid 2px #06c;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text input {
    width: calc(100% - 7em);
  }
}
.top_formEntryInput-text input:placeholder-shown {
  color: #a6a6a6;
}
.top_formEntryInput-text input:focus:placeholder-shown {
  color: transparent;
}
.top_formEntryInput-text input::-webkit-input-placeholder {
  color: #a6a6a6;
}
.top_formEntryInput-text input:focus::-webkit-input-placeholder {
  color: transparent;
}
.top_formEntryInput-text input:-moz-placeholder {
  color: #a6a6a6;
  opacity: 1;
}
.top_formEntryInput-text input:focus:-moz-placeholder {
  color: transparent;
}
.top_formEntryInput-text input::-moz-placeholder {
  color: #a6a6a6;
  opacity: 1;
}
.top_formEntryInput-text input:focus::-moz-placeholder {
  color: transparent;
}
.top_formEntryInput-text input:-ms-input-placeholder {
  color: #a6a6a6;
}
.top_formEntryInput-text input:focus:-ms-input-placeholder {
  color: transparent;
}
.top_formEntryInput-text input:disabled {
  background: #ebebeb;
  color: #a6a6a6;
}

/* テキストエリア */
/* テキストエリア枠に▼アイコン付けるcss */
/* セレクトボックス */
.top_formEntryDateSelectDateInput, .top_formEntryDateSelectTimeInput, .top_formEntryAdlutInput, .top_formEntryChildInput {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  border: 1px solid #a6a6a6;
  border-radius: 5px;
  font-size: 1rem;
  padding: 10px 26px 10px 10px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formselectarrow-icon.png") no-repeat right 10px center;
  background-size: 10px 5px;
  background-color: #fff;
  width: 100%;
  height: auto;
  font-family: inherit;
  line-height: 1;
  font-weight: normal;
}
.top_formEntryDateSelectDateInput::-ms-expand, .top_formEntryDateSelectTimeInput::-ms-expand, .top_formEntryAdlutInput::-ms-expand, .top_formEntryChildInput::-ms-expand {
  /* select要素のデザインを無効にする（IE用） */
  display: none;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDateInput, .top_formEntryDateSelectTimeInput, .top_formEntryAdlutInput, .top_formEntryChildInput {
    padding: 10px 28px 10px 10px;
  }
}
.top_formEntryDateSelectDateInput:disabled, .top_formEntryDateSelectTimeInput:disabled, .top_formEntryAdlutInput:disabled, .top_formEntryChildInput:disabled {
  background: #ebebeb;
  color: #a6a6a6;
}

/*=========================================
エマージェンシー
=========================================*/
.top_emergency {
  margin: 20px 15px;
  border: 3px double #ee2200;
  padding: 10px;
  word-wrap: break-word; /* 折り返しのため追加 */
}
@media print, screen and (min-width: 750px) {
  .top_emergency {
    max-width: 990px;
    margin-left: auto;
    margin-right: auto;
    padding-right: 13px;
    padding-left: 13px;
  }
}
.dp_none {
	display: none;
}

/*=========================================
検索条件
=========================================*/
.top_form,
.joyful_search,
.resSearch_form,
.resOnly_form {
  width: 100%;
  height: auto;
}
.top_form input:focus, .top_form label:focus, .top_form select:focus, .top_form button.top_formEntryDateTabH-oneway:focus, .top_form button.top_formEntryDateTabH-roundtrip:focus,
.joyful_search input:focus,
.joyful_search label:focus,
.joyful_search select:focus,
.joyful_search button.top_formEntryDateTabH-oneway:focus,
.joyful_search button.top_formEntryDateTabH-roundtrip:focus,
.resSearch_form input:focus,
.resSearch_form label:focus,
.resSearch_form select:focus,
.resSearch_form button.top_formEntryDateTabH-oneway:focus,
.resSearch_form button.top_formEntryDateTabH-roundtrip:focus,
.resOnly_form input:focus,
.resOnly_form label:focus,
.resOnly_form select:focus,
.resOnly_form button.top_formEntryDateTabH-oneway:focus,
.resOnly_form button.top_formEntryDateTabH-roundtrip:focus {
  outline: solid 2px #06c;
}

.top_formW {
  width: 100%;
  padding-top: 25px;
}

.top_formW-inner {
  width: 100%;
  height: auto;
  position: relative;
}

.top_formTitle {
  width: 100%;
  height: auto;
  font-size: 1.5rem;
  font-weight: normal;
  margin-bottom: 15px;
  padding-left: 15px;
  padding-right: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formTitle {
    max-width: 810px;
    padding-left: 15px;
    padding-right: 15px;
    margin-left: auto;
    margin-right: auto;
    font-size: 1.8rem;
  }
}

.top_formError {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .top_formError {
    max-width: 990px;
    margin-left: auto;
    margin-right: auto;
  }
}

.input_error {
  border: 2px solid #b42700 !important;
  background-color: #f9d6d8 !important;
}

.top_formEntry {
  width: 100%;
  height: auto;
}

.top_formEntryStationW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  position: relative;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 18px;
  padding-bottom: 25px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryStationW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryStationW {
    padding-top: 14px;
    padding-left: 15px;
    padding-right: 15px;
    padding-bottom: 0;
    max-width: 530px;
    margin-top: 0;
  }
}
.top_formEntryStationW.joyful {
  margin-bottom: 20px;
}
.top_formEntryStationW.noVia {
  margin-bottom: 25px;
  padding-bottom: 106px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryStationW.noVia {
    padding-bottom: 0;
  }
}

.top_formEntryGetonW {
  width: 100%;
  height: auto;
  margin-top: 10px;
  margin-bottom: 15px; /*ボタンの位置調整のため追加*/
}
@media print, screen and (min-width: 750px) {
  .top_formEntryGetonW {
    width: calc(50% - 25px);
    order: 1;
  }
}
.searchNotuse .top_formEntryGetonW {
  display: none;
}

.top_formEntryViaW {
  margin-left: 50px;
  width: calc(100% - 65px);
  height: auto;
  padding-top: 5px;
  padding-bottom: 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryViaW {
    order: 4;
    /*		padding-left:370px;*/
    margin-right: auto;
    margin-left: auto;
    width: 245px;
  }
}

.top_formEntryBtnViaW {
  /*	width: calc(100% - 9em);*/
  height: auto;
  /* margin-top: 15px; */ /*ボタンの位置調整のためコメントアウト*/
  margin-left: 50px;
}
.top_formEntryBtnViaW button {
  width: 9em;
  /*		margin-left: 65px;*/
  height: 45px;
  padding-left: 24px;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  /*outline: none;*/
  background: none;
  box-sizing: border-box;
  cursor: pointer;
  position: relative;
  border-color: #a6a6a6;
  border-radius: 3px;
  line-height: 1;
}

.top_formEntryBtnViaW button:focus {
  outline: solid 2px #06c;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryBtnViaW button {
    font-size: 0.8rem;
  }
}
.top_formEntryBtnViaW button::before {
  position: absolute;
  content: "";
  top: 0;
  bottom: 0;
  left: 12px;
  margin-top: auto;
  margin-bottom: auto;
  width: 10px;
  height: 10px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formplus_green-icon.png") no-repeat left top;
  background-size: 10px 10px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryBtnViaW {
    width: 100%;
    /*		padding-left: 370px;*/
    order: 5;
    margin-left: 0;
    margin-top: 5px;
  }
  .top_formEntryBtnViaW button {
    /*			margin-left: 0;*/
    margin-right: auto;
    margin-left: auto;
    width: 7em;
    font-size: 0.875rem;
    height: 32px;
    min-width: 120px;
  }
}
.searchNotuse .top_formEntryBtnViaW {
  display: none;
}

.top_formEntryBtnChangeW {
  position: absolute;
  bottom: 20%;
  left: 15px;
  width: 40px;
  height: 40px;
}
.noVia .top_formEntryBtnChangeW {
  top: auto;
  bottom: 53px;
}
.top_formEntryBtnChangeW button {
  width: 100%;
  height: 100%;
  display: block;
  padding: 0;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  font-size: 0;
  border: none;
  /*outline: none;*/
  background: none;
  box-sizing: border-box;
  border-radius: 50%;
  cursor: pointer;
}

.top_formEntryBtnChangeW button:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryBtnChangeW button {
    transform: rotate(90deg);
  }
  .top_formEntryBtnChangeW button img {
    width: 34px;
    height: 34px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryBtnChangeW {
    position: static;
    order: 2;
    margin-right: 0;
    margin-top: 7px;
    display: flex;
    align-items: center;
  }
}
.searchNotuse .top_formEntryBtnChangeW {
  display: none;
}

.top_formEntryGetoffW {
  width: calc(100% - 30px);
  height: auto;
  margin-top: 15px;
  position: absolute;
  bottom: 0;
}
.top_seaOpt .top_formEntryGetoffW {
  position: static;
  width: 100%;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .top_seaOpt .top_formEntryGetoffW {
    width: calc(50% - 40px);
    margin-top: 0;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryGetoffW {
    position: static;
    width: calc(50% - 25px);
    margin-top: 10px;
    order: 3;
  }
}
.searchNotuse .top_formEntryGetoffW {
  display: none;
}

.top_formEntryInput-text {
  width: 100%;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  position: relative;
}
.top_formEntryInput-text label {
  width: 6em;
  background: #007a52;
  font-size: 1rem;
  min-height: 46px;
  border-radius: 5px 0 0 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text label {
    width: 4.5em;
    min-height: 34px;
    border-radius: 3px 0 0 3px;
    font-size: 0.875rem;
  }
}
.top_formEntryInput-text input {
  width: calc(100% - 6em);
  font-size: 1rem;
  min-height: 46px;
  border-radius: 0 5px 5px 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text input {
    width: calc(100% - 4.5em);
    min-height: 34px;
    border-radius: 0 3px 3px 0;
    font-size: 0.875rem;
  }
}
.top_formEntryInput-text input::-ms-clear {
visibility: hidden;
}
.top_formEntryInput-text select {
  display: block;
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  width: calc(100% - 6em);
  min-height: 46px;
  height: 2rem;
  border: 1px solid #a6a6a6;
  border-radius: 0 5px 5px 0;
  padding: 10px 8px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_formselectarrow-icon.png") no-repeat right 10px center;
  background-size: 10px 5px;
  background-color: #fff;
  font-size: 1rem;
  line-height: 1;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text select {
    min-height: 34px;
  }
}
.top_formEntryInput-text select::-ms-expand {
  /* select要素のデザインを無効にする（IE用） */
  display: none;
}
.top_formEntryInput-text select:focus {
  outline: solid 2px #06c;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text select {
    width: calc(100% - 4.5em);
    padding: 0px 28px 0px 10px;
    font-size: 0.875rem;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text.active {
    z-index: 9999;
  }
}
.top_formEntryInput-text.via {
  width: calc(100% - 10px);
  margin-bottom: 15px; /*ボタンの位置調整のため修正*/
}
.top_formEntryInput-text.via:last-of-type {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text.via {
    width: 245px;
  }
}
.top_formEntryInput-text.via label {
  padding: 8px;
  font-size: 0.9rem;
  width: 5.5em;
  border: 1px solid #a6a6a6;
  background: #fff;
  color: #007a52;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text.via label {
    padding: 8px 8px 8px 8px;
    position: relative;
    font-size: 0.875rem;
    				/*&::before {
    					position: absolute;
       					content: "";
       					top: 0;
       					bottom: 0;
       					left: 12px;
       					margin-top: auto;
       					margin-bottom: auto;
       					width: 10px;
       					height: 10px;
       					background: url(/Personal/reserve/wb/img/trainsearch/ts_formplus_white-icon.png) no-repeat left top;
       					background-size: 10px 10px;
    				}*/
  }
}
.top_formEntryInput-text.via input {
  width: calc(100% - 4.95em);
  padding: 8px;
  font-size: 1.0rem;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryInput-text.via input {
    width: calc(100% - 5.5em);
    font-size: 0.875rem;
  }
}
.top_formEntryInput-text.deleteBtn input {
  padding-right: 35px;
}
.top_formEntryInput-text.deleteBtn > button {
  position: absolute;
  width: 20px;
  height: 20px;
  right: -25px;
  top: 0;
  bottom: 0;
  margin-top: auto;
  margin-bottom: auto;
  display: block;
  padding: 0;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  font-size: 0;
  border: none;
  /*outline: none;*/
  background: none;
  box-sizing: border-box;
  background-color: #a6a6a6;
  border-radius: 50%;
  cursor: pointer;
}

.top_formEntryInput-text.deleteBtn > button:focus {
  outline: solid 2px #06e;
}

.top_formEntryInput-text.deleteBtn > button::before {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(45deg);
}
.top_formEntryInput-text.deleteBtn > button::after {
  position: absolute;
  content: "";
  width: 2px;
  height: 12px;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  margin: auto;
  background-color: #fff;
  transform: rotate(-45deg);
}

.top_formEntryDateW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  height: auto;
  margin-top: 25px;
  background: linear-gradient(to bottom, #fff, #fff 43px, #f0f3f5 43px);
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateW {
    max-width: 530px;
    margin-top: 12px;
    padding-left: 15px;
    padding-right: 15px;
    background: none;
    position: relative;
  }
}
.top_formEntryDateW.noTab {
  padding-bottom: 25px;
  background: #f5f5f5;
}
.searchNotuse .top_formEntryDateW {
  display: none;
}

.top_formEntryDateTabW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-start;
  padding-bottom: 20px;
  position: relative;
  padding-left: 0;
  padding-right: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabW {
    max-width: 500px;
    padding-left: 0;
    padding-right: 0;
    padding-bottom: 0;
  }
}
.top_formEntryDateTabW li.tab {
  width: 100%;
  height: auto;
  padding-top: 43px;
}
.top_formEntryDateTabW li.tab:nth-of-type(2) {
  padding-top: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabW li.tab {
    padding-top: 32px;
  }
}

.top_formEntryDateTabH-oneway {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 0;
  width: 95px;
  height: 43px;
  padding: 0;
  border: 1px solid #a6a6a6;
  border-bottom: none;
  border-radius: 5px 5px 0 0;
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.top_formEntryDateTabH-oneway:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabH-oneway {
    width: 96px;
    height: 32px;
    font-size: 0.875rem;
    border-radius: 3px 3px 0 0;
  }
}
.top_formEntryDateTabH-oneway.active {
  border-color: #f0f3f5;
  background: #f0f3f5;
  color: #007a52;
  cursor: default;
}
.top_formEntryDateTabH-oneway.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 70px;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabH-oneway.active::before {
    width: 72px;
    height: 2px;
  }
}

.top_formEntryDateTabH-roundtrip {
  position: absolute;
  display: flex;
  align-items: center;
  justify-content: center;
  top: 0;
  left: 103px;
  width: 95px;
  height: 43px;
  padding: 0;
  border: 1px solid #a6a6a6;
  border-bottom: none;
  border-radius: 5px 5px 0 0;
  color: #666666;
  font-size: 0.9rem;
  text-align: center;
  text-decoration: none;
  font-weight: bold;
  font-family: inherit;
  /*outline: none;*/
  background: #fff;
  box-sizing: border-box;
  cursor: pointer;
}

.top_formEntryDateTabH-roundtrip:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabH-roundtrip {
    width: 96px;
    height: 32px;
    font-size: 0.875rem;
    border-radius: 3px 3px 0 0;
  }
}
.top_formEntryDateTabH-roundtrip.active {
  border-color: #f0f3f5;
  background: #f0f3f5;
  color: #007a52;
  cursor: default;
}
.top_formEntryDateTabH-roundtrip.active::before {
  position: absolute;
  content: "";
  left: 0;
  right: 0;
  bottom: 0;
  margin-left: auto;
  margin-right: auto;
  width: 70px;
  height: 4px;
  background: #007a52;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabH-roundtrip.active::before {
    width: 72px;
    height: 2px;
  }
}

.top_formEntryDateTabOnewayInner {
  width: 100%;
  height: auto;
  display: none;
  background: #f0f3f5;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabOnewayInner {
    padding: 12px 36px 12px 15px;
    border-radius: 0 3px 3px 3px;
  }
}
.top_formEntryDateTabRoundtrip .top_formEntryDateTabOnewayInner {
  display: none;
}
.active + .top_formEntryDateTabOnewayInner {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .active + .top_formEntryDateTabOnewayInner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: space-between;
    align-items: flex-start;
  }
}

.top_formEntryDateTabTicketAbout {
  position: absolute;
  display: flex;
  align-items: flex-end;
  justify-content: flex-end;
  right: 0;
  width: calc(100% - 200px);
  height: 43px;
  background-position: 0 0;
  font-size: 0.8rem;
  text-align: right;
}
.top_formEntryDateTabTicketAbout a {
  position: absolute;
  bottom: 4px;
  left: 0;
  text-align: left;
}
.top_formEntryDateTabTicketAbout a::before {
  margin-top: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateTabTicketAbout {
    top: 0;
    right: 0;
    width: calc(100% - 210px);
    height: 32px;
    justify-content: flex-start;
  }
  .top_formEntryDateTabTicketAbout a {
    display: block;
  }
}
.top_formEntryDateTabTicketAbout button {
  bottom: 4px;
  outline: none;
}



.top_formEntryDateInnerH {
  font-size: 1.05rem;
  font-weight: bold;
  margin-top: 25px;
  padding-bottom: 5px;
  background: url("/top/jrticket/img/ts_header-bg-1.png") no-repeat left bottom;
  background-size: 29px 3px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateInnerH {
    margin-top: 0;
    width: 70px;
    font-size: 0.938rem;
  }
}

.top_formEntryDateSelectW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectW {
    position: relative;
    width: calc(100% - 70px);
    margin-top: 0;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectW.alignLeft {
    justify-content: flex-start;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectW.alignLeft .top_formEntryDateSelectRtH {
    margin-right: 8px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectW.alignLeft .top_formEntryDateSelectCalendar {
    margin-left: 12px;
  }
}
.top_seaOpt .top_formEntryDateSelectW {
  margin-top: 0;
}
@media print, screen and (min-width: 750px) {
  .top_seaOpt .top_formEntryDateSelectW {
    justify-content: flex-start;
  }
}

.top_formEntryDateSelectDate {
  width: calc(100% - 60px);
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDate {
    max-width: calc(100% - 42px);
    width: 100%;
    display: flex;
  }
  .top_formEntryDateTabRoundtrip .top_formEntryDateSelectDate {
    max-width: calc(100% - 70px - 42px);
    width: 100%;
  }
}

.top_formEntryDateSelectDateInput {
  width: 100%;
  height: auto;
  min-height: 46px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDateInput {
    min-height: 34px;
    font-size: 0.875rem;
    padding: 0 28px 0 10px;
    border-radius: 3px;
    height: 34px;
  }
}
.top_formEntryDateSelectDateInput:focus {
  outline: solid 2px #06c;
}

.top_formEntryDateSelectCalendar {
  width: 45px;
  height: auto;
  display: flex;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectCalendar {
    width: 34px;
    margin-left: 8px;
  }
}
@media print, screen and (min-width: 750px) {
  .top_seaOpt .top_formEntryDateSelectCalendar {
    margin-left: 16px;
  }
}

.top_formEntryDateSelectCalendarBtn {
  width: 45px;
  height: 46px;
  padding: 0;
  text-align: center;
  text-decoration: none;
  font-weight: normal;
  font-family: inherit;
  border: none;
  /*outline: none;*/
  background: none;
  box-sizing: border-box;
  cursor: pointer;
}

.top_formEntryDateSelectCalendarBtn:focus {
  outline: solid 2px #06e;
}

.top_formEntryDateSelectCalendarBtn img {
  width: 45px;
  height: 46px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectCalendarBtn {
    width: 34px;
    height: 34px;
  }
  .top_formEntryDateSelectCalendarBtn img {
    width: 34px;
    height: 34px;
  }
}

.top_formEntryDateSelectTime {
  width: 60%;
  height: auto;
  min-height: 46px;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectTime {
    margin-top: 8px;
    width: 184px;
    display: flex;
    justify-content: space-between;
    min-height: auto;
  }
}

.top_formEntryDateSelectTimeInput {
  min-width: 80px;
  width: 45%;
  height: auto;
  min-height: 46px;
}

.top_formEntryDateSelectTimeInput:focus {
  outline: solid 2px #06e;
}

@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectTimeInput {
    width: calc(50% - 4px);
    max-width: 88px;
    min-height: 34px;
    font-size: 0.875rem;
    padding: 0 28px 0 10px;
    border-radius: 3px;
  }
}
.top_formEntryDateSelectTimeInput.rentacar {
  width: calc(50% - 7px);
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectTimeInput.rentacar {
    width: 50%;
    max-width: 50%;
  }
}

.top_formEntryDateSelectDep {
  min-width: 40%;
  height: auto;
  margin-top: 15px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDep {
    margin-top: 8px;
    max-width: 174px;
    width: calc(100% - 204px);
  }
}

.top_formEntryDateSelectDep-radio {
  /*	display:none;*/
  position: absolute;
  opacity: 0;
}
.top_formEntryDateSelectDep-radio + .top_formEntryDateSelectDep-label {
  width: 50%;
  height: 100%;
  border: 1px solid #a6a6a6;
  font-size: 0.9rem;
  line-height: 1;
  padding: 3px;
  min-height: 2em;
  padding: 0 10px;
  display: flex;
  align-items: center;
  justify-content: center;
  background: #fff;
  cursor: pointer;
  font-weight: bold;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDep-radio + .top_formEntryDateSelectDep-label {
    width: 50%;
    height: 100%;
    padding-left: 0;
    padding-right: 0;
    font-size: 0.875rem;
  }
}
.top_formEntryDateSelectDep-radio:checked + .top_formEntryDateSelectDep-label {
  border: 2px solid #007a52;
  background: rgba(0, 128, 0, 0.05);
  cursor: default;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDep-radio:checked + .top_formEntryDateSelectDep-label {
    border: 1px solid #007a52;
  }
}
.top_formEntryDateSelectDep-radio:focus + .top_formEntryDateSelectDep-label {
  outline: 2px solid #06c;
}

.top_formEntryDateSelectDep-label:first-of-type {
  border-radius: 5px 0 0 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDep-label:first-of-type {
    border-radius: 3px 0 0 3px;
  }
}
.top_formEntryDateSelectDep-label:last-of-type {
  border-radius: 0 5px 5px 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateSelectDep-label:last-of-type {
    border-radius: 0 3px 3px 0;
  }
}

.top_formEntryAcW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  padding-top: 25px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcW {
    padding-top: 12px;
  }
}
.searchNotuse .top_formEntryAcW {
  display: none;
}

.top_formEntryAcH {
  width: 40%;
  font-size: 1rem;
  font-weight: bold;
  padding-bottom: 5px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_header-bg-1.png") no-repeat left bottom;
  background-size: 29px 3px;
}
.top_formEntryAcH span {
  color: #666666;
  font-size: 0.8rem;
  margin-left: 1em;
}
.top_formEntryAcH span.top_formEntryAcH-error {
  display: none;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcH span.top_formEntryAcH-error {
    display: inline;
    font-size: 1rem;
    color: #b42700;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcH {
    width: 140px;
    font-size: 0.938rem;
    order: 1;
  }
}

.top_formEntryAcInner {
  width: 100%;
  height: auto;
  margin-top: 15px;
  display: flex;
  flex-wrap: nowrap;
  justify-content: space-between;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcInner {
    width: calc(100% - 140px);
    margin-top: 0;
    order: 2;
  }
}
.top_formEntryAcInner.entryStaff {
  flex-wrap: wrap;
}

.top_formEntryAdlut {
  width: 46%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlut {
    width: 44%;
    flex-wrap: nowrap;
  }
}

.top_formEntryChild {
  width: 46%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  align-items: center;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryChild {
    width: 44%;
    flex-wrap: nowrap;
  }
}

.top_formEntryAdlutLead {
  width: 3.5rem;
  font-size: 0.9rem;
  font-weight: bold;
}
.top_formEntryAdlutLead span {
  display: block;
  font-size: 0.8rem;
  color: #333;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutLead {
    width: 41%;
  }
}
.entryStaff .top_formEntryAdlutLead {
  width: 6em;
  margin-right: 0;
}
@media print, screen and (min-width: 750px) {
  .entryStaff .top_formEntryAdlutLead {
    width: 8rem;
  }
}

.top_formEntryChildLead {
  width: 3.5rem;
  font-size: 0.9rem;
  font-weight: bold;
}
.top_formEntryChildLead span {
  display: block;
  font-size: 0.8rem;
  color: #666666;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryChildLead {
    width: 41%;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryChildLead > label {
    width: calc(100% - 24px);
  }
}
.entryStaff .top_formEntryChildLead {
  width: 6em;
  margin-right: 0;
}
@media print, screen and (min-width: 750px) {
  .entryStaff .top_formEntryChildLead {
    width: 8rem;
  }
}

.top_formEntryAdlutInputW {
  width: calc(100% - 3.5rem);
  /*	@include pc {
  		width:calc(100% - 5em - 100px);
  	}*/
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutInputW {
    width: 61%;
    display: flex;
  }
}
.entryStaff .top_formEntryAdlutInputW {
  width: calc(100% - 6em - 120px);
}
@media print, screen and (min-width: 750px) {
  .entryStaff .top_formEntryAdlutInputW {
    width: calc(100% - 8em - 120px);
  }
}

.top_formEntryChildInputW {
  width: calc(100% - 3.5rem);
}
@media print, screen and (min-width: 750px) {
  .top_formEntryChildInputW {
    width: 61%;
    display: flex;
  }
}
.entryStaff .top_formEntryChildInputW {
  width: calc(100% - 6em - 120px);
}
@media print, screen and (min-width: 750px) {
  .entryStaff .top_formEntryChildInputW {
    width: calc(100% - 8em - 120px);
  }
}

.top_formEntryAdlutInput, .top_formEntryChildInput {
  width: 100%;
  height: auto;
  min-height: 46px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAdlutInput, .top_formEntryChildInput {
    width: 100%;
    min-height: 34px;
    padding-top: 0;
    padding-bottom: 0;
    font-size: 0.875rem;
    border-radius: 3px;
  }
  .entryStaff .top_formEntryAdlutInput,
  .entryStaff .top_formEntryChildInput {
    width: 100%;
  }
}
.top_formEntryAdlutInput:focus, .top_formEntryChildInput:focus {
  outline: solid 2px #06c;
}
.top_formEntryAdlutInput.input_error, .top_formEntryChildInput.input_error {
  border: 2px solid #b42700;
  background-color: #f9d6d8;
}

.top_formEntryAcHelp {
  display: block;
  width: 100%;
  height: auto;
  margin-top: 25px;
  text-align: right;
  font-size: 0.8rem;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAcHelp {
    width: 100%;
    order: 3;
    margin-top: 5px;
  }
}

.top_formEntrySpecialSubList {
  width: 100%;
  height: auto;
  margin-top: 15px;
  margin-bottom: 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySpecialSubList {
    margin-top: 10px;
  }
}

.top_formEntrySpecialSubListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1.2em;
  color: #666666;
  font-weight: bold;
}
.top_formEntrySpecialSubListItem:last-of-type {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySpecialSubListItem {
    margin-bottom: 10px;
    display: inline-block;
    font-size: 0.875rem;
    /*
    &:first-of-type {
    	width: 40%;
    }

    &:nth-of-type(2) {
    	width: 55%;
    }

    &:last-of-type {
    	width: 100%;
    }
    */
  }
}

.top_formEntrySpecialRadio {
  /*display: none;*/
  position: absolute;
  width: 1px;
  height: 1px;
  margin: -1px;
  border: 0;
  overflow: hidden;
  padding: 0;
  clip: rect(0, 0, 0, 0);
}
.top_formEntrySpecialRadio + label {
  display: block;
  padding-left: 25px;
  position: relative;
  font-size: 0.9rem;
  cursor: pointer;
}


.top_formEntrySpecialRadio:focus + label {
  outline: solid 2px #06c;
}

@media print, screen and (min-width: 750px) {
  .top_formEntrySpecialRadio + label {
    font-size: 0.875rem;
  }
}
.top_formEntrySpecialRadio + label::before {
  position: absolute;
  content: "";
  width: 18px;
  height: 18px;
  top: 1px;
  left: 0;
  border: 2px solid #626262;
  border-radius: 50%;
  box-sizing: border-box;
}
.top_formEntrySpecialRadio + label span {
  display: block;
  font-size: 0.8rem;
  font-weight: normal;
  margin-top: 0.3em;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySpecialRadio + label span {
    display: inline;
    margin-left: 1em;
    margin-top: 0;
  }
}
.top_formEntrySpecialRadio:checked + label::before {
  border-color: #007a52;
}
.top_formEntrySpecialRadio:checked + label::after {
  position: absolute;
  content: "";
  width: 8px;
  height: 8px;
  top: 6px;
  left: 5px;
  border-radius: 50%;
  background-color: #007a52;
  box-sizing: border-box;
}
.top_formEntrySpecialRadio:disabled + label {
  color: #a6a6a6;
}
.top_formEntrySpecialRadio:disabled + label::before {
  border-color: #a6a6a6;
}
.top_formEntrySpecialRadio:disabled:checked + label {
  color: #a6a6a6;
}
.top_formEntrySpecialRadio:disabled:checked + label::before {
  border-color: #a6a6a6;
}
.top_formEntrySpecialRadio:disabled:checked + label::after {
  position: absolute;
  content: "";
  width: 10px;
  height: 10px;
  top: 6px;
  left: 5px;
  border-radius: 50%;
  background-color: #a6a6a6;
  box-sizing: border-box;
}

.top_formEntryOptionW {
  width: 100%;
  height: auto;
}
.top_formEntryOptionW input:focus, .top_formEntryOptionW label:focus, .top_formEntryOptionW select:focus {
  outline: solid 2px #06c;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionW {
    padding-bottom: 25px;
  }
}
.top_formEntryOptionW.rentacar {
  background: none;
  padding-bottom: 16px;
  padding-top: 16px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionW.rentacar {
    padding-top: 0;
  }
}

.top_formEntryOptionInner {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  padding-left: 0;
  padding-right: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionInner {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionInner {
    width: 100%;
    padding: 0;
  }
}

.top_formEntryOptionH {
  font-size: 1rem;
  font-weight: bold;
  padding-bottom: 5px;
  background: url("/Personal/reserve/wb/img/trainsearch/ts_header-bg-1.png") no-repeat left bottom;
  background-size: 29px 3px;
}

.top_formEntryOptionSaleList {
  width: 100%;
  height: auto;
}

.top_formEntryOptionSaleListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1.2em;
  color: #666666;
  font-weight: bold;
}
.top_formEntryOptionSaleListItem:last-of-type {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionSaleListItem {
    margin-bottom: 15px;
    font-size: 0.875rem;
  }
}

.top_formEntryOptionSaleSubList {
  width: 100%;
  height: auto;
  padding-left: 22px;
  margin-top: 0.8em;
}

.top_formEntryOptionSaleSubListItem {
  width: 100%;
  height: auto;
  margin-bottom: 1.2em;
  color: #666666;
  font-weight: bold;
}
.top_formEntryOptionSaleSubListItem:last-of-type {
  margin-bottom: 0;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionSaleSubListItem {
    margin-bottom: 15px;
  }
}

.top_formEntryOptionCheck {
  /*	display:none;*/
  opacity: 0;
  position: absolute;
}
.top_formEntryOptionCheck:focus + label {
  outline: 2px solid #06c;
}
.top_formEntryOptionCheck + label {
  display: block;
  padding-left: 25px;
  position: relative;
}
.top_formEntryOptionCheck + label::before {
  position: absolute;
  content: "";
  width: 18px;
  height: 18px;
  top: 1px;
  left: 0;
  border: 2px solid #626262;
  border-radius: 2px;
  box-sizing: border-box;
}
.top_formEntryOptionCheck + label span {
  display: inline-block;
  font-size: 0.8rem;
  font-weight: normal;
  margin-top: 0.3em;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryOptionCheck + label span {
    margin-left: 1em;
    margin-top: 0;
    vertical-align: top;
    font-size: 0.75rem;
  }
}
.top_formEntryOptionCheck:checked + label::before {
  background-color: #007a52;
  border: none;
}
.top_formEntryOptionCheck:checked + label::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 7px;
  top: 4px;
  left: 2px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  border-radius: 2px;
  transform: rotate(-45deg);
  box-sizing: border-box;
}
.top_formEntryOptionCheck:disabled + label {
  color: #a6a6a6;
}
.top_formEntryOptionCheck:disabled + label::before {
  border-color: #a6a6a6;
}
.top_formEntryOptionCheck:disabled:checked + label {
  color: #a6a6a6;
}
.top_formEntryOptionCheck:disabled:checked + label::before {
  background-color: #a6a6a6;
  border: none;
}
.top_formEntryOptionCheck:disabled:checked + label::after {
  position: absolute;
  content: "";
  width: 14px;
  height: 7px;
  top: 4px;
  left: 2px;
  border-bottom: 2px solid #fff;
  border-left: 2px solid #fff;
  border-radius: 2px;
  transform: rotate(-45deg);
  box-sizing: border-box;
}

.top_formEntrySubmitW {
  width: 100%;
  height: auto;
  padding-left: 15px;
  padding-right: 15px;
  padding-top: 25px;
  padding-bottom: 25px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitW {
    max-width: 810px;
    margin-left: auto;
    margin-right: auto;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitW {
    -ms-grid-row: 2;
    -ms-grid-row-span: 1;
    grid-row: 2 / 3;
    -ms-grid-column: 1;
    -ms-grid-column-span: 1;
    grid-column: 1 / 2;
    display: flex;
    flex-wrap: wrap;
    justify-content: center;
    flex-direction: row-reverse;
    align-items: flex-end;
    width: 100%;
    max-width: 530px;
    padding-top: 15px;
    padding-bottom: 15px;
    background-color: #fff;
    border-radius: 0 0 0 4px;
    position: relative;
    /*
    &::after {
    	position: absolute;
    	content: "";
    	width: 4px;
    	height: 4px;
    	display: block;
    	bottom: 0;
    	left: 0;
    	z-index: 9999;
    	background: url("/top/jrticket/img/index_searchpanel-border.png") left top;
    	background-size: 4px 4px;
    }
    */
  }
}
.top_formEntrySubmitW.rentacar {
  padding-top: 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntrySubmitW.rentacar {
    padding-top: 15px;
  }
}
.error.idxSearchWTourW-sub .top_formEntrySubmitW {
  margin-top: 0;
  margin-bottom: 0;
  padding: 0;
  padding-bottom: 0;
}
.top_formEntrySubmitW _:-ms-lang(x)::-ms-backdrop, .error .top_formEntrySubmitW {
  padding-top: 0;
  padding-bottom: 0;
}
.top_formEntrySubmitW _:-ms-lang(x)::-ms-backdrop, .top_formEntrySubmitW {
  border-top: 1px solid #fff;
}

/*=========================================
ページ下部ナビゲーションボタン
=========================================*/
.top_resultBottomBtn {
  width: 100%;
  height: auto;
  background-color: #f5f5f5;
  padding: 20px 15px 0;
}

.top_resultBottomBtnList {
  width: 100%;
  height: auto;
  font-size: 0.8rem;
  display: flex;
  flex-wrap: nowrap;
  justify-content: flex-end;
  flex-direction: row-reverse;
}
@media print, screen and (min-width: 750px) {
  .top_resultBottomBtnList {
    max-width: 780px;
    width: 100%;
    margin-left: auto;
    margin-right: auto;
  }
}
.top_resultBottomBtnList + .top_resultBottomBtnList {
  margin-top: 15px;
}

.top_resultBottomBtnListItem {
  display: block;
  margin-right: 20px;
}

.top_resultBottomBtn + #footer {
  padding-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .top_resultBottomBtn + #footer {
    padding-top: 90px;
  }
}

/*=========================================
駅レンタカー枠
=========================================*/
.top_formEntryStartW {
  width: 100%;
  height: auto;
  margin-top: 16px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryStartW {
    max-width: 335px;
  }
}
.rentacarPagemove .top_formEntryStartW {
  display: none;
}
.searchNotuse .top_formEntryStartW {
  display: none;
}

.top_formEntryDateStartInner {
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartInner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 15px;
    margin-left: 8px;
  }
}
.rentacarPagemove .top_formEntryDateStartInner {
  display: none;
}
.searchNotuse .top_formEntryDateStartInner {
  display: none;
}

.top_formEntryDateStartInnerH {
  width: 100%;
  height: auto;
  font-size: 1.05rem;
  font-weight: bold;
  margin-top: 25px;
  padding-bottom: 5px;
  background: url(/top/jrticket/img/ts_header-bg-1.png) no-repeat left bottom;
  background-size: 35px 3px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartInnerH {
    width: 7rem;
    margin-top: 0;
    font-size: 0.9rem;
  }
}

.top_formEntryDateStartSelectW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartSelectW {
    width: calc(335px - 7em + 37px);
    justify-content: flex-start;
    margin-top: 0;
  }
}

@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartSelectCalendar {
    margin-left: 10px;
  }
}

.top_formEntryDateStartSelectDate {
  width: calc(100% - 45px);
  padding-right: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartSelectDate {
    padding-right: 0;
    margin-bottom: 8px;
  }
}

.top_formEntryDateStartSelectTime {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateStartSelectTime {
    justify-content: flex-start;
    margin-top: 0;
  }
}

.top_formEntryGoalW {
  width: 100%;
  height: auto;
  border-top: 1px solid #d9d9d9;
  margin-top: 16px;
  padding-top: 16px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryGoalW {
    padding-right: calc(100% - 335px);
  }
}
.rentacarPagemove .top_formEntryGoalW {
  display: none;
}
.searchNotuse .top_formEntryGoalW {
  display: none;
}

.top_formEntryDateGoalInner {
  width: 100%;
  height: auto;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalInner {
    display: flex;
    flex-wrap: nowrap;
    justify-content: flex-start;
    align-items: flex-start;
    margin-top: 15px;
    margin-left: 8px;
  }
}
.rentacarPagemove .top_formEntryDateGoalInner {
  display: none;
}
.searchNotuse .top_formEntryDateGoalInner {
  display: none;
}

.top_formEntryDateGoalInnerH {
  width: 100%;
  height: auto;
  font-size: 1.05rem;
  font-weight: bold;
  margin-top: 25px;
  padding-bottom: 5px;
  background: url(/top/jrticket/img/ts_header-bg-1.png) no-repeat left bottom;
  background-size: 35px 3px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalInnerH {
    width: 7rem;
    margin-top: 0;
    font-size: 0.9rem;
  }
}

.top_formEntryDateGoalSelectW {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 10px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalSelectW {
    width: calc(335px - 7em + 37px);
    justify-content: flex-start;
    margin-top: 0;
  }
}

@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalSelectCalendar {
    margin-left: 10px;
  }
}

.top_formEntryDateGoalSelectDate {
  width: calc(100% - 45px);
  padding-right: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalSelectDate {
    padding-right: 0;
    margin-bottom: 8px;
  }
}

.top_formEntryDateGoalSelectTime {
  width: 100%;
  height: auto;
  display: flex;
  flex-wrap: wrap;
  justify-content: space-between;
  margin-top: 15px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalSelectTime {
    justify-content: flex-start;
    margin-top: 0;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryDateGoalSelectTime .top_formEntryDateSelectTimeInput:first-of-type {
    margin-right: 10px;
  }
}

.topPuRcGeton {
  /*	position: fixed;
  	//top: 100%;
  	top: 100%;
  	left: 0;
  	width: 100%;
  	height: 100vh;
  	z-index:9999;
  	background:$white;
  	transition-duration: .5s;

  	@include pc {*/
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 9999;
  /*	}*/
  box-shadow: 0px 0px 1px 0px #cccccc;
}
.topPuRcGeton.active {
  /*		top: 0;

  		@include pc {*/
  display: block;
  top: 100%;
  background: #f5f5f5;
  /*		}*/
}
@media print, screen and (min-width: 750px) {
  .topPuRcGeton.active {
    position: fixed;
    left: 128px;
    right: 527px;
    margin-left: auto;
    margin-right: auto;
  }
}

.topPuRcGetoff {
  /*	position: fixed;
  	//top: 100%;
  	top: 100%;
  	left: 0;
  	width: 100%;
  	height: 100vh;
  	z-index:9999;
  	background:$white;
  	transition-duration: .5s;

  	@include pc {*/
  display: none;
  position: absolute;
  top: 100%;
  left: 0;
  width: 100%;
  height: auto;
  z-index: 9999;
  /*	}*/
  box-shadow: 0px 0px 1px 0px #cccccc;
}
.topPuRcGetoff.active {
  /*		top: 0;

  		@include pc {*/
  display: block;
  top: 100%;
  background: #f5f5f5;
  /*		}*/
}
@media print, screen and (min-width: 750px) {
  .topPuRcGetoff.active {
    position: fixed;
    left: 128px;
    right: 527px;
    margin-left: auto;
    margin-right: auto;
  }
}

/*=========================================
駅レンタカーのログイン後のご案内枠
=========================================*/
.idxSearchWRentacar_logininfoW {
  display: none;
  width: 100%;
  margin-top: 20px;
}
.rentacarPagemove .idxSearchWRentacar_logininfoW {
  display: block;
}
@media print, screen and (min-width: 750px) {
  .idxSearchWRentacar_logininfoW {
    margin-top: 32px;
    padding-left: 30px;
    padding-right: 30px;
    height: 312px;
    font-size: 0.9rem;
  }
}
.idxSearchWRentacar_logininfoW a {
  font-size: 1.2rem;
  height: 60px;
  margin-top: 20px;
}
@media print, screen and (min-width: 750px) {
  .idxSearchWRentacar_logininfoW a {
    font-size: 1rem;
    height: 48px;
    margin-top: 24px;
  }
}

/*=========================================
駅レンタカーの営業所選択枠
=========================================*/
.topPuRcOfficeW {
  display: none;
}

.rcOfficeW_contents {
  display: none;
}

.topPuRcGetoffOfficeW {
  display: none;
}

.rcGetoffOfficeW_contents {
  display: none;
}

/*=========================================
JRきっぷのエラー表示
=========================================*/
.top_ticketP-error {
  width: 100%;
  color: #b42700;
  font-size: 1rem;
  font-weight: bold;
  margin-top: 5px;
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAc-subW .top_ticketP-error {
    order: 3;
  }
}
@media print, screen and (min-width: 750px) {
  .top_formEntryAc-subW .top_ticketP-error {
    padding-left: 140px;
  }
}







/*=========================================
focusを表示
=========================================*/
.top_formEntrySubmitbtnW input:focus {
  outline: solid 2px #06c;
}

.tmp_btn_h_m_bggreen-auto:focus {
  outline: solid 2px #06c;
}

.top_formEntryDateTabTicketAbout button:focus {
  outline: solid 2px #06c;
}

.tmp_btn_icon-help:focus {
  outline: solid 2px #06c;
}

.tmp_btn_icon-accOpen:focus {
  outline: solid 2px #06c;
}

.bd-white.tmp_btn_h_m_bgwhite-auto:focus {
  outline: solid 2px #06c;
}

.tmp_btn_default:focus {
  outline: solid 2px #06c;
}

.top_formEntrySubmitbtnW button:focus {
  outline: solid 2px #06c;
}


/*# sourceMappingURL=top_searchparts_toppageonly.css.map */
