/* CSS Document */
@charset "UTF-8";
/*電車のご利用案内*/
/*-------------------------------*/
/*カテゴリトップ ヘッダ内「わたしの名鉄駅」*/
.wrapMyStation.layDropdown {
  position: absolute;
  top: -230px;
  right: 0;
  width: 420px;
  min-height: 130px;
  padding: 15px;
  background: rgba(255, 255, 255, 0.85);
  border: none;
  border-radius: 6px;
  box-shadow: none;
}
.wrapMyStation.layDropdown:not(.open) > .dropdown {
  height: auto !important;
}
main .wrapMyStation.layDropdown .dropdownContent {
  margin: 0;
  padding: 0;
}
.wrapMyStation .myStationItem {
  display: flex;
  margin: 10px 0 0;
  width: 100%;
  height: 100%;
}
.wrapMyStation .myStationItemLay {
  width: 190px;
}
.wrapMyStation .myStationItemLay + .myStationItemLay {
  margin-left: 10px;
  border-left: 1px solid #c9c9c9;
  padding-left: 10px;
}
.wrapMyStation .myStationItemLay .lay1 {
  display: flex;
  justify-content: space-between;
  padding: 5px;
  background: #ffffff;
  border-radius: 6px;
}
.wrapMyStation .lay1 span {
  display: flex;
  align-items: center;
}
.wrapMyStation .myStationItem a {
  color: #555555;
  text-decoration: none;
}
.wrapMyStation .myStationName {
  width: 140px;
  font-size: 0.85rem;
}
.wrapMyStation .myStationName a {
  display: inline-block;
  width: 100%;
  padding-left: 5px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.wrapMyStation .myStationItem .myStationName a:hover {
  color: #004ea2;
  text-decoration: underline;
}
.wrapMyStation .myStationBtn a.change {
  padding: 3px 4px;
  font-size: 0.8rem;
  white-space: nowrap;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  transition: background 0.2s ease-out;
}
.wrapMyStation .myStationBtn a.change:hover {
  color: #ffffff;
  background: #004ea2;
  border: 1px solid #004ea2;
}
.wrapMyStation .myStationItem .lay2Item {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
.wrapMyStation .myStationItem .lay2ItemLay {
  display: flex;
  width: 48%;
  font-size: 0.85rem;
}
.wrapMyStation .myStationItem .lay2ItemLay a {
  display: flex;
  justify-content: center;
  width: 100%;
  padding: 0 4px;
  color: #ffffff;
  background: #676767;
  border-radius: 6px;
  transition: background 0.2s ease-out;
}
.wrapMyStation .myStationItem .lay2ItemLay a:hover {
  background: #004ea2;
}
.wrapMyStation .myStationItem .lay2 .iconTimetable02, .wrapMyStation .myStationItem .lay2 .iconStationInfo02 {
  padding-left: 22px;
}
.wrapMyStation .myStationItem .lay2 .iconTimetable02:after, .wrapMyStation .myStationItem .lay2 .iconStationInfo02:after {
  margin-top: -7px;
  width: 15px;
  height: 15px;
  background-size: 15px 15px;
}
.wrapMyStation .myStationItem .lay3 {
  display: flex;
  width: 100%;
  height: 100%;
  min-height: 80px;
}
.wrapMyStation .myStationItem .lay3 a.plus {
  display: flex;
  justify-content: center;
  width: 100%;
  height: 100%;
  background: #ffffff;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  transition: background 0.2s ease-out;
}
.wrapMyStation .myStationItem .lay3 a.plus:hover {
  color: #ffffff;
  background: #004ea2;
  border: 1px solid #004ea2;
}
.wrapMyStation .myStationItem .lay3 .iconPlus01 {
  padding-left: 45px;
}
.wrapMyStation .myStationItem .lay3 .iconPlus01:after {
  margin-top: -17px;
  width: 35px;
  height: 35px;
  background-size: 35px 35px;
}
#wrapContents .wrapMyStation p.link {
  position: absolute;
  top: 15px;
  right: 15px;
  font-size: 0.9rem;
}
.wrapMyStation p.link a:hover .linkIconTyp01 {
  text-decoration: underline;
}
@media screen and (max-width:991px) {
  .wrapMyStation.layDropdown {
    position: relative;
    top: inherit;
    right: inherit;
    margin-top: -75px;
    width: 100%;
    height: auto;
    min-height: inherit;
    padding: 0;
    background: none;
    box-shadow: 0 0 15px 0 rgb(0 0 0 / 20%);
  }
  .wrapMyStation.layDropdown:not(.open) > .dropdown {
    height: 0 !important;
  }
  .wrapMyStation.layDropdown .toggleDropdown {
    display: block;
    width: 100%;
    padding: 10px 20px;
    background: #ffffff;
    border-radius: 6px 6px 0 0;
  }
  .wrapMyStation.layDropdown .toggleDropdown .iconMy01 {
    justify-content: center;
    padding: 0 40px;
  }
  main .wrapMyStation.layDropdown .dropdownContent {
    position: relative;
    padding: 0 20px 20px;
  }
  .wrapMyStation .myStationItem {
    display: block;
    margin-top: 2.5rem;
  }
  .wrapMyStation .myStationItemLay {
    width: 100%;
  }
  .wrapMyStation .myStationItemLay + .myStationItemLay {
    margin: 10px 0 0;
    border-left: none;
    border-top: 1px solid #c9c9c9;
    padding: 10px 0 0;
  }
  .wrapMyStation .myStationItemLay .lay1 {
    background: #f0f0f0;
  }
  .wrapMyStation .myStationName {
    width: calc(100% - 60px);
    font-size: 1rem;
  }
  .wrapMyStation .myStationBtn a.change {
    padding: 3px 10px;
    font-size: 1rem;
    color: #828282;
    background: #ffffff;
  }
  .wrapMyStation .myStationItem .lay2ItemLay {
    font-size: 1rem;
  }
  .wrapMyStation .myStationItem .lay2ItemLay a {
    justify-content: flex-start;
    padding: 6px 10px;
  }
  .wrapMyStation .myStationItem .lay3 {
    min-height: inherit;
  }
  .wrapMyStation .myStationItem .lay3 a.plus {
    padding: 25px 0;
  }
  #wrapContents .wrapMyStation p.link {
    top: 10px;
    right: 20px;
  }
  #wrapContents .wrapMyStation p.link a .linkIconTyp01:after {
    top: 0.45rem;
  }
  .wrapMyStation p.link a:hover .linkIconTyp01 {
    text-decoration: none;
  }
  /* ± .layDropdown > button と同じデザイン*/
  .layDropdown > .toggleDropdown {
    display: block;
    position: relative;
    margin: 0;
    width: 100%;
    padding: 15px 30px;
    border: none;
    font: inherit;
    background: none;
    text-align: center;
    cursor: pointer;
    color: inherit;
    outline: none;
  }
  .layDropdown > .toggleDropdown:before, .layDropdown > .toggleDropdown:after {
    position: absolute;
    content: "";
    display: block;
    background: #004ea2;
  }
  .layDropdown > .toggleDropdown:before {
    width: 15px;
    height: 3px;
    right: 20px;
    top: calc(50% - 2px);
  }
  .layDropdown > .toggleDropdown:after {
    width: 3px;
    height: 15px;
    right: 26px;
    top: calc(50% - 8px);
  }
  .layDropdown.open > .toggleDropdown:after {
    visibility: hidden;
  }
}
/*-------------------------------*/
/*中部国際空港アクセス カテゴリトップ*/
.wrapCentrair {
  margin: 70px 0 0;
  height: 500px;
  padding: 70px 0;
  background: url("/img/train_pic_01.jpg") no-repeat 50% 50% / cover;
}
.wrapCentrair .iconAirport01 {
  display: block;
  padding: 55px 0 0;
  text-align: center;
}
.wrapCentrair .iconAirport01:after {
  left: 50%;
  top: 0;
  margin: 0 0 0 -35px;
  width: 70px;
  height: 50px;
  background-size: 70px auto;
}
.idxCentrairNavItem {
  display: flex;
  justify-content: space-between;
  margin: 35px 0 0;
}
.idxCentrairNavItemLay {
  width: 32%;
}
.idxCentrairNavItem a {
  display: block;
  padding: 25px 0;
  text-align: center;
  text-decoration: none;
  background: rgba(255, 255, 255, 0.8);
  border-radius: 6px;
  transition: background 0.2s ease-out;
}
.idxCentrairNavItem a:hover {
  background: rgba(255, 255, 255, 0.5);
}
@media screen and (max-width:991px) {
  .wrapCentrair {
    margin: 40px 0 0;
    height: auto;
    padding: 70px 0 140px;
  }
  .idxCentrairNavItem {
    display: block;
  }
  .idxCentrairNavItemLay {
    width: 100%;
  }
  .idxCentrairNavItemLay + .idxCentrairNavItemLay {
    margin-top: 10px;
  }
}
/*-------------------------------*/
/*路線・駅情報 路線図から検索*/
.wrapIntro.stInfo1 {
  display: flex;
  justify-content: space-between;
}
.wrapIntro.stInfo1 .linkTxtTyp01e {
  display: inline-block;
  min-width: 300px;
}
@media screen and (max-width:991px) {
  .wrapIntro.stInfo1 {
    display: block;
  }
  .wrapIntro.stInfo1 .linkTxtTyp01e {
    display: block;
    margin: 30px 20px;
    min-width: inherit;
  }
}
/*路線図*/
#stationInfoMapBox {
  position: relative;
  border: 1px solid #ddd;
  border-radius: 5px;
  overflow: hidden;
  margin: 40px 0;
}
#stationInfoMapBox:focus {
  border-color: #bbb;
}
#stationInfoMapWrap {
  height: 500px;
}
#stationInfoMapBox a {
  text-decoration: none;
}
@media screen and (max-width:991px) {
  #stationInfoMapBox {
    margin: 30px 0;
  }
  #stationInfoMapWrap {
    height: 250px;
  }
}
#stationInfoMap {
  cursor: grab;
}
#stationInfoMap.grab {
  cursor: grabbing;
}
#stationInfoMap svg {
  will-change: transform, width, height;
}
#stationInfoMap a {
  cursor: pointer;
}
/* simplebarと画像が読み込まれたら路線図を表示 */
#stationInfoMapWrap {
  opacity: 0;
  transition: 400ms opacity;
  will-change: opacity;
}
#stationInfoMapWrap[data-simplebar=init].ready {
  opacity: 1;
}
/* 路線図 スクロールバーのスタイル調整 */
#stationInfoMapWrap .simplebar-track {
  border-radius: 100px;
  overflow: hidden;
}
#stationInfoMapWrap .simplebar-track.simplebar-horizontal {
  left: 2px !important;
  right: 11px;
  height: 7px !important;
  bottom: 2px;
}
#stationInfoMapWrap .simplebar-track.simplebar-vertical {
  top: 2px !important;
  bottom: 11px;
  width: 7px !important;
  right: 2px;
}
#stationInfoMapWrap .simplebar-track.simplebar-horizontal .simplebar-scrollbar {
  top: 0 !important;
}
#stationInfoMapWrap .simplebar-scrollbar:before {
  background: rgba(0, 0, 0, 0.6) !important;
  left: 0 !important;
  top: 0 !important;
  right: 0 !important;
  bottom: 0 !important;
}
/*路線図 ズームボタン*/
#stationInfoMapBox .zoomButton {
  border: 1px solid #ddd;
  border-radius: 5px;
  background: white;
  box-shadow: 0px 2px 2px rgba(0, 0, 0, 0.06);
  margin: 0;
  padding: 0;
  width: 34px;
  height: 34px;
  box-sizing: border-box;
  position: absolute;
  right: 19px;
  cursor: pointer;
  outline: none;
}
#stationInfoMapBox .zoomButton:disabled {
  cursor: default;
}
#stationInfoMapBox .zoomButton:before, #stationInfoMapBox .zoomButton:after {
  content: "";
  position: absolute;
  background: #004ea2;
  width: 16px;
  height: 4px;
  left: 8px;
  top: 14px;
}
#stationInfoMapBox .zoomButton:disabled:before, #stationInfoMapBox .zoomButton:disabled:after, #stationInfoMapBox .zoomResetButton:disabled:after {
  background: #bbb;
}
#stationInfoMapBox .zoomResetButton {
  bottom: 19px;
}
#stationInfoMapBox .zoomInButton:after {
  transform: rotate(90deg);
}
#stationInfoMapBox .zoomInButton {
  bottom: 109px;
}
#stationInfoMapBox .zoomOutButton {
  bottom: 64px;
}
#stationInfoMapBox .zoomResetButton:before {
  display: none;
}
#stationInfoMapBox .zoomResetButton:after {
  height: 16px;
  top: 8px;
}
@media screen and (max-width:500px) {
  #stationInfoMapBox .zoomButton {
    right: 9px;
  }
}
/*路線図 凡例*/
.wrapLineGuide {
  display: flex;
  margin: 40px 0 0;
}
.lineGuide01 {
  display: flex;
  justify-content: space-between;
  width: 75%;
}
.lineGuide01 .lineGuideItem {
  width: 30%;
}
.lineGuideItem li + li {
  margin-top: 10px;
}
.lineGuide02 {
  width: 25%;
}
@media screen and (max-width:991px) {
  .wrapLineGuide {
    display: block;
    margin: 30px 0 0;
  }
  .lineGuide01 {
    display: block;
    flex-wrap: wrap;
    width: 100%;
  }
  .lineGuide01 .lineGuideItem {
    margin: 10px 0 0;
    width: auto;
  }
  .lineGuide02 {
    margin: 20px 0 0;
    width: auto;
  }
}
/*路線名から検索*/
.searchLineNav {
  margin: 40px 0;
}
.searchLineNav .searchLineList {
  display: flex;
  flex-wrap: wrap;
}
.searchLineList {
  border: 1px solid #e6e6e6;
  border-radius: 6px;
  overflow: hidden;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.1);
}
.searchLineList li {
  display: flex;
  width: 25%;
  border-right: 1px solid #e6e6e6;
  border-bottom: 1px solid #e6e6e6;
}
.searchLineList li + li {}
.searchLineList li a {
  display: flex;
  width: 100%;
  padding: 15px;
  text-decoration: none;
  transition: background 0.2s ease-out;
}
.searchLineList li a:hover {
  color: #ffffff;
  background: #004ea2;
}
.searchLineList li span {
  width: 100%;
}
.searchLineList li.act {
  padding: 15px;
  color: #ffffff;
  background: #00a496;
}
.searchLineList li.act span {
  display: flex;
}
@media screen and (max-width:991px) {
  .searchLineNav {
    margin: 30px 0;
  }
  .searchLineList li {
    width: 50%;
  }
  .searchLineList li a {
    padding: 10px;
  }
  .searchLineList li.act {
    padding: 10px;
  }
}
@media screen and (max-width:424px) {
  .searchLineList li {
    font-size: 3.5vw;
  }
}
/*駅名から検索*/
.searchStName {
  display: flex;
  flex-wrap: wrap;
}
.searchStName li {
  display: flex;
  width: 25%;
}
.searchStName li:nth-of-type(8n+1), .searchStName li:nth-of-type(8n+2), .searchStName li:nth-of-type(8n+3), .searchStName li:nth-of-type(8n+4) {
  background: #f6f6f6;
}
.searchStName li a {
  position: relative;
  padding: 15px 10px 15px 50px;
  text-decoration: none;
}
.wrapSearchStName img.stNum {
  position: absolute;
  top: 15px;
  left: 15px;
  width: 25px;
  height: 25px;
}
.searchStName li a:hover {
  text-decoration: underline;
}
.searchStName .kana {
  font-size: 80%;
  white-space: nowrap;
}
.searchStName a img.stNum {
  transition: opacity 0.2s ease-out;
}
.searchStName a:hover img.stNum {
  filter: alpha(opacity=60);
  -moz-opacity: .60;
  opacity: .60;
}
@media screen and (max-width:991px) {
  .searchStName {
    display: block;
  }
  .searchStName li {
    width: 100%;
  }
  .searchStName li:nth-of-type(8n+1), .searchStName li:nth-of-type(8n+2), .searchStName li:nth-of-type(8n+3), .searchStName li:nth-of-type(8n+4) {
    background: none;
  }
  .searchStName li:nth-child(odd) {
    background: #f6f6f6;
  }
  .searchStName li a {
    position: relative;
    display: block;
    width: 100%;
    padding: 10px 30px 10px 40px;
  }
  .searchStName li a:after {
    content: "";
    display: block;
    position: absolute;
    top: 50%;
    right: 15px;
    margin-top: -2px;
    width: 4px;
    height: 4px;
    border-top: 2px solid #004ea2;
    border-right: 2px solid #004ea2;
    transform: rotate(45deg);
  }
  .wrapSearchStName img.stNum {
    top: 10px;
    left: 10px;
  }
}
/*-------------------------------*/
/*駅詳細*/
body#train.station main {
  padding-bottom: 0;
}
body#train.station main .layWidTyp01:last-child .guideLayTypD.typMb80:last-child {
  padding-bottom: 70px;
}
.stationInfoTop {
  padding-bottom: 20px;
}
.wrapStationAbout {
  display: flex;
  justify-content: space-between;
}
.wrapStationAbout .linkTxtTyp01c a {
  font-size: 0.95rem;
}
.stationAbout01 {
  width: 550px;
}
.stationAbout02 {
  width: 510px;
}
@media screen and (max-width:991px) {
  body#train.station main .layWidTyp01:last-child .guideLayTypD.typMb80:last-child {
    padding-bottom: 0;
  }
  .stationInfoTop .layWidTyp02 {
    padding: 0 0 30px;
  }
  .wrapStationAbout {
    display: block;
  }
  .wrapStationAbout .linkTxtTyp01c a {
    font-size: 0.9rem;
  }
  .stationAbout01, .stationAbout02 {
    width: 100%;
  }
  .stationAbout02 {
    padding: 0 20px;
  }
}
@media screen and (max-width:374px) {
  .wrapStationAbout .linkTxtTyp01c a {
    font-size: 3.5vw;
  }
  .wrapStationAbout .linkTxtTyp01c a[target="_blank"] span.linkIconTypBlankSub {
    background-position: 100% 0.6rem;
  }
  .navPageAnchor .linkTxtTyp01c a {
    font-size: 0.9rem;
  }
  .navPageAnchor .linkTxtTyp01c a .linkIconTypDown01:after {
    top: 0.4rem;
  }
}
.wrapStationAbout .stNameSign {
  position: relative;
  padding: 40px 30px 30px;
  background: #ffffff;
  border-radius: 6px 6px 0 0;
}
.wrapStationAbout .stNum {
  position: absolute;
  top: 15px;
  right: 15px;
}
.wrapStationAbout .stName {
  margin: 0 0 10px;
  padding: 0 0 40px;
  background: url("/img/train_station_misc_01.svg") no-repeat 50% 100% / 450px 10px;
}
.wrapStationAbout .stName1, .wrapStationAbout .stName2, .wrapStationAbout .stName3 {
  display: block;
  text-align: center;
}
.wrapStationAbout .stName1 {
  font-size: 2rem;
}
.wrapStationAbout .stName2 {
  margin: 8px 0 0;
  font-size: 0.9rem;
}
.wrapStationAbout .stName3 {
  margin: 8px 0 0;
  font-size: 0.9rem;
  font-weight: normal;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .stNameSign {
    padding: 60px 20px 40px 20px;
    border-radius: 0;
  }
  .wrapStationAbout .stName {
    background-size: 100% auto;
    padding-bottom: 20px;
  }
}
/*駅詳細 前後の駅*/
.wrapStationAbout .stopStation {
  display: flex;
  justify-content: space-between;
  width: 450px;
  margin: 5px auto;
}
.wrapStationAbout .stopStation + .stopStation {
  border-top: 1px solid #e9e9e9;
  padding-top: 5px;
}
.wrapStationAbout .stopStation p {
  width: 32%;
  text-align: center;
}
#wrapContents .wrapStationAbout .stopStation p {
  font-size: 0.95rem;
}
.wrapStationAbout .stopStation p:first-child {
  text-align: left;
}
.wrapStationAbout .stopStation p:last-child {
  text-align: right;
}
.wrapStationAbout .stopStation p a {
  text-decoration: none;
}
.wrapStationAbout .stopStation p a:hover {
  text-decoration: underline;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .stopStation {
    width: 100%;
  }
  #wrapContents .wrapStationAbout .stopStation p {
    font-size: 3.4vw;
  }
}
/*駅詳細 停車する電車*/
.wrapStationAbout .stopTrainTitle {
  margin: 30px 0 25px;
  padding: 0 0 5px;
  font-size: 0.95rem;
  font-weight: normal;
  border-bottom: 1px solid #e9e9e9;
}
.stopTrainList {
  display: flex;
  justify-content: space-between;
}
.stopTrainList.typ2 {
  justify-content: center;
  flex-wrap: wrap;
  margin: 30px 0;
}
.stopTrainItemLay {
  padding: 0 5px 40px;
  font-size: 0.9rem;
  text-align: center;
  background: no-repeat 50% 100% / 20px 30px;
}
.stopTrainList.typ2 .stopTrainItemLay {
  margin: 0 20px;
  padding: 10px 0 10px 30px;
  background-position: 0 50%;
}
@media screen and (max-width:991px) {
  .stopTrainList .stopTrainTitle {
    font-size: 1rem;
  }
  .stopTrainList {
    justify-content: center;
    flex-wrap: wrap;
    margin: -10px 0;
  }
  .stopTrainList .stopTrainItemLay {
    margin: 10px;
  }
  .stopTrainList.typ2 {
    margin: 10px 0;
  }
  .stopTrainList.typ2 .stopTrainItemLay {
    margin: 0 10px 0 0;
    padding: 10px 0 10px 20px;
    background-size: 15px auto;
  }
}
.stopTrainList .stopTrainItem01 {
  background-image: url("/img/ico_train_type_01.svg");
}
.stopTrainList .stopTrainItem02 {
  background-image: url("/img/ico_train_type_02.svg");
}
.stopTrainList .stopTrainItem03 {
  background-image: url("/img/ico_train_type_03.svg");
}
.stopTrainList .stopTrainItem04 {
  background-image: url("/img/ico_train_type_04.svg");
}
.stopTrainList .stopTrainItem05 {
  background-image: url("/img/ico_train_type_05.svg");
}
.stopTrainList .stopTrainItem06 {
  background-image: url("/img/ico_train_type_06.svg");
}
.stopTrainList .stopTrainItem07 {
  background-image: url("/img/ico_train_type_07.svg");
}
.stopTrainList .stopTrainItem01.on {
  background-image: url("/img/ico_train_type_01_on.svg");
}
.stopTrainList .stopTrainItem02.on {
  background-image: url("/img/ico_train_type_02_on.svg");
}
.stopTrainList .stopTrainItem03.on {
  background-image: url("/img/ico_train_type_03_on.svg");
}
.stopTrainList .stopTrainItem04.on {
  background-image: url("/img/ico_train_type_04_on.svg");
}
.stopTrainList .stopTrainItem05.on {
  background-image: url("/img/ico_train_type_05_on.svg");
}
.stopTrainList .stopTrainItem06.on {
  background-image: url("/img/ico_train_type_06_on.svg");
}
.stopTrainList .stopTrainItem07.on {
  background-image: url("/img/ico_train_type_07_on.svg");
}
/*駅詳細 画面上部のページ内リンク*/
.navPageAnchor {
  padding: 20px;
  background: #dfdfdf;
}
.navPageAnchor .pageAnchor {
  display: flex;
  justify-content: space-between;
  border-radius: 6px;
  box-shadow: 0 3px 5px 0 rgb(0 0 0 / 10%);
}
.navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c {
  width: 255px;
  border-right: none;
  border-radius: 0;
}
.navPageAnchor .pageAnchor .linkTxtTyp01c:not(hover) {
  overflow: hidden;
}
.navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c:first-child {
  border-radius: 6px 0 0 0;
}
.navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c:last-child {
  border-right: 1px solid #e3e3e3;
  border-radius: 0 6px 0 0;
}
.navPageAnchor .pageAnchor.lay2 {}
.navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c {
  width: 170px;
  border-top: none;
  border-right: none;
  border-radius: 0;
}
.navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c:first-child {
  border-radius: 0 0 0 6px;
}
.navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c:last-child {
  border-right: 1px solid #e3e3e3;
  border-radius: 0 0 6px 0;
}
@media screen and (max-width:991px) {
  .navPageAnchor {
    border-radius: 0;
  }
  .navPageAnchor .pageAnchor {
    display: block;
  }
  .navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c, .navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c {
    width: 100%;
    border-top: none;
    border-right: 1px solid #e3e3e3;
  }
  .navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c:first-child {
    border-radius: 6px 6px 0 0;
  }
  .navPageAnchor .pageAnchor.lay1 .linkTxtTyp01c:last-child {
    border-radius: 0;
  }
  .navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c:first-child {
    border-radius: 0;
  }
  .navPageAnchor .pageAnchor.lay2 .linkTxtTyp01c:last-child {
    border-radius: 0 0 6px 6px;
  }
}
/*駅詳細 ダイヤ・運賃検索と特別車両券購入へのリンク*/
.wrapStationAbout .trainUse {
  display: flex;
  justify-content: space-between;
  margin-top: 10px;
}
.wrapStationAbout .trainUse .linkTxtTyp01c {
  width: 250px;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .trainUse {
    display: block;
  }
  .wrapStationAbout .trainUse .linkTxtTyp01c {
    width: 100%;
  }
  .wrapStationAbout .trainUse .linkTxtTyp01c + .linkTxtTyp01c {
    margin-top: 10px;
  }
}
/*駅詳細 時刻表*/
.wrapStationAbout .timeTable {
  margin: 30px 0;
}
.wrapStationAbout .timeTableTitle {
  font-size: 0.9rem;
  font-weight: 400;
}
.wrapStationAbout .timeTableItem {
  margin-top: 15px;
}
.wrapStationAbout .timeTableItem .linkTxtTyp01c + .linkTxtTyp01c {
  margin-top: 10px;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .timeTable {
    margin: 30px 20px;
  }
  .wrapStationAbout .timeTableItem {
    margin-top: 10px;
  }
}
/*駅詳細 わたしの名鉄駅*/
.wrapStationAbout .myStation {
  margin: 30px 0;
}
.wrapStationAbout .myStationTitle {
  font-size: 0.9rem;
  font-weight: 400;
}
.wrapStationAbout .myStationTitle .iconMy01 {
  display: flex;
  align-items: center;
}
.wrapStationAbout .myStationItem {
  display: flex;
  margin-top: 15px;
  width: 100%;
}
.wrapStationAbout .myStationItem .linkTxtTyp01c {
  width: 50%;
}
.wrapStationAbout .myStationItem .linkTxtTyp01c:first-child {
  border-radius: 5px 0 0 5px;
}
.wrapStationAbout .myStationItem .linkTxtTyp01c:first-child a {
  justify-content: space-between;
}
.wrapStationAbout .myStationItem .linkTxtTyp01c:last-child {
  border-left: 1px solid #efefef;
  border-radius: 0 5px 5px 0;
}
.wrapStationAbout .myStationName {
  display: inline-block;
  width: 70%;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
}
.linkTxtTyp01c a span.myStationName {
  height: auto;
}
.wrapStationAbout a.change .myStationBtn {
  padding: 3px 5px;
  font-size: 0.85rem;
  white-space: nowrap;
  border: 1px solid #c8c8c8;
  border-radius: 5px;
  transition: background 0.2s ease-out;
}
.wrapStationAbout a.change:hover .myStationBtn {
  color: #ffffff;
  background: #004ea2;
  border: 1px solid #004ea2;
}
.wrapStationAbout .myStationItem .iconPlus01 {
  padding-left: 30px;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .myStation {
    margin: 30px 20px;
  }
  .wrapStationAbout .myStationItem {
    margin-top: 10px;
  }
}
@media screen and (max-width:424px) {
  .wrapStationAbout .myStationItem .linkTxtTyp01c a, .wrapStationAbout a.change .myStationBtn {
    font-size: 3.5vw;
  }
}
/*駅詳細 地図*/
.wrapStationAbout .wrapMap {
  padding: 5px;
  background: #ffffff;
}
.wrapStationAbout .wrapMap iframe {
  display: block;
  width: 100%;
  height: 330px;
}
/*駅詳細 ご連絡先*/
.wrapStationAbout .wrapAddress {
  margin: 15px;
  font-style: normal;
  font-size: 0.9rem;
}
.wrapStationAbout .addressItem {
  display: flex;
}
.wrapStationAbout .addressItem + .addressItem {
  margin-top: 5px;
}
.wrapStationAbout .addressDt {
  width: 20%;
}
.wrapStationAbout .addressDd {
  width: 80%;
}
@media screen and (max-width:991px) {
  .wrapStationAbout .wrapAddress {
    margin: 10px;
  }
  .wrapStationAbout .addressDt {
    width: 30%;
  }
  .wrapStationAbout .addressDd {
    width: 70%;
  }
}
/*駅詳細 乗換・のりば案内 標準*/
.stationInfoTop .guideLayTypA {
  display: flex;
  align-items: center;
  padding: 30px 0 30px 20px;
}
.stationInfoTop .guideLayTypA + .guideLayTypA {
  border-top: 1px solid #e6e6e6;
}
.stationInfoTop .guideLayTitleA {
  width: 37%;
  padding: 0 20px 0 0;
  font-size: 0.9rem;
  font-weight: normal;
}
.stationInfoTop .guideLayItemA {
  width: 63%;
}
#wrapContents .stationInfoTop p.note {
  font-size: 0.85rem;
}
@media screen and (max-width:991px) {
  .stationInfoTop .guideLayTypA {
    display: block;
    padding: 20px 0;
  }
  .stationInfoTop .guideLayTitleA, .stationInfoTop .guideLayItemA {
    width: 100%;
    padding: 0;
    font-size: 1rem;
  }
  .stationInfoTop .guideLayTitleA {
    margin-bottom: 15px;
  }
}
/*駅詳細 汎用ご利用案内（PC右カラム表示）*/
.stationInfoTop .guideLayTypB {
  margin: 20px 0 0;
}
.stationInfoTop .guideLayTitleB {
  position: relative;
  margin: 0 0 25px;
  font-size: 1.15rem;
  font-weight: normal;
}
.stationInfoTop .guideLayTitleB:before {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  left: 0;
  width: 100%;
  height: 1px;
  background: #00a496;
}
.stationInfoTop .guideLayTitleB span.lay1 {
  position: relative;
  display: inline-block;
  padding: 0 10px 0 0;
  background: #f8f8f8;
}
.stationInfoTop .guideLayTitleSubB {
  margin: 30px 0 25px;
  padding: 0 0 0 15px;
  font-size: 1.1rem;
  font-weight: normal;
  border-left: 5px solid #00a496;
}
#wrapContents .stationAbout02, #wrapContents .stationAbout02 p {
  font-size: 0.9rem;
}
@media screen and (max-width:991px) {
  .stationInfoTop .guideLayTitleB, .stationInfoTop .guideLayTitleSubB {
    margin-bottom: 20px;
  }
  #wrapContents .stationAbout02, #wrapContents .stationAbout02 p {
    font-size: 1rem;
  }
}
/*駅詳細 汎用ご利用案内（横幅100％表示）*/
.stationInfoTop .guideLayTypC {
  margin: 60px 0 0;
}
.stationInfoTop .guideLayTitleSubC {
  margin: 30px 0 25px;
  padding: 0 0 0 15px;
  font-size: 1.1rem;
  font-weight: normal;
  border-left: 5px solid #00a496;
}
@media screen and (max-width:991px) {
  .stationInfoTop .guideLayTypC {
    margin: 40px 20px 0;
  }
}
/*駅詳細 駅構内図 タブ切替*/
.stationTabContent:not(.ht-act) {
  display: none;
}
.wrapStationTabGroup {
  display: flex;
  background: #696969;
}
.wrapStationTabGroup .layWidTyp01 {
  display: flex;
}
.wrapStationTabGroup a {
  padding: 10px;
  color: #ffffff;
  text-decoration: none;
}
.wrapStationTabTitle, .stationTabItem {
  display: flex;
  align-items: center;
  height: 100%;
  color: #ffffff;
}
.wrapStationTabTitle {
  margin: 0 90px 0 0;
  font-size: 1.2rem;
  font-weight: normal;
}
.stationTabItem {
  padding: 5px 0 0;
}
.stationTabItemLay {
  width: 250px;
  height: 100%;
  margin: 0 2.5px;
  background: #00a395;
  border-radius: 5px 5px 0 0;
  vertical-align: baseline;
  transition: background 0.2s ease-out;
}
.stationTabItemLay:hover {
  background: #0bbcad;
}
.stationTabItemLay a {
  display: flex;
  align-items: center;
  justify-content: center;
  width: 100%;
  height: 100%;
}
.stationTabItemLay.ht-act {
  background: #f8f8f8;
}
.stationTabItemLay.ht-act:hover {
  filter: none;
  -moz-opacity: none;
  opacity: none;
}
.wrapStationTabGroup .stationTabItemLay.ht-act a {
  color: #555555;
  pointer-events: none;
}
.stationTabContent {
  padding: 40px 0 50px;
  background: #f8f8f8;
}
.stationTabContent .layWidTyp01 {
  padding: 45px;
  text-align: center;
  background: #ffffff;
}
.stationTabContent .layWidTyp01 img {
  display: block;
  margin: 0 auto;
  max-width: 100%;
  height: auto;
}
@media screen and (max-width:991px) {
  .wrapStationTabGroup {
    height: auto;
    display: block;
    padding: 15px 0 0;
  }
  .wrapStationTabGroup .layWidTyp01 {
    display: block;
    margin: 0;
  }
  .wrapStationTabTitle {
    display: block;
    margin: 0;
    text-align: center;
  }
  .stationTabGroup {
    display: flex;
  }
  .stationTabItem {
    justify-content: center;
    width: 100%;
    height: auto;
    padding-top: 10px;
  }
  .stationTabItemLay {
    display: flex;
    width: 32%;
    height: 100%;
  }
  .stationTabContent {
    padding: 30px 0;
  }
  .stationTabContent .layWidTyp01 {
    padding: 10px 0;
  }
}
@media screen and (max-width:424px) {
  .stationTabItemLay a {
    font-size: 3.5vw;
  }
}
/*駅詳細 バリアフリー情報*/
.wrapBarrierFree {
  margin: 40px 0;
}
.barrierFree {
  display: flex;
  flex-wrap: wrap;
  border-top: 1px solid #dddddd;
  border-left: 1px solid #dddddd;
}
.barrierFree .bfItem {
  position: relative;
  width: 20%;
  padding: 0 1px 1px 0;
  background: #dddddd;
}
.barrierFree .bfItemLay {
  height: 100%;
  padding: 20px;
  background: #f8f8f8;
}
.barrierFree .bfItem.on .bfItemLay {
  background: #ffffff;
}
.barrierFree .bfIcon {
  display: block;
  margin: 0 auto;
}
.barrierFree .lay1 {
  margin: 5px 0 0;
}
.barrierFree .bfTxt {
  display: block;
  font-size: 0.9rem;
  text-align: center;
}
.barrierFree .bfStatus {
  display: block;
  margin: 20px 0 0;
  padding: 6px;
  text-align: center;
  background: #f8f8f8;
  border-radius: 6px;
}
.barrierFree .bfStatus img {
  display: block;
  margin: 0 auto;
}
.barrierFree .lay3 {
  margin: 15px 0 0;
}
.barrierFree .bfNote {
  font-size: 0.9rem;
  color: #7e7e7e;
}
@media screen and (max-width:991px) {
  .wrapBarrierFree {
    margin: 30px 0;
  }
  .barrierFree {
    display: block;
  }
  .barrierFree .bfItem {
    margin: 0;
    width: 100%;
  }
  .barrierFree .bfItemLay {
    height: auto;
    padding: 15px;
  }
  .barrierFree .lay2 {
    display: flex;
  }
  .barrierFree .bfItemLay img.bfIcon {
    width: 70px;
    height: 70px;
  }
  .barrierFree .lay1 {
    margin: 0 0 0 20px;
    width: calc(100% - 70px);
  }
  .barrierFree .bfTxt {
    margin-top: 0;
  }
  .barrierFree .bfStatus {
    margin-top: 10px;
  }
  .barrierFree .bfStatus img {
    width: 30px;
    height: 30px;
  }
  .barrierFree .lay3 {
    margin: 10px 0 0;
  }
}
@media screen and (max-width:330px) {
  .barrierFree .bfItemLay img.bfIcon {
    width: 60px;
    height: 60px;
  }
  .barrierFree .lay1 {
    margin: 0 0 0 10px;
    width: calc(100% - 60px);
  }
  .barrierFree .bfStatus {
    margin-top: 5px;
  }
  .barrierFree .bfStatus img {
    width: 22px;
    height: 22px;
  }
}
/*-------------------------------*/
/*バリアフリー リスト*/
.wrapBarrierFreeSec {
  margin: 40px 0;
  padding: 30px;
  background: #f8f8f8;
}
.bfGuide {
  margin: 40px 0;
  padding: 15px 10px 15px 30px;
  border: 3px solid #efefef;
  border-radius: 10px;
}
.bfGuideList {
  display: flex;
  flex-wrap: wrap;
}
.bfGuideList .bfListItem {
  display: flex;
  align-items: center;
  flex-wrap: wrap;
  position: relative;
  margin: 15px 0;
  width: 20%;
  min-height: 50px;
  padding: 0 20px 0 60px;
  font-size: 0.95rem;
  line-height: 1.3;
}
.bfGuideList .bfListItem img {
  position: absolute;
  top: 50%;
  left: 0;
  margin-top: -25px;
}
.bfGuideList .bfListItem .layTxt {
  white-space: nowrap;
}
/*バリアフリー リスト コンパクト表示*/
.bfGuide.adjCompact {
  padding: 15px;
}
.bfGuide.adjCompact .bfListItem {
  flex-direction: column;
  text-align: center;
  width: 12.5%;
  padding: 50px 0 0 0;
}
.bfGuide.adjCompact .bfListItem img {
  position: absolute;
  top: 15px;
  left: 50%;
  margin-left: -25px;
}
@media screen and (max-width:991px) {
  .wrapBarrierFreeSec {
    margin: 30px 0;
    padding: 20px;
  }
  .bfGuide, .bfGuide.adjCompact {
    margin: 30px 0;
    padding: 5px 10px;
    font-size: 0.9rem;
  }
  .bfGuideList {
    justify-content: space-between;
  }
  .bfGuideList .bfListItem, .bfGuide.adjCompact .bfGuideList .bfListItem {
    margin: 5px 0;
    width: 48%;
    padding: 0;
    flex-wrap: nowrap;
  }
  .bfGuide.adjCompact .bfGuideList .bfListItem {
    flex-direction: row;
    text-align: left;
  }
  .bfGuideList .bfListItem img, .bfGuide.adjCompact .bfListItem img {
    position: relative;
    top: inherit;
    left: inherit;
    margin: 0 10px 0 0;
  }
}
@media screen and (max-width:600px) {
  .bfGuideList .bfListItem, .bfGuide.adjCompact .bfGuideList .bfListItem {
    width: 100%;
  }
}
@media screen and (max-width:400px) {
  .bfGuide.adjCompact .bfListItem {
    min-height: 40px;
  }
  .bfGuide.adjCompact .bfListItem img {
    width: 40px;
    height: 40px;
  }
}
.barrierFreeList {
  display: flex;
  flex-wrap: wrap;
}
.bfList {
  display: flex;
  justify-content: space-between;
  margin: 0 0 20px;
}
.bfList + .bfList {
  margin-top: 40px;
  border-top: 1px solid #d4d4d4;
  padding-top: 40px;
}
.bfListLay1 {
  width: 25%;
}
.bfListLay2 {
  width: 70%;
}
.bfListTitle {
  font-size: 1rem;
}
body#siteMultilang .bfListTitle {
  display: flex;
  align-items: center;
  font-size: 1.1rem;
  font-weight: 500;
}
.bfListTitle a.layLink {
  display: flex;
  text-decoration: none;
}
body#siteMultilang .bfListTitle a.layLink {
  align-items: center;
}
.bfListTitle a.layLink:hover {
  text-decoration: underline;
}
.bfListTitle a.layLink .layTxt {}
.bfListTitle .kana {
  display: block;
  margin-top: 5px;
  font-size: 0.85rem;
}
.bfListTitle img.stNum {
  margin: 0 20px 0 0;
}
.bfListTitle a.layLink img.stNum {
  transition: opacity 0.2s ease-out;
}
.bfListTitle a.layLink:hover img.stNum {
  filter: alpha(opacity=60);
  -moz-opacity: .60;
  opacity: .60;
}
.bfList .bfListItem + .bfListItem {
  margin-left: 5px;
}
.bfList .bfListInfo {
  display: flex;
  justify-content: space-between;
  margin: 10px 0 0;
}
.bfList .bfListInfo dt {
  width: 15%;
}
body#siteMultilang .bfList .bfListInfo dt {
  width: 20%;
}
.bfList .bfListInfo dd {
  width: 83%;
  font-size: 0.9rem;
}
body#siteMultilang .bfList .bfListInfo dd {
  width: 78%;
}
@media screen and (max-width:991px) {
  .bfList {
    display: block;
  }
  .bfList + .bfList {
    margin-top: 30px;
    padding-top: 30px;
  }
  .bfListLay1 {
    width: 100%;
    margin: 0 0 10px;
  }
  .bfListLay2 {
    width: 100%;
  }
  .barrierFreeList {}
  .bfList .bfListItem + .bfListItem {
    margin-left: 0;
  }
  .bfList .bfListItem {
    padding: 3px;
  }
  .bfList .bfListItem img {
    width: 35px;
    height: auto;
  }
  .bfList .bfListInfo {
    display: block;
  }
  .bfList .bfListInfo dt, body#siteMultilang .bfList .bfListInfo dt {
    width: 100%;
    font-size: 1.05rem;
    color: #00a395;
    font-weight: 500;
  }
  .bfList .bfListInfo dd, body#siteMultilang .bfList .bfListInfo dd {
    margin-top: 5px;
    width: 100%;
  }
}
/*バリアフリー ハンドル形電動車いす利用可能駅*/
.wheelchairAccessibleStation {
  margin: 40px 0 0;
}
.wheelchairAccessibleStation table th {
  text-align: center;
  border-bottom: none;
  white-space: nowrap;
}
.wheelchairAccessibleStation .tableTypAuto {
  margin: 0;
}
.wheelchairAccessibleStation img {
  display: block;
  width: 40px;
  height: 40px;
}
.wheelchairAccessibleStation td a img {
  transition: opacity 0.2s ease-out;
}
.wheelchairAccessibleStation td a:hover img {
  filter: alpha(opacity=60);
  -moz-opacity: .60;
  opacity: .60;
}
.wheelchairAccessibleStation td a, .wheelchairAccessibleStation td span.layStName {
  display: flex;
  align-items: center;
  text-decoration: none;
}
.wheelchairAccessibleStation td a:hover, .wheelchairAccessibleStation td a:hover span.layStName {
  text-decoration: underline;
}
.wheelchairAccessibleStation td a span + span, .wheelchairAccessibleStation td span.layStName span + span {
  margin-left: 20px;
}
.wheelchairAccessibleStation span.kana {
  display: block;
  font-size: 0.8rem;
  white-space: nowrap;
}
@media screen and (max-width:991px) {
  .wheelchairAccessibleStation {
    margin: 20px 0 0;
  }
  .wheelchairAccessibleStation .tableTypAuto td {
    padding: 10px;
  }
  .wheelchairAccessibleStation img {
    max-width: inherit;
    width: 30px;
    height: 30px;
  }
  .wheelchairAccessibleStation td a span + span, .wheelchairAccessibleStation td span.layStName span + span {
    margin-left: 10px;
  }
}
/*-------------------------------*/
/*わたしの名鉄駅とは 陣コード調整*/
@media screen and (max-width:991px) {
  body.mystation.detail .blockTemplateArea .figureBlock.width40pct + p {
    margin-top: 30px;
  }
}
/*わたしの名鉄駅 登録・変更・解除*/
.wrapMyStationOperate {
  display: block;
  position: relative;
  bottom: inherit;
  min-height: inherit;
  width: auto;
  padding: 30px;
  border-radius: 6px;
  background: #f8f8f8;
}
.myStationOperate {
  display: flex;
  justify-content: space-between;
  width: 100%;
}
.myStationOperate .lay1 {
  width: 34%;
}
.myStationOperate .lay2 {
  width: 34%;
}
.myStationOperate .lay3, .myStationOperate .lay4 {
  display: flex;
  justify-content: space-between;
  width: 26%;
}
.myStationOperate .layTxt {
  display: flex;
  align-items: center;
  height: 50px;
  padding: 0 15px;
  font-size: 1.1rem;
  background: #efefef;
  border-radius: 6px;
}
.myStationOperate .selectDecoTyp01 {
  width: 100%;
}
.myStationOperate .selectDecoTyp01 select {
  width: 100%;
  height: 50px;
}
.myStationOperate .lay3 .searchBtnTyp01 {
  width: 100%;
}
.myStationOperate .lay4 .searchBtnTyp01 {
  width: 46%;
}
@media screen and (max-width:991px) {
  .wrapMyStationOperate {
    padding: 20px;
  }
  .myStationOperate {
    display: block;
  }
  .myStationOperate .lay1, .myStationOperate .lay2 {
    width: 100%;
  }
  .myStationOperate .lay2 {
    margin: 10px 0;
  }
  .myStationOperate .lay3, .myStationOperate .lay4 {
    margin: 20px 20px 0;
    width: auto;
  }
}
/*-------------------------------*/
/* 路線・駅情報 路線名から検索 */
.stationList {
  margin: 20px 0 40px;
  border-bottom: 2px solid #f2f2f2;
}
.stationList img {
  display: block;
}
.stationList a.layStationLink {
  display: flex;
  justify-content: flex-start;
  position: relative;
  width: 100%;
  height: 50px;
  padding: 0 20px;
  color: #555555;
  text-decoration: none;
}
.stationList a.layStationLink:after {
  content: "";
  display: block;
  position: absolute;
  top: 50%;
  right: 20px;
  margin-top: -4px;
  width: 8px;
  height: 8px;
  border-top: 2px solid #004ea2;
  border-right: 2px solid #004ea2;
  transform: rotate(45deg);
}
.stationList li:nth-child(odd) a.layStationLink {
  background-color: #f3f3f3;
}
.stationList a.layStationLink:hover, .stationList li:nth-child(odd) a.layStationLink:hover {
  background-color: #dddddd;
  opacity: 1;
  filter: alpha(opacity=100);
  -moz-opacity: 1;
  -ms-filter: "alpha(opacity=100)";
}
/*駅名*/
.stationList .name {
  display: flex;
  align-items: center;
  height: 50px;
  padding-left: 30px;
}
.stationList a.layStationLink div.name span {
  font-weight: normal;
}
.stationList a.layStationLink div.name img.stNum {
  width: 30px;
  height: 30px;
  margin-right: 8px;
}
/*路線描画 共通*/
.stationList .drawingLine {
  display: flex;
  justify-content: center;
  align-items: flex-start;
  position: relative;
  width: 40px;
}
.stationList .drawingLine img {
  position: relative;
  margin-top: 18px;
  width: 20px;
  height: 20px;
}
.stationList .drawingLine:before {
  content: "";
  display: block;
  position: absolute;
  top: 0;
  left: 50%;
  margin-left: -3px;
  width: 6px;
  height: 50px;
}
.stationList .transfer01 .drawingLine:before, 
.stationList .transfer02 .drawingLine:before, 
.stationList .transfer04 .drawingLine:before {
  height: 100px;
}
.stationList .transfer03 .drawingLine:before, 
.stationList .transfer05 .drawingLine:before{
  height: 150px;
}
.stationList li:first-child .drawingLine:before, .stationList .drawingLine.muSt:before, .stationList .drawingLine.ktSt:before, .stationList .drawingLine.tkSt:before, .stationList .drawingLine.kkSt:before, .stationList .drawingLine.koSt:before, .stationList .drawingLine.jkSt:before, .stationList .drawingLine.nmSt:before {
  top: 50%;
}
.stationList li:last-child .drawingLine:before, .stationList .drawingLine.muEd:before, .stationList .drawingLine.ktEd:before, .stationList .drawingLine.tkEd:before, .stationList .drawingLine.kkEd:before, .stationList .drawingLine.koEd:before, .stationList .drawingLine.jkEd:before, .stationList .drawingLine.nmEd:before {
  height: 20px;
}
/*路線描画 ミュースカイ ラインの色塗*/
.stationList .drawingLine.muSt:before, .stationList .drawingLine.mu:before, .stationList .drawingLine.muEd:before {
  background: #faa902;
}
/*路線描画 快速特急 ラインの色塗*/
.stationList .drawingLine.ktSt:before, .stationList .drawingLine.kt:before, .stationList .drawingLine.ktEd:before {
  background: #c51c40; /* Old browsers */
  background: -moz-linear-gradient(left, #c51c40 0%, #c51c40 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #c51c40 65%, #c51c40 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #c51c40 0%, #c51c40 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #c51c40 65%, #c51c40 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #c51c40 0%, #c51c40 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #c51c40 65%, #c51c40 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
/*路線描画 特急 ラインの色塗*/
.stationList .drawingLine.tkSt:before, .stationList .drawingLine.tk:before, .stationList .drawingLine.tkEd:before {
  background: #e03837;
}
/*路線描画 快速急行 ラインの色塗*/
.stationList .drawingLine.kkSt:before, .stationList .drawingLine.kk:before, .stationList .drawingLine.kkEd:before {
  background: #034f98; /* Old browsers */
  background: -moz-linear-gradient(left, #034f98 0%, #034f98 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #034f98 65%, #034f98 100%); /* FF3.6-15 */
  background: -webkit-linear-gradient(left, #034f98 0%, #034f98 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #034f98 65%, #034f98 100%); /* Chrome10-25,Safari5.1-6 */
  background: linear-gradient(to right, #034f98 0%, #034f98 35%, #ffffff 35%, #ffffff 65%, #ffffff 65%, #034f98 65%, #034f98 100%); /* W3C, IE10+, FF16+, Chrome26+, Opera12+, Safari7+ */
}
/*路線描画 急行 ラインの色塗*/
.stationList .drawingLine.koSt:before, .stationList .drawingLine.ko:before, .stationList .drawingLine.koEd:before {
  background: #00befe;
}
/*路線描画 準急 ラインの色塗*/
.stationList .drawingLine.jkSt:before, .stationList .drawingLine.jk:before, .stationList .drawingLine.jkEd:before {
  background: #009945;
}
/*路線描画 普通 ラインの色塗*/
.stationList .drawingLine.nmSt:before, .stationList .drawingLine.nm:before, .stationList .drawingLine.nmEd:before {
  background: #333333;
}
/*乗換駅 乗り換え路線表示：1,乗換駅（東枇杷島駅）*/
.stationList .transfer01,.stationList .transfer02, .stationList .transfer04{
  height: 100px;
}
/*乗換駅 乗り換え路線表示：2*/
.stationList .transfer03,.stationList .transfer05{
  height: 150px;
}
/*別路線へ*/
.wrapUnc, .wrapCross {
  display: flex;
  padding-left: 335px;
  border-top: 1px solid #f2f2f2;
  border-bottom: 1px solid #f2f2f2;
}
/*別路線へ 路線表示2*/
.wrapCross {
  flex-direction: column;
  height: 100px;
}
/*別路線 リンク・描画*/
.stationList a.unc, .branchLine a.unc, .stationList a.uncUp, .stationList a.uncDown {
  display: flex;
  align-items: center;
  height: 50px;
  padding-left: 245px;
  color: #555555;
  text-decoration: none;
}
.stationList .transfer01 a.unc,
.stationList .transfer03 a.unc,
.stationList .transfer05 a.unc {
  background: url("/img/train_station_info_line_misc_08.svg") no-repeat 57px 0 / 173px 35px;
}
/*別路線 リンク・描画 下に描画する.uncとつなげて表示する場合（小牧線へ,犬山線へ）*/
.stationList a.unc.typ2 {
  background-image: url("/img/train_station_info_line_misc_09.svg");
  background-size: 173px 50px;
}
/*別路線 リンク・点線で描画（東枇杷島駅）,別路線 ページ内リンク*/
.stationList .transfer02 a.uncDown,
.stationList .transfer03 a.uncDown,
.stationList .transfer04 a.unc {
  background: url("/img/train_station_info_line_misc_10.svg") no-repeat 0 50% / 230px 20px;
}
.stationList a.unc:hover, .stationList a.unc.typ2:hover, .stationList a.uncUp:hover, .stationList a.uncDown:hover {
  color: #004ea2;
}
@media screen and (max-width:991px) {
  .stationList {
    margin: 20px 0;
  }
  .stationList a.layStationLink {
    padding: 0 10px;
  }
  .stationList a.layStationLink:after {
    right: 10px;
    margin-top: -2px;
    width: 4px;
    height: 4px;
  }
  .stationList .name {
    align-items: flex-start;
    position: relative;
    padding: 8px 0 0 10px;
    width: auto;
    min-width: 160px;
  }
  .stationList a.layStationLink div.name span {
    position: absolute;
    bottom: 6px;
    left: 0;
    margin-left: 35px;
    font-size: 0.6rem;
    overflow: hidden;
    white-space: nowrap;
  }
  .stationList a.layStationLink div.name img.stNum {
    margin-top: 6px;
    width: 25px;
    height: 25px;
  }
  .stationList .drawingLine {
    width: 15px;
  }
  .stationList .drawingLine img {
    width: 12px;
    height: 12px;
  }
  .wrapUnc, .wrapCross {
    padding-left: 120px;
  }
  .stationList a.unc, .branchLine a.unc, .stationList a.uncUp, .stationList a.uncDown {
    padding-left: 96px;
    font-size: 0.9rem;
  }
  .stationList .transfer01 a.unc,
  .stationList .transfer03 a.unc,
  .stationList .transfer05 a.unc{
    background: url("/img/train_station_info_line_misc_08_02.svg") no-repeat 40px 0 / 50px 33px;
  }
  .stationList a.unc.typ2 {
    background: url("/img/train_station_info_line_misc_09_02.svg") no-repeat 40px 0 / 50px 50px;
  }
  .stationList .transfer02 a.uncDown, 
  .stationList .transfer03 a.uncDown,
  .stationList .transfer04 a.unc {
    background: url("/img/train_station_info_line_misc_10_02.svg") no-repeat 0 50% / 90px 20px;
  }
}
@media screen and (max-width:374px) {
  .stationList {
    margin-left: -20px;
    margin-right: -20px;
  }
  .stationList a.layStationLink:after {
    right: 15px;
  }
  .stationList a.unc, .branchLine a.unc, .stationList a.uncUp, .stationList a.uncDown {
    font-size: 0.85rem;
  }
}
@media screen and (max-width:330px) {
  .stationList a.layStationLink div.name span {
    letter-spacing: -0.05rem;
  }
}
/*-------------------------------*/
/*路線一覧インデックス 主要駅構内図,バリアフリー*/
.lineIdx {
  display: flex;
  justify-content: space-between;
  flex-wrap: wrap;
  margin: -10px;
}
.lineIdxItem {
  display: flex;
  justify-content: space-between;
  align-items: center;
  margin: 10px;
  width: 48%;
}
@media screen and (max-width:991px) {
  .lineIdx {
    margin: 0;
  }
  .lineIdxItem {
    width: 100%;
    margin: 0;
  }
  .lineIdxItem + .lineIdxItem {
    margin-top: 20px;
  }
}
/*Facilities Information for Each Station*/
.lineIdxItem.linkTxtTyp01c.layStNum a {
  padding: 10px 5px 10px 12px;
}
.lineIdxItem.linkTxtTyp01c.layStNum a .linkIconTyp01:after {
  top: 50%;
  left: 0;
  margin-top: -4px;
}
.lineIdxItem.linkTxtTyp01c.layStNum a .linkIconTyp01 {
  display: flex;
  flex-wrap: wrap;
  padding-left: 20px;
}
.lineIdxItem.linkTxtTyp01c .layLine {
  display: flex;
  align-items: center;
  margin: 2px 15px 2px 0;
  white-space: nowrap;
}
.lineIdxItem.linkTxtTyp01c .layLine .stNum {
  margin-right: 10px;
}
@media screen and (max-width:991px) {
  .lineIdxItem.linkTxtTyp01c.layStNum a .linkIconTyp01 {
    padding-left: 15px;
  }
  .lineIdxItem.linkTxtTyp01c .layLine {
    padding: 5px;
  }
  .lineIdxItem.linkTxtTyp01c .layLine .stNum {
    width: 25px;
    height: 25px;
  }
}
@media screen and (max-width:374px) {
  .lineIdxItem.linkTxtTyp01c.layStNum {
    font-size: 4.5vw;
  }
}
/*4列：バリアフリー,3列：主要駅構内図,2列：バリアフリー多言語*/
p + .wrapLineIdxClm4, p + .wrapLineIdxClm3, p + .wrapLineIdxClm2 {
  margin-top: 30px;
}
.wrapLineIdxClm4 .lineIdx, .wrapLineIdxClm3 .lineIdx {
  justify-content: flex-start;
}
.wrapLineIdxClm4 .lineIdxItem {
  width: 260px;
}
.wrapLineIdxClm3 .lineIdxItem {
  width: 353px;
}
@media screen and (max-width:991px) {
  p + .wrapLineIdxClm4 {
    margin-top: 15px;
  }
  .wrapLineIdxClm4 .lineIdxItem, .wrapLineIdxClm3 .lineIdxItem {
    width: 100%;
  }
  .lineIdxItem.linkTxtTyp01c .layTxt {
    display: block;
    margin: 0;
  }
}
@media screen and (max-width:424px) {
  .lineIdxItem.linkTxtTyp01c .layTxt {
    font-size: 0.85rem;
  }
}
/*-------------------------------*/
/*路線一覧インデックス 名鉄出札係員配置駅のご案内*/
.wrapStationIdx .layDropdown {
  border: 1px solid #fafafa;
  border-radius: 6px;
  background: #fafafa;
}
.wrapStationIdx .layDropdown:not(.open) {
  border: 1px solid #e6e6e6;
  background: #ffffff;
  box-shadow: 0 3px 5px 0 rgba(0, 0, 0, 0.08);
}
.wrapStationIdx .layDropdown + .layDropdown {
  margin-top: 20px;
}
.wrapStationIdx .layDropdown > button {
  text-align: left;
}
.stationIdx {
  display: flex;
  flex-wrap: wrap;
}
.dropdownContent .stationIdx {
  margin-top: 20px;
}
.stationIdxItem {
  display: flex;
  justify-content: space-between;
  align-items: center;
  width: 48%;
  margin-top: 20px;
}
.stationIdxItem:nth-child(1), .stationIdxItem:nth-child(2) {
  margin-top: 0;
}
.stationIdxItem .layLink {
  display: flex;
  align-items: center;
  text-decoration: none;
}
.stationIdxItem .layLink:hover {
  text-decoration: underline;
}
.stationIdxItem .layImg img.stNum {
  display: block;
  width: 40px;
  height: 40px;
}
.stationIdxItem .layLink img.stNum {
  transition: opacity 0.3s ease-out;
}
.stationIdxItem .layLink:hover img.stNum {
  filter: alpha(opacity=70);
  -moz-opacity: .70;
  opacity: .70;
}
.stationIdxItem .layTxt1 {
  margin-left: 15px;
}
.stationIdxItem .layTxt2 {
  width: 50%;
  padding-right: 20px;
}
@media screen and (max-width:991px) {
  .wrapStationIdx .layDropdown > button {
    padding: 15px;
  }
  .stationIdxItem, .stationIdxItem:nth-child(2) {
    width: 100%;
    margin-top: 20px;
  }
  .dropdownContent .stationIdxItem:nth-child(1) {
    margin-top: 20px;
  }
  .dropdownContent .stationIdx {
    margin-top: 0;
  }
  .stationIdxItem .layImg img.stNum {
    width: 30px;
    height: 30px;
  }
  .stationIdxItem .layTxt2 {
    width: auto;
    padding-right: 0;
  }
}
@media screen and (max-width:374px) {
  .stationIdxItem .layImg img.stNum {
    width: 25px;
    height: 25px;
  }
  .stationIdxItem .layLink {
    width: 52%;
  }
  .stationIdxItem .layTxt1 {
    margin-left: 5px;
    font-size: 0.9rem;
  }
  .stationIdxItem .layTxt2 {
    width: 46%;
    text-align: right;
    font-size: 0.85rem;
  }
}
/*-------------------------------*/
/*ラッピングトレイン詳細*/
.wrapEventTrainTimeTable table {
  width: 100%;
}
.wrapEventTrainTimeTable table tr {
  display: flex;
  justify-content: space-between;
}
.wrapEventTrainTimeTable table th, .wrapEventTrainTimeTable table td {
  display: flex;
  justify-content: center;
  align-items: center;
  width: 33.33333333%;
  text-align: center;
  vertical-align: middle;
}
.wrapEventTrainTimeTable table th {
  padding: 5px 10px;
  border-bottom: 20px solid #ffffff;
  font-size: 1.1rem;
  font-weight: 400;
  color: #ffffff;
}
.wrapEventTrainTimeTable table td {
  padding: 0 0 20px;
}
.wrapEventTrainTimeTable table td span {
  display: flex;
  justify-content: center;
  align-items: center;
  position: relative;
  width: 100%;
  height: 100%;
  padding: 10px;
  background: #f8f8f8;
}
.wrapEventTrainTimeTable .layColor1 {
  background: #4c7aab;
}
.wrapEventTrainTimeTable .layColor2 {
  background: #37a49b;
}
.wrapEventTrainTimeTable tbody td:nth-child(2) {
  padding-left: 5px;
  padding-right: 5px;
}
.wrapEventTrainTimeTable tbody td:nth-child(2) span:after {
  content: "";
  display: block;
  position: absolute;
  bottom: -15px;
  left: 50%;
  margin-left: -10px;
  width: 0;
  height: 0;
  border-left: 10px solid transparent;
  border-right: 10px solid transparent;
  border-top: 10px solid #aaaaaa;
}
.wrapEventTrainTimeTable tbody tr:last-child td {
  padding-bottom: 0;
}
.wrapEventTrainTimeTable tbody tr:last-child td:nth-child(2) span:after {
  display: none;
}
@media screen and (max-width:991px) {
  .wrapEventTrainTimeTable {
    width: 100%;
    overflow-x: scroll;
  }
}
/*-------------------------------*/
/*設備・機器・車両等 名鉄ライブラリ車両一覧へのリンク*/
.wrapBnrRelation {
  margin: 70px 0 0;
  padding: 80px 0;
  background: #f8f8f8;
}
.wrapBnrRelation .layWidTyp01 {
  display: flex;
  justify-content: center;
}
.bnrRelationItem {
  border-radius: 10px;
  box-shadow: 0 3px 5px 0 rgb(0 0 0 / 10%);
  transition: box-shadow 0.5s ease-out;
}
.bnrRelationItem + .bnrRelationItem {
  margin-top: 40px;
}
.bnrRelationItem:hover {
  box-shadow: 0 3px 5px 0 rgb(0 0 0 / 30%);
}
.wrapBnrRelation a.bgImg {
  display: flex;
  align-items: center;
  background: #ffffff;
  text-decoration: none;
  border-radius: 10px;
  overflow: hidden;
}
.wrapBnrRelation span.layImg {
  width: 250px;
  overflow: hidden;
}
.wrapBnrRelation span.layImg img {
  display: block;
  width: 100%;
  height: auto;
  transition: transform 0.5s ease-out, opacity 0.5s ease-out;
}
.wrapBnrRelation a:hover span.layImg img {
  transform: scale(1.05);
  -webkit-transform: scale(1.05);
  -moz-transform: scale(1.05);
  -ms-transform: scale(1.05);
  -o-transform: scale(1.05);
  filter: alpha(opacity=90);
  -moz-opacity: .9;
  opacity: .9;
}
.wrapBnrRelation .bnrRelationItemLay {
  display: flex;
  flex-direction: column;
  margin: 20px 30px;
}
.wrapBnrRelation a.bgImg .bnrRelationItemLay dt {
  font-size: 1.1rem;
  font-weight: 500;
  text-decoration: none;
}
.wrapBnrRelation a.bgImg:hover .bnrRelationItemLay dt {
  text-decoration: underline;
}
.wrapBnrRelation a.bgImg .bnrRelationItemLay dt .iconTrain05 {
  padding: 0 0 0 30px;
  min-height: 24px;
}
.wrapBnrRelation a.bgImg .bnrRelationItemLay dt .iconTrain05:after {
  margin-top: -12px;
  height: 24px;
  background-size: auto 22px;
}
.wrapBnrRelation a.bgImg .bnrRelationItemLay dd {
  margin-top: 10px;
  font-size: 0.9rem;
  color: #555555;
}
@media screen and (max-width:991px) {
  .wrapBnrRelation {
    margin: 40px 0 0;
    padding: 40px 0;
  }
  .wrapBnrRelation a.bgImg {
    display: flex;
    flex-direction: column;
  }
  .wrapBnrRelation span.layImg {
    width: 100%;
  }
  .wrapBnrRelation .bnrRelationItemLay {
    margin: 20px 25px;
  }
  .wrapBnrRelation a.bgImg .bnrRelationItemLay dt {
    font-size: 1rem;
  }
}
/*-------------------------------*/
/*特別車のご案内 ご利用のメリット*/
.wrapFirstClassCarVideo {
  margin: 0 0 60px;
}
.wrapFirstClassCarVideo video {
  max-width: 100%;
}
.fccMeritOuter {
  display: flex;
  justify-content: center;
  margin: 50px 0 60px;
  background: #0eb4a5;
}
.wrapFirstClassCarMerit {
  display: flex;
  justify-content: space-between;
  align-content: center;
  min-width: 1100px;
  max-width: 1500px;
}
.fccMeritItemLay {
  display: flex;
  flex-direction: column;
  justify-content: flex-start;
  position: relative;
  width: 33.33333333%;
  min-height: 250px;
  color: #ffffff;
  background: #14b9aa;
  overflow: hidden;
}
.fccMeritItemLay .layTxt {
  position: relative;
}
.fccMeritItemLay .layTxt1 {
  display: block;
  font-size: 1.9rem;
  font-weight: 500;
  line-height: 1.1;
}
.fccMeritItemLay .layTxt1 + .layTxt1 {
  margin-top: 5px;
}
.fccMeritItemLay .layTxt2 {
  display: block;
  font-size: 1.25rem;
  font-weight: 500;
  line-height: 1.3;
}
.fccMeritItemLay .layTxt1 + .layTxt2 {
  margin-top: 5px;
}
.fccMeritItemLay img {
  display: block;
  flex-shrink: 0;
}
.fccMeritItemLay.fccMeritItem01 {
  background: #04a395;
}
.fccMeritItemLay.fccMeritItem01 .layTxt {
  position: absolute;
  top: 9.5%;
  right: 8.5%;
  z-index: 2;
}
.fccMeritItemLay.fccMeritItem01 img {
  position: absolute;
  bottom: 0;
  left: 9.5%;
  width: 90.5%;
  height: auto;
}
.fccMeritItemLay.fccMeritItem02 {
  padding: 3.5%;
  background: #0eb4a5;
}
.fccMeritItemLay.fccMeritItem02 img {
  margin-top: 20px;
  width: 100%;
  height: auto;
  border-radius: 10px;
}
.fccMeritItemLay.fccMeritItem03 {
  display: flex;
  flex-direction: column-reverse;
  justify-content: flex-end;
  padding: 3.5%;
}
.fccMeritItemLay.fccMeritItem03 img {
  margin-bottom: 20px;
  width: 100%;
  height: auto;
  border-radius: 10px;
}
@media screen and (max-width:991px) {
  .wrapFirstClassCarVideo {
    margin: 0 -20px 30px;
  }
  .wrapFirstClassCarVideo video {
    width: 100%;
    height: auto;
  }
  .fccMeritOuter {
    margin: 20px 0 40px;
  }
  .wrapFirstClassCarMerit {
    min-width: inherit;
    max-width: inherit;
  }
  .fccMeritItemLay {
    min-height: inherit;
  }
  .fccMeritItemLay .layTxt1 {
    font-size: 2.6vw;
  }
  .fccMeritItemLay .layTxt1 + .layTxt2 {
    margin-top: 5px;
  }
  .fccMeritItemLay .layTxt2 {
    font-size: 2.3vw;
  }
  .fccMeritItemLay.fccMeritItem01 .layTxt {
    position: absolute;
    top: 15px;
    right: 15px;
  }
  .fccMeritItemLay.fccMeritItem02 {
    padding: 3%;
  }
  .fccMeritItemLay.fccMeritItem02 img {
    margin-top: 10px;
  }
  .fccMeritItemLay.fccMeritItem03 {
    padding: 3%;
  }
  .fccMeritItemLay.fccMeritItem03 img {
    margin-bottom: 10px;
  }
}
@media screen and (max-width:600px) {
  .wrapFirstClassCarMerit {
    flex-direction: column;
  }
  .fccMeritItemLay {
    width: 100%;
    padding: 0 60px;
  }
  .fccMeritItemLay .layTxt1 {
    font-size: 5.5vw;
  }
  .fccMeritItemLay .layTxt2 {
    font-size: 4vw;
  }
  .fccMeritItemLay.fccMeritItem01 .layTxt {
    top: 10%;
    right: 10%;
  }
  .fccMeritItemLay.fccMeritItem01 img {
    position: relative;
    bottom: inherit;
    left: inherit;
    width: 80%;
    margin-top: -10%;
  }
  .fccMeritItemLay.fccMeritItem02 {
    padding: 30px;
  }
  .fccMeritItemLay.fccMeritItem02 img {
    margin-top: 15px;
  }
  .fccMeritItemLay.fccMeritItem03 {
    flex-direction: column;
    padding: 30px;
  }
  .fccMeritItemLay.fccMeritItem03 img {
    margin: 15px 0 0;
  }
}
/*特別車のご案内 1乗車ご利用料金*/
.wrapFirstClassCarFare {
  margin: 60px 0;
  border: 4px solid #efefef;
  padding: 35px;
  border-radius: 6px;
}
.layWidTyp01 .wrapFirstClassCarFare:last-child {
  margin-bottom: 0;
}
/*.fccFareTitle {
  text-align: center;
  font-size: 1.7rem;
  color: #676767;
  font-weight: 500;
}
.fccFare {
  line-height: 1.1;
  text-align: center;
  font-size: 2rem;
  font-weight: 700;
  color: #00a496;
}*/
/*.fccFare .layTxt {
  font-family: 'Heebo';
  font-size: 6rem;
  font-weight: 500;
  letter-spacing: -0.1rem;
}*/
.fccnote {
  text-align: center;
}
.wrapFirstClassCarFare .linkTxtTyp01f {
  margin-top: 45px;
}
.wrapFirstClassCarFare .linkTxtTyp01f a {
  padding-left: 150px;
  padding-right: 130px;
  font-size: 1.1rem;
}
.wrapFirstClassCarFare .linkTxtTyp01f.arrow a:after {
  left: 130px;
}
.wrapFirstClassCarFare .linkTxtTyp01f.arrow a span.layTxt {
  display: inline-block;
}
@media screen and (max-width:991px) {
  .wrapFirstClassCarFare {
    margin: 40px 0;
    padding: 20px;
  }
  /*  .fccFareTitle {
    text-align: center;
    font-size: 1.4rem;
    color: #676767;
    font-weight: 500;
  }*/
  /*  .fccFare {
    font-size: 2rem;
  }*/
  /*  .fccFare .layTxt {
    font-size: 4rem;
  }*/
  .fccnote {
    text-align: left;
  }
  .wrapFirstClassCarFare .linkTxtTyp01f {
    margin-top: 20px;
  }
  .wrapFirstClassCarFare .linkTxtTyp01f a {
    padding-left: 35px;
    padding-right: 10px;
    font-size: 1rem;
    text-align: center;
  }
  .wrapFirstClassCarFare .linkTxtTyp01f.arrow a:after {
    left: 20px;
  }
  .wrapFirstClassCarFare .linkTxtTyp01f a[target="_blank"] span.linkIconTypBlankSubTyp2 {
    background-position: 100% 50%;
  }
  .wrapFirstClassCarFare .linkTxtTyp01f a span.layTxt {
    white-space: nowrap;
  }
}
/*特別車のご案内 1乗車ご利用料金*/
.fccFare {
  display: flex;
  justify-content: center;
  margin: 30px 0;
}
.wrapFirstClassCarFare .fccFare:first-child {
  margin-top: 0;
}
.fccFare .layTxt1 {
  display: flex;
  flex-direction: column;
  justify-content: center;
  align-items: center;
  min-width: 280px;
  padding: 15px 30px;
  background: #f5f4e7;
  border-radius: 6px;
  font-size: 1.7rem;
  color: #676767;
  font-weight: 700;
}
.fccFare .layTxt1.iconMuTicket03 {
  min-height: 60px;
  padding-left: 105px;
}
.fccFare .layTxt1.iconMuTicket03:after {
  left: 30px;
  margin-top: -30px;
  width: 60px;
  height: 60px;
  background-size: auto 60px;
}
.fccFare .layTxt2 {
  display: flex;
  align-items: center;
  margin: 0;
  padding: 15px;
  font-size: 3rem;
  color: #00928a;
  font-weight: 700;
}
.fccFare .layTxt3 {
  font-size: 1rem;
  line-height: 1.2;
}
@media screen and (max-width:991px) {
  .fccFare {
    margin: 20px 0;
  }
  .wrapFirstClassCarFare .fccFare:first-child {
    margin-top: 0;
  }
  .fccFare .layTxt1 {
    min-width: inherit;
    padding: 20px;
    font-size: 1.4rem;
    font-weight: 500;
  }
  .fccFare .layTxt1.iconMuTicket03 {
    min-height: 50px;
    padding-left: 80px;
  }
  .fccFare .layTxt1.iconMuTicket03:after {
    left: 20px;
    margin-top: -25px;
    width: 50px;
    height: 50px;
    background-size: auto 50px;
  }
  .fccFare .layTxt2 {
    padding: 10px;
    font-size: 2rem;
  }
  .fccFare .layTxt3 {
    font-size: 0.9rem;
    letter-spacing: -0.05rem;
  }
}
@media screen and (max-width:460px) {
  body#siteMultilang .wrapFirstClassCarFare {
    margin: 30px 0;
    padding: 20px 15px;
  }
  .fccFare .layTxt1 {
    padding: 15px;
    font-size: 4.7vw;
    flex-grow: 1;
  }
  .fccFare .layTxt1.iconMuTicket03 {
    padding-left: 60px;
  }
  .fccFare .layTxt1.iconMuTicket03:after {
    left: 15px;
    margin-top: -20px;
    width: 40px;
    height: 40px;
    background-size: auto 40px;
  }
  .fccFare .layTxt2 {
    padding: 5px;
    font-size: 1.5rem;
  }
  .fccFare .layTxt3 {
    font-size: 0.8rem;
    font-size: 3vw;
  }
}
@media screen and (max-width:374px) {
  .fccFare .layTxt1 {
    padding: 10px;
  }
  .fccFare .layTxt1.iconMuTicket03 {
    padding-left: 45px;
  }
  .fccFare .layTxt1.iconMuTicket03:after {
    left: 10px;
    margin-top: -15px;
    width: 30px;
    height: 30px;
    background-size: auto 30px;
  }
  .fccFare .layTxt2 {
    font-size: 1.2rem;
  }
  /*  .fccFare .layTxt1 {
    padding: 10px;
    font-size: 1.2rem;
  }
  .fccFare .layTxt2 {
    padding: 5px;
    font-size: 1.5rem;
  }
  .fccFare .layTxt3 {
    font-size: 0.8rem;
  }*/
}
/*-------------------------------*/
/*延着証明*/
.layDelayTyp01 {
  display: flex;
  justify-content: space-between;
  align-items: center;
}
.layDelayTyp01 .tableTyp01 {
  margin: 0;
  width: 840px;
}
.layDelayTyp01 .linkTxtTyp01 {
  margin: 0;
  width: 200px;
}
@media screen and (max-width:991px) {
  .layDelayTyp01 {
    display: block;
  }
  .layDelayTyp01 .tableTyp01 {
    width: 100%;
  }
  .layDelayTyp01 .linkTxtTyp01 {
    margin: 20px auto 0;
    width: auto;
  }
}
/*延着証明 印刷するボタン*/
.wrapBtnPrint {
  display: flex;
  justify-content: center;
  margin: 80px auto;
}
.btnPrint {
  -webkit-appearance: none;
  -moz-appearance: none;
  appearance: none;
  font: inherit;
  outline: none;
  cursor: pointer;
  display: block;
  color: #ffffff;
  background: #68c14c;
  padding: 10px 40px;
  border: none;
  border-radius: 6px;
  font-size: 1.2rem;
  font-weight: 400;
  text-align: center;
  text-decoration: none;
  transition: background 0.2s ease-out;
}
.btnPrint:hover {
  background: #004ea2;
}
@media screen and (max-width:991px) {
  .wrapBtnPrint {
    margin: 40px auto;
  }
}
/*延着証明書の遅延あり*/
.delayColorRed {
  color: #da1818;
}
/*QRコード・クレジットカード等のタッチ決済*/
.subWrapHead {
  width: 100%;
  height: 140px;
  background-size: cover;
 /* background-position: 50%; */
  position: relative;
  text-align: center;
  background-repeat: no-repeat;
  margin-bottom: 50px;
}

.subWrapHead::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.subWrapHead_top{
  background-image: url(/img/touchPayment_top.jpg);
  background-size: contain;
}

.subWrapHead_howto{
  background-image: url(/img/touchPayment_howto.jpg);
  background-size: contain;
}

.subWrapHead_qa{
  background-image: url(/img/touchPayment_qa.jpg);
  background-size: contain;
}

.subWrapHead_campaign{
  background-image: url(/img/touchPayment_campaign.jpg);
  background-size: contain;
}

.subWrapHead-topttl {
  width: 100%;
  margin: 0 auto;
  position: absolute;
  top: 20%;
  z-index: 1;
}

h1.subWrapHead-headttl {
  margin: 0 auto;
  padding: 0.2em;
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
  position: relative;
  z-index: 1;
  border-bottom: 1px solid #fff;
  text-align: center;
  display: inline-block;
}

.subWrapHead-headtxt {
  font-size: 2rem;
  z-index: 1;
  color: #fff;
  position: relative;
}

.touch_payment_anchorbtn ul{
     justify-content: center;
}

.touch_payment_anchorbtn li{
  color: #fff;
  background-color: #001547;
  display: inline-block;
  width: 35%;
  margin: 1em 1.5em;
  text-align: center;
  font-size: 1.15rem;
  padding:0 !important;
}

.touch_payment_anchorbtn li a{
  transition: all 0.3s;
  width: 100%;
  line-height: 40px;
  color: #fff;
  display: block;
  -webkit-text-decoration-line: none;
  text-decoration-line: none;
}

.touch_payment_anchorbtn li a:after{
  border-bottom:none !important;
  border-right:none !important;;
}

.touch_payment_anchorbtn li a:hover{
  background-color: #fff;
  border: solid 1px #001547;
  color: #001547;
}
@media screen and (max-width:991px) {
  .subWrapHead {
    width: 100%;
    height: 140px;
    background-size: cover;
   /* background-position: 50%; */
    position: relative;
    text-align: center;
    background-repeat: no-repeat;
    margin-bottom: 0px;
  }
  .subWrapHead::after {
  content: "";
  position: absolute;
  left: 0;
  right: 0;
  top: 0;
  bottom: 0;
}

.subWrapHead_top{
  background-image: url(/img/touchPayment_top.jpg);
  background-size: contain;
}

.subWrapHead_howto{
  background-image: url(/img/touchPayment_howto.jpg);
  background-size: contain;
}

.subWrapHead_qa{
  background-image: url(/img/touchPayment_qa.jpg);
  background-size: contain;
}

.subWrapHead_campaign{
  background-image: url(/img/touchPayment_campaign.jpg);
  background-size: contain;
}

.subWrapHead-topttl {
  width: 100%;
  margin: 0 auto;
  position: absolute;
  top: 20%;
  z-index: 1;
}

h1.subWrapHead-headttl {
  margin: 0 auto;
  padding: 0.2em;
  font-size: 2rem;
  color: #fff;
  font-weight: bold;
  position: relative;
  z-index: 1;
  border-bottom: 1px solid #fff;
  text-align: center;
  display: inline-block;
}

.subWrapHead-headtxt {
  font-size: 2rem;
  z-index: 1;
  color: #fff;
  position: relative;
}

.touch_payment_anchorbtn ul{
     justify-content: center;
}

.touch_payment_anchorbtn li{
  color: #fff;
  background-color: #001547;
  display: inline-block;
  width: 35%;
  margin: 1em 1.5em;
  text-align: center;
  font-size: 1.15rem;
  padding:0 !important;
}

.touch_payment_anchorbtn li a{
  transition: all 0.3s;
  width: 100%;
  line-height: 40px;
  color: #fff;
  display: block;
  -webkit-text-decoration-line: none;
  text-decoration-line: none;
}

.touch_payment_anchorbtn li a:after{
  border-bottom:none !important;
  border-right:none !important;;
}

.touch_payment_anchorbtn li a:hover{
  background-color: #fff;
  border: solid 1px #001547;
  color: #001547;
}
}
/*-------------------------------*/
/*end*/