@charset "utf-8";

/*=================================================================================================================================*/
/** 個別指定 for スマートフォン
/*=================================================================================================================================*/


  .expo_ban{
@media screen and (max-width: 960px) {
    width:48%;
    padding-left:26%;
    padding-right:26%;
}
@media screen and (max-width: 767px) {
    width:80%;
    padding-left:10%;
    padding-right:10%;
}
}


#foot_box p {
@media screen and (max-width: 960px) {
  width: calc(77% - 280px);
  display: block;
  padding-top: 1%;
  font-weight: bold;
}
}


ul.sns_box {
@media screen and (max-width: 960px) {
  width: 20%;
  display: flex;
  flex-wrap: wrap;
  justify-content: flex-end;
  align-items: flex-start;
  font-size: 300%;
}
}

/*---------------------------------------------
 ** 960px
---------------------------------------------*/
@media screen and (max-width: 960px) {

  /*---------------------------------------------
	body
---------------------------------------------*/
  html {
    scroll-behavior: smooth;
  }

  body {
    font-size: 15px;
    line-height: 1.8;
    padding-bottom: 88px;
  }

  p {
    font-size: 14px;
  }

  .only_pc_none {
    display: block !important;
  }

  .only_sp_none {
    display: none !important;
  }

  .sp_only {
    display: inline;
  }

  /*画像*/
  img {
    max-width: 100%;
    height: auto;
  }

  /*---------------------------------------------
 ** スマホメニュー
---------------------------------------------*/
  #nav_pc {
    display: none;
  }

  #nav_sp_block {
    z-index: 3 !important;
    position: fixed;
    top: 20px;
    left: 10px;
  }

  #nav_sp {
    display: block !important;
  }

  .mm-page {
    display: block;
  }

  #menu {
    z-index: 10;
  }

  #mm-0 {
    margin-top: -100px;
  }

  .mm-menu_offcanvas {
    z-index: 10;
  }

  .mm-panel {
    color: #000 !important;
  }

  .mm-menu a,
  .mm-menu a:active,
  .mm-menu a:hover,
  .mm-menu a:link,
  .mm-menu a:visited {
    color: #000 !important;
  }

  .red_btn a {
    margin-bottom: 3%;
  }

  header {
    display: none;
  }

  #header_sp {
    width: 100%;
    display: block;
    height: 105px;
    position: fixed;
    top: 0;
    z-index: 3;
    background: #fff;
    border-bottom: 1px solid #ccc;
  }

  #header_sp #logo {
    width: 300px;
    position: absolute;
    top: 20px;
    left: 110px;
  }

  .mburger {
    width: 65px;
    height: 70px !important;
    background: #e60012 !important;
    color: #fff !important;
    position: fixed !important;
    top: 20px;
    left: 20px;
    padding: 5px 10px !important;
  }

  #menu_sp {
    margin-top: 30px;
    width: 95px;
    margin-left: 20px;
  }

  #menu_sp ul.sns_box {
    width: 100%;
    justify-content: space-between;
  }

  .mm-navbar,
  .mm-btn_next {
    /*    background: #ececec !important;*/
  }

  #head_btn {
    display: none;
  }

  #head_btn_sp {
    display: inline-block;
    font-size: 24px;
    position: fixed;
    top: 30px;
    right: 15px;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    padding: 5px 15px;
    border: 1px solid #e07780;
    background: #fff7fa;
    border-bottom: solid 3px #e07780;
    border-radius: 9px;
  }

  #head_btn_sp i {
    font-size: 30px;
    line-height: 1;
    color: #e60012;
    padding-top: 5px;
  }

  #head_btn_sp p {
    font-size: 24px;
    margin-bottom: 0;
    line-height: 1.5;
    margin-left: 10px;
    font-weight: bold;
    color: #e60012 !important;
    letter-spacing: -0.005em;
    white-space: nowrap;
  }

  #side_btn {
    display: none;
  }

  #content {
    margin: 208px auto 0 !important;
  }

  .mm-wrapper_background #content {
    margin: 100px auto 0 !important;
  }

  #home #content {
    margin: 100px auto 0 !important;
    padding-top: 130px;
  }

  #container {
    margin-bottom: 10%;
  }

  #top_type_l {
    width: 100%;
  }

  #top_type_r {
    width: 100%;
    margin-top: 5%;
  }

  #top_ban01 {
    padding-bottom: 0;
  }

  #top_ban01 ul {
    width: 80%;
  }

  #top_ban01 ul li {
    width: 48%;
    margin-bottom: 4%;
  }

  #top_ban02 ul {
    width: 80%;
  }

  #top_ban02 ul li {
    width: 49%;
    margin-bottom: 2%;
  }

  #top_about_l {
    width: 90%;
    margin: 0 auto 5%;
  }

  #top_about_r {
    width: 90%;
    margin: 0 auto;
  }

  #foot_link {
    font-size: 80%;
  }

  #foot_link {
    text-align: left;
    display: flex;
    justify-content: flex-start;
    flex-wrap: wrap;
    padding-left: 5px;
  }

  #foot_link a {
    padding: 5px 0px 5px 5px;
  }

  #foot_link a::after {
    padding-left: 5px;
  }

  #foot_logo {
    width: 200px;
    margin-top: 10px;
  }

  #foot_logo:after {
    font-size: 12px;
  }

  #foot_box p {
    width: calc(77% - 200px);
    margin-top: 15px;
  }

  #foot_fix_sp {
    width: 100%;
    height: 90px;
    display: block;
    position: fixed;
    background: #000c;
    padding: 3% 0;
    bottom: 0;
    box-sizing: border-box;
    z-index: 9999;
  }

  #foot_fix_sp ul {
    width: 90%;
    display: flex;
    flex-wrap: wrap;
    justify-content: space-between;
    align-items: flex-start;
    margin: 0 auto;
  }

  #foot_fix_sp ul li {
    width: 32%;
  }

  #foot_fix_sp ul li a {
    background: #e60012;
    padding: 5px;
    text-align: center;
    display: block;
    box-sizing: border-box;
    color: #fff;
    font-size: 120%;
    font-weight: bold;
  }

  #pageTop {
    bottom: 90px;
  }

  #pageTop a {
    width: 35px;
    height: 35px;
  }

  #main {
    padding: 8% 0;
  }

  #main p {
    font-size: 18px;
  }

  #read h2 {
    font-size: 160%;
  }

  .read_flex p {
    width: 100%;
    margin-bottom: 2%;
  }

  .read_flex .info-box {
    width: 100%;
    margin-bottom: 2%;
  }

  .read_flex div {
    width: 100%;
  }

  .col_2>div {
    width: 100%;
    margin-bottom: 7%;
  }

  .lower .col_2 h3 {
    margin-bottom: 3%;
  }

  .table_add>div:nth-child(1) {
    width: 100%;
    margin-bottom: 3%;
  }

  .table_add>div:nth-child(2) {
    width: 100%;
  }

  .red_square {
    font-size: 110%;
  }

  .tbl_summary {
    font-size: 110%;
  }

  table tbody tr th,
  table tbody tr td {
    padding: 2% 3%;
  }

  .table_add {
    margin-bottom: 10%;
    padding: 5% 3% !important;
  }

  .table_add p {
    font-size: 100%;
  }

  .white_btn_maru a::after {
    left: 10%;
  }

  .bg_gray {
    padding: 5%;
  }

  .transfer_ban .mark {
    font-size: 130%;
  }

  .car_list_about>img,
  .car_list_about ul {
    width: 90%;
    max-width: 400px;
    margin: 0 auto 3%;
  }

  .read_moto:before {
    transform: rotate(90deg);
    top: unset;
    bottom: -30px;
    right: 0;
    left: 0;
    margin: 0 auto;
    width: 10px;
    height: 0px;
    display: block;
  }

  .read_flex2>div:nth-child(1) {
    width: 100%;
  }

  .read_moto p:nth-child(2) span {
    font-size: 110%;
    padding: 5px;
  }

  .read_flex2>div:nth-child(2) {
    width: 100%;
  }

  .read_flex2>div:nth-child(2) img {
    width: 80%;
    margin: 0 auto 5%;
  }

  .merit_moto ol li {
    width: 100%;
  }

  .read_flex .read_ttl.long {
    display: inline;
  }

  .contact-dl dt {
    width: 100%;
    display: inline-block;
    margin-right: 0;
    margin-bottom: 5px;
    position: relative;
    font-size: 100%;
    font-weight: bold;
  }

  .contact-dl dt .must {
    position: absolute;
    top: 0;
    right: 0;
  }

  .komoku {
    width: 100%;
  }

  .contact-dl dd {
    width: 100%;
  }

  input[type='text'],
  input[type='email'],
  textarea {
    font-size: 16px;
  }

  .add_txt {
    font-size: 90%;
    display: block;
    margin-top: 5px;
  }

  .contact-dl dd span.kakunin_off {
    font-size: 90%;
  }

  @media screen and (max-width: 700px) {
    .carlist dl {
      width: 48%;
      margin: 0 4% 5% 0;
    }

    .carlist dl:nth-child(3n) {
      margin: 0 4% 5% 0;
    }

    .carlist dl:nth-child(2n) {
      margin: 0 0 3% 0;
    }
  }

  @media screen and (max-width: 480px) {
    .sp_br {
      display: inline;
    }

    body {
      font-size: 14px;
      padding-bottom: 60px;
    }

    #header_sp {
      height: 80px;
    }

    #header_sp #logo {
      width: 50%;
      max-width: 230px;
      top: 25%;
      left: 0;
      right: 0;
      margin: 0 auto;
    }

    #mm-0 {
      margin-top: -70px;
    }

    .mburger {
      width: 56px !important;
      height: 60px !important;
      background: #e60012 !important;
      color: #fff !important;
      position: fixed !important;
      top: 12px;
      left: 15px;
    }

    .mburger b {
      width: 30px !important;
    }

    #head_btn_sp {
      top: 1.5%;
      right: 2%;
      padding: 7px 15px 10px;
      transform: scale(0.8);
    }

    #head_btn_sp i {
      font-size: 30px;
    }

    #head_btn_sp p {
      display: none;
    }

    #home #content {
      margin-top: 50px !important;
      padding-top: 100px;
    }

    #content {
      margin-top: 152px !important;
    }

    .mm-wrapper_background #content {
      margin-top: 70px !important;
    }

    #top_type_l h2 {
      font-size: 120%;
    }

    #top_type_r li {
      width: 23%;
    }

    #top_type_r li p {
      font-size: 90%;
    }

    #top_ban01 ul {
      width: 90%;
    }

    #top_news>div {
      width: 100%;
      margin-bottom: 8%;
    }

    .red_btn a::after {
      right: 3%;
    }

    #top_news>div h2 {
      font-size: 120%;
    }

    #top_info {
      background: url(../img/top_info_bg.jpg) no-repeat center center;
      background-size: cover;
      padding: 4% 0;
    }

    #top_info h2 {
      font-size: 130%;
    }

    #top_info h2 span {
      display: inline-block;
      background: url(../img/icon_beginner.png) no-repeat left top 10px;
      background-size: 20px auto;
      padding: 7px 0 10px 30px;
      margin-bottom: 1%;
    }

    #top_info ul li {
      width: 90%;
      margin: 0 auto 5%;
    }

    #top_ban02 ul {
      width: 90%;
    }

    .lower #top_about {
      padding-top: 7%;
    }

    #top_about_l {
      width: 100%;
    }

    #top_about_r p {
      font-size: 110%;
    }

    #top_about_tel a {
      font-size: 3.6rem;
    }

    #top_about_entry a {
      font-size: 140%;
    }

    #top_about_entry i {
      font-size: 80%;
      top: 19%;
    }

    #foot_link {
      font-size: 70%;
      line-height: 1.4;
    }

    #foot_logo {
      width: 250px;
      margin: 30px auto 15px;
    }

    #foot_box p {
      width: 100%;
      text-align: center;
    }

    ul.sns_box {
      width: 110px !important;
      justify-content: center;
    }

    #foot_box ul.sns_box {
      width: 100% !important;
    }

    ul.sns_box li a {
      padding: 10px 0 !important;
    }

    #menu_sp ul.sns_box {
      width: 140px !important;
    }

    #copy {
      padding: 2% 0;
    }

    #foot_fix_sp ul {
      width: 95%;
    }

    #foot_fix_sp {
      height: 60px;
    }

    #foot_fix_sp ul li a {
      font-size: 90%;
    }

    #foot_fix_sp ul li:last-child a {
      background: #00bc37;
    }

    #foot_fix_sp ul li a i {
      font-size: 150%;
      vertical-align: -2px;
      margin-right: 0px;
    }

    #foot_fix_sp ul li:last-child a i {
      font-size: 200%;
      vertical-align: -2px;
      margin-right: 0px;
    }

    #pageTop {
      bottom: 60px;
    }

    #main {
      width: 100%;
      padding: 6% 0;
      color: #fff;
      font-size: 200%;
      font-weight: bold;
      text-shadow: 1px 1px 6px #9caabb;
      background-image: none;
      background: -moz-linear-gradient(65deg, #ff0033, #cc0033);
      background: -webkit-linear-gradient(65deg, #ff0033, #cc0033);
      background: linear-gradient(25deg, #ff0033, #cc0033);
      background-size: auto;
    }

    /* 
    #main {
      padding: 10% 0;
    } */

    #main p {
      font-size: 20px;
      letter-spacing: 2px;
    }

    #pan {
      margin-bottom: 10%;
    }

    #pan p {
      font-size: 80%;
    }

    #read h2 {
      font-size: 140%;
      margin-bottom: 7%;
    }

    #read h2::before {
      margin-right: 10px;
      flex-grow: 0.1;
    }

    #read h2::after {
      margin-left: 10px;
      flex-grow: 0.1;
    }

    .read_flex div {
      width: 80%;
      margin: 0 auto 5%;
    }

    .lower h3 span {
      font-size: 130%;
      line-height: 1.6;
      padding-left: 10px;
      border-left: 8px solid #ff000a;
    }

    .lower h3 span em {
      display: block;
      margin-left: 0;
    }

    .standard_tbl01 thead tr th:nth-child(1) {
      width: 22%;
    }

    .standard_tbl01 thead tr th:nth-child(2) {
      width: 28%;
    }

    .standard_tbl01 thead tr th:nth-child(3) {
      width: 50%;
    }

    .standard_tbl01.meyasu thead tr th:nth-child(1) {
      width: 30%;
    }

    .standard_tbl01.meyasu thead tr th:nth-child(2) {
      width: 35%;
    }

    .standard_tbl01.meyasu thead tr th:nth-child(3) {
      width: 35%;
    }

    .white_btn_maru a {
      width: 100%;
      margin-top: 10px;
    }

    .white_btn_maru a::after {
      width: 19px;
      height: 13px;
      border: 7px solid transparent;
      border-left: 9px solid #ff000a;
      left: 5%;
    }

    .red_btn_maru a {
      width: 100%;
      font-size: 120%;
      min-width: unset;
      box-sizing: border-box;
    }

    .date_time {
      font-size: 110%;
    }

    .car_img_flex {
      width: 100%;
      justify-content: space-between;
    }

    .car_img_flex dl {
      width: 48%;
    }

    .car_img_flex dl dd {
      font-size: 90%;
    }

    .bus_route dl {
      font-size: 100%;
      padding: 0 1% 15px;
    }

    .bus_route dl dt {
      width: 90px;
    }

    .bus_route dl dt span {
      font-size: 100%;
    }

    .bus_route dl dd {
      width: calc(100% - 105px);
    }

    .bus_route .red_btn a {
      font-size: 110%;
      padding: 4% 8% 4% 5%;
    }

    .bus_route .red_btn a::after {
      top: 33%;
      right: 2.5%;
    }

    .carlist dl a dd {
      font-size: 100%;
    }

    .carlist dl a dd span {
      min-width: 120px;
      padding: 5px 10px;
      font-size: 80%;
      margin-bottom: 5%;
    }

    .carlist_ban li {
      width: 100%;
      margin-bottom: 5%;
    }

    .corporate_anc li {
      width: 100%;
      max-width: 280px;
      margin: 0 auto;
    }

    .corporate_anc li a {
      min-height: 50px;
      padding: 3% 10% 3% 15%;
    }

    .col_corpo>div:nth-child(1),
    .col_corpo>div:nth-child(2) {
      width: 100%;
      margin-bottom: 5%;
    }

    .col_corpo>div:nth-child(2) img {
      max-width: 300px;
      margin: 0 auto 5%;
    }

    .col_corpo .h4_pink {
      font-size: 120%;
      padding: 1% 10px;
    }

    .bg_pink h4 {
      font-size: 120%;
    }

    .col_corpo .bg_pink p {
      font-size: 100%;
    }

    .col_corpo .red_btn a {
      margin-bottom: 7%;
      padding: 5% 5% 5% 12%;
    }

    .bene_box dl dt {
      font-size: 120%;
      min-width: unset;
      padding: 1% 4%;
    }

    .bene_box dl dd {
      margin-left: 0px;
      font-size: 110%;
      margin-bottom: 7%;
    }

    .lesson_ul {
      padding: 3% 5% !important;
    }

    .lesson_ul li {
      width: 50%;
      font-size: 100%;
    }

    .car_img_flex.car_length dl {
      width: 100%;
    }

    .car_img_flex.car_length dl dt {
      min-height: unset;
    }

    .gakuwari_block_list {
      margin-bottom: 30px;
    }

    .gakuwari_block h4 {
      width: 230px;
      font-size: 120%;
      margin: 20px auto 30px;
    }

    .gakuwari_block h4:before {
      left: -20px;
    }

    .gakuwari_block h4:after {
      right: -20px;
    }

    .gakuwari_block h4 span:before {
      left: 0;
    }

    .gakuwari_block h4 span:after {
      right: 0px;
    }

    .daigaku_list {
      width: 87%;
      margin: 3% auto;
      justify-content: space-between;
    }

    .daigaku_list li {
      width: 48%;
      line-height: 1.4;
    }

    .gakuwari_entry>p {
      font-size: 4vw;
    }

    .gakuwari_entry .red_btn {
      /* margin-top: 15px; */
    }

    .gakuwari_entry .red_btn a {
      width: 200px;
      padding: 3% 12% 3% 8%;
      margin: 0 auto 3%;
    }

    .app_block .red_btn a {
      width: 100%;
      max-width: 350px;
      margin: 0 auto 2%;
    }

    .app_read div:nth-of-type(1) p:first-child {
      font-size: 110%;
    }

    .app_read div:nth-of-type(1) i {
      font-size: 140%;
    }

    #contact_area h4 {
      font-size: 120%;
      margin: 3% auto 5px;
    }

    #contact_area .font-number {
      font-size: 280%;
    }

    #contact_area i {
      font-size: 90% !important;
      padding: 7px !important;
      top: 17% !important;
    }

    #contact_area .fa-question {
      padding: 7px 9px !important;
    }

    .form_info p span {
      margin-bottom: 5px;
    }

    .dd_category label {
      width: 100%;
    }

    .form_note {
      display: block;
    }
  }

  @media screen and (max-width: 380px) {
    body {
      font-size: 14px;
      line-height: 1.6;
    }

    p {
      font-size: 12px;
    }

    .mburger {
      top: 10px;
      left: 7px;
      padding: 5px 5px;
    }

    #menu_sp {
      padding: 5px 0 15px;
      margin-top: 10px;
    }

    #menu_sp ul.sns_box li a {
      padding: 0 !important;
    }

    #top_type_l h2 {
      font-size: 100%;
    }

    #top_about_tel p {
      font-size: 80%;
    }

    #foot_fix_sp ul li a i {
      display: none;
    }

    #read h2 {
      font-size: 110%;
    }

    #read h2 span {
      font-size: 1.4rem;
    }

    .lower h3 span {
      font-size: 120%;
      padding-left: 8px;
      border-left: 6px solid #ff000a;
    }

    .standard_tbl01 {
      font-size: 90%;
    }

    .white_btn_maru a {
      font-size: 100%;
      padding: 5% 5% 5% 10%;
    }

    .carlist dl a dd {
      font-size: 90%;
    }

    .carlist dl a dd span {
      font-size: 70%;
    }

    table tbody tr th,
    table tbody tr td {
      font-size: 80%;
    }

    #read .after_h2 {
      flex-wrap: wrap;
    }

    #read .after_h2 li {
      width: 100%;
      margin-bottom: 15px;
      display: inline-block;
      text-align: center;
      box-sizing: border-box;
      font-size: 110%;
    }

    .merit_moto p {
      font-size: 120%;
    }

    .merit_moto p i {
      vertical-align: -2px;
    }

    .merit_moto ol li {
      font-size: 100%;
    }

    .table_add p,
    .table_add2 p {
      font-size: 90%;
    }

    .read_flex .read_ttl.long {
      font-size: 110%;
    }

    .lesson_ul li {
      font-size: 80%;
    }
  }
}

/* スマホのときのみ電話をかける */
@media (min-width: 960px) {
  a[href*='tel:'] {
    pointer-events: none;
    cursor: default;
    text-decoration: none;
  }
}






