@charset "utf-8";
/* CSS Document */

/*----- ナビボタン SP-----*/
@media screen and (max-width: 767px) {
  .naviArea li {
    float: left;
    box-sizing: border-box;
  }
  .naviArea li:nth-child(2n+1):last-child {
    width: 100%;
  }
  [class^="naviArea"] .nav_goodvalue.ver02 li:nth-child(-n+2) {
    width: 48%;
  }
  [class^="naviArea"] .nav_goodvalue.ver02 {
    flex-wrap: wrap;
    gap: 0.7rem 0;
  }
}

/* -----北陸の秋冬をおトクに旅しよう！早期予約キャンペーン----- */
#coupon_hokuriku {
  width: 800px;
  background: #fff;
  border-radius: 30px;
  padding: 20px;
  box-shadow: 0 6px 15px rgba(37, 37, 60, 0.2);
}
#coupon_hokuriku h2, #coupon_hokuriku .cp_ttl {
  text-align: center;
}
#coupon_hokuriku h2 {
  border-bottom: 2px solid #eee;
  margin-bottom: 10px;
  padding-bottom: 10px;
  color: #029e9a;
}
#coupon_hokuriku .cp_ttl {
  font-size: 2rem;
  font-weight: bold;
}
#coupon_hokuriku .cp_txt {
  width: 500px;
  margin: 20px auto;
}
#coupon_hokuriku .cp_txt dl {
  display: flex;
  flex-wrap: wrap;
}
#coupon_hokuriku .btn01_rt {
  margin: 0;
}
/*SP*/
@media screen and (max-width: 767px) {
  #coupon_hokuriku {
    width: 93%;
  }
  #coupon_hokuriku h2 {
    font-size: 2rem;
  }
  #coupon_hokuriku .cp_ttl {
    font-size: 1.6rem;
  }
  #coupon_hokuriku .cp_txt {
    width: 100%;
  }
  #coupon_hokuriku .cp_txt dl {
    flex-direction: column;
  }
}

/* -----期間限定！お得な列車を使って旅をしよう！----- */
/*タブ切り替え*/
.tab_area {
	display: none;
}
.tab_area.show {
	display: block;
}
/*タブタイトル*/
#limited_train .tab_menu {
  display: flex;
  justify-content: space-between;
  position: relative;
  margin-top: 10px;
  z-index: 1;
}
#limited_train .tab_menu::before {
  content: "";
  display: inline;
  position: absolute;
  width: 10px;
  height: 2px;
  background: #333;
  bottom: 0;
  left: 49.5%;
}
#limited_train .tab_menu .tab_btn {
  width: 49.5%;
  font-size: 2rem;
  font-weight: bold;
  text-align: center;
  padding: 3px 0 0;
  border-bottom: 2px solid #333;
  border-radius: 20px 20px 0 0;
  background: #cef5ee;
  position: relative;
  cursor: pointer;
}
#limited_train .tab_menu .tab_btn.bg_white {
  background: #fff;
}
#limited_train .tab_menu .tab_btn.active {
  border: 2px solid #333;
  border-bottom: 2px solid #fff;
  background: #fff;
}
#limited_train .tab_menu .tab_btn .date {
  font-size: 1.4rem;
  font-weight: normal;
  display: block;
}
#limited_train .tab_menu .tab_btn>span {
  font-size: 2.8rem;
  color: #c93232;
}
/*一言吹き出し*/
#limited_train .balloon2-bottom {
  position: relative;
  display: inline-block;
  font-size: 1.5rem;
  width: 355px;
  margin: 10px;
  padding: 10px;
  background: #FFF;
  border: solid 3px #ccc;
  box-sizing: border-box;
  border-radius: 15px;
}
#limited_train .balloon2-bottom::before {
  content: "";
  position: absolute;
  top: 95%;
  left: 32px;
  border: 12px solid transparent;
  border-top: 12px solid #FFF;
  z-index: 2;
}
#limited_train .balloon2-bottom::after {
  content: "";
  position: absolute;
  top: 100%;
  left: 30px;
  border: 14px solid transparent;
  border-top: 14px solid #ccc;
  z-index: 1;
}
#limited_train .balloon2-bottom a {
  color: #222;
  font-weight: bold;
  text-decoration: underline;
}
#limited_train .balloon2-bottom a:hover {
  color: #029e9a;
}
/*列車ボタン*/
#limited_train .train_info {
  width: 490px;
  margin: 20px auto;
  padding: 10px 25px 10px 0;
  border: 3px solid #029E9A;
  cursor: pointer;
}
#limited_train .train_info:hover {
  background: #cef5ee;
  transition: 0.2s;
}
#limited_train .train_info.label_green::before {
  content: "グリーン車もお得！";
  display: inline-block;
  position: absolute;
  background: #1c854c;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3;
  width: 80px;
  height: 80px;
  border-radius: 40px;
  padding: 24px 4px;
  right: -20px;
  top: -20px;
}
#limited_train .label_roundgreen {
  display: inline-block;
  position: absolute;
  background: #2e835c;
  width: 84px;
  height: 84px;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3;
  border-radius: 50%;
  padding: 14px 0;
  z-index: 2;
  right: -9px;
  top: -25px;
}
#limited_train .train_info a {
  display: block;
  color: #222;
}
#limited_train .train_info .inner {
  display: flex;
  justify-content: center;
  align-items: center;
  gap: 30px;
}
#limited_train .train_info .inner .icon {
  width: 60px;
}
#limited_train .train_info .inner .icon img:hover {
  opacity: 1;
}
#limited_train .train_info .inner .txt {
  font-weight: bold;
}
#limited_train .train_info .inner .txt .area {
  font-size: 1.8rem;
  text-align: center;
}
#limited_train .train_info .inner .txt p:nth-of-type(2) {
  line-height: 1.4;
  margin: 0 0 5px;
}
#limited_train .train_info .inner .txt .marker_yellow {
  background: linear-gradient(transparent 50%, #fff7aa 50%);
  display: inline;
}
#limited_train .train_info .small_text {
  margin: 5px 20px 0;
}
.icon_click {
  position: relative;
}
.icon_click::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_im04.png) no-repeat 0 0 / 63px 53px;
  width: 63px;
  height: 53px;
  bottom: -36px;
  right: 0;
  z-index: 1;
}
#limited_train .text_link {
  font-size: 1.5rem;
  font-weight: bold;
  text-align: center;
  margin: -10px auto 10px;
}
#limited_train .text_link a {
  color: #222;
  position: relative;
}
#limited_train .text_link a:hover {
  text-decoration: underline;
  color: #029e9a;
}
#limited_train .text_link a::after {
  content: '';
  border-top: 2px solid #999;
  border-right: 2px solid #999;
  display: block;
  width: 8px;
  height: 8px;
  position: absolute;
  top: 50%;
  right: -6%;
  -webkit-transform: rotate(45deg) translate(-35%, -40%);
  transform: rotate(45deg) translate(-35%, -40%);
}
#limited_train .text_jogai a {
  position: relative;
}
#limited_train .text_jogai a::before {
  content: "※除外日あり";
  display: inline-block;
  position: absolute;
  font-size: 11px;
  background: #fff;
  right: -75px;
  top: 45px;
}
/*タイトル*/
.feature .section h3 {
  background-color: #fff;
  border-bottom: none;
  padding: 0;
  color: ##029e9a;
  text-align: center;
  font-size: 2.4rem;
}
.feature .section h3:before {
  display: none;
}
.feature .section h4 {
  font-size: 1.8rem;
  color: #222;
  border-bottom: 2px solid #029e9a;
  margin: 30px auto 10px;
  padding: 5px;
}
/*商品*/
#limited_train .hotel {
  padding: 0 0 0 10px;
}
#limited_train .hotel li {
  border-radius: 15px;
  padding: 0;
  width: 98%;
  border: 1px solid #ccc;
}
#limited_train .hotel li .img_box img {
  border-radius: 14px 14px 0 0;
}
#limited_train .hotel li .img_box {
  position: relative;
}
#limited_train .hotel li .details_box .area {
  position: absolute;
  width: 90%;
  bottom: 101%;
  left: 5%;
  margin-bottom: -59.5%;
  padding: 0 0 0 17px;
  filter: drop-shadow(0px 0px 3px #000);
  text-shadow: 1px 1px 3px #000;
  letter-spacing: -0.05rem;
}
#limited_train .hotel li>a .details_box>.area {
  background: transparent;
}
#limited_train .hotel li .details_box .area::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_ic13.png) no-repeat 0 0 / 11px 15px;
  width: 11px;
  height: 15px;
  top: 2px;
  left: 0;
}
#limited_train .hotel li .details_box .ttl {
  position: absolute;
  width: 95%;
  bottom: 99%;
  left: 4%;
  margin-bottom: -52%;
  color: #fff;
  font-size: 2rem;
  filter: drop-shadow(0px 0px 3px #000);
}
#limited_train .hotel li .details_box {
  padding: 0 20px 10px;
}
#limited_train .hotel .staff_box {
  padding: 0 20px;
  display: flex;
  justify-content: space-between;
  align-items: center;
}
#limited_train .hotel .staff_box .icon_left,
#limited_train .hotel .staff_box .icon_right {
  width: 140px;
}
#limited_train .hotel .staff_box .icon_left p,
#limited_train .hotel .staff_box .icon_right p {
  text-align: center;
  margin: 5px;
}
#limited_train .hotel .staff_box .balloon2-left {
  position: relative;
  display: inline-block;
  width: 64%;
  margin: 1.5em 0 1.5em 15px;
  padding: 12px;
  color: #222;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #ccc;
  box-sizing: border-box;
  border-radius: 15px;
}
#limited_train .hotel .staff_box .balloon2-left:before {
  content: "";
  position: absolute;
  top: 50%;
  left: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-right: 13px solid #FFF;
  z-index: 2;
}
#limited_train .hotel .staff_box .balloon2-left:after {
  content: "";
  position: absolute;
  top: 50%;
  left: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-right: 14px solid #ccc;
  z-index: 1;
}
#limited_train .hotel .staff_box .balloon2-right {
  position: relative;
  display: inline-block;
  width: 64%;
  margin: 1.5em 15px 1.5em 0;
  padding: 12px;
  color: #222;
  font-size: 16px;
  background: #FFF;
  border: solid 3px #ccc;
  box-sizing: border-box;
  border-radius: 15px;
}
#limited_train .hotel .staff_box .balloon2-right:before {
  content: "";
  position: absolute;
  top: 50%;
  right: -24px;
  margin-top: -12px;
  border: 12px solid transparent;
  border-left: 13px solid #FFF;
  z-index: 2;
}
#limited_train .hotel .staff_box .balloon2-right:after {
  content: "";
  position: absolute;
  top: 50%;
  right: -30px;
  margin-top: -14px;
  border: 14px solid transparent;
  border-left: 14px solid #ccc;
  z-index: 1;
}
.sp_1col>div {
  margin: 0;
}
/*その他のお得な列車*/
#limited_train .wrap_i_on_t .box_i_on_t {
  width: 48%;
  margin: 1%!important;
  position: relative;
}
#limited_train .wrap_i_on_t.higaeri_btn .box_i_on_t {
  height: 245px;
}
#limited_train .wrap_i_on_t .box_i_on_t.label_kani,
#limited_train .wrap_i_on_t .box_i_on_t.label_higaeri,
#limited_train .wrap_i_on_t .box_i_on_t.label_long01 {
  position: relative;
}
#limited_train .label_kani::before {
  content: "お得に蟹を楽しもう！";
  display: inline-block;
  position: absolute;
  background: #D13E2E;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.4;
  padding: 4px 7px;
  right: -7px;
  top: -15px;
  z-index: 2;
}
#limited_train .label_higaeri::before {
  content: "日帰りプラン";
  display: inline-block;
  position: absolute;
  background: #107db3;
  color: #fff;
  font-size: 1.4rem;
  text-align: center;
  line-height: 1.4;
  padding: 4px 7px;
  right: -7px;
  top: -15px;
  z-index: 2;
}
.wrap_i_on_t .box_i_on_t .inner_i_on_t {
  height: 165px;
}
#limited_train .wrap_i_on_t .box_i_on_t .price_estimated {
  margin: 3px auto 0;
  color: #ffeb40;
}
#limited_train .wrap_i_on_t .box_i_on_t .inner_i_on_t .wrap_tx {
  text-shadow: 1px 1px 10px #000;
}
#limited_train .wrap_i_on_t .box_i_on_t .inner_i_on_t .wrap_tx .tx_train {
  font-size: 1.4rem;
  line-height: 1.4;
  color: #fff !important;
  width: auto !important;
  margin: auto !important;
}
#limited_train .wrap_i_on_t .box_i_on_t .wrap_note {
  padding: 10px;
}
.wrap_i_on_t .box_i_on_t .btn01_rt a {
  width: 60%;
  height: 30px;
  line-height: normal;
  margin: 20px auto;
  padding: 3px;
}
/*北陸ページ遷移ボタン*/
#limited_train .btn01_rt.kani {
  margin: 20px auto 90px;
}
#limited_train .btn01_rt.kani {
  position: relative;
}
#limited_train .btn01_rt.kani::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_im03_13.png) no-repeat 0 0/95px 93px;
  width: 95px;
  height: 93px;
  top: 20px;
  right: 37%;
  z-index: 1;
}
#limited_train #kani_train {
  padding-top: 100px;
  margin-top: -100px;
}
/*-----旅せよ平日プラン-----*/
#on_weekday {
  border-image: linear-gradient(#ffe7c3, #ffe7c3) fill 0 / / 0 100vw 0 100vw;
  margin: 30px 0;
  padding: 0 0 30px;
}
/*タイトル*/
#on_weekday .ttl_heijitu h3 {
  margin: 40px auto 10px;
  color: #0063a5;
  background: #ffe7c3;
}
#on_weekday .ttl_heijitu h3::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/logo_heijitutabi_color_n.png) no-repeat 0 0 / 110px auto;
  width: 110px;
  height: 110px;
  top: 60px;
  left: -110px;
}
#on_weekday>div {
  position: relative;
}
#on_weekday .label_roundgreen {
  display: inline-block;
  position: absolute;
  background: #2e835c;
  width: 82px;
  height: 82px;
  color: #fff;
  font-size: 1.3rem;
  text-align: center;
  line-height: 1.3;
  border-radius: 50%;
  padding: 14px 0;
  z-index: 2;
  right: -10px;
  top: -15px
}
#on_weekday .label_roundgreen.august {
  top: -25px;
  right: 30%
}
#on_weekday .box_content .hotel {
  padding: 0;
}
.tx_underline {
  border-bottom: 2px solid #0063a5;
  width: 100px;
  margin: 0 auto 20px;
}
/*商品*/
.box_content .base_prod .swiper-button-next, .box_content .base_prod .swiper-button-prev, .box_content .base_prod .swiper-pagination {
  display: none !important;
}
.wrap_slide .swiper-button-prev, .wrap_slide .swiper-button-next {
  display: block !important;
  position: absolute;
  width: 40px;
  height: 40px;
  top: 45%;
  margin-top: -15px;
  -webkit-filter: drop-shadow(1px 1px 5px rgba(160, 160, 160, 0.2));
  filter: drop-shadow(1px 1px 5px rgba(160, 160, 160, 0.2));
  z-index: 10;
}
.wrap_slide .swiper-button-prev {
  background: url(/content/dam/jretravel/site/page/seasonal/sakura/images/sakura2024_nav01.png) no-repeat 50% 50% / 100%;
  left: -60px;
}
.wrap_slide .swiper-button-next {
  background: url(/content/dam/jretravel/site/page/seasonal/sakura/images/sakura2024_nav02.png) no-repeat 50% 50% / 100%;
  right: -60px;
}
#on_weekday .swiper-pagination {
  bottom: 15px;
}
#on_weekday .wrap_slide {
  position: relative;
}
#on_weekday .wrap_slide .swiper {
  overflow: hidden;
  padding: 0 0 20px;
}
#on_weekday .wrap_slide .swiper .box_content {
  border-radius: 15px;
  background: #fff;
  margin: 0 0 10px;
}
#on_weekday .wrap_slide .box_content .swiper-slide {
  width: 100%;
  margin: 0;
  padding: 0;
  border-radius: 15px;
}
#on_weekday .hotel li>a .img_box>img {
  border-radius: 14px 14px 0 0;
}
#on_weekday .hotel li>a .details_box>.area {
  background: transparent;
  position: absolute;
  bottom: 100%;
  padding: 0 0 0 17px;
}
#on_weekday .hotel li>a .details_box>.area::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_ic13.png) no-repeat 0 0 / 11px 15px;
  width: 11px;
  height: 15px;
  top: 2px;
  left: 0;
}
#on_weekday .hotel li>a .details_box>.on_the_top {
  position: absolute;
  top: 0;
  left: 0;
  color: #fff;
  font-size: 2rem;
  font-weight: bold;
  filter: drop-shadow(0px 0px 3px #000);
  width: 100%;
  text-align: center;
}
#on_weekday .swiper-container .swiper-button-next,
#on_weekday .swiper-container .swiper-button-prev {
  background: #fff;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50%;
  color: #3b94cf;
}
#on_weekday .swiper-container .swiper-button-prev,
#on_weekday .swiper-container .swiper-container-rtl .swiper-button-next {
  left: -50px;
}
#on_weekday .swiper-container .swiper-button-next,
#on_weekday .swiper-container .swiper-container-rtl .swiper-button-prev {
  right: -50px;
}
#on_weekday .swiper-container .swiper-button-next:after,
#on_weekday .swiper-container .swiper-button-prev:after {
  font-size: 2.2rem;
  font-weight: bold;
  position: absolute;
}
#on_weekday .swiper-container .swiper-button-next:after {
  right: 13px;
}
#on_weekday .swiper-container .swiper-button-prev:after {
  left: 13px;
}
#on_weekday .wrap_slide .swiper-button-disabled {
  opacity: 0.4;
}
/*ボタン*/
#on_weekday .btn01_rt {
  margin: 0 auto 20px;
}
#on_weekday .btn01_rt a {
  background: #e17909;
}
.btn_flex {
  display: flex;
  justify-content: center;
  margin-left: 15px;
}
.btn_flex .btn01_rt {
  margin: 0 20px 20px !important;
}
/*7月・8月のみ*/
.summer #on_weekday {
  border-image: none;
  background: none;
  margin: 0;
  padding: 0;
}
.summer #on_weekday .ttl_heijitu h3 {
  background: none;
  margin: -100px auto 30px 42%;
  color: #14948a;
  text-align: left;
  position: relative;
}
.summer #on_weekday .ttl_heijitu.label h3 {
  margin: 10px 0;
  width: 100%;
  text-align: center;
}
.summer #on_weekday .ttl_heijitu.label::before {
  left: 30%;
}
.summer #on_weekday .btn01_rt a {
  background: #029E9A;
}
#limited_train .summer .btn_box {
  display: flex;
  justify-content: space-between;
  gap: 10px;
}
#limited_train .summer .btn_box li {
  font-size: 1.5rem;
  font-weight: bold;
  background: #fff;
  width: 100%;
  height: 45px;
  border: 2px solid #029e9a;
  text-align: center;
  position: relative;
}
#limited_train .summer .btn_box li::after {
  content: "";
  border-top: 2px solid #029e9a;
  border-right: 2px solid #029e9a;
  display: block;
  width: 1rem;
  height: 1rem;
  position: absolute;
  top: 50%;
  right: 5%;
  -webkit-transform: rotate(45deg) translate(-35%, -40%);
  transform: rotate(45deg) translate(-35%, -40%);
}
#limited_train .summer .btn_box li:hover {
  background: #cef5ee;
  transition: 0.2s;
}
#limited_train .summer .btn_box li a {
  display: flex;
  color: #333;
  text-decoration: none;
  width: 100%;
  height: 100%;
  justify-content: center;
  align-items: center;
}
#limited_train .summer .btn_box li a img {
  width: 15px;
  height: auto;
  margin: 0 4px;
}
#limited_train .summer .train_info .inner .txt>p:first-of-type {
  font-size: 1.8rem;
  border-bottom: 2px solid #afebe9;
  margin: 0 auto 5px;
  text-align: center;
}
.btn_box .tx_long {
  font-size: 1.3rem;
  letter-spacing: -0.05rem;
  padding: 0 0 2px;
}
.summer #on_weekday .btn_flex {
  margin-left: 0;
}
.summer #on_weekday .btn_flex.w100 .btn01_rt {
  width: 100%;
}
.summer #on_weekday .btn_flex.w100 .btn01_rt a {
  display: block;
  height: 48px;
  padding: 0 60px 0 32px;
}
.logo_nagano {
  width: 270px;
  margin: -15px auto 5px;
}
.station_list {
  display: flex;
  margin: 15px 0 80px;
  align-items: center;
}
.station_list>div>div.icon img {
  height: 80px;
}
.station_list>div>p.station_name {
  margin: 10px auto;
}
.station_list ul {
  display: flex;
  gap: 54px;
  margin: 0 0 0 68px;
}
.station_list ul li {
  border: 2px solid #bbb;
  width: 250px;
  padding: 10px;
  position: relative;
}
.station_list ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 54px;
  height: 10px;
  background-image: repeating-linear-gradient(90deg, #fff 0px, #fff 13px, #333 13px, #333 26px);
  border: 1px solid #333;
  top: calc(50% - 5px);
  left: -56px;
}
.station_list .station_name {
  font-size: 1.6rem;
  font-weight: bold;
  text-align: center;
  margin: 0 auto 6px;
  line-height: 1.6rem;
}
.station_list ul li p:nth-of-type(2) {
  font-size: 1.4rem;
  height: 70px;
}
.station_list ul li .btn01_rt {
  margin: 10px 0 0;
}
.station_list ul li .btn01_rt a {
  display: block;
  height: 32px;
  padding: 0;
  line-height: 3.2rem;
}
.station_list .icon_click::before {
  background-size: 100%;
  width: 53px;
  height: 45px;
  bottom: -30px;
  right: 12px;
}
.summer .label_roundgreen, #summer_family .label_roundgreen {
  background: #029e9a;
}
#summer_family section.cmn_contents {
  position: relative;
}
#summer_family section.cmn_contents .label_roundgreen {
  top: 5px;
  right: 5px;
}
.base_prod .hotel li>a .img_box>.ribbon {
  background: none;
  top: unset;
  bottom: 0;
  z-index: 1;
  left: unset;
  right: 0;
  font-weight: normal;
  padding: 3px 10px;
  filter: drop-shadow(0px 0px 3px #000);
  text-shadow: 1px 1px 3px #000;
}
#summer_family .hotel {
  margin: 20px 0 0;
}
#summer_family .hotel li {
  border: 1px solid #ccc;
}
#summer_family .hotel li .details_box {
  padding: 10px 15px;
}
#summer_family .hotel li .details_box .ttl {
  position: static;
  width: 100%!important;
  margin: 0;
  padding: 0;
  font-size: 1.6rem;
  color: #222;
  filter: none;
}
#summer_family .hotel li .details_box .ttl,
#summer_family .hotel li .details_box .price_estimated,
#summer_family .hotel li .details_box .price,
#summer_family .hotel li .details_box .conditions {
  text-align: center;
}
#summer_family .hotel li .details_box>p:nth-of-type(6),
#summer_family .hotel li .details_box>p:nth-of-type(7) {
  width: 381px;
  margin: .5rem auto;
  padding: 0;
}
#summer_family .hotel li .details_box>p:nth-of-type(6) {
  font-size: 1.6rem;
  font-weight: bold;
}
#summer_family .hotel li .p80 .details_box>p:nth-of-type(6),
#summer_family .hotel li .p80 .details_box>p:nth-of-type(7) {
  width: 354px;
  margin: .5rem auto;
  padding: 0;
}
#summer_family .hotel li .outside_txt {
  font-size: 1.1rem;
  margin: 0 16px 20px;
}
/*日帰り商品*/
#limited_train .higaeri_1col .hotel li .details_box {
  margin: 0 0 0 15px;
  padding: 0 20px;
}
#limited_train .higaeri_1col .hotel li .details_box .ttl,#limited_train .higaeri_3col .hotel li .details_box .ttl {
  position: static;
  width: 100%;
  margin: 10px 0 0;
  font-size: 1.7rem;
  color: #222;
  filter: none;
}
#limited_train .higaeri_1col .hotel li .details_box .ttl {
  width: 95%;
}
#limited_train .higaeri_1col .hotel li .details_box .area {
  left: 20px;
  bottom: 10px;
  margin: 0;
}
#limited_train .higaeri_3col .hotel li .details_box .area {
  left: 10px;
  top: 170px;
  margin: 0;
}
#limited_train .higaeri_1col .hotel li .img_box img {
  border-radius: 14px 0 0 14px;
}
#limited_train .higaeri_1col .base_prod .hotel li>a .img_box {
  margin-bottom: 0;
}
#limited_train .higaeri_1col .hotel .details_box>ul li,#limited_train .higaeri_3col .hotel .details_box>ul li {
  border: none;
}
.higaeri_3col {
  display: flex;
}
/*バナー*/
.tyo_otherarea_banner .textitem::before,.tyo_otherarea_banner .textitem::after {
  display: none;
}
.tyo_otherarea_banner .textitem {
  padding-left: 0;
}
/*テキスト*/
.tx_green {
  color: #14948a;
  font-weight: bold;
}
.tx_center {
  text-align: center;
}
.fs2_0 {
  font-size: 2.0rem;
}
.lh1_4 {
  line-height: 1.4;
}
.mt-10 {
  margin-top: -10px;
}
.tx_red_big {
  color: #ea0000;
  font-size: 2.6rem;
  font-weight: bold;
}
/*アコーディオン*/
#limited_train .acco_solo .info_box_component {
  border: 2px solid #029e9a;
}
#limited_train .acco_solo .info_box_ttl {
  margin: 0 auto;
  padding: 7px 20px;
  font-size: 1.5rem;
}
#limited_train .acco_solo .info_box_list li {
  display: inline-block;
}
#limited_train .acco_solo .info_box_list li:not(:first-child) {
  border: none;
}
#limited_train .acco_solo .pm_icon {
  background: #029e9a;
  top: 4px;
}
#limited_train .acco_solo .info_box_list a::after {
  border-color: transparent transparent transparent #029e9a;
}
/*限定列車がお得*/
.info_sprate {
  border: 1px solid #ccc;
  border-radius: 10px;
  margin: 20px auto;
  padding: 10px 20px;
  position: relative;
  z-index: 1;
  background: #fff;
}
.info_sprate h4 {
  display: flex;
  align-items: center;
  margin: 10px auto;
  justify-content: center;
}
.info_sprate h4>img {
  height: 30px;
  padding: 0 5px 0 0;
}
.info_sprate ul li {
  position: relative;
  padding-left: 12px;
  font-size: 1.4rem;
}
.info_sprate ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: #029e9a;
  width: 8px;
  height: 8px;
  border-radius: 4px;
  top: 8px;
  left: 0;
}
/*驚きだ値！*/
.feature .section.tx_black h3 {
  color: #222;
  font-size: 1.8rem;
  font-weight: normal;
}
.tx_underline.green {
  border-bottom: 2px solid #029e9a;
  width: 160px;
  margin: 30px auto 10px;
}
.btn_hotel.col4>div {
  margin: 0;
}
#limited_train .btn_hotel.col4 ul {
  padding: 0;
}
#limited_train .btn_hotel.col4 ul li {
  width: calc((100% - 10px* 3) / 4);
  border: none;
}
#limited_train .btn_hotel.col4 ul li:hover {
  background: #029e9a;
}
#limited_train .btn_hotel.col4 ul li a:hover {
  opacity: 1;
}
#limited_train .btn_hotel.col4 ul li .details_box {
  padding: 0;
}
#limited_train .btn_hotel.col4 ul li .ttl {
  position: static;
  margin: 0;
  padding: 10px;
  width: 100%;
  border: 2px solid #029e9a;
  border-radius: 10px;
  color: #222;
  font-size: 1.6rem;
  text-align: center;
  filter: none;
  transition: .2s;
}
#limited_train .btn_hotel.col4 ul li .ttl:hover {
  background: #029e9a;
  color: #fff;
}
.h100>.fade {
  height: 150px !important;
}

/*SP*/
@media screen and (max-width: 767px) {
  .sp_txleft p {
    text-align: left !important;
  }
  #limited_train {
    margin-top: 20px;
  }
  /*タブタイトル*/
  #limited_train .tab_menu {
    width: 95%;
    margin: auto;
  }
  #limited_train .tab_menu::before {
    width: 1%;
  }
  #limited_train .tab_menu .tab_btn {
    font-size: 1.6rem;
    height: auto;
    line-height: 2.6rem;
    padding: 15px 15px 7px;
  }
  #limited_train .tab_menu .tab_btn .date {
    font-size: 1.2rem;
    line-height: 1.4;
    margin-top: 5px;
  }
  /*列車ボタン*/
  #limited_train .train_info {
    width: 95%;
    height: auto!important;
    margin: 20px auto 30px;
    padding: 10px;
  }
  #limited_train .train_info::after {
    right: 3%;
  }
  #limited_train .train_info.label_green::before {
    right: -10px;
    top: -30px;
  }
  #limited_train .train_info.asama {
    padding: 10px 20px 10px 12px;
  }
  #limited_train .train_info .inner {
    gap: 0;
    padding: 0;
  }
  #limited_train .train_info .inner .icon {
    width: 49px;
    margin-right: 20px;
  }
  #limited_train .train_info .inner .txt {
    width: 80%;
  }
  #limited_train .train_info .inner .txt .area {
    text-align: left;
    padding-left: 12%;
  }
  #limited_train .summer .train_info .inner .txt>p:first-of-type {
    font-size: 1.5rem;
    border-bottom: 2px solid #afebe9;
    margin: 0 auto 5px;
    padding: 0 5px;
    text-align: left;
    display: inline-block;
  }
  #limited_train .train_info .inner .txt p:nth-of-type(2) {
    font-size: 1.2rem;
    margin: 0 0 5px;
  }
  #limited_train .train_info .inner .txt .marker_yellow {
    font-size: 1.3rem;
  }
  #limited_train .train_info .small_text {
    margin: 5px 0;
  }
  #limited_train .text_jogai a::before {
    right: -27px;
    top: 15px;
  }
  /*タイトル*/
  .feature .section h3 {
    margin: 10px auto;
  }
  .feature .section h4 {
    width: 94%;
    margin: 20px auto;
  }
  /*商品*/
  #limited_train .hotel li {
    width: 97%;
  }
  #limited_train .hotel li .details_box {
    padding: 0px 15px 10px;
  }
  #limited_train .hotel li .details_box .ttl {
    width: 94%;
    bottom: 100%;
    left: 10px;
  }
  #limited_train .hotel li .details_box .area {
    width: 100%;
    left: 10px;
    bottom: 100%;
    margin-bottom: -59%;
  }
  #limited_train .hotel .staff_box .icon_left, #limited_train .hotel .staff_box .icon_right {
    width: 103px;
  }
  #limited_train .hotel .staff_box .balloon2-left {
    margin: 0 0 20px 20px;
  }
  #limited_train .hotel .staff_box .balloon2-right {
    margin: 0 20px 20px 0;
  }
  /*その他のお得な列車*/
  #limited_train .wrap_i_on_t .box_i_on_t {
    width: 100%;
    height: auto;
    margin: 10px auto !important;
  }
  #limited_train .wrap_i_on_t .box_i_on_t.label_kani::before {
    right: -6px;
    top: -16px;
  }
  #limited_train .wrap_i_on_t .box_i_on_t .inner_i_on_t {
    height: 165px;
  }
  #limited_train .wrap_i_on_t .box_i_on_t:last-of-type {
    margin: 0 auto!important;
  }
  #limited_train .wrap_i_on_t .box_i_on_t .wrap_note {
    padding: 4px 8px 6px;
  }
  #limited_train .wrap_i_on_t .box_i_on_t.label_higaeri .inner_i_on_t {
    height: 175px;
  }
  #limited_train .label_long01::before,
  #limited_train .label_long02::before,
  #limited_train .label_long03::before {
    right: -8px;
    top: -50px;
  }
  #limited_train .label_long01::before {
    right: -6px;
    top: -20px;
  }
  .wrap_i_on_t {
    gap: 25px;
  }
  .wrap_i_on_t.higaeri_btn {
    gap: 80px;
  }
  .wrap_i_on_t .box_i_on_t .btn01_rt a {
    width: auto;
  }
  /*北陸ページ遷移ボタン*/
  #limited_train .btn01_rt.kani {
    width: 90%;
  }
  #limited_train .btn01_rt.kani::before {
    right: 7%;
  }
  /* -----旅せよ平日プラン----- */
  #on_weekday {
    border-image: none;
    background: #ffe7c3;
    padding: 20px 0;
  }
  #on_weekday .ttl_heijitu.label {/*緑丸ラベルがある場合*/
    width: auto;
  }
  #on_weekday .ttl_heijitu h3 {
    font-size: 2rem;
    margin: 50px auto 10px;
  }
  #on_weekday .ttl_heijitu::before {
    top: -58px;
    left: 0;
  }
  #on_weekday .label_roundgreen {
    top: -24px;
  }
  #on_weekday .label_roundgreen.august {
    top: -20px;
    right: 15px;
  }
  #limited_train .tabiseyo_heijitu .wrap_i_on_t .box_i_on_t:first-of-type {
    height: auto;
  }
  /*商品*/
  .wrap_slide .swiper-button-prev, .wrap_slide .swiper-button-next {
    top: 26%;
  }
  .wrap_slide .swiper-button-prev {
    left: 1%;
  }
  .wrap_slide .swiper-button-next {
    right: 1%;
  }
  #on_weekday .wrap_slide .swiper {
    padding: 0 10px 20px;
  }
  #on_weekday .wrap_i_on_t {
    gap: 20px;
  }
  /*ボタン*/
  #on_weekday .btn01_rt {
    margin: 0 auto 10px;
  }
  .btn_flex {
    flex-direction: column;
    margin: 0 auto;
  }
  .btn_flex .btn01_rt {
    margin: 0 auto 20px !important;
  }
  /*7月・8月のみ*/
  .summer #on_weekday .ttl_heijitu::before {
    left: 0;
  }
  .summer #on_weekday .ttl_heijitu.label::before {
    top: -30px;
    left: calc(50% - 175px);
  }
  .summer #on_weekday .ttl_heijitu h3 {
    font-size: 2rem;
    margin: -100px auto 10px 35%;
  }
  #limited_train .summer .btn_box {
    flex-wrap: wrap;
    margin: 0 10px;
  }
  #limited_train .summer .btn_box li {
    width: 48%;
    font-size: 1.4rem;
    margin: 0 0 5px;
  }
  #limited_train .summer .btn_box li a {
    padding-right: 12px;
  }
  #limited_train .summer .btn_box li a img {
    width: 15px;
    margin: 0 4px 2px;
  }
  .btn_box .sp_tx_long {
    font-size: 1.2rem;
    letter-spacing: -0.05rem;
    padding: 3px 0;
  }
  #limited_train .summer .train_info .inner .txt {
    width: 70%;
  }
  .summer #on_weekday .btn_flex.w100 .btn01_rt {
    width: 92%;
    margin: 10px auto 30px !important;
  }
  .summer #on_weekday .btn_flex.w100 .btn01_rt a {
    padding: 2.5% 8% 2.5% 2.5%;
    height: auto;
  }
  #summer_nagano .sp_txleft p {
    margin: 0 0 0 17%;
  }
  .station_list {
    flex-direction: column;
    margin: 10px 10px 50px;
  }
  .station_list .station_name {
    margin: 0 auto 10px;
  }
  .station_list ul {
    flex-direction: column;
    margin: 60px 0 0 0;
  }
  .station_list ul li {
    width: 340px;
    padding: 15px;
  }
  .station_list ul li p:nth-of-type(2) {
    height: auto;
  }
  .station_list ul li .btn01_rt {
    width: 100%;
  }
  .station_list ul li::before {
    content: "";
    display: inline-block;
    position: absolute;
    width: 10px;
    height: 54px;
    background-image: repeating-linear-gradient(180deg, #fff 0px, #fff 13px, #333 13px, #333 26px);
    border: 1px solid #333;
    top: -56px;
    left: calc(50% - 5px);
  }
  #summer_family>div.ace-section {
    width: 100%;
  }
  #summer_family .hotel {
    margin: 0;
  }
  .base_prod.clm2 .hotel li>a .img_box>.ribbon, .base_prod.clm3 .hotel li>a .img_box>.ribbon, .base_prod.clm4 .hotel li>a .img_box>.ribbon {
    position: absolute;
    top: unset;
    margin: auto;
    padding: .35rem 1.75rem;
  }
  #summer_family section.cmn_contents .label_roundgreen {
    top: -10px;
    right: 5px;
  }
  #summer_family .hotel li .details_box>p:nth-of-type(6) {
    font-size: 1.3rem;
  }
  #summer_family .hotel li .details_box>p:nth-of-type(6), #summer_family .hotel li .details_box>p:nth-of-type(7) {
    width: 315px;
  }
  #summer_family .hotel li .p80 .details_box>p:nth-of-type(6), #summer_family .hotel li .p80 .details_box>p:nth-of-type(7) {
    width: 293px;
  }
  /*---------- 2024.06.10 追記----------*/
  #limited_train #summer_family .hotel li .details_box {
    padding: 1px 10px 0px;
    display: flex;
    flex-direction: column;
  }
  #limited_train #summer_family .hotel li .details_box .tag,
  #limited_train #summer_family .hotel li .details_box .txt {
    display: none;
  }
  #summer_family .hotel li .outside_txt {
    margin: 0 10px 20px;
  }
  #summer_family .hotel li .p80 .details_box>p:nth-of-type(6), #summer_family .hotel li .p80 .details_box>p:nth-of-type(7),
  #summer_family .hotel li .details_box>p:nth-of-type(6),
  #summer_family .hotel li .details_box>p:nth-of-type(7)
  {
    width: auto;
  }
  /*------------------------------------*/
  /*日帰り商品*/
  #limited_train .higaeri_1col .hotel li .details_box {
    margin-left: 0;
    padding: 0 15px 10px;
    width: 100%;
  }
  #limited_train .higaeri_1col .hotel li .details_box .ttl, #limited_train .higaeri_3col .hotel li .details_box .ttl {
    width: 310px;
  }
  #limited_train .higaeri_1col .base_prod .hotel li>a .img_box {
    width: 100%;
  }
  #limited_train .higaeri_1col .hotel li .img_box img {
    border-radius: 14px 14px 0 0;
  }
  #limited_train .higaeri_1col .hotel li .details_box .area, #limited_train .higaeri_3col .hotel li .details_box .area {
    top: 195px;
    left: 10px;
    margin: 0;
  }
  .higaeri_3col {
    flex-direction: column;
  }
  /*アコーディオン*/
  #limited_train .acco_solo .info_box_component {
    margin: 0 10px;
  }
  #limited_train .acco_solo .info_box_list li {
    display: block;
  }
  #limited_train .acco_solo .info_box_list a {
    font-size: 1.4rem;
    padding: 1rem 3rem 1rem 2rem;
  }
  #limited_train .acco_solo .info_box_list a::after {
    border-color: #029e9a;
    border-top: 2px solid #029e9a;
    border-right: 2px solid #029e9a;
    width: 1rem;
    height: 1rem;
  }
  #limited_train .acco_solo .info_box_list li:not(:first-child) {
    border-top: 1px solid #ccc;
  }
  #limited_train .acco_solo .pm_icon::before, .pm_icon_plus::before {
    left: 50%;
  }
  #limited_train .acco_solo .pm_icon.on:after {
    left: 25%;
  }
  /*限定列車がお得*/
  .info_sprate {
    margin: 20px 10px;
  }
  /*驚きだ値！*/
  #limited_train .btn_hotel.col4 ul {
    padding: 0 10px;
    gap: 10px;
  }
  #limited_train .btn_hotel.col4 ul li {
    width: calc((100% - 10px* 1) / 2);
  }
  div:has(> .sp_1col) {
    width: 100vw !important;
  }
  .h100>.fade {
    height: 202px !important;
  }
}

/*PC*/
@media screen and (min-width: 768px) {
  #on_weekday .wrap_slide.pc_noslide .swiper-button-disabled,
  #on_weekday .wrap_slide.pc_noslide .swiper-pagination {
    display: none !important;
  }
  #on_weekday .wrap_slide.pc_noslide .swiper-wrapper {
    justify-content: center;
  }
}

/* -----割引クーポン情報----- */
.coupon_list {
  display: flex;
  justify-content: space-between;
}
.coupon_list #coupon_hokuriku {
  width: 95%;
}
.coupon_list #coupon_hokuriku.col_01 {
  width: 500px;
}
#coupon_hokuriku h2 .txblack_small {
  color: #222;
  font-size: 1.2rem;
  font-weight: normal;
}
.coupon_list #coupon_hokuriku .cp_ttl {
  font-size: 1.6rem;
}
.coupon_list #coupon_hokuriku .cp_txt {
  width: auto;
  margin: 15px auto 20px;
  font-size: 1.3rem;
}
.coupon_list #coupon_hokuriku .cp_txt dl dt:nth-of-type(n+2),
.coupon_list #coupon_hokuriku .cp_txt dl dd:nth-of-type(n+2) {
  margin-top: 5px;
}
.coupon_list #coupon_hokuriku .cp_txt dd.pdf_icon {
  display: flex;
  align-items: center;
  margin-top: 4px;
}
.coupon_list #coupon_hokuriku .cp_txt dd.pdf_icon img {
  margin-right: 3px;
}
/*SP*/
@media screen and (max-width: 767px) {
  .sp_txleft {
    text-align: left!important;
    margin: 0 10px;
  }
  .coupon_list {
    flex-direction: column;
  }
  .coupon_list #coupon_hokuriku.col_01 {
    width: 95%;
  }
  .coupon_list #coupon_hokuriku h2 {
    font-size: 2.4rem;
  }
  .coupon_list #coupon_hokuriku .cp_ttl {
    font-size: 1.8rem;
  }
  .coupon_list #coupon_hokuriku .cp_txt {
    font-size: 1.4rem;
  }
}

/*-----ダイナミック！セール-----*/
/*タイトル*/
.dynamic_sale .ttl_sub {
  font-size: 2.4rem;
  text-align: center;
  color: #029E9A;
  font-weight: normal;
}
/*リード文*/
.dynamic_sale .lead_tx {
  font-size: 1.7rem;
}
.dynamic_sale .date_tx {
  text-align: right;
  width: 420px;
  margin: 0 auto;
}
/*ボタン*/
.dynamic_sale .btn01_rt.pdf_all a {
  display: block;
  font-weight: bold;
  line-height: 2rem;
  width: 320px;
  margin: 0 auto;
  padding: 8px 60px 8px 32px;
}
/*クーポン*/
.dynamic_sale .coupon {
  margin: 20px 0;
}
.dynamic_sale .coupon ul {
  display: flex;
  justify-content: space-between;
}
.dynamic_sale .coupon ul li {
  overflow: hidden;
  position: relative;
}
.dynamic_sale .coupon ul li::before,
.dynamic_sale .coupon ul li::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 25px;
  height: 25px;
  border: 2px solid #333;
  border-radius: 50%;
  background: #fff;
  top: 38%;
  left: -4%;
}
.dynamic_sale .coupon ul li::after {
  left: unset;
  right: -4%;
}
.dynamic_sale .coupon ul li div {
  width: 310px;
  border: 2px solid #333;
  border-radius: 15px;
  padding: 10px 20px 15px;
  overflow: hidden;
}
.dynamic_sale .coupon ul li .price {
  font-size: 4rem;
  font-weight: bold;
  letter-spacing: 0.1rem;
  text-align: center;
  padding: 0 0 15px;
  border-bottom: 1px dashed #333;
  color: #ea0000;
  line-height: 3.2rem;
}
.dynamic_sale .coupon ul li .price>span {
  font-size: 2rem;
}
.dynamic_sale .coupon ul li .price::before {
  display: none;
}
.dynamic_sale .coupon ul li p:nth-of-type(3) {
  margin: 10px 0 0;
}
.dynamic_sale .coupon ul li .btn {
  width: 100%;
  margin: 10px auto 0;
  color: #fff;
  background: #ccc;
  border-radius: 12px;
  font-size: 1.5rem;
  line-height: 2rem;
  position: relative;
}
.dynamic_sale .coupon ul li .btn::after {
  content: "";
  border-top: 2px solid #fff;
  border-right: 2px solid #fff;
  display: block;
  width: 1rem;
  height: 1rem;
  position: absolute;
  top: 50%;
  right: 5%;
  -webkit-transform: rotate(45deg) translate(-35%, -40%);
  transform: rotate(45deg) translate(-35%, -40%);
}
.dynamic_sale .coupon ul li .btn:hover {
  opacity: 0.8;
}
/*4000円クーポン*/
.dynamic_sale .coupon ul li.green_coupon .price {
  color: #38912c;
}
.dynamic_sale .coupon ul li.green_coupon .btn {
  background: #38912c;
}
/*6000円クーポン*/
.dynamic_sale .coupon ul li.orange_coupon .price {
  color: #db7613;
}
.dynamic_sale .coupon ul li.orange_coupon .btn {
  background: #db7613;
}
/*8000円クーポン*/
.dynamic_sale .coupon ul li.red_coupon .price {
  color: #d74343;
}
.dynamic_sale .coupon ul li.red_coupon .btn {
  background: #d74343;
}
/*商品*/
.base_prod .hotel.wrap_cp01 li > a .details_box > .area {
  padding: 1em 25px .5em;
}
.base_prod .hotel.wrap_cp01 li > a .details_box > .area::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: #fff;
  width: 12px;
  height: 12px;
  border-radius: 50% 50% 0 50%;
  transform: rotate(45deg);
  left: 9px;
  top: 14px;
}
.base_prod .hotel.wrap_cp01 li > a .details_box > .area::after {
  content: "";
  display: inline-block;
  position: absolute;
  background: #333;
  width: 4px;
  height: 4px;
  border-radius: 50%;
  left: 13px;
  top: 17px;
}
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_green {
  background: #38912c;
  color: #fff;
  border: none;
}
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_orange {
  background: #db7613;
  color: #fff;
  border: none;
}
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_red {
  background: #d74343;
  color: #fff;
  border: none;
}
/*注意事項*/
.dynamic_sale .attention {
  margin: 0 auto 40px;
  border: 2px solid #ccc;
}
.dynamic_sale .attention>p {
  background: #ccc;
  padding: 3px 20px 5px;
  font-size: 1.5rem;
}
.dynamic_sale .attention ul {
  padding: 10px 40px;
}
.dynamic_sale .attention ul li {
  position: relative;
}
.dynamic_sale .attention ul li::before {
  content: "";
  display: inline-block;
  position: absolute;
  border: 5px solid transparent;
  border-left: 8px solid #ccc;
  top: 7px;
  left: -15px;
}
.dynamic_sale .attention ul li a:hover {
  text-decoration: underline;
}
/*---SP---*/
@media screen and (max-width: 767px) {
  /*タイトル*/
  .dynamic_sale .ttl_sub {
    font-size: 1.7rem;
    margin: 0 auto -15px;
  }
  /*リード文*/
  .dynamic_sale .lead_tx {
    font-size: 1.5rem;
  }
  .dynamic_sale .date_tx {
    text-align: left;
    width: auto;
  }
  /*クーポン*/
  .dynamic_sale .coupon ul {
    flex-direction: column;
    gap: 30px;
  }
  .dynamic_sale .coupon ul li {
    width: 310px;
    margin: 0 auto;
  }
  .dynamic_sale .coupon ul li div {
    margin: 0 auto;
  }
  /*商品*/
  .dynamic_sale .base_prod .hotel.wrap_cp01 li {
    width: 85% !important;
  }
  .swiper-container {
    padding: 0 3%;
  }
  /*注意事項*/
  .dynamic_sale .attention {
    margin: 30px 10px 40px;
  }
  /*PDF一覧ボタン*/
  .dynamic_sale .btn01_rt.pdf_all a {
    padding: 8px 40px 8px 20px;
  }
}

/*2024.05.15 ホテルファミリーオ・ホテルフォルクローロ修正*/
.info_coupon {
  max-width: 900px;
  width: 100%;
}
.info_coupon .feature .section h3 {
  color: #222;
  font-size: 1.6rem;
  margin-bottom: 30px;
  font-weight: normal;
}
.info_coupon .text_bold {
  font-size: 2.0rem;
  display: block;
  font-weight: bold;
}
.info_coupon .text_box {
  display: inline-flex;
  flex-direction: column;
  align-items: flex-end;
}
/* ----------SPのみ---------- */
@media screen and (max-width: 767px) {
  .info_coupon .feature .section h2 {
    font-size: 2.6rem;
  }
  .info_coupon .feature .section h2:before,
  .info_coupon .feature .section h2:after {
    bottom: 0px;
  }
  .info_coupon .title.feature {
    width: 94%;
    margin-inline: auto;
  }
  .info_coupon .feature .section h3 {
    text-align: left;
    margin: 0px 0 20px;
  }
  .info_coupon .feature .section h3 .text_bold {
    background: linear-gradient(transparent 64%, rgba(255, 181, 67, 0.6) 64%);
    display: inline;
  }
  .info_coupon .feature .section h3 .text_bold.summer {
    background: transparent;
  }
  .info_coupon .cmp-text {
    text-align: right;
    font-size: 1.2rem;
  }
  .info_coupon .cmp-text.period {
    text-align: left;
  }
  .info_coupon .text_box {
    display: inline-flex;
    flex-direction: column;
    align-items: flex-end;
  }
}
/* ----------PCのみ---------- */
@media screen and (min-width: 768px) {
  .br_sp {
    display: none;
  }
  .info_coupon .btn01_rt a {
    /* padding: 15px 60px 15px 32px; */
    padding: 1.7% 12% 1.7% 10%;
  }
}

/*割引クーポン情報*/
.info_coupon {
  max-width: 1000px;
}
.info_coupon .text_bold {
  margin: 5px auto 0;
}
.info_coupon .hotel li {
  border: 1px solid #ccc;
}
.info_coupon .feature .section h4 {
  border-bottom: 3px solid #ccc;
  position: relative;
}
.info_coupon .feature .section h4::before {
  content: "";
  display: inline-block;
  position: absolute;
  border-bottom: 3px solid #029e9a;
  width: 25%;
  height: 3px;
  left: 0;
  bottom: -3px;
}
.info_coupon .base_prod .hotel li>a .details_box>.tag>.plan_icon {
  background: #029e9a;
  border: 1px solid #029e9a;
  padding: 0 5px;
  position: absolute;
  top: 66%;
  left: 45%;
}
dl.detail_coupon {
  display: flex;
  flex-wrap: wrap;
}
dl.detail_coupon dt {
  width: 18%;
  text-align: right;
}
dl.detail_coupon dd {
  width: 82%;
}
.hover_zoom>div {
  overflow: hidden;
}
.hover_zoom a img:hover {
  opacity: 1;
  transform: scale(1.03);
  transition: .5s;
}
.base_prod .hotel li>a .details_box>.tag>.icon {
  padding: 0 .5rem .1rem;
}
.close_tx {
  position: relative;
}
.close_tx::before {
  content: "期間終了しました";
  display: inline-block;
  position: absolute;
  color: #fff;
  background: #00000099;
  width: 45%;
  height: auto;
  text-align: center;
}
/*SP*/
@media screen and (max-width: 767px) {
  .info_coupon .feature .section h3 {
    text-align: center;
    margin: -100px auto 20px;
  }
  .info_coupon .feature .section h3 .text_bold {
    background: none;
  }
  .info_coupon .feature .section h4::before {
    width: 40%;
  }
  .info_coupon .hotel li .details_box .ttl {
    bottom: 99%;
  }
  .info_coupon .hotel li>a .details_box>.area {
    bottom: 100%;
  }
  .info_coupon .base_prod .hotel li>a .details_box>.tag>.plan_icon {
    top: 69%;
    left: 37%;
  }
  dl.detail_coupon {
    flex-direction: column;
    font-size: 1.3rem;
  }
  dl.detail_coupon dt {
    width: 100%;
    margin-top: 10px;
    text-align: left;
  }
  dl.detail_coupon dd {
    width: 100%;
  }
  .close_tx::before {
    width: 100%;
  }
}

/*-----ダイナミック！セール　第2弾　告知ページ-----*/
a.noclick:active {
  pointer-events: none;
}

/*-----ダイナミック！セール　第2弾-----*/
/*タイトル*/
.title .coupon_icon {
  position: relative;
}
.title .coupon_icon::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_ic33.png) no-repeat 0 0 / 72px 53px;
  width: 72px;
  height: 53px;
  top: 85px;
  left: calc(50% + 85px);
}
.dynamic_sale .ttl_sub>span {
  font-size: 1.6rem;
}
.dynamic_sale .feature .section h4 {
  border-bottom: 3px solid #ccc;
  position: relative;
  margin: 30px auto;
}
.dynamic_sale .feature .section h4::before {
  content: "";
  display: inline-block;
  position: absolute;
  border-bottom: 3px solid #029e9a;
  width: 25%;
  height: 3px;
  left: 0;
  bottom: -3px;
}
/*テキスト*/
.dynamic_sale .date_tx {
  text-align: left;
  width: auto;
  font-size: 1.6rem;
  font-weight: bold;
}
.highlight_yellow {
  background: linear-gradient(transparent 30%, #fff7ae 30%);
}
.highlight_yellow>span {
  font-size: 3.0rem;
}
.tx_link {
  text-align: right;
  margin: 10px auto;
}
.tx_link a {
  color: #222;
  border-bottom: 1px solid #222;
  padding: 5px 30px 5px 10px;
  position: relative;
  display: inline-block;
}
.tx_link a:hover {
  opacity: 0.6;
}
.tx_link a::before {
  content: '';
  border-top: 1px solid #222;
  border-right: 1px solid #222;
  display: block;
  width: 0.8rem;
  height: 0.8rem;
  position: absolute;
  top: 40%;
  right: 10px;
  -webkit-transform: rotate(45deg);
  transform: rotate(45deg);
}
.tx_link.arrow_btm a::before {
  top: 35%;
  transform: rotate(135deg);
}
/*ボタン*/
.dynamic_sale .btn01_rt.pdf_all {
  margin: 0 auto 10px;
}
/*クーポン*/
.dynamic_sale .coupon {
  margin: 30px auto;
}
.dynamic_sale .coupon ul {
  flex-wrap: wrap;
  gap: 40px;
}
.dynamic_sale .coupon ul li div {
  width: calc(1000px / 2 - 20px);
}
.dynamic_sale .coupon ul li::before, .dynamic_sale .coupon ul li::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 25px;
  height: 25px;
  border: 2px solid #333;
  border-radius: 50%;
  background: #fff;
  top: 44%;
  left: -12px;
}
.dynamic_sale .coupon ul li::after {
  left: unset;
  right: -12px;
}
.dynamic_sale .coupon ul li .btn {
  margin: 15px auto 0;
  background: #029e9a;
  height: 60px;
}
.dynamic_sale .coupon ul li .btn:hover {
  background: #fff;
  border: 2px solid #029e9a;
  color: #029e9a;
}
.dynamic_sale .coupon ul li .btn:hover::after {
  border-color: #029e9a;
}
/*商品*/
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_green,
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_orange,
.dynamic_sale .base_prod .hotel li>a .details_box>.tag>.icon.icon_red {
  background: #fff;
  color: #099;
  border: 1px solid #099;
  padding: 0 .5rem .1rem;
}
.pc_2col .base_prod .hotel li>a .details_box>.ttl {
  position: absolute;
  bottom: 37%;
  color: #fff;
}
.sp_2col .base_prod .hotel li>a .details_box>.ttl {
  position: absolute;
  bottom: 51%;
  color: #fff;
}
.pc_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area,
.sp_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area {
  padding: 4em 5px .5em 25px;
}
.pc_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area::before,
.sp_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area::before {
  top: unset;
  bottom: 9px;
}
.pc_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area::after,
.sp_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area::after {
  top: unset;
  bottom: 13px;
}
.swiper_blue .swiper-container .swiper-button-next,
.swiper_blue .swiper-container .swiper-button-prev {
  background: #fff;
  width: 40px !important;
  height: 40px !important;
  border-radius: 50%;
  border: 1px solid #ccc;
  color: #3b94cf;
}
.swiper_blue .swiper-container .swiper-button-prev,
.swiper_blue .swiper-container .swiper-container-rtl .swiper-button-next {
  left: -50px;
}
.swiper_blue .swiper-container .swiper-button-next,
.swiper_blue .swiper-container .swiper-container-rtl .swiper-button-prev {
  right: -50px;
}
.swiper_blue .swiper-container .swiper-button-next:after,
.swiper_blue .swiper-container .swiper-button-prev:after {
  font-size: 2.2rem;
  font-weight: bold;
  position: absolute;
}
.swiper_blue .swiper-container .swiper-button-next:after {
  right: 12px;
}
.swiper_blue .swiper-container .swiper-button-prev:after {
  left: 12px;
}
.swiper_blue .wrap_slide .swiper-button-disabled {
  opacity: 0.4;
}
/*SP*/
@media screen and (max-width: 767px) {
  /*タイトル*/
  .title .coupon_icon::before {
    background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_ic33.png) no-repeat 0 0 / 58px 43px;
    width: 58px;
    height: 43px;
    top: 80px;
    left: calc(50% + 65px);
  }
  .dynamic_sale .ttl_sub>span {
    font-size: 1.4rem;
  }
  .dynamic_sale .feature .section h4::before {
    width: 45%;
  }
  /*テキスト*/
  .dynamic_sale .date_tx {
    text-align: center;
  }
  .highlight_yellow>span {
    font-size: 2.5rem;
  }
  .tx_link {
    margin: 20px 10px;
    text-align: left;
  }
  .tx_link a {
    padding: 5px 20px 5px 5px;
    text-align: left;
  }
  .tx_link a::before {
    right: 2px;
  }
  /*クーポン*/
  .dynamic_sale .coupon {
    margin: 0 auto;
  }
  .dynamic_sale .coupon ul {
    flex-direction: column;
    gap: 30px;
    padding: 10px;
  }
  .dynamic_sale .coupon ul li,
  .dynamic_sale .coupon ul li div {
    width: 100%;
  }
  /*商品*/
  .dynamic_sale .sp_1col {
    margin-bottom: 20px;
  }
  .dynamic_sale .sp_1col .base_prod .hotel.wrap_cp01 li {
    width: 100% !important;
  }
  .dynamic_sale .pc_2col .base_prod .hotel li>a .details_box>.ttl {
    bottom: 100%;
    margin-bottom: -55%;
    filter: drop-shadow(0px 0px 4px #000);
  }
  .dynamic_sale .sp_2col .base_prod .hotel.wrap_cp01 li {
    width: calc(100% / 2 - 2px) !important;
  }
  .dynamic_sale .sp_2col .base_prod .hotel li>a .details_box>.ttl {
    bottom: 100%;
    margin-bottom: -50%;
    font-size: 1.2rem;
  }
  .dynamic_sale .pc_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area, .dynamic_sale .sp_2col .base_prod .hotel.wrap_cp01 li > a .details_box > .area {
    padding: 3em 0 .5em 25px;
    font-size: 1.1rem;
  }
  .dynamic_sale .sp_2col .base_prod .hotel li>a[data-hcd*="14044R"] .details_box>.ttl {
    margin-bottom: -40%;
  }

}
/*PC*/
@media screen and (min-width: 768px) {
  /*PCのみカルーセルなし*/
  .pc_noslide .swiper-button-prev,
  .pc_noslide .swiper-button-next,
  .pc_noslide .swiper-pagination {
    display: none !important;
  }
  .pc_noslide ul.hotel {
    display: block;
  }
  .pc_noslide ul.hotel li {
    width: calc(100% / 2 - 10px) !important;
    margin-right: 17px !important;
  }
  .pc_noslide ul.hotel li:nth-of-type(2n) {
    margin-right: 0 !important;
  }
  .pc_noslide ul.hotel li:nth-of-type(n+3) {
    margin-top: 40px;
  }
}
/*ページ内遷移位置*/
.feature .section h2 {
  margin-top: -120px;
  padding-top: 120px;
}
.feature .section h2 {
  position: relative;
  z-index: 0;
}
.tab_menu.tabiseyo,.btn01_rt,.productButton {
  position: relative;
  z-index: 1;
}
/* 2025.03 ダイワロイネット クーポン */
.coupon_drh .hotel .notes {
  font-size: 1.1rem;
  /* margin-top: .5em; */
}
.coupon_drh .base_prod .hotel li>a .details_box>.price {
  position: relative;
  display: inline-block;
}
.coupon_drh .base_prod .hotel li>a .details_box>.price::after {
  content: "JR+宿";
  background-color: #029E9A;
  border-radius: .3em;
  margin: 0 0 0 .5rem;
  padding: .3rem .5rem;
  display: inline-block;
  font-size: 1.2rem;
  font-weight: normal;
  color: #fff;
  vertical-align: middle;
}
.coupon_drh .base_prod .hotel li>a .details_box>.area {
  position: relative;
  background-color: transparent;
  color: #222;
  padding: 0px 0px 0px 16px;
}
.coupon_drh .base_prod .hotel li>a .details_box>.area::before {
	color: var(--red);
	content: "";
	position: absolute;
	top: -3px;
	bottom: 0;
	margin: auto;
	left: 0;
	width: 1em;
	height: 1em;
	border: .31em solid currentColor;
	border-radius: 100% 100% 0 100%;
	background: radial-gradient(circle at 50% 50%, transparent 70%, currentColor 70%) no-repeat;
	box-sizing: border-box;
	transform: rotate(45deg);
}
.coupon_drh .base_prod.bdr li {
  border: none;
  border-radius: 10px;
  box-shadow: 0px 0px 4px 2px rgba(204, 204, 204, .5);
}
.coupon_drh .base_prod .hotel {
  padding: 0 10px;
  gap: 10px;
}

/*-----2025.03 旅せよ平日-----*/
.feature #tabiseyo.section h2::after {
  display: none;
}
.feature #tabiseyo.section h2 {
  position: relative;
  color: #0063a5;
  text-align: center;
  padding-left: 100px;
  padding-right: 0;
}
.feature #tabiseyo.section h2>span {
  display: block;
  font-size: 1.8rem;
  line-height: 1;
}
.feature #tabiseyo.section h2::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/logo_heijitutabi_color_n.png) no-repeat 0 0 / 100px 100px;
  width: 100px;
  height: 100px;
  border: none;
  transform: none;
  bottom: -15px;
  left: 0;
}
.tab_menu.tabiseyo {
  display: flex;
  justify-content: space-between;
  margin: 10px auto;
  position: relative;
  gap: 10px;
}
.tab_menu.tabiseyo .tab_btn {
  width: 100%;
  text-align: center;
  font-size: 1.5rem;
  font-weight: bold;
  border: 2px solid #0063a5;
  border-radius: 8px;
  background: #ffc366;
  padding: 5px 0;
  cursor: pointer;
}
.tab_menu.tabiseyo .tab_btn.active {
  position: relative;
  background: #0063a5;
  color: #fff;
}
.tab_menu.tabiseyo .tab_btn.active::before {
  content: "";
  display: inline-block;
  position: absolute;
  width: 0;
  height: 0;
  border-left: 8px solid transparent;
  border-right: 8px solid transparent;
  border-top: 12px solid #0063a5;
  bottom: -12px;
  left: calc(50% - 8px);
}
.tab_menu.tabiseyo .tab_btn>span {
  font-size: 2.4rem;
  padding: 0 5px 0 0;
  transition: .2s;
}
.tab_menu.tabiseyo .tab_btn:hover>span {
  color: #0073bf;
}
.tab_menu.tabiseyo .tab_btn.active>span {
  color: #ffb245;
}
.feature .section.h3_border h3 {
  font-size: 2rem;
  color: #222;
  position: relative;
  margin: 20px auto;
  padding: 0 0 10px;;
  background: none;
}
.tabiseyo .feature .section.h3_border h3::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: #f28d00;
  width: 100px;
  height: 4px;
  top: 100%;
  left: calc(50% - 50px);
  border-radius: 2px;
}
.productButton .btn_box {
  margin: 5px;
}
.productButton .btn_box.border_blue>a {
  border: 1px solid #0063a5;
}
.productButton .btn_box.border_blue>a>.btn_box_r>.arrow-right {
  border-color: #0063a5;
}
.accordionLink {
  z-index: 1;
  position: relative;
}
.acco_solo.border_blue .info_box_component {
  border: 1px solid #0063a5;
  border-radius: 5px;
  margin: 10px 5px;
}
.acco_solo.border_blue .info_box_component .info_box_ttl.text {
  margin: 0;
  padding: 10px 20px;
  font-size: 1.6rem;
}
.acco_solo.border_blue .pm_icon {
  background: #0063a5;
  top: 5px;
  margin: 0;
  cursor: pointer;
}
.acco_solo.border_blue .pm_icon::before {
  left: 50%;
}
.acco_solo.border_blue .info_box_list a:hover {
  color: #222;
  opacity: .7;
}
.acco_solo.border_blue .info_box_list a::after {
  border-color: transparent transparent transparent #0063a5;
}
/*カルーセル*/
.wrap_slide {
  position: relative;
  display: flex;
  margin: 0 auto;
}
.wrap_slide .swiper {
	overflow: hidden;
	position: relative;
	padding: 0 0 30px;
}
.wrap_slide .swiper .swiper-pagination {
  bottom: 0;
}
.wrap_slide .cmn_contents {
  margin: auto;
  height: 100%;
}
.base_prod {
  margin-bottom: 0;
  height: 100%;
}
.base_prod>div {
  height: 100%;
}
/*商品コンポーネントのページネーション*/
.box_content .base_prod .swiper-button-next,
.box_content .base_prod .swiper-button-prev,
.box_content .base_prod .swiper-pagination {
  display: none !important;
}
/*矢印*/
.wrap_slide.arrow_blue>.swiper-button-prev, .wrap_slide.arrow_blue>.swiper-button-next {
  content: "";
  position: absolute;
  display: inline-block;
  background: #fff;
  border: 1px solid #ccc;
  border-radius: 50%;
  width: 30px;
  height: 30px;
  top: calc(50% - 15px);
  filter: none;
  z-index: 2;
}
.wrap_slide.arrow_blue>.swiper-button-prev::before, .wrap_slide.arrow_blue>.swiper-button-next::before {
  content: "";
  position: absolute;
  display: block;
  top: 33%;
  left: 25%;
  width: 10px;
  height: 10px;
  border-top: 2px solid #0063a5;
  border-right: 2px solid #0063a5;
  transform: rotate(45deg);
  z-index: 1;
}
.wrap_slide.arrow_blue>.swiper-button-prev.swiper-button-disabled::before, .wrap_slide.arrow_blue>.swiper-button-next.swiper-button-disabled::before
{
  opacity: .35;
}
.wrap_slide.arrow_blue>.swiper-button-prev {
  left: -40px;
  transform: rotate(180deg);
}
.wrap_slide.arrow_blue>.swiper-button-next {
  right: -40px;
}
/*商品*/
.ttl_on_img .hotel {
  height: 100%;
}
.ttl_on_img .hotel li {
  border-radius: 8px;
  padding: 0;
  border: 1px solid #ccc;
}
.ttl_on_img .hotel li .img_box img {
  border-radius: 8px 8px 0 0;
}
.ttl_on_img .hotel li .img_box {
  position: relative;
}
.ttl_on_img .hotel li .details_box .area {
  position: absolute;
  width: 90%;
  bottom: 100%;
  left: 5%;
  margin-bottom: -60% !important;
  padding: 0 0 0 17px !important;
  filter: drop-shadow(0px 0px 3px #000);
  text-shadow: 1px 1px 3px #000;
  letter-spacing: -0.05rem;
  background: transparent!important;
}
.ttl_on_img .hotel li .details_box .area::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/goodvalue_ic13.png) no-repeat 0 0 / 11px 15px;
  width: 11px;
  height: 15px;
  top: 2px;
  left: 0;
}
.ttl_on_img .hotel li .details_box .ttl {
  position: absolute !important;
  width: 95%;
  bottom: 100%;
  left: 4%;
  margin-bottom: -53%;
  color: #fff;
  filter: drop-shadow(0px 0px 4px #000);
  text-shadow: 1px 1px 3px #000;
}
.ttl_on_img .hotel li .details_box {
  padding: 0 20px 10px;
}
.base_prod .hotel li>a .details_box>.tag>.icon.icon_bgcolor {
  background: #099;
  color: #fff;
}
/*プランボタン*/
.tabiseyo p.btn_ttl {
  font-size: 1.6rem;
  font-weight: bold;
  margin: 10px auto;
  padding: 0 0 0 10px;
  border-left: 4px solid #f28d00;
}
.tabiseyo .productButton .btn_box.btn_color>a {
  color: #0063a5;
  border: 1px solid #0063a5;
}
.tabiseyo .productButton .btn_box.btn_color>a>.btn_box_r>.arrow-right {
  border-color: #0063a5;
}
/*PC*/
@media screen and (min-width: 768px) {
  .wrap_slide.col2 {
    width: 66%;
  }
  .wrap_slide.col2.arrow_blue>.swiper-button-prev, .wrap_slide.col2.arrow_blue>.swiper-button-next,
  .wrap_slide.col2 .swiper .swiper-pagination {
    display: none!important;
  }
  .tabiseyo .productButton .btn_box.btn_color.clm1>a {
    width: 40%;
    margin: 0 auto;
  }
}
/*SP*/
@media screen and (max-width: 767px) {
  .tabiseyo .feature .section.h3_border h3 {
    margin: 0 auto 30px;
  }
  .tab_menu.tabiseyo {
    margin: 10px;
  }
  .tab_menu.tabiseyo .tab_btn {
    font-size: 1.4rem;
    line-height: 1.3;
    padding: 10px 0;
  }
  .tab_menu.tabiseyo .tab_btn>span {
    font-size: 2.0rem;
  }
  .tab_menu.tabiseyo.clm4 {
    flex-wrap: wrap;
    gap: 0;
  }
  .tab_menu.tabiseyo.clm4 .tab_btn {
    width: 49%;
    margin-bottom: 2%;
    padding: 5px 0;
  }
  .tab_menu.tabiseyo.clm4 .tab_btn.active::before {
    display: none;
  }
  .productButton .btn_box {
    margin: 0 10px 10px;
  }
  .acco_solo.border_blue .info_box_component {
    margin: 0 10px;
  }
  .acco_solo.border_blue .info_box_list a::after {
    border-color: #0063a5;
    width: 10px;
    height: 10px;
  }
  .wrap_slide {
    margin: 0 10px;
  }
  .wrap_slide.arrow_blue>.swiper-button-prev, .wrap_slide.arrow_blue>.swiper-button-next {
    top: 22%;
  }
  .wrap_slide.arrow_blue>.swiper-button-prev {
    left: 5px;
  }
  .wrap_slide.arrow_blue>.swiper-button-next {
    right: 5px;
  }
  .tabiseyo .productButton .btn_box.clm1>a>.btn_box_l>.btn_inner>.btn_ttl {
    font-size: 1.4rem;
  }
  .tabiseyo p.btn_ttl {
    margin: 10px;
  }
}

/*-----2025.04 平日のお得な列車-----*/
.bg_color {
  background: #eff9f9;
}
.feature .section.heijitu_icon h2::after {
  display: none;
}
.feature .section.heijitu_icon h2 {
  position: relative;
  text-align: center;
  padding-left: 100px;
  padding-right: 0;
}
.feature .section.heijitu_icon h2::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: url(/content/dam/jretravel/site/page/feature/goodvalue/images/logo_heijitutabi_color_n.png) no-repeat 0 0 / 100px 100px;
  width: 100px;
  height: 100px;
  border: none;
  transform: none;
  bottom: -15px;
  left: 0;
}
h2 .small_text {
  display: block;
  font-size: 1.8rem;
  text-align: center;
}
.feature .section.h3_border h3::before {
  content: "";
  display: inline-block;
  position: absolute;
  background: #029e9a;
  width: 100px;
  height: 4px;
  top: 100%;
  left: calc(50% - 50px);
  border-radius: 2px;
}
.fukidashi_green>p {
  display: inline-block;
  background: #aee1e1;
  color: #222;
  font-weight: bold;
  font-size: 1.5rem;
  padding: 5px 15px;
  margin: 20px auto -5px 60%;
  border-radius: 20px;
  position: relative;
}
.fukidashi_green>p::after {
  content: "";
  display: inline-block;
  position: absolute;
  width: 0;
  height: 0;
  border-left: 10px solid #aee1e1;
  border-top: 10px solid transparent;
  border-bottom: 10px solid transparent;
  bottom: -9px;
  left: 20%;
}
.productButton .btn_box>a {
  background: #fff;
  border: 1px solid #ccc;
}
.feature .section h4 {
  margin: 0 auto;
  border-bottom: 2px solid transparent;
  border-image: linear-gradient(to right, #029e9a, #c5ebea) 1;
}
/*SP*/
@media screen and (max-width: 767px) {
  .feature .section h2 {
    font-size: 2.8rem;
  }
  .feature .section h2:before, .feature .section h2:after {
    bottom: 0;
  }
  .btn_box.sp_tx_long .btn_ttl {
    font-size: 1.3rem !important;
    margin: 3px auto 7px !important;
  }
  .btn_box.sp_tx_long .btn_ttl .ic_arrow {
    margin: 7px 5px 3px !important;
  }
}
