@charset "utf-8";

@media screen and (max-width : 768px) {
    
    /* ------------------------------------------------------------
    *
        #top_mov
    *
    ------------------------------------------------------------ */
    
    #top_mov {
        margin-bottom: 30px;
        width: 100%;
        border-top: 1px solid #ccc;
    }
    
    .htc-embed-movie {
        position: relative;
        width: 100%;
        padding-top: 56.25%;
    }

    .htc-embed-movie iframe, .htc-embed-movie .video-js {
        position: absolute;
        top: 0;
        right: 0;
        bottom: 0;
        left: 0;
        width: 100% !important;
        height: 100% !important;
        margin: auto;
    }
    
    /* ------------------------------------------------------------
    *
        #main_visual
    *
    ------------------------------------------------------------ */

    #main_visual {
        margin-bottom: 30px;
    }

    #main_visual .pic_visual img {
        width: 100%;
    }
    
    /* ------------------------------------------------------------
    *
        .section
    *
    ------------------------------------------------------------ */
    .bold {
        font-family: var(--font-bold) !important;
    }

    .section .detail {
        padding-top: 15px;
    }

    .section .detail a {
        font-size: 14px;
    }

    .section .detail a::before {
        width: 16px;
        height: 16px;
        background-size: 16px auto;
    }

    .line {
        font-family: var(--font-bold);
        border-bottom: 2px solid #8DC21F;
    }


    /* ------------------------------------------------------------
    *
        #about_top
    *
    ------------------------------------------------------------ */
    #about_top {
        margin-bottom: 55px;
    }

    .sec_about {
        margin-bottom: 0;
    }

    #about_top h2 {
        margin-bottom: 20px;
        text-align: left;
        color: #666;
        font-size: 21px;
        font-family: var(--font-light);
        font-weight: normal;
        line-height: 1.391em;
    }

    .sec_about h2:after{
        display: none;
    }

    .sec_about .desc {
        font-size: 12px;
        line-height: 1.6em;
    }

    .sec_about .abt_list {
        margin: 30px 0 0;
    }

    .sec_about .abt_list h3 {
        margin-bottom: 0;
        padding: 0 10px 15px;
        font-size: 13px;
    }

    .sec_about .abt_list h3:before {
        display: inline-block;
        position: relative;
        top: 1px;
        margin-right: 5px;
        content: "■";
        color: #8DC21F;
        font-size: 16px;
    }

    .sec_about .caption {
        padding: 0 10px;
        font-size: 10px;
    }

    #about_top .detail {
        padding-top: 0;
    }

    #about_top .detail a:after {
        display: none;
    }

    /* ------------------------------------------------------------
    *
        #repair
    *
    ------------------------------------------------------------ */
    .section h2 {
        font-size: 18px;
    }

    .section h2::after {
        width: 50px;
    }

    #repair {
        margin-bottom: 40px;
    }

    #repair h3 {
        margin-bottom: 20px;
    }

    .repair_list {
        padding: 0 30px;
    }

    .repair_list .caption{
        font-size: 10px;
        font-family: var(--font-light);
    }

    .repair_list .caption {
        margin-top: 18px;
        text-align: center;
    }

    /* ------------------------------------------------------------
    *
        #choice
    *
    ------------------------------------------------------------ */

    .choice_inner {
        padding: 0 15px;
    }

    .choice_inner .tab_nav {
        border-bottom: 3px solid #8dc21f;
    }

    .choice_inner .tab_nav.nav-tabs-top {
        margin: 0 0 45px;
    }
	
	.choice_inner .tab_nav.nav-tabs-bottom {
		margin-top: 50px;
	}

    .choice_inner .tab_nav ul {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        justify-content: space-between;
        padding: 0 15px;
    }

    .choice_inner .tab_nav ul li {
        position: relative;
        top: 3px;
        padding: 9px 0;
        width: 50%;
        height: 50px;
        min-height: 50px;
        color: #fff;
		font-size: 14px;
        font-weight: 500;
        text-align: center;
        box-sizing: border-box;
        border: 3px solid #8dc21f;
        border-bottom: none;
        background-color: #8dc21f;
    }

    .choice_inner .tab_nav ul li:first-child {
        margin-right: 10px;
    }

    .choice_inner .tab_nav li.current {
        color: #8dc21f;
        background-color: #fff;
    }
	
	.choice_inner .tab_nav li:before {
		content: "";
		position: relative;
		top: 6px;
		display: inline-block;
		width: 34px;
		height: 20px;
		background-size: 16px auto;
	}
	
	.choice_inner .tab_nav li.tab_passenger:before {
		background: url(../../image/icon_passenger_off.png) no-repeat;
		background-size: 26px;
	}
	
	.choice_inner .tab_nav li.tab_passenger.current:before {
		background: url(../../image/icon_passenger_on.png) no-repeat;
		background-size: 26px;
		
	}
	
	.choice_inner .tab_nav li.tab_trucks:before {
		background: url(../../image/icon_trucks_off.png) no-repeat;
		background-size: 26px;
		
	}
	
	.choice_inner .tab_nav li.tab_trucks.current:before {
		background: url(../../image/icon_trucks_on.png) no-repeat;
		background-size: 26px;
		
	}
	
	.choice_inner .tab_nav.nav-tabs-bottom {
		border-top: 3px solid #8dc21f;
		border-bottom: none;
	}
	
	.choice_inner .tab_nav.nav-tabs-bottom:before {
		content: "";
		display: block;
		clear: both;
	}
	
	.choice_inner .tab_nav.nav-tabs-bottom:after {
		display: none;
	}
	
	.choice_inner .tab_nav.nav-tabs-bottom li {
		top: -3px;
		border-top: none !important;
        border: 3px solid #8dc21f;
	}

    .tab_content {
        display: none;
        -webkit-transition: all .4s ease;
        transition: all .4s ease;
    }

    .tab_content.current {
        display: block;
    }

    .tab_inner {
        margin: 50px 0 0;
    }


    .tab_inner .section_column {
        padding: 0 15px;
    }

    .tab_inner .tit {
        margin: 50px 0 20px;
        padding: 5px 0 5px 10px;
        color: #22ac38;
        font-size: 18px;
        line-height: 1.4em;
        border-left: 4px solid #8dc21f;
    }

    .dg_green {
        color: #179142 !important;
    }

    .tab_inner h2 {
        margin-bottom: 20px;
    }

    .tab_inner h3 {
        margin-bottom: 20px;
        padding: 0 15px;
        text-align: center;
        font-size: 16px;
        font-weight: normal;
        line-height: 1.5em;
    }

    .tab_inner h3 span {
        font-family: var(--font-bold);
    }

    .osusume_block {
        margin: 0 auto 21px;
        padding: 0 15px;  
        max-width: 500px;
    }

    .tab_inner .course_tit {
        margin-top: 30px;
        padding: 0;
        text-align: left;
        font-size: 22px;
        font-family: var(--font-bold);
        line-height: 1.2;
    }

    .tab_inner .course_tit span {
        padding-left: 15px;
        font-size: 12px;
        font-family: var(--font-light);
        font-weight: normal;
        line-height: 1.4;
    }

    .osusume_img {
        margin-top: 14px;
        text-align: center;
    }

    .osusume_block .desc {
        margin-top: 17px;
        display: flex;
        font-size: 12px;
        justify-content: center;
        line-height: 1.75em;
    }

    .point_box {
        position: relative;
        margin: 0 5px 20px;
        padding: 14px 0 20px;
        background-color: #F5F6F6;
        text-align: center;
    }

    .point_box:before {
        display: block;
        content: "";
        position: absolute;
        top: 20px;
        left: -8px;
        width: 75px;
        height: 26px;
        background-size: 75px auto;
        background-repeat: no-repeat;
    }

    .point_box.point_01:before {
        background-image: url(../../image/ico_point_01.png);
    }

    .point_box .point_tit {
        margin-bottom: 5px;
        margin-left: 80px;
        padding: 0;
        text-align: left;
        font-size: 10px;
        line-height: 1.65em;
    }

    .point_box .point_tit span {
        font-size: 12px;
    }

    .point_box .point_img {
        padding: 0 1px 0 15px;
    }

    .pdf_box.switch_sp {
        margin: 20px 15px 0;
        background-color: #9fa0a0;
    }

    .pdf_box a {
        display: flex;
        padding: 13px 0;
        width: 100%;
        justify-content: center;
        align-items: center;
    }

    .pdf_box .name {
        padding: 0 0 0 10px;
        text-align: left;
        color: #fff;
        font-size: 14px;
        line-height: 1.4em;
    }

    .point_01 .pdf_box .name {
        padding-top: 8px;
    }

    .pdf_box a::before {
        position: relative;
        top: 2px;
        display: flex;
        content: "";
        vertical-align: middle;
        width: 40px;
        height: 44px;
        background: url(../../image/ico_pdf.png) no-repeat;
        background-size: 40px auto;
    }

    .pdf_box .name .size {
        font-size: 10px;
    }

    .point_box.point_02 {
        padding-bottom: 15px;
    }

    .point_box.point_02:before {
        background-image: url(../../image/ico_point_02.png);
    }

    .point_box.point_02 .point_tit {
        margin: 8px 0 0 75px;
    }

    .point_box.point_02 .point_tit span {
        font-size: 14px;
    }

    .point_box .desc {
        margin-top: 15px;
        text-align: center;
        font-size: 10px;
        line-height: 1.6em;
    }

    .point_box .desc .bold {
        font-size: 12px;
        font-family: var(--font-bold);
    }

    .point_box .desc .sup {
        top: 3px
    }

    .point_box .caption {
        margin-top: 10px;
        font-size: 7px;
        font-family: var(--font-light);
        line-height: 1.5em;
    }

    .point_box.point_02 .point_img {
        margin-top: 30px;
        padding-right: 15px;
    }

    .tab_inner .section_column h4 {
        font-size: 20px;
    }

    .tab_inner .tab_tit {
        margin: 30px 0;
        text-align: center;
        color: #8ebd20;
        font-size: 16px;
    }

    .tab_inner .tab_tit.blue {
        color: #2ca6e0;
    }

    .tab_inner .tit_c {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin: 0 0 22px !important;
        color: #727171;
        font-size: 15px;
        line-height: 1.7em;
        align-items: center;
    }

    .tab_inner .tit_c .name {
        display: inline-block;
        padding: 0 0 8px;
        margin: 0 20px 0 0;
        color: #8dc21f;
        font-size: 17px;
        font-family: var(--font-bold);
        line-height: 100%;
        vertical-align: middle;
        border-bottom: 3px solid #8dc21f;
    }

    .tab_inner .tit_c.dg_green .name {
        color: #179342;
        border-color: #179342;
    }

    .tab_inner .tit_c.blue .name {
        color: #1695D4;
        border-color: #1695D4;
    }

    .tab_inner .tit_c.pink .name {
        padding-top: 5px;
        color: #d95096;
        border-color: #d95096;
        align-self: start;
    }

    .tab_inner .tit_c .name_desc {
        display: inline-block;
        width: 62%;
        color: #8ebd20;
        font-weight: normal;
        vertical-align: middle;
    }

    .tab_inner .tit_c.dg_green .name_desc {
        color: #179342;
    }

    .tab_inner .tit_c.blue .name_desc {
        color: #1695D4;
        font-size: 14px;
    }

    .tab_inner .tit_c.pink .name_desc {
        color: #727171;
    }

    .tab_inner .section_column.btmbd {
        padding-bottom: 55px;
        background: url(../../common/image_common/line.png) no-repeat bottom center;
        background-size: 100%;
    }

    .tab_inner .section_column.column_01 {
        margin: 45px 0 60px;
    }

    .tab_inner .section_column.column_02 {
        margin: 45px 0 40px;
    }

    .tab_inner .pic_new img,  .tab_inner .pic_shaken img{
        width: 90%;
    }

    .tab_inner .section_column.column_03 .copy {
        margin: 5px 0 25px;
        text-align: center;
        color: #d95096;
        font-size: 20px;
        line-height: 1.5em;
    }
 

    /* ------------------------------------------------------------
    *
        #faq
    *
    ------------------------------------------------------------ */

    .faq_wrap {
        padding: 0 30px;
        color: #4d4d4d;
        font-size: 13px;
        line-height: 1.8;
    }

    .faq_wrap .qa {
        margin-bottom: 15px;
        background: url(../../common/image_common/line.png) no-repeat bottom center;
        background-size: 100%;
    }

    .faq_wrap .qa.btm {
        margin: 0;
        background: none;
    }

    .faq_wrap .qa .ques {
        display: inline-flex;
        width: 100%;
        align-items: center;
    }

    .faq_wrap .qa .ico_q {
        margin-right: 18px;
    }

    .faq_wrap .qa .ico_q img {
        width: 40px;
        vertical-align: middle;
    }

    .faq_wrap .qa .txt p {
        padding: 14px 0;
    }

    .faq_wrap .qa .ans {
        display: -webkit-box;
        display: -webkit-flex;
        display: -ms-flexbox;
        display: flex;
        margin-left: 68px;
        padding: 0 0 10px;
        border-top: 1px solid #969696;
    }

    .faq_wrap .qa .ico_a {
        padding: 15px 0;
    }

    .faq_wrap .qa .ico_a img {
        position: relative;
        left: -15px;
        width: 33px;
    }
    
}

@media screen and (max-width : 320px) {

    .tab_inner .section_column h4 {
        font-size: 17px;
    }

    .tab_inner .tit_c .name_desc {
        width: 57%;
    }
}
