﻿@media screen and (max-width: 768px) {
/*fff*/
  .viewPc{
    display: none !important;
  }
  .viewSp{
    display: block;
  }

  .viewPc-inline{
    display: none !important;
  }
  .viewSp-inline{
    display: inline !important;
  }

  .f-left{
    float: left;
  }

  .f-right{
    float: right;
  }

  /* 横並びのボックス */
  .box:after{
    content: '';
    clear: both;
    display: block;
  }

  .box .box-sp-2col{
  }

  .hide {
    /* 表示の切り替えに使用する */
    display: none;
  }

  select{
    -webkit-appearance: none;
    -moz-appearance: none;
    appearance: none;

    border: 1px solid #ccc;
    border-radius: 0;
    /*background: #fff;
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-select.png);
    background-repeat: no-repeat;
    background-position: right 10px center;
    background-size: 20px, 100%;*/
  }
  .box .box-sp-2col:nth-child(2n + 1){
    clear: both;
  }

  .box img{
    width: 100%;
  }

  .item-places{
    border: 2px solid #D0DBE3;
  }

  .item-rent{
    border: 3px solid #333333;
  }

  /* header */
  .header-en{
    position: fixed;
    width: 100%;
    background-color: #FFF;
    z-index: 10000;
    top: 0;
  }

  .header-en .header-logo{
    padding: 10px 0;
    margin: 0 auto;
  }

  .header-en .header-logo img{
    max-width: 210px;
  }

  .sp_menu_button{
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/sp/icon-menu.png);
    background-size: 100%;
    background-repeat: no-repeat;
    display:inline-block;
    margin: 10px;
    width: 40px;
    height: 40px;
  }

  .header-en-menu{
    max-width: 50px;
  }

  .header-en .header-en-menu ul{
    width: 300px;
  }

  #header-en-menu-wrapper{
    display: none;
    position: absolute;
    right: 0;
    top:70px;
  }

  .sp-header-en-menu-out{
    display: none;
    position: absolute;
    width: 700px;
    height: 600px;
    top: 70px;
    right: 0;
    z-index: -1;
  }

  .sp-header-en-menu-close {
    background-color:#0071B6;
    width: 100%;
  }

  .header-en .header-en-menu li a:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/sp/icon-menu-arrow.png);
    margin-right: 1.0em;
  }

  .header-en .header-en-menu .header_en_menu_list_child {
    margin-right: 1.0em;
  }

  .header-en .header-en-menu .header_en_menu_list_child a{
    background-color: #4b4b4b;
    line-height: 1.7;
  }

  .header-en .header-en-menu .header_en_menu_list_child a:active{
    background-color: #8d8d8d;
  }

  .header-en .header-en-menu .header_en_menu_list_child a:before{
    content:'   - ';
  }

  .header-en .header-en-menu li.japaneses-lang a:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/sp/icon-menu-japan.png);
    display: inline-block;
    vertical-align: middle;
    -webkit-transform: scale(0.5);
       -moz-transform: scale(0.5);
        -ms-transform: scale(0.5);
         -o-transform: scale(0.5);
            transform: scale(0.5);
  }

  .header-en .header-en-menu li a{
    box-sizing: border-box;
    display: block;
    color: #FFF;
    font-weight: bold;
    font-size: 18px;
    text-align: left;
    background-color: #000000;
    padding: 1.0em;
  }

  .header-en .header-en-menu li.form-link a{
    background-color: #F7931E;
  }

  /* シミュレーション */
  
  .simulator_flexView {
    margin: 12px;
    width: 95%;
    /*background-color: rgba(100, 99, 99, 0.8);*/
  }
  .simulator_flexView_inner {
    text-align: left;
    display: flex;
    flex-flow: column;
    margin: 0 auto;
    width: 95%;
  }

  .simulator_flexView_inner h4, .simulater_bookingRequest_inner h4 {
    font-size: 18px;
    color: #44b0e2;
    display: inline-block;
  }

  .Btn_Simulator_flexView {
    margin: 8% 0px;
    color: white;
    background-color: #cb263d;
    border: none;
    /*height: 31px;*/
    border-radius: 5px;
  }
  .Btn_Simulator_flexView p {
    font-size: 18px !important;
    text-align: center;
  }

  .year_pulldown select {
    width: 20%;
  }

  .month_pulldown select {
    width: 15%;
  }

  .day_pulldown select {
    width: 15%;
  }

  .hour_pulldown select {
    width: 14%;
  }
  
  .minutes_pulldown select {
    width: 14%;
  }
  .simulator_flexView select {
    appearance: auto;
    -webkit-appearance: auto;
    -ms-progress-appearance: auto;
    background-image:none;
  }

  /* 背景のスライダー */
  .bg-slider{
  }

  .bg-slider .metaslider .flexslider .flex-control-nav a{
    background: none;
    background-image: url('/wp-content/themes/twentyfifteen-child/images/en/slide-nav.png');
    border-radius: 0;
    width: 45px;
    height: 7px;
  }

  .bg-slider .metaslider .flexslider .flex-control-nav a.flex-active{
    background-image: url('/wp-content/themes/twentyfifteen-child/images/en/slide-nav-active.png');
  }

  /* コンテンツ */
  #content{
    width: 100%;
    max-width: 100%;
    background-color: #FFF;
  }

  section .section-inner{
    width: 100%;
    max-width: 640px;
    margin: 0 auto;
    padding: 5px;
    box-sizing: border-box;
  }

  /* コンテンツタイトル */
  .content-title{
    font-size: 25px;
    margin-top: 15px;  
    color: #2da5e0;
    clear: both;
  }

  .page_bottom_wysiwyg p{
    line-height: 1.5;
  }

  .page_bottom_wysiwyg h2{
    line-height: 1.2;
  }

  .page_bottom_wysiwyg h3{
    font-size: 16.9px;
  }

  #reservation_input_area {
    width: 95%;
    margin: 0 auto;
  }

  /* top */
  .introduction{
    padding-top: 40px;
  }

  .introduction .text{
    box-sizing: border-box;
    padding: 1.0em;
  }

  .introduction .em{
    display: block;
    font-weight: bold;
    font-size: 18px;
    line-height: 1.2;
    text-align: center;
    margin-bottom: 25px;
  }
  .drifting h4 {
    line-height: 1.5;
  }
  .drifting p {
    font-size: 1.0em;
    line-height: 1.6;
  }

  #information_header_area {
    margin: 0 auto;
  }

  #information_header_area .information_title {
    font-size: 14px;
  }
  #information_header_area .info_date {
    width: 25%;
  }
  #information_header_area a {
    width: 70%;
  }

  /* RV rental vehicles */
  .vehicles{
    width: 1020px;
    max-width: 100%;
    padding-top: 10px;
    margin: 0 auto;
    padding:5px;
    box-sizing: border-box;
  }

  .box-vehicles{
    width: 95%;
    margin: 0 auto;
  }

  .one_vehicle {
    width: 91%;
  }

  .box-vehicles > div:nth-child(-n + 4){
    margin-bottom: 20px;
  }

  .box-vehicles .text-rent-space a{
    word-break: break-all;
  }

  .vehicles .item-vehicles{
    box-sizing: border-box;
    font-size: 13px;
    background-color: #F2F2F2;
    border: 3px solid #D0DBE3;
    margin: 0 2%;
  }

  .vehicles .area-link-box,
  .vehicles .text-rent-space {
    font-size: 14px;
  }

  .vehicles .item-vehicles .item-vehicles-title{
    font-size: 16px;
    font-weight: bold;
    padding: 10px 0 10px 5px;
  }

  .vehicles .item-vehicles p{
    padding-left: 1.0em;
  }

  #rv_under {
    margin: 0 auto;
    font-size: 16px;
    margin-bottom: .5em;
    padding-left: 1em;
    line-height: 1.5;
    width: 98%;
  }
  
  .right_02 {
    margin-top: 1em;
  }

  .option_name {
    font-size: 14.8px;
    line-height: 1.5;
  }
  .option_price {
    font-size: 15px;
    font-weight: bold;
    text-align: right;
    margin-right: .5em;
  }

  /* User guide */
  .user-guide{
    padding: 40px 0 0;
  }

  .user-guide-article{
    width: 100%;
    margin: 0 auto;
  }

  .user-guide-article section{
    background-color: #FFF;
    border-radius: 0 0 10px 10px;
  }

  .user-guide-article .step-title{
    background-color: #000;
    border-bottom: 4px solid #EB871E;
    color: #fff;
    font-size: 15px;
    font-weight: normal;
    line-height: 60px;
    text-align: left;
  }

  .user-guide-article .step-title span{
    font-size: 12px;
  }

  .user-guide-article .step-title:before{
    position: relative;
    display: inline;
    top: 10px;
    margin-right: 10px;
    margin-left: 10px;
  }

  .user-guide-article .step1 .step-title:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-step1.png);
  }
  .user-guide-article .step2 .step-title:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-step2.png);
  }
  .user-guide-article .step3 .step-title:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-step3.png);
  }
  .user-guide-article .step4 .step-title:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-step4.png);
  }
  .user-guide-article .step5 .step-title:before{
    content: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-step5.png);
  }

  .sales-office-map{
    padding: 20px;
    position: relative;
  }

  .sales-office-map .sales-office-map-area{
    position: absolute;
  }

  .sales-office-map-area.hokkaido{
    top: 70px;
    left: 186px;
  }

  .sales-office-map-area.aomori{
    top: 140px;
    left: 180px;
  }

  .sales-office-map-area.osaka{
    top: 240px;
    left: 187px;
  }

  .sales-office-map-area.okayama{
    top: 324px;
    left: 43px;
  }

  .sales-office-map-area.kanto{
    top: 260px;
    right: 100px;
    text-align: left;
  }

  .sales-office-map .sales-office-map-area a:before{
    content: '?';
    color: #000;
    display: inline;
    margin-right: 10px;
  }

  .sales-office-map .sales-office-map-area a{
    color: #FFF;
    font-size: 18px;
  }

  .sales-office-map .sales-office-map-area a:hover{
    color: #F7931E;
  }

  .sales-office-map .sales-office-map-area .prefecture{
    font-size: 14px;
  }

  .user-guide-article section{
    margin-bottom: 0;
  }

  .user-guide-article section .box{
  }

  .user-guide-article section .box .img img{
    width: 100%;
    max-width: 100%;
  }

  .user-guide-article section .box .text{
    text-align: left;
    padding: 20px 2%;
  }

  .user-guide-article .step2 .box{
    max-width: 630px;
    padding: 20px 2% 40px;
  }

  /* Places of rental */
  .places-of-rental{
    padding: 40px 0 80px;
  }

  .places-of-rental .section-inner{
    width: 90%;
    margin: 0 auto;
  }

  .tab_btn2 {
      margin: 20px 0;
      display: flex;
      flex-wrap: wrap;
      justify-content: space-between;
  }

  .tab_btn2 li {
      margin: 6px 0;
      width: 48%;
      display: inline-block;
  }

  .tab_btn2 li a {
      padding: 6px 0;
      display: block;
      border: 3px solid #333;
      font-size: 15px;
  }

  .tab_btn2 li.active a,
  .tab_btn2 li a:hover {
      color: #fff;
      background: #333;
  }

  .area-name-wrap  {
      text-align: center;
      display: block;
  }

  .area-name-wrap .area-name  {
      margin: 0 0 20px;
      display: inline-block;
      font-size: 20px;
      border-bottom: 4px solid #333;
  }

  .places-of-rental-form .places-of-rental-list{
    float: left;
    width: 100%;
    padding: 20px;
    font-size: 18px;
  }

  .places-of-rental-form{
    overflow: hidden;
    margin: 20px 0 30px;
  }

  .places-of-rental-form p{
    font-size: 14px;
    font-weight: bold;
    text-align: left;
  }

  .places-of-rental-form .places-of-rental-search{
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/sp/icon-search.png);
    width: 15%;
    height: 0;
    border: none;
    background-size: contain;
    background-repeat: no-repeat;
    padding-top: 9.8%;
  }

  .box-places-of-rental iframe{
    width: 100%;
  }

  .box-places-of-rental .item-places .area-name{
    font-size: 15px;
    background-color: #F2F2F2;
    padding: 1.0em;
  }
  .box-places-of-rental .item-places .area-name .prefecture{
    font-size: 11px;
  }

  .item-places{
    text-align: left;
    margin-bottom: 50px;
  }

  .item-places .area-name {
      text-align: center;
  }

  .item-places iframe {
      width: 100%;
      vertical-align: bottom;
  }

  .item-places .detail{
    padding: 20px 10px;
    background-color: #EFEFEF;
  }

  .item-places .detail .default{
    margin-bottom: 20px;
  }

  .item-places .detail .more{
    display: none;
  }

  .item-places .detail .accordion{
    cursor: pointer;
    display: none;
    text-align: center;
    background-repeat: no-repeat;
    color: #CBCBCB;
    font-size: 18px;
    font-weight: bold;
    padding-top: 25px;
  }

  .item-places .detail .accordion.open{
    display: block;
  }

  .item-places .detail .accordion.access{
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/arrow-open.png);
    background-position: bottom center;
    padding-bottom: 15px;
  }

  .item-places .detail .accordion.close{
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/arrow-close.png);
    background-position: center 50px;
    padding-top: 65px;
  }

  .item-places .tag{
    background-color: #808080;
    color: #fff;
    padding: 0 10px;
    margin-right: 10px;
  }

  /* To drive camper in Japan */
  .to-drive-camper{
    background-color: #F1F1F1;
    padding: 50px 0;
  }

  .to-drive-camper .section-inner{
    width: 90%;
    margin: 0 auto;
  }

  .to-drive-camper .box .img img{
    max-width: fit-content;
  }

  .to-drive-camper .box .text{
    margin-top: 25px;
  }

  /* Basic Price List */
  .price-list{
    padding: 45px 0 40px;
  }

  .price-list .price-list-inner{
    overflow: auto;
    white-space: nowrap;
  }

  .price-list .price-list-table{
    width: 100%;
    max-width: 1080px;
    margin: 0 auto;
  }

  .price-list .price-list-table td,
  .price-list .price-list-table th{
    border: 1px solid #CBCBCB;
    text-align: center;
    line-height: 50px;
  }

  .price-list .price-list-table tbody > tr.weekend{
    background-color: #FFFFED;
  }

  .price-list .price-list-table tbody > tr.holiday{
    background-color: #FFE5E2;
  }

  .price-list .price-list-table caption{
    font-size: 20px;
    font-weight: bold;
    background-color: #F1F1F1;
    background-image: url(/wp/wp-content/themes/twentyfifteen-child/images/en/icon-caption.png);
    background-repeat: no-repeat;
    background-position: left 15px center;
    text-align: left;
    line-height: 48px;
    padding-left: 40px;
    margin-bottom: 20px;
  }

  .price-list .price-list-table thead > tr >td{
    background-color: #333;
    color: #fff;
    font-size: 18px;
    text-align: center;
  }

  .price-list .price-list-table tbody > tr >th{
    background-color: #E6E9EB;
  }

  .price-list .price-list-table tbody > tr >th span{
    font-size: 12px;
    position: relative;
    top: -5px;
  }

  .price-list .price-list-table-caution,
  .price-list-exposition-area{
    width: 95%;
    max-width: 640px;
    margin: 0 auto 25px;
  }

  .price-list .price-list-h4{
    background-color: #0071B6;
    line-height: 56px;
    text-align: left;
    color: #fff;
    width: 250px;
    max-width: 100%;
    padding-left: 20px;
    margin-bottom: 20px;
  }

  .price-list5 .price-list-exposition-area{
    width: 95;
    max-width: 640px;
    margin: 0 auto 25px;
  }

  .discount-menu:after{
    content: '';
    display: block;
    clear: both;
  }

  .discount-menu dt,
  .discount-menu dd{
    float: left;
    border: 1px solid #B2B2B2;
    box-sizing: border-box;
  }

  .discount-menu dt:nth-of-type(n + 2),
  .discount-menu dd:nth-of-type(n + 2){
    border-top: none;
  }

  .discount-menu dt{
    background-color: #F1F1F1;
    clear: both;
    font-size: 11px;
    line-height: 1.2;
    text-align: center;
    width: 30%;
    height: 60px;
    border-right: none;

    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-justify-content: center;
    -moz-justify-content: center;
    -ms-justify-content: center;
    -o-justify-content: center;
    justify-content: center;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
  }

  .discount-menu .hours{
    font-size: 10px;
    line-height: 1.2;
  }

  .discount-menu dd{
    width: 70%;
    height: 60px;

    display: -webkit-flex;
    display: -moz-flex;
    display: -ms-flex;
    display: -o-flex;
    display: flex;
    -webkit-align-items: center;
    -moz-align-items: center;
    -ms-align-items: center;
    -o-align-items: center;
    align-items: center;
  }

  .discount-menu dd p{
    padding-left: 20px;
  }

  /* Equipment to rent */
  /* sim ▼　*/
  .sim-card-box {
      margin: 0 0 30px;
      padding: 20px 5%;
      background: #ddd;
      overflow: hidden;
  }

  .sim-card-box img {
      width: 100%;
  }

  .sim-card-box .option-text {
      margin: 20px 0 0;
      font-size: 22px;
      font-weight: bold;
      text-align: center;
  }

  .sim-card-box .text-description {
      line-height: 1.7;
      text-align: center;
  }
  /* sim ▲　*/

  .rent{
    background-color: #F1F1F1;
    padding: 50px 0 0;
  }

  .rent > .section-inner > p{
    width: 95%;
    max-width: 640px;
    padding: 0 0 25px;
    margin: 0 auto;
  }

  .option-list li{
    width: 100%;
  }

  .option-list .col{
    box-sizing: border-box;
    border-right: 1px solid #000;
  }

  .option-list .col .caution{
    font-size: 16px;
    color: #ED1C24;
    display: block;
  }

  .option-list .option-img{
    width: 100%;
  }

  .option-list .option-text p{
    text-align: center;
  }

  .option-list .option-text p.text-description{
    text-align: left;
  }

  .option-list .option-text{
    background-color: #FFF;
    font-size: 16px;
    width: 100%;
    padding: 1.0em;
  }

  .option-list .option-text .text-title{
    font-size: 20px;
    font-weight: bold;
  }

  .option-list .option-price{
    font-size: 11px;
    font-weight: bold;
    line-height: 40px;
    width: 100%;
  }

  .option-list .option-price p{
    text-align: center;
  }

  .option-list .option-price span{
    font-size: 20px;
  }

  /* calc */
  .cal-form-container .cal-result{
    box-sizing: border-box;
    float: none;
    width: 98%;
  }

  .cal-form-container .cal-form{
    float: none !important;
    width: 100% !important;
  }

  /* Entry Form */
  .entry-form{
    padding: 40px 0 0;
  }

  .entry-form p{
    text-align: center;
    margin-bottom: 20px;
    font-size: 4vw;
    line-height: 1.5;
  }

  .entry-form .form-list{
    width: 95%;
    margin: 0 auto 10px;
  }

  .entry-form .form-list dt{
    text-align: left;
    font-weight: bold;
    padding: 1.0em 0 0;
    font-size: 5vw;
    line-height: 1.5;
  }

  .entry-form .form-list dd{
    text-align: left;
    vertical-align: middle;
    font-size: 4.5vw;
  }

  .entry-form input
  {
    font-size: 16px;

    box-sizing: border-box;
    padding: 1.0em;
    border: 1px solid #ccc;
    width: 100%;
  }

  .entry-form input[type="date"]{
    width: 100px;
  }

  .entry-form input[type="radio"]{
    width: auto;
  }

  .entry-form select{
    font-size: 18px;
    border: 1px solid #ccc;
    width: 100%;
    padding: 0.5em;
  }

  .entry-form textarea{
    box-sizing: border-box;
    padding: 1.0em;
    width: 600px;
    max-width: 100%;
    border: 1px solid #ccc;
    width: 100%;
  }

  .entry-form .date-picker{
    width: 150px;
  }

  .ui-datepicker-trigger{
    width: 40px;
    margin: 0 10px;
  }

  .entry-form .time-field{
    width: 5.0em;
  }

  .entry-form .payment p{
    margin-bottom: 1.0em;
  }

  .entry-form .payment-type-button{
    margin-top: 10px;
  }

  .entry-form .payment-type-button:after{
    content: '';
    display: block;
    clear: both;
  }

  .entry-form .payment-type-button li{
    cursor: pointer;
    float: left;
    border: 2px solid #ccc;
    border-radius: 5px;
    box-sizing: border-box;
    width: 30%;
    margin-right: 10px;
  }

  .entry-form .payment-type-button li:nth-child(-n + 3){
    margin-bottom: 10px;
  }

  .entry-form .payment-type-button li.select{
    border: 2px solid #57D4FF;
    box-shadow: 0px 0px 15px #57D4FF;
  }

  .entry-form .payment-type-button li:last-child{
    margin-right: 0;
  }

  .entry-form .send-button{
    position: relative;
  }

  .entry-form .send-button input[type="submit"]{
    cursor: pointer;
    border: 0px;
    width:100%;
    max-width: 300px;
    color: #fff;
    font-size: 20px;
    background: url(/wp/wp-content/themes/twentyfifteen-child/images/en/button-back.png);
    background-repeat: no-repeat;
    background-position: left top;
  }

  .entry-form .send-button span{
    position: absolute;
    content: 'send';
    top: 50%;
    left: 50%;
  }

  /* トップページに戻る */
  #page-top{
    width: 60px;
  }

  #page-top p{
    float: left;
  }

  /* footer */
  #social_area {
    width: 100%;
    position: relative;
    margin: 1em;
  }
  #social_area li {
    float: right;
    padding-right: 0.5em;
    width: 55px;
  }

  .clear:after{
	display: none;
	margin-bottom: -25px;
  }

  #footer_detail{
    padding: 0;
  }

  footer .site-info{
    max-width: 100%;
  }

  #footer_navi_area  {
    margin-top: 15px;
  }
  #footer_navi_area ul {
    margin: auto;
    text-align: left;
    width: 100%;
  }
  #footer_navi_area .footer_navi_list_childs {
    margin-left: 10px;
  }
  #footer_navi_area li {
    /*display: inline-block;*/
    margin-left: .3em;
  }

  /* faqページ */
  .faq-container {
      padding-top: 100px;
  }

  .page-template-en-faq .bg-slider {
      display: none !important;
  }

  .faq-list {
      margin: 10px 4% 30px;
      padding: 10px 5%;
      text-align: left;
      border: 1px solid #666;
  }

  .faq-list li {
      margin: 5px 20px 5px 0;
      display: inline-block;
  }

  .faq-list li::before {
      content: '◆';
  }

  .faq-list li a {
      font-size: 4vw;
  }

  .faq-box {
      margin: 0 4%;
  }

  .faq-item {
      text-align: left;
      font-size: 14px;
      margin: 20px 0;
      padding: 20px;
      text-align: left;
      border: 1px solid #ddd;
      -webkit-border-radius: 5px;
      -moz-border-radius: 5px;
      border-radius: 5px;
      background: #fbfbfb;
  }

  .faq-item h3 {
      font-size: 16px;
      margin: 0 0 6px;
  }

  .faq-item a {
      color: #0C509F;
      text-decoration: underline;
  }

  .page-template-en-faq .header-en .header-logo img {
      max-width: 180px;
      vertical-align: middle;
  }

  .page-template-en-faq .header-en .header-logo {
      padding: 0;
  }

/* -----  equipment ---------------- */
.equipment_area {
  width: 100%;
  margin: auto;
  overflow: auto;
}
.equipment_list {
  height: 40px;
  line-height: 1.3;
}
.one_line {
  padding-top: 10px;
  height: 30px;
}

/* -----  map ---------------- */

  #map_area {
    margin: 0 auto ;
    width: 90%;
    border: 1px #303030 solid;
    position: relative;
  }

  #whole_map {
    width: 100%  ;
    height: 50vh;
    float: left;
    margin: 2px;
  }

  #shop_list_select {
    width: 80%;
    margin: 1%;
    padding: 1%;
    font-size: 16px;
  }

  #station_list_select {
    width: 80%;
    margin: 1%;
    padding: 1%;
    display: block;
    font-size: 16px;
  }

#select_map_area {
  position: fixed;
  top: 0;
  left: 0;
  right: 0;
  bottom: 0;
  overflow-y: scroll;
  display: none;
  left: 5%;
  top: 10vw;
  margin: 0 auto;
  width: 80%;
  height: 90%;
  border: 1px #303030 solid;
  z-index: 20000;
  background-color: #ffffff;
}

  #select_block_area {
    background: #000000;
    border-radius: 5px 5px 5px 5px / 5px 5px 5px 5px;
    width: 95%;
    margin: 0 auto;
    color: #f0f0f0;
  }
  #select_block_area .select_block {
    width: 90%;
    margin: 0.5% auto 1%;
    padding: 0.5%;
  }
  #select_block_area #map_view img {
    width: 70%;
    height: auto;
    cursor: pointer;
  }
  #select_block_area #vehicle img {
    width: 85%;
    height: auto;
    cursor: pointer;
  }

  #select_block_area .head {
    font-size: 2em;
    padding-bottom: 1em;
  }

  #vehicle_select .vehicle_box{
    width: 45%;
  }

  .ui-datepicker {
    width: 100%;
    margin: auto;
  }
  .ui-datepicker .ui-datepicker-calendar {
  }

  #option_area #option_list .option_line {
    display: block;
    width: 45%;
    height: 180px;
    padding: 1%;
    margin: 1%;
    float: left;
    border: 1px #c0c0c0 solid;
    border-radius: 2px;
  }

/* ------ reservation ----- */
  .reservation_step {
      width: 95%;
      margin: 0 auto;
      text-align: left;
  }

  .step-title {
      background-color: #000000;
      color: #ffffff;
      font-size: 22px;
      text-align:left;
      padding: 5px .5em;
      line-height: 1.6em;
  }

  #confirm_area {
      margin: 6em auto;
      border: 1px solid #808080;
      padding: 6vw;
      border-radius: 10px;
      font-size: 4.5vw;
      line-height: 1.5;
  }

  #confirm_area #confirm_list {
      text-align: left;
      line-height: 1.8;
  }
  #confirm_area #confirm_list li {
      text-align: left;
      display: block;
      font-size: 4vw;
  }
  #confirm_area #confirm_list .confirm_title {
      display: inline-block;
      width: 30%;
  }

  #confirm_area #confirm_list .confirm_value {
      display: inline-block;
  }

  #back_to_reservation {
      display: inline-block;
      width: 25%;
      padding: 5px;
      font-size: 4vw;
  }

  #confirm_reservation {
      display: inline-block;
      width: 25%;
      padding: 5px;
      font-size: 4vw;
  }

  #thanks_area {
      margin: 6em auto;
      padding: 6vw;
      border-radius: 10px;
  }
  #thanks_area #thanks_text p {
    font-size: 4.5vw;
    line-height: 1.5;
  }

  #vehicle_view_body{
      width: 90%;
  }

  #select_map_area {
      position: fixed;
      display: none ;
      left: 5%;
      top: 10vh;
      margin: 0 auto ;
      width: 90vw;
      height: 80vh;
      border: 1px #303030 solid;
      z-index: 20000 ;
          background-color:white;
  }

  #select_map_area #whole_map {
      height: 60%;
  }

  #select_station {
      display: block;
      border: 2px solid #ff8080;
      background: #ff8676;
      margin: 1em auto 0;
      color: #ffffff;
      width: 80%;
      border-radius: 5px 5px 5px 5px / 5px 5px 5px 5px ;
      cursor: pointer;
  }

  #select_station:hover {
      background: #ff5443;
  }

  .img_area {
      margin:.5em auto;
  }

/***** Special offers *****/
  .special_benefit_banner {
      width: 100%;
      margin: auto;
  /*    height: 50vw;*/
  }
  .special_benefit_banner img {
      width: 90%;
      margin: auto;
  /*    padding-left: 5vw;
      padding-bottom: 1em;*/
  }
  .special_offers-top_en {
     height: 93.3vw;
     background-size: contain;
     background-position: 50% 50%;
     background-image: url('../images/lp/top_invSP-EN.jpg');
     background-repeat: no-repeat;
  }
  .special_offers-top_ch {
     height: 93.3vw;
     background-size: contain;
     background-position: 50% 50%;
     background-image: url('../images/lp/top_invSP-CH.jpg');
     background-repeat: no-repeat;
  }
  .special_offers h1 {
      font-family: 'Butler';
      margin-top: 8px;
      font-size: 30px;
      line-height: 24px;
  }

  .special_offers h2 {
      font-family: 'Butler';
      font-size: 21px;
      line-height: 24px;
      width: 99%;
  }

  .img_no {
      width: 40px;
  }

  .mess_red {
      font-size: 17px;
      line-height: 20px;
  }

  .p_class {
      font-size: 20px;
  }

  .p_cash {
      font-size: 22px;
  }

  .p_cash span {
      font-size: 14px;
  }

  .img_sp {
      width: 98%;
  }

  .img_min {
      min-height: 40%;
      width: 44%;
      margin-top: 4px;
      border: 1.5px #a2a2a2 solid;
      border-radius: 10px;
      object-fit: cover;
  }

  .btn_more {
    font-size: 18px;
  }
 
  .callout01 {
      float: left;
  }

  .ul_item li {
      width: 20%;
  }
  .ul_item img {
      height: 105px;
      width: 105px;
      background: #fff;
      border-radius: 100px;
      border: 1px #4b4b4b dashed;
      margin: 5px;
      object-fit: cover;
  }

  .mess_map {
      position: absolute;
      font-size: 4vw;
      margin: 1em 0.5em;
      left: 0;
  }

  .mess_map_ch {
      font-size: 4.5vw;
      margin: 0.8em 1em;
  }

  .div_reserv {
      width: 98%;
  }
  
  .div_reserv h2{
    font-size: 20px;
  }

  .div_reserv img {
      margin: 8px 8px 0 -33px;
  }
  .div_reserv span {
      font-size: 15px;
  }
  .div_reserv_ch span {
      font-size: 19px;
  }
  .span_02 {
      margin-top: -13px;
  }

  .div_check .p_check {
      font-size: 20px;
  }
  .div_check .p_check_ch {
      font-size: 23px;
  }

  .youtube {
    height: 220px;
  }

  /** Tour guide **/
  .plan_top_img {
      height: 200px;
  }
  .route_list {
      margin-left: .1em;
      width: 99%;
  }
  .route_box {
      border: 2px solid #2ca9e1;
      margin-bottom: 30px;
      position: relative;
      display: block;
      min-height: 100px;
  }
  .route_box a {
      min-height: 100px;
  }
  .route_box img {
      height: 100px;
      margin-left: .03em;
      width: 40%;
  }
  .tour_guide .text_area{
      margin-top: .2em;
      width: 59%;
  }
  .route_box p {
      font-size: 18px;
  }
  .tour_guide .more {
      width: 100%;
      display: table;
      margin-top: 1em;
      margin-bottom: 2em;
  }
  .tour_guide .btn_more {
      padding: 5px 20px;
  }
  /** /Tour guide **/	

  /** Tour guide plan **/
  .plan_top_img {
      height: 200px;
      width: 100%;
      object-fit: cover;
  }
  .plan-div {
      width: 100%;
      margin: auto;
  }
  .plan_x-day {
      width: 98%;
      padding-top: 100px;
      margin-top: -100px;
  }
  .plan_x-day h3 {
      font-size: 30px;
      margin-bottom: -0.7em;
  }
  .fa-hand-point-down {
      font-size: 55px;
      color:#f08080;
  }
  .plan_box {
      margin: auto;
      display: block;
  }
  .plan_box span:after {
      content: '';
      background-image : url('../images/lp/car_00_gray.png');
      display: block;
      width: 3.5em;
      height: 2.5em;
      margin-left: 31.3vw;
      margin-top: -2em;
      background-size: contain;
  }
  .fa-long-arrow-alt-right {
      font-size: 5em;
      color: #2e53ff;
      transform: rotate(90deg);
  }
  .plan_box-child {
      display: block;
      width: 99%;
      margin-top: 1em;
      margin-bottom: 1em;
  }
  .plan_box span {
      padding-left: 3.5em;
  }
  .plan_box img {
      width: 100%;
      height: 200px;
      object-fit: cover;
  }
  .plan-div .text_area {
      margin-left: 1.5em;
  }
  .tour_guide_plan iframe {
      width: 98%;
      height: 350px;
  }
  .prev-btn {
      margin-bottom: 2em;
  }
  /** /Tour guide plan **/

  .car_type_frame h2 {
    font-size: 26px;
    line-height: 1.2;
    margin-top: 1em;
    position: relative;
    display: inline-block;
  }
  .car_type_frame p {
    line-height: 1.3;
    margin-bottom: 0.8em;
  }
  
  /** Tour guide（TOPページ） **/
  .route_box-top {
    width: 100%;
    margin-bottom: 1em;
  }
  .tour_video-top .route_list-top .route_box-top {
      border: 1px solid #707070;
      margin-bottom: 15px;
      position: relative;
      display: block;
      min-height: 100px;
      width:100%;
      padding: 5px;
      box-sizing: border-box;
  }
  .route_box-top a {
      min-height: 100px;
  }
  .route_box-top img {
      height: 100px;
      margin-left: .03em;
      width: 40%;
      float:left;
  }
  .tour_guide-top .text_area{
      margin-top: .2em;
      width: 59%;
      float: left;
  }
  .route_box-top p {
      font-size: 18px;
  }
  /** /Tour guide（TOPページ） **/

 /** /Tour Video(TOPページ) **/
 .tour_video-top {
  padding: 5px;
  box-sizing: border-box;
}
  .tour_video-top .route_list-top{
      display:block;
  }
 /** /Tour Video(TOPページ) **/
}
