@charset "utf-8";


/* ------------------------------------------

  共通

 ------------------------------------------ */

html {
    scroll-behavior: smooth;
}

.u-pc { display: block !important; }
.u-sp { display: none !important; }

.u-img__center img{
  margin: 0 auto;
}

/* 枠 */

.l-main{
  position: relative;
}
.l-main__contents section{
    margin: 0 auto;
    max-width: 1200px;
    width: 100%;
}



/* ------------------------------------------

  ページCSS

 ------------------------------------------ */

/* MV
--------------------------------- */

#js-reserve-btn a {
    background: #fff;
    border: 2px solid #008a00;
    border-radius: 50%;
    color: #008a00;
    display: block;
    height: 120px;
    line-height: 1.3;
    padding: 20px;
    position: relative;
    text-decoration: none;
    text-align: center;
    width: 120px;
}
#js-reserve-btn a img {
    display: inline-block;
    width: 29px;
}
#js-reserve-btn p{
  margin: 0;
}

.p-mv__info {
    background: #c4d82d;
    border-top: 3px solid #000;
    font-weight: bold;
    padding: 30px 170px;
}
.p-mv__info strong{
    text-align: center;
    display: block;
    color: #000;
}
.p-mv__head {
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
    list-style: none;
    margin-bottom: 10px;
    padding: 0;
}
.p-mv__head li {
    background: #fff;
    color: #207b0b;
    padding: 5px 15px;
}
.p-mv__head li:nth-child(1) {
    width: 30%;
}
.p-mv__head li:nth-child(2) {
    width: 69%;
}
/* .p-mv__box dt {
    display:flex;
    flex-wrap: wrap;
    justify-content: space-between;
}
.p-mv__box {
    display:flex;
    flex-wrap: wrap;
}
.p-mv__box {
    color: #000200;
    margin: 0;
    padding: 5px 0;
}
.p-mv__box.u-line__pc {
    border-bottom: 2px dotted #707070;
}
.p-mv__box-day {
    margin: 0;
    padding-left: 12px;
    text-align: center;
    width: 70%;
}
.p-mv__box-time {
    margin: 0;
    width: 30%;
}
.p-mv__box dt {
    width: 30%;
}
.p-mv__box dd {
    width: 70%;
    margin: 0;
    padding-left: 23px;
} */
.p-mv__notes{
    color: #000200;
    display: block;
    list-style: none;
    margin: 15px 0 0;
    padding: 0;
    width: 100%;
}
.p-mv__notes li{
  text-indent: -13px;
  padding-left: 13px;
}
.p-mv__notes li::before{
    content: "\203B ";
    display: inline;
}

.p-route__wrap {
    background-image: url("../img/bg_route_01_pc.jpg");
    background-position: left bottom;
    background-repeat: no-repeat;
    margin: 30px auto 0 !important;
    min-height: 866px;
    width: 100%;
    position: relative;
}
.p-route__title {
    margin: 60px 0 20px;
    text-align: center;
    color: #3d9b11;
    font-size: 2.4rem;
    line-height: 0.9;
}
.p-route__title span{
    color: #e07300;
    font-size: clamp(3rem,6vw,3.8rem);
}

.p-route__map {
    align-items: flex-start;
    display:flex;
    flex-wrap: wrap;
    max-width: 655px;
    width: 100%;
}
.p-route__map dl {
    display:flex;
    flex-wrap: wrap;
    margin-top: 15px;
    width: 49%;
}
.p-route__map-nagoya {
    width: 49%;
}
.p-route__map-nagoya dl {
    width: 100%;
}
.p-route__map dl dt {
    color: #000;
    font-weight: bold;
    position: relative;
    width: 30%;
}
.p-route__map dl dt span {
    width: 100%;
    left: 50%;
    position: absolute;
    text-align: center;
    top: 50%;
    transform: translate(-50%, -50%);
}
.p-route__map dl dt span mark {
    background: none;
    color: #000;
    display: block;
}
.p-route__map-tokyo dt {
    background: #c5d82e;
}
.p-route__map-nagoya dt {
    background: #a0cccd;
}
.p-route__map-okinawa dt {
    background: #96cd65;
}
.p-route__map dl dd {
    margin: 0;
    padding: 0 0 0 20px;
    width: 70%;
}
.p-route__map dl dd ul{
    list-style-type: none;
    margin: 0;
    padding: 0;
}
.p-route__map dl dd ul li.u-long{
    align-items: center;
    display:flex;
    flex-wrap: wrap;
    line-height: 1.3;
}
.p-route__map dl dd ul li.u-long span span{
    display: block;
    text-align: center;
}
.p-route__map dl dd ul li:last-child{
    margin-bottom: 0;
}
.p-route__map dl dd ul li::before{
    background-image: url("../img/ico_route_01.png");
    background-size: contain;
    content: '';
    display: inline-block;
    height: 21px;
    margin-right: 5px;
    vertical-align: middle;
    width: 20px;
}
.p-route__map + .c-button-main{
  width: auto;
  position: absolute;
  bottom: 40px;
  left: 50%;
  transform: translateX(-50%);
}
.p-route__wrap .timetable-btn {
    margin: 270px auto 0;
    max-width: 450px;
    padding: 20px 0;
    text-align: center;
    width: 85%;
}
.p-route__wrap .timetable-btn:hover {
    opacity: 0.7;
    transition: 0.3s;
}
.p-route__notes{
    list-style: none;
    margin: 0;
    padding: 0;  
}
.p-route__notes::before{
    content: "\203B ";
    float: left;
    list-style: none;
    margin: 0;
    padding: 0;
}

.p-service__wrap{
    align-items: center;
    background: #c5d82e;
    display:flex;
    flex-wrap: wrap;
}
.p-service__image-box {
    padding-left: 95px;
    width: 60%;
}
.p-service__text-box {
    text-align: center;
    width: 40%;
}
.p-service__text-image {
    display: inline-block;
    margin: 10px 0 0;
    width: 80px;
    vertical-align: bottom;
}
.p-service__text-title {
    color: #000;
    font-weight: bold;
    line-height: 1;
    margin-bottom: 6px;
}
.p-service__text-eglish {
    color: #000;
    font-weight: bold;
}
.p-service__text-sentence {
    margin: 5px 0;
}

.p-point__wrap {
    text-align: center;
}
.p-point__list{
  padding: 0;
}
.p-point__list > li {
    margin-top: 100px;
    list-style: none;
}
.p-point__list > li:last-child{
  margin-bottom: 100px;
}
.p-point__list > li > img {
    display: inline-block;
    margin-bottom: 10px;
    width: 207px;
}
.p-point__list-subtitle{
    line-height: 1.3;
    margin: 5px 0 10px;
}
.p-point__notes{
    margin: 0 auto;
    width: 61%;
}
.p-point__list-point3 .p-point__list-subtitle{
    margin: 15px 0 10px;
}
.p-point__list-point3 p{
  margin: var(--space-2)  0 var(--space-4);
}
.p-point__list-text span{
    font-weight: bold;
}
.p-point__list-icon{
    align-items: center;
    display: flex;
    margin: 0 auto;
    max-width: 134px;
    min-height: 123px;
}
.p-point__list-subtitle b{
    color: #209300;
    display: inline-block;
    font-weight: bold;
    padding: 0 1px;
}
.p-point__list-point4 .p-route__button{
  padding: 12px 20px;
}

.p-module__txt{
    font-weight: bold;
    margin: 100px auto 30px;
    text-align: center;
}



@media only screen and (max-width: 1023px) {

  /* ボタン */

  .p-route__button{
      font-weight: bold;
      padding: 12px 5px !important;
  }

  .u-pc { display: none !important; }
  .u-sp { display: block !important; }


  .p-mv__head {
      display:none;
  }
  .p-mv__info {
      padding: 10px;
  }
  .p-mv__box {
      padding: 5px 0;
  }
  .p-mv__box.u-line__pc {
      border-bottom: 0;
  }
  .p-mv__box dt::before {
      color: #207b0b;
      content: "販売開始日時";
      display: inline-block;
      width: 30%;
  }
  .p-mv__box dt {
      background: #fff;
      padding: 4px 8px 5px;
      width: 100%;
  }
  .p-mv__box-day {
      text-align: center;
      width: 50%;
  }
  .p-mv__box-time {
      width: 20%;
  }
  .p-mv__box dt p{
      margin: 0;
  }
  .p-mv__box dd {
      display: flex;
      flex-wrap: wrap;
      margin: 5px 0 10px;
      padding: 5px;
      width: 100%;
  }
  .p-mv__box dd::before {
      color: #0f5200;
      content: "対象運賃";
      display: block;
      padding-right: 5px;
      width: 76px;
  }
  .p-mv__box dd span{
    display: block;
    flex: 1;
  }

  .p-mv__notes {
      margin-top: 10px;
  }
  .p-mv__notes li,
  .p-route__notes li{
      line-height: 1.34;
  }
  .p-route__wrap {
      background-image: url("../img/bg_route_01_sp.jpg");
      background-size: contain;
      margin: 0 auto !important;
      min-height: auto;
      padding-bottom: 120px;
  }
  .p-route__title {
      font-size: clamp(1.2rem,6vw,3.5rem);
      left: 15px;
      line-height: 1.2;
      margin: 0;
      position: absolute;
      text-align: left;
      top: 7%;
  }
  .p-route__map {
      padding: 0 15px;
  }
  .p-route__map dl,
  .p-route__map-nagoya {
      width: 100%;
  }
  .p-route__map dl dt {
      width: 40%;
  }
  .p-route__map dl dd {
      width: 60%;
  }
  .p-route__map-tokyo { order: 1; }
  .p-route__map-nagoya { order: 3; }
  .p-route__map-okinawa { order: 2; }

  .p-route__wrap .timetable-btn {
      box-shadow: 3px 2px 5px #909090;
      margin: 20px auto 0;
  }

  .p-point__wrap{
      padding: 0 15px;
  }

  .p-service__image-box {
      order: 2;
      padding-left: 0;
      width: 100%;
  }
  .p-service__text-box {
      order: 1;
      padding: 20px;
      width: 100%;
  }
  .p-service__text-box{
      line-height: 1.5;
  }

  .p-point__list > li {
      margin-top: 30px;
  }
  .p-point__notes{
      margin: 10px auto 0;
      width: 100%;
  }
  .p-point__list-text {
      align-items: center;
      display:flex;
      flex-wrap: wrap;
      justify-content: space-between;
      min-height: 152px;
  }
  .p-point__list-text .p-point__list-icon {
      width: 35%;
  }
  .p-point__list-text h3 {
      text-align: left;
      width: 65%;
  }
  .p-point__list > li:nth-child(2) .txt h3 {
      padding-left: 10px;
  }
  .p-point__list-sentence {
      line-height: 1.6;
      margin: 10px 0 0;
      text-align: left;
  }
  #js-reserve-btn a{
      height: 100px;
      padding: 13px;
      width: 100px;
  }

  .p-module__txt{
    border-bottom: none;
    font-weight: bold;
    margin: 65px auto  15px;
    text-align: center;
    width: 100%;
  }


}

@media only screen and (max-width: 768px) {

  .p-mv__box dd::before {
      width: 66px;
  }

}

@media only screen and (max-width: 600px) {

  .p-route__title {
      line-height: 0.8;
  }

}

@media only screen and (max-width: 370px) {

  .p-route__map dl dt {
      width: 30%;
  }
  .p-route__map dl dd {
      width: 60%;
  }
  .p-service__text-sentence br{
      display: none !important;
  }
}

/* 260609(26W)更新 */
/* .p-mv__head li:nth-child(1) {
  width: 69%;
}
.p-mv__head li:nth-child(2) {
  width: 30%;
}
@media only screen and (max-width: 1023px) {
  .p-mv__head {
    display: flex;
  }
}
.p-point__notes{
  width: fit-content;
} */


.c-list._style-kome li{
  text-align: left;
}


.p-mv__title img{
  width: 100%;
}

.u-pc-none{
    display: none;
}

/* 260722 追記 */

.p-mv__box{
  display: flex;
  gap: 10px;
  color: #000200;
  margin: 0;
  padding: 5px 0;
  border-bottom: 2px dotted #707070;
}

.p-mv__box dd{
  margin: 0;
  margin-left: 12px;
}

.p-mv__box-day{
  width: 30%;
}

.p-mv__head{
  background: #fff;
  color: #207b0b;
  padding: 5px 15px;
}

.p-mv__box-subject{
  width: 70%;
}

.p-route__notes{
  order: 4;
  width: 100%;
}

@media only screen and (max-width: 768px){
  .p-mv__box{
    display: flex;
    flex-direction: column;
    gap: 0;
  }
  .p-mv__box-day{
    width: 100%;
    display: flex;
    flex-direction: column;
  }
  .p-mv__box-day dd{
    display: flex;
    flex-wrap: wrap;
    flex-direction: column;
    align-items: baseline;
  }
  .p-mv__box-subject{
    width: 100%;
  }
  .p-mv__box dd{
    margin-left: 0;
  }
}