p a,
li a {
  color: #005A7B;
}

#area-info {
  overflow: hidden;
  padding-top: 10rem;
}

.area-infor_content {
  display: flex;
  gap: 0 5.2rem;
  align-items: center;
}

@media screen and (max-width: 959.98px) {
  .area-infor_content {
    display: block;
    width: auto;
  }
}

.area-detail {
  width: 57.2rem;
}

@media screen and (max-width: 959.98px) {
  .area-detail {
    width: auto;
  }
}

.area-detail .area_list {
  display: flex;
  flex-wrap: wrap;
  gap: 1.2rem 1rem;
}

@media screen and (max-width: 959.98px) {
  .area-detail .area_list {
    gap: 1.6rem;
  }
}

.area-detail .area_item {
  font-size: 1.8rem;
  font-weight: 600;
  color: #002952;
  padding: 0.4rem 1.8rem;
  background-color: #cce6f8;
  border-radius: 0.4rem;
}

@media screen and (max-width: 959.98px) {
  .area-detail .area_item {
    font-size: 3rem;
  }
}

.area-detail .txt {
  font-size: 2.2rem;
  line-height: 1.6363636364;
  font-weight: 500;
  color: #000;
}

@media screen and (max-width: 959.98px) {
  .area-detail .txt {
    font-size: 3rem;
  }
}

.area-detail .area_list+.txt {
  margin-top: 3rem;
}

.area-detail .area-map {
  margin-top: 3rem;
  position: relative;
  aspect-ratio: 572/337;
}

.area-detail .area-map img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

.area-detail .area-map .btn_wrapper {
  position: absolute;
  z-index: 10;
  top: 2rem;
  left: 2.6rem;
}

.area-swiper {
  width: 57.6rem;
  border-radius: 1.6rem;
  overflow: hidden;
}

@media screen and (max-width: 959.98px) {
  .area-swiper {
    width: auto;
    margin-top: 3rem;
  }
}

.area-swiper .area-swiper-pagination {
  background-color: transparent;
  position: absolute !important;
  bottom: 2rem;
  padding: 0 2rem;
  justify-content: flex-end;
  gap: 0 0.8rem;
}

@media screen and (max-width: 959.98px) {
  .area-swiper .area-swiper-pagination {
    bottom: 4rem;
  }
}

.area-swiper .swiper-pagination-bullet {
  flex-grow: inherit;
  width: 1rem !important;
  height: 1rem !important;
  border-radius: 100px !important;
  background-color: #9aa9ba;
  opacity: 1;
  transition: 0.3s width, 0.3s background-color;
}

@media screen and (max-width: 959.98px) {
  .area-swiper .swiper-pagination-bullet {
    height: 2rem !important;
    width: 2rem !important;
  }
}

.area-swiper .swiper-pagination-bullet-active {
  width: 2.9rem !important;
  background-color: #fff;
}

@media screen and (max-width: 959.98px) {
  .area-swiper .swiper-pagination-bullet-active {
    width: 6rem !important;
  }
}

.area-swiper .area-img {
  width: 576/408;
  flex-shrink: 0;
  flex-shrink: 0;
}

.area-swiper .area-img img {
  width: 100%;
  height: 100%;
  -o-object-fit: cover;
  object-fit: cover;
}

/* ----------------------------------------------------------------------------------------------------
*	pass-prices
* --------------------------------------------------------------------------------------------------*/
#pass-prices {
  padding: 13rem 0 0;
}

#pass-prices p.note {
  font-size: 1.8rem;
  font-weight: 600;
  color: #002952;
  margin-bottom: 1rem;
}

@media screen and (max-width: 959.98px) {
  #pass-prices p.note {
    font-size: 4rem;
  }
}

#pass-prices .txt {
  font-size: 1.6rem;
  line-height: 1.625;
}

@media screen and (max-width: 959.98px) {
  #pass-prices .txt {
    font-size: 3rem;
  }
}

.pass-price_content {
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 959.98px) {
  .pass-price_content {
    display: block;
  }
}

.price_left {
  width: 60rem;
}

@media screen and (max-width: 959.98px) {
  .price_left {
    width: auto;
  }
}

.price_right {
  width: 52.5rem;
  padding-top: 9.5rem;
}

@media screen and (max-width: 959.98px) {
  .price_right {
    width: auto;
    padding-top: 0;
  }
}

.note_content {
  background-color: #f5f7f9;
  padding: 3rem;
  border-radius: 1rem;
}

@media screen and (max-width: 959.98px) {
  .note_content {
    margin-top: 3rem;
  }
}

.note_content .ttl {
  font-size: 2rem;
  font-weight: 600;
  color: #002952;
  font-family: "Inter", sans-serif;
}

@media screen and (max-width: 959.98px) {
  .note_content .ttl {
    font-size: 4rem;
  }
}

.note_content .ttl i {
  position: relative;
  top: 0.3em;
  display: inline-block;
  margin-right: 0.2em;
  width: 1em;
}

.note_content .ttl i img {
  width: 100%;
}

.note_content li {
  font-size: 1.6rem;
  line-height: 1.625;
  text-indent: -1em;
  padding-left: 1em;
}

@media screen and (max-width: 959.98px) {
  .note_content li {
    font-size: 3rem;
  }
}

.note_content ol li {
  text-indent: -1.2em;
  padding-left: 1.2em;
}

.price_table {
  width: 100%;
  border-collapse: separate;
  border-spacing: 0 3rem;
  color: #002952;
  margin-top: 1rem;
  font-family: "articulat-cf", sans-serif;
}

.price_table .heading th {
  font-size: 2.6rem;
  font-weight: 500;
  line-height: 1;
  position: relative;
}

@media screen and (max-width: 959.98px) {
  .price_table .heading th {
    font-size: 3rem;
  }
}

.price_table .heading .question {
  display: inline-block;
  margin-left: 0.3em;
  position: relative;
  top: 0.1em;
  cursor: pointer;
  margin: 0;
  background-color: transparent;
  border: none;
}

@media (any-hover: hover) {
  .price_table .heading .question:hover img {
    opacity: 0.7;
  }

  .price_table .heading .question:hover .balloon {
    visibility: visible;
    opacity: 1;
  }
}

.price_table .heading .question .balloon.is-visible {
  visibility: visible;
  opacity: 1;
}

@media screen and (max-width: 959.98px) {
  .price_table .heading .question {
    top: -0.2em;
  }
}

.price_table .heading .question .balloon {
  position: absolute;
  display: block;
  background-color: #0066bf;
  font-size: 1.3rem;
  color: #fff;
  width: 28rem;
  line-height: 1.4;
  padding: 1rem;
  border-radius: 0.6rem;
  bottom: calc(100% + 2.4rem);
  left: 50%;
  transform: translateX(-50%);
  font-weight: 400;
  visibility: hidden;
  opacity: 0;
  transition: 0.3s opacity;
}

@media screen and (max-width: 959.98px) {
  .price_table .heading .question .balloon {
    font-size: 2.2rem;
    width: 26rem;
    bottom: calc(100% + 1.6rem);
  }
}

.price_table .heading .question .balloon::after {
  content: "";
  position: absolute;
  top: calc(100% - 1px);
  width: 1.5rem;
  height: 0.8rem;
  background-color: #0066bf;
  -webkit-clip-path: polygon(0 0, 50% 100%, 100% 0);
  clip-path: polygon(0 0, 50% 100%, 100% 0);
  left: 50%;
  transform: translateX(-50%);
}

@media screen and (max-width: 959.98px) {
  .price_table .heading .question .balloon::after {
    width: 2.3rem;
    height: 1.6rem;
  }
}

.price_table .heading .question img {
  vertical-align: middle;
  position: relative;
  top: -0.8rem;
  transition: 0.3s opacity;
}

@media screen and (max-width: 959.98px) {
  .price_table .heading .question img {
    top: 0.1em;
    width: 0.8em;
  }
}

.price_table td {
  background-color: #ebf2f7;
  text-align: center;
  width: 24rem;
  font-size: 3.2rem;
  font-weight: 600;
}

.price_table td .yen {
  font-size: 2rem;
  display: inline-block;
  margin-left: 1em;
}

@media screen and (max-width: 959.98px) {
  .price_table td {
    font-size: 2.5rem;
  }

  .price_table td .yen {
    font-size: 1.8rem;
    margin-left: 0;
  }
}

.price_table tr {
  border-radius: 1rem;
  overflow: hidden;
}

.price_table tr td:last-of-type {
  border-radius: 0 0.4rem 0.4rem 0;
}

.price_table .days {
  font-size: 2.6rem;
  font-weight: 600;
  background-color: #cce6f8;
  width: 12rem;
  padding: 1.4rem 1rem;
  border-radius: 0.4rem 0 0 0.4rem;
}

@media screen and (max-width: 959.98px) {
  .price_table .days {
    font-size: 3rem;
  }
}

.price_table .table-note {
  margin: 0 0.5rem;
  font-size: 1.8rem;
  text-align: left;
}

@media screen and (max-width: 959.98px) {
  .price_table .table-note {
    font-size: 2.8rem;
  }
}

.price_table .table-sub-ttl {
  display: block;
  margin: 0 1rem;
  font-size: 2.2rem;
  text-align: left;
}

@media screen and (max-width: 959.98px) {
  .price_table .table-sub-ttl {
    font-size: 3rem;
  }
}

.price_table .table-sub-ttl+.table-note {
  margin-left: 1.6rem;
  font-size: 1.6rem;
}

@media screen and (max-width: 959.98px) {
  .price_table .table-sub-ttl+.table-note {
    font-size: 2.8rem;
  }
}


/* ----------------------------------------------------------------------------------------------------
*	Valid Train Routes
* --------------------------------------------------------------------------------------------------*/
#routes {
  padding-top: 13rem;
}

#routes .txt {
  font-size: 2.2rem;
  line-height: 1.6363636364;
  color: #000;
}

@media screen and (max-width: 959.98px) {
  #routes .txt {
    font-size: 3rem;
  }
}

#routes .section_ttl+.txt {
  margin-top: 3.2rem;
}

#routes .routes_img {
  margin-top: 4rem;
}

#routes .routes_img img {
  width: 100%;
  height: auto;
}

.routes_inner>div {
  padding-top: 4rem;
}

.routes_inner .ttl {
  font-size: 3.2rem;
  color: #002952;
  font-family: "Inter", sans-serif;
  margin-bottom: 1.8rem;
}

@media screen and (max-width: 959.98px) {
  .routes_inner .ttl {
    font-size: 4rem;
  }
}

.routes_inner p {
  font-size: 1.6rem;
}

@media screen and (max-width: 959.98px) {
  .routes_inner p {
    font-size: 3rem;
  }
}

.routes_inner ul li {
  font-size: 1.6rem;
  padding-left: 1em;
  position: relative;
}

@media screen and (max-width: 959.98px) {
  .routes_inner ul li {
    font-size: 3rem;
  }
}

.routes_inner ul li+li {
  margin-top: 2rem;
}

.routes_inner ul li::before {
  content: "";
  position: absolute;
  left: 0;
  width: 0.4rem;
  height: 0.4rem;
  border-radius: 50%;
  background-color: #002952;
  top: 0.7em;
}

@media screen and (max-width: 959.98px) {
  .routes_inner ul li::before {
    width: 1rem;
    height: 1rem;
    top: 0.65em;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	Recommended Spots and Benefits
* --------------------------------------------------------------------------------------------------*/
#rsb {
  padding-top: 13rem;
}

#rsb .txt {
  font-size: 2.2rem;
  line-height: 1.6363636364;
  margin-top: 4rem;
  max-width: 89.4rem;
  color: #000;
}


@media screen and (max-width: 959.98px) {
  #rsb .txt {
    font-size: 3rem;
    line-height: 1.8;
    max-width: inherit;
  }
}

#rsb .brn {
  margin-top: 4rem;
}

#rsb .brn a {
  display: block;
  width: fit-content;
}

@media (any-hover) {
  #rsb .brn a {
    transition: 0.3s;
  }

  #rsb .brn a:hover,
  #rsb .brn a:focus {
    opacity: 0.7;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	Useful Links
* --------------------------------------------------------------------------------------------------*/
#useful-links {
  padding-top: 13rem;
}

#useful-links .section_ttl {
  margin-bottom: 4rem;
}

.useful-links_item {
  font-size: 1.6rem;
  font-weight: 600;
}

@media screen and (max-width: 959.98px) {
  .useful-links_item {
    font-size: 3rem;
  }
}

.useful-links_item+.useful-links_item {
  margin-top: 2rem;
}

.useful-links_item a {
  font-family: "Inter", sans-serif;
  color: #002952;
  text-decoration: none;
  position: relative;
  padding: 1rem 0 0.6rem 5.5rem;
  display: inline-block;
}

@media (any-hover) {
  .useful-links_item a {
    transition: 0.3s;
  }

  .useful-links_item a:hover,
  .useful-links_item a:focus {
    opacity: 0.7;
  }
}

@media screen and (max-width: 959.98px) {
  .useful-links_item a {
    padding-left: 7.5rem;
  }
}

.useful-links_item a::before {
  content: "";
  position: absolute;
  width: 4rem;
  height: 4rem;
  border: 1px solid #b0c5d5;
  border-radius: 50%;
  left: 0;
  top: 0;
}

@media screen and (max-width: 959.98px) {
  .useful-links_item a::before {
    width: 6rem;
    height: 6rem;
    top: 0.1rem;
  }
}

.useful-links_item a::after {
  content: "";
  position: absolute;
  top: 1.5rem;
  width: 1rem;
  height: 1rem;
  border-top: 2px solid #002952;
  border-right: 2px solid #002952;
  left: 1.2rem;
  transform: rotate(45deg);
}

@media screen and (max-width: 959.98px) {
  .useful-links_item a::after {
    width: 1.3rem;
    height: 1.3rem;
    top: 2.5rem;
    left: 2rem;
  }
}

.useful-links_item a[href*=".pdf"] span {
  position: relative;
  padding-right: 2.6rem;
}

@media screen and (max-width: 959.98px) {
  .useful-links_item a[href*=".pdf"] span {
    padding-right: 4.8rem;
  }
}

.useful-links_item a[href*=".pdf"] span::after {
  content: "";
  position: absolute;
  width: 1.6rem;
  height: 1.6rem;
  background: url(/kumaweb-test/assets/img/area-pass/icon-pdf.png) no-repeat center center/100% 100%;
  right: 0;
  top: 0.3em;
}

@media screen and (max-width: 959.98px) {
  .useful-links_item a[href*=".pdf"] span::after {
    width: 3.6rem;
    height: 3.9rem;
    top: 0;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	Other destinations in the Kansai area
* --------------------------------------------------------------------------------------------------*/
#oditka {
  padding-top: 13rem;
}

@media screen and (max-width: 959.98px) {
  #oditka {
    padding-top: 14rem;
  }
}

#oditka .heading_txt {
  margin-top: 4rem;
  font-size: 2.2rem;
  line-height: 1.6363636364;
  max-width: 89.4rem;
  color: #000;
}

@media screen and (max-width: 959.98px) {
  #oditka .heading_txt {
    font-size: 3rem;
    line-height: 1.8;
  }
}

#oditka .single-swiper {
  margin-top: 4rem;
  position: relative;
}

@media screen and (max-width: 959.98px) {
  #oditka .single-swiper .img_wrapper {
    aspect-ratio: 306/249;
  }
}

#oditka .single-swiper .ttl {
  font-size: 2.8rem;
}

@media screen and (max-width: 959.98px) {
  #oditka .single-swiper .ttl {
    font-size: 4rem;
  }
}

@media screen and (max-width: 959.98px) {
  #oditka .swiper-wrapper {
    display: flex;
    flex-wrap: wrap;
    gap: 4rem 0;
    justify-content: space-between;
  }

  #oditka .swiper-slide {
    width: 46.7889908257%;
  }

  #oditka .swiper-button-prev,
  #oditka .swiper-button-next {
    display: none !important;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	
* --------------------------------------------------------------------------------------------------*/
#grid_slider .sub_ttl {
  font-size: 3.2rem;
  font-weight: 700;
  color: #002952;
  font-family: "articulat-cf", sans-serif;
  margin-top: 4rem;
}

@media screen and (max-width: 959.98px) {
  #grid_slider .sub_ttl {
    font-size: 4.6rem;
    margin-top: 2rem;
  }
}

#grid_slider .grid_slider_content .ttl_txt_btn_wrapper .heading_txt {
  margin-top: 4rem;
  color: #000;
}

@media screen and (max-width: 959.98px) {
  #grid_slider .grid_slider_content .ttl_txt_btn_wrapper .heading_txt {
    margin-top: 2rem;
  }
}

#grid_slider .g_slider {
  margin-top: 0;
}

@media screen and (max-width: 959.98px) {
  #grid_slider .g_slider {
    margin-top: 6rem;
  }
}

@media screen and (max-width: 959.98px) {
  #grid_slider .swiper-wrapper {
    padding-bottom: 1rem;
  }
}

.grid_slider_content .btn_wrapper {
  margin-left: 0;
}

.grid_slider_content .g-swiper-pagenation-btn-wrapper {
  margin-top: auto;
}

@media screen and (max-width: 959.98px) {
  .grid_slider_content .g-swiper-pagenation-btn-wrapper {
    margin-top: 4rem;
  }
}

/* ----------------------------------------------------------------------------------------------------
*	
* --------------------------------------------------------------------------------------------------*/
#booking-page {
  margin-top: 10rem;
  padding: 7rem 0;
}

@media screen and (max-width: 959.98px) {
  #booking-page {
    padding: 18rem 0;
  }
}

.booking-page_content {
  max-width: 98rem;
  margin: 0 auto;
  display: flex;
  justify-content: space-between;
}

@media screen and (max-width: 959.98px) {
  .booking-page_content {
    display: block;
    padding: 0 9.6rem;
  }
}

.booking-page_inner {
  flex-shrink: 0;
  max-width: 55rem;
}

@media screen and (max-width: 959.98px) {
  .booking-page_inner {
    max-width: inherit;
  }
}

.booking-page_inner .note {
  display: flex;
  font-family: "articulat-cf", sans-serif;
  font-size: 1.6rem;
  margin-top: 1.6rem;
}

@media screen and (max-width: 959.98px) {
  .booking-page_inner .note {
    font-size: 2.8rem;
    margin-top: 5rem;
  }
}

.booking-page_inner .note a {
  color: #002952;
  transition: 0.3s color;
}

@media screen and (max-width: 959.98px) {
  .booking-page_inner .note a {
    color: #0066bf;
  }
}

@media (any-hover: hover) {
  .booking-page_inner .note a:hover {
    color: #0066bf;
  }
}

.booking-page_inner .txt {
  font-size: 2rem;
  line-height: 1.7;
  color: #000;
}

@media screen and (max-width: 959.98px) {
  .booking-page_inner .txt {
    font-size: 3rem;
    line-height: 1.8;
  }
}

.booking-page_inner .btn_wrapper {
  margin-top: 4.7rem;
}

.slide_content {
  padding-top: 13rem;
  padding-bottom: 7rem;
}

@media screen and (max-width: 959.98px) {
  .slide_content {
    padding-bottom: 0;
  }
}

.acMenu {
  border-top: 1px solid #002952;
  padding: 3rem 0;
}

@media screen and (max-width: 959.98px) {
  .acMenu {
    padding: 8rem 0;
  }
}

.acMenu:last-of-type {
  border-bottom: 1px solid #002952;
}

.acMenu .heading {
  color: #002952;
  font-family: "Inter", sans-serif;
  font-size: 3.2rem;
  margin-bottom: 0;
  padding-right: 20rem;
}

@media screen and (max-width: 959.98px) {
  .acMenu .heading {
    padding-right: 0;
    font-size: 6.4rem;
  }
}

.acMenu .panel_default {
  position: relative;
}

.acMenu .panel_body {
  /* display: none; */
  padding-top: 3rem;
  font-size: 1.6rem;
}

@media screen and (max-width: 959.98px) {
  .acMenu .panel_body {
    font-size: 3rem;
  }
}

.acMenu .panel_body p {
  padding: 2px 0;
}

@media screen and (max-width: 959.98px) {
  .acMenu .panel_body p {
    font-size: 3rem;
  }
}

.acMenu .btn_wrapper {
  position: relative;
  width: -webkit-fit-content;
  width: -moz-fit-content;
  width: fit-content;
  margin-left: auto;
  position: absolute;
  right: 0;
  bottom: 50%;
  transform: translateY(50%);
  margin-top: 4rem;
}

@media screen and (max-width: 959.98px) {
  .acMenu .btn_wrapper {
    position: relative;
    transform: translateY(0);
    margin-top: 3rem;
  }
}

.acMenu .btn_wrapper.is-open {
  position: relative;
  bottom: 0;
  transform: translateY(0);
}

@media screen and (max-width: 959.98px) {
  #agree {
    margin-top: 4rem;
  }
}

#accommodations .pdl {
  margin: 0 0 20px;
}

table {
  width: 100%;
  border-collapse: collapse;
  border-spacing: 0;
}

.train table {
  margin-bottom: 3rem;
}

@media screen and (max-width: 959.98px) {
  .train table {
    font-size: 2.2rem;
  }
}

.train table th,
.train table td {
  padding: 1rem 0.5rem;
  text-align: center;
  vertical-align: middle;
}

.train table td {
  border-top: 1px solid #002952;
  border-right: 1px solid #002952;
}

.train table th {
  border-top: 1px solid #fff;
}

.train table thead th:first-of-type,
.train table thead th.headline {
  border-top-color: #0066bf;
}

.train table tbody tr:last-of-type th:first-of-type {
  border-bottom: 1px solid #0066bf;
}

.train .kansai2.md table tr th {
  width: 100px;
}

.train .kansai2 table tr td {
  border-bottom: 1px solid #002952;
}

.train table .bg_train {
  background-color: #ebf2f7;
  font-size: 2.2rem;
  font-weight: 600;
  color: #002952;
}

.train .kansai2.md table tr th {
  width: 17.3rem;
}

.train table td i {
  width: 1.8rem;
  height: 1.8rem;
  display: inline-block;
}

.train table td i img {
  vertical-align: middle;
}

.train .box_train table {
  border: 1px solid #002952;
}

.train .box_train table th {
  border-color: #002952;
}

.train .box_train table td {
  border-left: 1px solid #002952;
  border-bottom: 1px solid #002952;
}

@media screen and (max-width: 959.98px) {
  .train .box_train {
    overflow: scroll;
  }
}


.train .list {
  margin-top: 3rem;
}

.train .list li {
  padding-left: 1em;
  text-indent: -1em;
}

@media screen and (max-width: 959.98px) {
  .train .list li {
    font-size: 3rem;
  }
}

.train .list li b {
  font-weight: 600;
}

.train .num-list {
  padding-left: 1.7em;
  text-indent: -1.7em;
}

@media screen and (max-width: 959.98px) {
  .train .num-list {
    font-size: 3rem;
  }
}

.panel_body {
  /* display: none; */
}

.panel_body .mb5 {
  margin-bottom: 3rem;
  font-size: 1.6rem;
}

.panel_body .mb5 li+li {
  margin-top: 2rem;
}

@media screen and (max-width: 959.98px) {
  .panel_body .mb5 {
    font-size: 3rem;
  }
}

.panel_body .mb5 i {
  display: inline-block;
  width: 1.8rem;
  height: 1.8rem;
  margin-right: 2rem;
}

@media screen and (max-width: 959.98px) {
  .panel_body .mb5 i {
    width: 3.3rem;
    position: relative;
    top: -0.3rem;
  }
}

.panel_body .mb5 i img {
  vertical-align: middle;
  width: 100%;
}

.panel_body .info {
  font-size: 2.2rem;
  font-weight: 500;
  color: #000;
}

.panel_body .info li {
  display: flex;
}

.panel_body .info li i {
  flex-shrink: 0;
}

@media screen and (max-width: 959.98px) {
  .panel_body .info {
    font-size: 3.2rem;
  }
}

.kansai2.md {
  display: block;
}

@media screen and (max-width: 959.98px) {
  .kansai2.md {
    display: none;
  }
}

.kansai2.sm {
  display: none;
}

@media screen and (max-width: 959.98px) {
  .kansai2.sm {
    display: block;
  }
}

.pdl {
  font-size: 1.6rem;
  color: #4e5155;
  margin-bottom: 3rem;
  text-indent: -1em;
  padding-left: 1em !important;
}

@media screen and (max-width: 959.98px) {
  .pdl {
    font-size: 3rem;
  }
}

.train table th {
  border-color: #fff;
  border-left: 1px solid #0066bf;
}

.kansai table thead th,
.kansai2 table th,
.box_train table th {
  color: #fff;
  font-weight: 600;
  text-align: center;
  background-color: #0066bf;
  font-size: 2.2rem;
}

.eligibility .right_ct {
  margin-top: 5px;
}

@media screen and (max-width: 959.98px) {
  .eligibility .right_ct {
    width: 35%;
    margin-left: 10px;
  }
}

.fr {
  float: right;
}

.eligibility p.cl_red {
  margin-bottom: 12px;
}

.cl_red {
  color: #c00 !important;
}

.btn_slide {
  font-family: "articulat-cf", sans-serif;
  color: #fff;
  font-size: 1.6rem;
  position: relative;
  padding-right: 3.7rem;
  padding-left: 2.5rem;
  min-width: 15.4rem;
  background-color: #0066bf;
  transition: 0.3s all;
  cursor: pointer;
  min-height: 5.6rem;
  border-radius: 1rem;
  font-weight: 600;
  border: none;
  display: grid;
  place-content: center;
}

@media screen and (max-width: 959.98px) {
  .btn_slide {
    font-size: 3.2rem;
    border-radius: 1.2rem;
    min-height: 9.4rem;
    padding-left: 4rem;
    padding-right: 6rem;
  }
}

.btn_slide.is-open span::after {
  transform: translateY(-10%) rotate(225deg);
}

@media (any-hover: hover) {
  .btn_slide:hover {
    color: #002952;
    background-color: #d6e0ea;
  }

  .btn_slide:hover span::after {
    border-color: #002952;
  }
}

.btn_slide span {
  position: relative;
}

.btn_slide span::after {
  transition: 0.3s border-color;
  content: "";
  position: absolute;
  z-index: 10;
  width: 0.6rem;
  height: 0.6rem;
  border-bottom: 2px solid #fff;
  border-right: 2px solid #fff;
  top: 50%;
  transform: translateY(-50%) rotate(45deg);
  left: calc(100% + 0.6rem);
}

@media screen and (max-width: 959.98px) {
  .btn_slide span::after {
    width: 1.2rem;
    height: 1.2rem;
    left: calc(100% + 1.4rem);
  }
}

.purchasing .row h4 {
  margin-bottom: 13px;
  color: #c00;
  font-weight: bold;
}

.step>ul>li {
  position: relative;
  margin-bottom: 13px;
  padding-left: 60px;
}

.cl_ticke {
  color: #cf7c2a !important;
}

strong {
  font-weight: 600;
}

.panel_default a:link {
  outline: none;
  text-decoration: underline;
}

.step ul li .lbl {
  position: absolute;
  top: 0;
  left: 0;
  font-weight: bold;
}

.reservation .application {
  padding: 20px;
  background: #fafbbb;
  max-width: 94rem;
  margin: 0 auto 20px;
}

.application .caution {
  margin-bottom: 15px;
  color: #c00;
}

.application .submit_btn a {
  display: block;
  padding: 20px 0;
  color: #fff;
  line-height: 1.2;
  font-size: 2rem;
  text-decoration: none;
  background-color: #0473bd;
  border-radius: 2px;
  box-shadow: 0 2px 0 0 rgba(0, 0, 0, 0.15);
}

@media (any-hover) {
  .application .submit_btn a {
    transition: 0.3s;
  }

  .application .submit_btn a:hover,
  .application .submit_btn a:focus {
    opacity: 0.7;
  }
}

@media screen and (max-width: 959.98px) {
  .application .submit_btn a {
    font-size: 2.4rem;
  }
}

.application .submit_btn a picture {
  display: inline;
}

.application .submit_btn a img {
  vertical-align: middle;
}

.application .submit_btn a span {
  background: linear-gradient(transparent 80%, #ff6000 0%);
}

.trans {
  opacity: 1;
  transition: opacityease 0.26s;
}

.application .submit_btn {
  width: 68.88889%;
  margin: 0 auto;
  margin-bottom: 20px;
  text-align: center;
}

@media screen and (max-width: 959.98px) {
  .application .submit_btn {
    width: auto;
  }
}

@media screen and (max-width: 959.98px) {
  div.step>ul>li {
    margin-bottom: 5px;
    padding-left: 12rem;
  }
}

.txt_indent li {
  margin-bottom: 6px;
  padding-left: 20px;
  text-indent: -20px;
}

.refundsTicket {
  display: block;
  margin: 20px 0 30px;
  text-align: center;
}

.color-black {
  color: #000;
}

.color-gray {
  color: #4e5155 !important;
}

.card-slide .card_inner .card_body .txt {
  color: #000;
}

/*# sourceMappingURL=area-pass.css.map */