@charset "utf-8";

.navList > li.access span::before,
.navList > li.access span::after { width: 50%; }

.access .pageTit {  }
.access .titBg { position: absolute; top: 0; left: 0; width: 100%; height: 100%; display: flex; align-items: stretch; z-index: -1; }
.access .titBg .bgImg { width: calc( 100% / 3 ); }
.access .titBg .bgImg img { width: 100%; height: 150px; object-fit: cover; }

.thumb { border: 1px solid #ccc; }
.thumb img { width: 100%; }

.mapArea { height: 0; overflow: hidden; padding-bottom: 450px; position: relative; }
.mapArea iframe { position: absolute; left: 0; top: 0; height: 100%; width: 100%; }

.desc { font-size: 1.8em; line-height: 1.75; padding: 0 0 20px; }
.descList { padding: 0 0 20px 20px; }
.descList li { font-size: 1.8em; line-height: 1.75; list-style-type: disc; }
.routeMap { margin: 0 auto 40px; }
.routeCont { padding: 0 0 40px; }
.routeCont:last-child { padding: 0; }
.routeCont .routeInr { float: left; width: calc( 50% - 30px ); margin-right: 60px; }
.routeCont .routeInr:nth-child(2) { margin-right: 0; }
.routeFlow { float: left; width: calc( 50% - 30px ); background: #F0F0F0; padding: 10px; margin-right: 60px; }
.routeFlow:nth-child(2) { margin-right: 0; }
.routeCont .routeInr .routeFlow { float: none; width: 100%; }
.routeFlow img { width: 100%; }
.routeFlow.borderL { border-left: 1px solid #CCC; }

.busStopMakuhari { padding: 0 0 40px; }
.busStopInr { display: flex; align-items: stretch; }
.busStopInr dl { width: calc(( 100% - 60px ) / 3 ); margin: 0 30px 0 0; border: 1px solid #026EB8; padding: 0; }
.busStopInr dl:last-child { margin: 0; }
.busStopInr dt { font-size: 2.0em; line-height: 30px; font-weight: 700; color: #fff; background: #026EB8; padding: 10px; text-align: center; }
.busStopInr dt.line01 { padding: 25px 10px; }
.busStopInr dd { padding: 10px; }
.busStopInr dd .leftCont { float: left; width: 80px; }
.busStopInr dd .leftCont span { display: block; font-size: 1.6em; line-height: 25px; padding: 5px; text-align: center; color: #026EB8; border: 1px solid #ccc; }
.busStopInr dd .rightCont { float: right; width: calc( 100% - 80px ); padding: 0 0 0 10px; }
.busStopInr dd .rightCont .station { font-size: 1.6em; line-height: 25px; font-weight: 700; padding: 5px 0 0 0; }
.busStopInr dd .rightCont p { font-size: 1.6em; line-height: 25px; }
.busStopInr dd.time { font-size: 1.6em; line-height: 30px; font-weight: 700; border-bottom: 1px solid #026EB8; height: 50px; text-align: center; }

.timeTable { padding: 0 0 40px; }
.timeTableInr { display: flex; align-items: stretch; margin-bottom: 40px; }
.timeTableInr:last-child { margin-bottom: 0; }
.timeTableInr02 { margin-bottom: 40px; }
.timeTableInr dl { background: #F0F0F0; padding: 20px; width: calc( 50% - 20px ); margin-right: 40px; }
.timeTableInr02 dl { width: 100%; background: #F0F0F0; padding: 20px; }
.timeTableInr03 { background: #F0F0F0; margin-bottom: 40px; display:flex; flex-wrap:wrap;}
.timeTableInr03 dl { padding: 20px; width: calc( 50% - 20px ); margin-right: 40px; }
.timeTableInr03 dl:nth-of-type(2n) { margin-right:0;}
.timeTableInr03 dl:nth-of-type(3+n) { margin-top:30px;}
.timeTable dl:nth-child(2) { margin-right: 0; }
.timeTable dt { font-size: 1.6em; line-height: 1.5; font-weight: 700; padding: 0 0 10px; }
.timeTable dd .btn { float: left; width: calc( 50% - 40px ); margin-right: 80px; }
.timeTable dd .btn:nth-of-type(n+3) { margin-top:30px;}
.timeTable dd .btn:nth-child(2) { margin-right: 0; }
.timeTable dd a { display: block; font-size: 1.6em; line-height: 1.4; font-weight: 700; padding:15px 10px; border-radius: 4px; background: #026EB8; color: #fff; text-align: center; }
.timeTable dd a i { color: #fff; margin: 0 0 0 5px; }

.carMap { display: flex; padding: 0 0 40px; }
.carMap .leftCont { width: 50%; padding: 0 10px 0 0; }
.carMap .rightCont { width: 50%; padding: 0 0 0 10px; }

.parkingInr { display: flex; flex-wrap: wrap; }
.parkingDetail { width: 50%; padding: 0 20px 40px 0; }
.parkingDetail:nth-child(2n) { padding: 0 0 40px 20px; }
.parkingDetail h4 { font-size: 1.8em; line-height: 40px; font-weight: 700; margin: 0 0 10px; }
.parkingDetail h4 span { display: inline-block; font-weight: 700; width: 40px; line-height: 40px; text-align: center; border-radius: 4px; background: #026EB8; color: #fff; margin: 0 10px 0 0; }

.dataTable th { width: 140px; }
.parkingInr.other .dataTable { height:130px; }
.parkingInr.other .dataTable td { vertical-align:top;}

.returnBusstop { padding: 20px 0 40px; display: flex; flex-wrap: wrap; }
.returnBusstop li { width: calc( 100% / 2 ); padding: 0 0 20px; display:flex; align-items:flex-start;}
.returnBusstop li span { display:inline-block; width: 40px; line-height: 40px; background: #e60012; color: #fff; font-size: 1.8em; font-weight: 700; text-align: center; margin: 0 10px 0 0; border-radius: 50%; }
.returnBusstop li p { width:calc( 100% - 40px - 10px); display: inline-block; line-height:1.4; font-size: 1.6em; text-align: left; padding-top:10px;}
#return .accordionInner { padding: 0; }

.common_btn { background:#026EB8; color:#fff;  font-weight:700; border-radius:4px; line-height:1; padding:10px 20px; display:inline-block; transition:0.2s;}
.common_btn:hover { opacity:0.7;}
.common_btn i { color:#fff; margin-left:5px;}


/* ───────────────────────────────────────────────────────────────────────────
 1200px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1200px){
}

/* ───────────────────────────────────────────────────────────────────────────
 1023px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:1023px){
  .mapArea { padding-bottom: 400px; }
  .desc { font-size: 1.6em; }
  .descList li { font-size: 1.6em; }
  .routeFlow { padding: 10px; }
  .busStopInr dl { width: calc(( 100% - 20px ) / 3 ); margin: 0 10px 0 0; padding: 0 0 45px; }
  .busStopInr dt { font-size: 1.6em; line-height: 20px; padding: 10px; }
  .busStopInr dt.line01 { padding: 20px 10px; }
  .busStopInr dd .leftCont { width: 60px; }
  .busStopInr dd .leftCont span { font-size: 1.5em; line-height: 25px; }
  .busStopInr dd .rightCont { width: calc( 100% - 60px ); padding: 0 0 0 5px; }
  .busStopInr dd .rightCont .station { font-size: 1.5em; line-height: 25px; padding: 5px 0 0 0; }
  .busStopInr dd .rightCont p { font-size: 1.5em; line-height: 25px; }
  .busStopInr dd.time { font-size: 1.5em; line-height: 25px; height: 45px; }
  .timeTableInr dl { padding: 20px 10px; }
  .timeTableInr02 dl { padding: 20px 10px; }
  .timeTableInr03 dl { padding: 20px 10px; width:100%; margin-right:0; }
  .timeTableInr03 dl:nth-of-type(3+n) { margin-top:0;}
  .timeTable dd a { font-size: 1.5em; }
  .timeTable dd .btn { width: calc( 50% - 30px ); margin-right: 60px; }
  .parkingDetail { padding: 0 10px 30px 0; }
  .parkingDetail:nth-child(2n) { padding: 0 0 30px 10px; }
  .returnBusstop li { width: 50%; }


}

/* ───────────────────────────────────────────────────────────────────────────
 767px以下の動作
─────────────────────────────────────────────────────────────────────────── */

@media screen and (max-width:767px){
  .mapArea { padding-bottom: 300px; }
  .desc { font-size: 1.5em; }
  .descList li { font-size: 1.5em; }
  .routeCont { padding: 0 0 60px; }
  .routeFlow { float: none; width: 100%; margin-right: 0; }
  .routeFlow:nth-child(2) { margin-top: 60px; }
  .routeCont .routeInr { float: none; width: 100%; margin-right: 0; }
  .routeCont .routeInr:nth-child(2) { margin-top: 60px; }
  .routeCont .routeInr .routeFlow:nth-child(2) { margin-top: 0; }
  .busStopInr { display: block; }
  .busStopInr dl { width: 100%; margin: 0 0 30px; padding: 0; }
  .busStopInr dt.line01 { padding: 10px; }
  .timeTableInr { display: block; margin-bottom: 40px; }
  .timeTableInr dl { width: 100%; padding: 10px; }
  .timeTableInr02 dl { width: 100%; padding: 10px; }
  .timeTable dt { font-size: 1.5em; }
  .timeTable dd .btn { float: none; width: 100%; margin-right: 0; }
  .timeTable dd .btn:nth-child(2) { margin-top: 15px; }
  .timeTable dd .btn:nth-of-type(n+3) { margin-top:15px; }
  .carMap { display: block; padding: 0 0 40px; }
  .carMap .leftCont { width: 100%; padding: 0 0 40px; }
  .carMap .rightCont { width: 100%; padding: 0; }
  .parkingDetail h4 { font-size: 1.6em; line-height: 35px; }
  .parkingDetail h4 span { width: 35px; line-height: 35px; margin: 0 5px 0 0; }
  .parkingDetail { width: 100%; padding: 0 0 30px; }
  .parkingDetail:nth-child(2n) { padding: 0 0 30px; }
  .returnBusstop { display: block; }
  .returnBusstop li { width: 100%; padding: 0 0 10px; }
  .returnBusstop li span { width: 35px; line-height: 35px; font-size: 1.5em; margin: 0 5px 0 0; }
  .returnBusstop li p { line-height: 20px; font-size: 1.4em; padding-top:7px;}
  .returnBusstop li p.line02 br { display: none; }
  .parkingInr.other .dataTable { height:auto; }
  .parkingInr.other .dataTable td { vertical-align:middle;}
  .sp_nodisp { display:none!important; }

}

