@charset "utf-8";

@media screen and (max-width : 768px) {
    #contents_area {
        color: #666;
    }

    img {
        width: 100%;
        height: auto;
    }

    /* ------------------------------------------------------------
    *
        #lnav_wrap
    *
    ------------------------------------------------------------ */
    #lnav_wrap {
        position: relative;
        margin-top: 56px;
        padding: 20px 0;
        width: 100%;
        height: 60px;
        box-sizing: border-box;
        background-color: #F7F8F8;
        z-index: 3;
    }

    #lnav_wrap.open {
        background-color: #ebebeb;
        z-index: 9991;
    }

    #lnav_wrap.fixed {
        position: fixed;
        top: -1px;
    }

    #lnav_wrap .logo {
        text-align: center;
    }

    #lnav_wrap .logo img {
        width: 153px;
    }

    #lnav_wrap .lnav_ico {
        display: block;
        position: absolute;
        top: 9px;
        left: 0;
        width: 55px;
        height: 55px;
        cursor: pointer;
    }

    #lnav_wrap .lnav_ico.on {
        z-index: 10000;
    }

    #lnav_wrap .lnav_ico span {
        transition: all .4s ease;
    }


    #lnav_wrap .lnav_ico span.top {
        position: absolute;
        top: 22px;
        left: 13px;
        width: 20px;
        transform: rotate(45deg);
        -webkit-transform: rotate(45deg);
        border-top: 2px solid #444;
    }


    #lnav_wrap .lnav_ico span.btm {
        content: '';
        display: block;
        position: absolute;
        top: 22px;
        left: 26px;
        width: 20px;
        transform: rotate(-45deg);
        -webkit-transform: rotate(-45deg);
        border-top: 2px solid #444;

    }

    #lnav_wrap .lnav_ico.on span.top {
        transform: rotate(135deg);
        -webkit-transform: rotate(135deg);
        left: 15px;
    }

    #lnav_wrap .lnav_ico.on span.btm {
        transform: rotate(-135deg);
        -webkit-transform: rotate(-135deg);
        left: 15px;
    }

    #lnav {
        width: 100%;
        height: auto !important;
        float: none;
        visibility: hidden;
        position: absolute;
        top: 60px;
        left: 0;
        z-index: 9990;
    }

    #lnav .lnav_inner {
        display: none;
        overflow-y: scroll;
        overflow-x: hidden !important;
        -webkit-overflow-scrolling: touch;
        position: relative;
        z-index: 10000;
    }

    #lnav .lnav_inner li a {
        height: 51px;
        padding: 0 0 0 35px;
        display: block;
        line-height: 51px;
        color: #444;
        font-size: 14px;
    }

    #lnav .lnav_inner li a:after {
        content: '';
        width: 7px;
        height: 51px;
        display: block;
        background-image: url(../common/image_common/parts_ico_btm_global_nav_arrow.png);
        background-repeat: no-repeat;
        background-position: center;
        background-size: 7px;
        position: absolute;
        top: 0;
        right: 24px;
        transition: all .1s ease;
        -webkit-transition: all .1s ease;
    }

    #lnav .lnav_inner li a:hover:after {
        right: 19px;
    }

    #lnav_wrap .overlay {
        width: 100%;
        height: 100%;
        background-color: #ebebeb;
        position: fixed;
        top: 167px;
        left: 0;
        z-index: 1;
    }
    #lnav_wrap.fixed .overlay {
        top: 114px;
    }

    /* ------------------------------------------------------------
    *
        .c-floating-banner
    *
    ------------------------------------------------------------ */
    .c-floating-banner {
        position: absolute;
        top: 60px;
        width: 100%;
        z-index: 100;
    }

    .c-floating-banner a:hover img {
        opacity: 0.8;
    }

    /* .c-floating-banner.fixed {
        position: fixed;
        top: 115px;
    } */




    /* contents boxes */
    .section {
        position: relative;
        margin-bottom: 0;
        color: #3E3A39;
        background-color: #fff;
    }

    .section h2 {
        margin-bottom: 30px;
        color: #595757;
        font-size: 21px;
        font-family: var(--font-bold);
        text-align: center;
        line-height: 1.3;
    }

    .section h3 {
        margin: 0 0 25px 0;
		padding: 0 15px;
        text-align: left;
    }

    .section_column {
        margin-bottom: 20px;
        font-size: 13px;
        line-height: 1.9em;
    }

    .section .section_column h4 {
        margin: 0 0 25px 0;
        font-size: 22px;
    }

    .section_column .caution {
        font-size: 10px;
        font-family: var(--font-light);
        padding: 4px 4px 0;
        text-align: left;
        line-height: 1.7;
    }

    .section .bd_caution {
		margin: 0 30px;
		padding: 4px 9px;
		font-size: 11px;
        font-family: var(--font-light);
		line-height: 1.5em;
		border: 1px solid #c9caca;
	}

    .bg_gray {
        background-color: #EFEFEF;
    }

	#sec_about {
		margin-bottom: 60px;
	}

    /* #about {
        margin-bottom: 75px;
    } */

    .column_ab {
        padding: 80px 15px 0;
    }

    .column_ab .col_left {
        padding: 0 15px;
    }

    .column_ab .col_left h2 img {
        max-width:151px;
    }

    .column_ab .desc {
        font-size: 15px;
        text-align: center;
        line-height: 1.9em;
    }

    .column_ab .ab_box {
        position: relative;
        margin: 45px 0 0;
        padding: 15px 20px;
        font-size: 13px;
        background-color: #efefef;
        box-sizing: border-box;
    }

    .column_ab .ab_box .ico_mark {
        position: absolute;
        top: -15px;
        left: -18px;
    }

    .column_ab .ab_box .ico_mark img {
        width: 60px;
    }

    .column_ab .ab_box .ab_copy {
        padding: 0 0 10px 30px;
        font-size: 15px;
        line-height: 1.55em;
        border-bottom: 1px solid #787878;
    }

    .column_ab .caution {
        padding: 6px 0 0;
        font-size: 10px;
        font-family: var(--font-light);
        line-height: 1.6em;
    }


    .section .h_tit {
        position: relative;
        margin: 0 30px 39px;
        padding: 0 0 10px;
        border-bottom: 2.5px solid #a0cdbe;
    }

    #schedule .h_tit img {
        max-width: 133px;
    }

    .tab_nav {
        position: absolute;
        top: 0;
        right: 12px;
    }

    .tab_nav li {
        float: left;
        color: #9FA0A0;
        cursor: pointer;
    }
    .tab_nav li span {
        display: inline-block;
        padding: 3px 15px 0;
        font-size: 17px;
        line-height: 1.2;
        border-right: 1px solid #C9CACA;
    }

    .tab_nav li.current::after {
        position: relative;
        content: "";
        display: block;
        margin: 5px auto 0;
        width: 30px;
        height: 1.5px;
        background-color: #C30D23;
    }

    .tab_nav li.current {
        color: #595757;
    }

    .tab_nav li:last-child span {
        border-right: none;
    }

    .tab_content {
        display: none;
        padding: 0 30px;
        -webkit-transition: all .4s ease;
        transition: all .4s ease;
    }

    .tab_content.current {
        display: block;
    }

    .tab_content .pic {
        margin-bottom: 90px;
    }

    .tab_content .pic img {
        max-width: 100%;
    }

    .section .sec_desc {
        padding: 0 30px;
        font-size: 14px;
        line-height: 1.9em;
    }

    #sec_about .owner_bnr {
        padding: 0 8vw;

    }

    #sec_about .owner_bnr img {
        width: 84w;
    }


    /* ------------------------------------------------------------
    *
        #search
    *
    ------------------------------------------------------------ */


    #search {
        margin-bottom: 0;
        padding: 25px 0;
        font-size: 14px;
        text-align: center;
        line-height: 1.6;
    }

    .search_img img {
        position: relative;
        top: 8px;
        max-width: 54%;
        vertical-align: bottom;
    }

    #search .search_txt img {
        max-width: 85%;
    }

    .search_btn {
        margin: 0;
    }

    .search_btn img {
        position: relative;
        z-index: 1;
        max-width: 80%;
    }




}
