@charset "utf-8";

/* =================================================================
上書きCSS
================================================================= */

@media screen and (max-width: 768px) {
    /*------------------------------------------------------------------------------------------
*
*
    Responsive / SP
*
*
------------------------------------------------------------------------------------------ */
    /* ------------------------------------------------------------
*
    #top
*
------------------------------------------------------------ */
    #top {
        width: 100%;
        height: auto;
        overflow: hidden;
        margin: 0;
        background-color: #000;
    }
    #top_visual {
        position: relative;
        margin: 0 auto;
        width: 90%;
        height: 100%;
    }
    #top .pic_visual {
        margin: 0;
        text-align: right;
        overflow: hidden;
    }
    #top .pic_visual img {
        position: relative;
        left: -25vw;
        margin: 0;
        width: 150vw;
        height: auto;
    }
    #top .pic_visual.sp {
        display: block;
    }
    #top #top_visual h2.logo {
        display: none;
    }
    #top #top_visual h2.logo img {
        width: 45%;
        height: auto;
    }
    #top .top_copy {
        position: relative;
        top: 0;
        left: 0;
        padding: 0;
        width: 100%;
        text-align: center;
    }
    #top .top_copy .copy {
        margin: 0 0 25px 0;
        color: #fff;
        font-size: 14px;
        line-height: 1.7em;
        text-align: left;
    }
    .section_inner {
        margin: 0 auto;
        width: 90%;
        box-sizing: border-box;
    }
    .section .desc {
        padding: 0 0 20px;
        font-size: 14px;
        line-height: 1.6em;
    }
    #top_service {
        padding: 20px 0 0;
    }
    #top_service .top_servicelist {
        margin: 0 0 40px;
    }
    #top_service .top_servicelist li {
        margin-top: 7px;
        text-align: center;
    }
    #top_service .top_servicelist li a {
        display: block;
    }
    #top_service .top_servicelist li.maintenance_service img {
        margin-bottom: 10px;
        width: 87%;
        height: auto;
    }
    #top_service .top_servicelist li.guarantee_service img {
        width: 57%;
        height: auto;
        margin-bottom: 10px;
    }
    #top_service .top_servicelist li.dealer_service img {
        width: 100%;
        height: auto;
    }
    #top_service .pic_full {
        width: 100%;
        height: auto;
        overflow: hidden;
    }
    #top_service .pic_full img {
        width: 100%;
        height: auto;
    }
    /* ------------------------------------------------------------
*
    #maintenance
*
------------------------------------------------------------ */
    #maintenance .maintenance_box {
        margin: 0 0 40px;
        padding: 10px;
        color: #fff;
        font-size: 12px;
        font-family: var(--font-light);
        line-height: 1.5em;
        border: 1px solid #666;
        box-sizing: border-box;
    }
    #maintenance .maintenace_btn {
        padding: 0;
    }
    #maintenance .maintenace_btn a {
        padding: 13px 0 0;
        display: block;
    }
    .arrow_btm img {
        width: 80%;
        height: auto;
    }
    .section .sqtitle:before {
        content: '□';
        position: relative;
        padding-right: 10px;
        color: #f00;
    }
    .section .sqtitle {
        margin-bottom: 20px;
        font-size: 19px;
    }
    .section .box {
        margin: 20px 0 0;
    }
    .section .box_table {
        line-height: 1em;
    }
    .section .box_table dl {
        border-bottom: 1px solid #666;
        display: block;
    }
    .section .box_table dt,
    .section .box_table dd {
        width: 100%;
        display: list-item;
        list-style-type: none;
    }
    .section .box_table dl:first-child dt {
        padding-top: 0px;
    }
    .section .box_table dt {
        padding-top: 15px;
        font-size: 17px;
        font-weight: normal;
        letter-spacing: 1px;
        vertical-align: middle;
    }
    .section .box_table dt span {
        font-size: 13px;
        font-family: var(--font-light);
        line-height: 1.6em;
        display: block;
    }
    .section .box_table dd {
        padding: 10px 0;
        font-size: 13px;
        font-family: var(--font-light);
        line-height: 1.6em;
        vertical-align: middle;
    }
    .section .pic_swipe {
        overflow-x: scroll;
        -webkit-overflow-scrolling: touch;
        overflow-y: hidden;
    }
    #maintenance .pic_swipe img {
        width: 530px;
        height: auto;
    }
    .section .box_fulltable {
        line-height: 1.4em;
    }
    .section .box_fulltable dl {
        border-bottom: 1px solid #666;
        display: block;
    }
    .section .box_table dl:last-child,
    .section .box_fulltable dl:last-child {
        border: none;
    }
    .section .box_table dt,
    .section .box_table dd {
        width: 100%;
        display: list-item;
        list-style-type: none;
    }
    .section .box_fulltable dt {
        padding: 15px 0 5px;
        font-size: 15px;
        font-weight: normal;
        letter-spacing: 1px;
    }
    .section .box_fulltable dt.square:before {
        content: '□';
        position: relative;
        padding-right: 5px;
        color: #f00;
    }
    .section .box_fulltable dt span {
        font-size: 15px;
        line-height: 1.4em;
        display: block;
    }
    .section .box_fulltable dd {
        padding: 0 0 15px;
        font-size: 13px;
        font-family: var(--font-light);
    }
    .section .box_fulltable ul {
        margin: 15px 0 5px;
    }
    .section .box_fulltable ul li {
        padding: 0 0 0 10px;
        line-height: 1.8em;
        text-indent: -10px;
    }
    .section .box_fulltable p {
        padding-top: 15px;
    }
    .section .caution {
        font-size: 11px;
        font-family: var(--font-light);
    }
    .section .caution.indent {
        text-indent: -30px;
        padding-left: 30px;
    }
    .section .box_fulltable dl.selling dt,
    .section .box_fulltable dl.selling dd {
        width: 100%;
        display: block;
    }
    /* ------------------------------------------------------------
*
    #guarantee
*
------------------------------------------------------------ */
    #guarantee .guarantee_btn a {
        padding: 13px 0 0;
        display: block;
    }
    #guarantee .pic_swipe img {
        width: 50%;
        height: auto;
    }
    #guarantee .box .extended_guarantee li {
        margin-left: 15px;
        padding: 15px 0px;
        font-size: 13px;
        font-family: var(--font-light);
        line-height: 1.6em;
        border-bottom: solid 1px #666666;
    }
    #guarantee .box .extended_guarantee li:before {
        content: '▷';
        position: relative;
        padding-right: 5px;
        color: #f00;
    }
    #guarantee .box .extended_guarantee li:last-child {
        border-bottom: none;
    }
    #guarantee .box .manufacturer_warranty {
        margin: 15px 0 0;
    }
    #guarantee .box .manufacturer_warranty p {
        margin-left: 15px;
        font-size: 13px;
        font-family: var(--font-light);
        line-height: 1.8em;
    }
    #guarantee p.maintenace_btn {
        padding-top: 15px !important;
    }
    #guarantee.section .box_fulltable dl:first-child {
        border-top: solid 1px #666666;
    }
    #guarantee .box .manufacturer_warranty .maker_btn a {
        margin-top: 30px;
        padding: 6px 0 6px 20px;
        width: 70%;
        color: #fff;
        font-size: 11px;
        display: block;
        border: 1px solid #FFFFFF;
    }
    #guarantee .box .manufacturer_warranty .caution {
        margin-top: 15px;
        font-size: 11px;
    }
    .section .box_fulltable dl.last_item dt,
    .section .box_fulltable dl.last_item dd {
        width: 100%;
        display: block;
    }
    #guarantee .pic_swipe img {
        width: 478px;
        height: auto;
    }
    /* ------------------------------------------------------------
*
    #dealer
*
------------------------------------------------------------ */
    #dealer .desc_btm {
        padding: 0 0 30px;
        font-size: 14px;
        line-height: 1.8em;
    }
    .btn_dealer {
        width: 100%;
        margin: 0 0 15px;
        padding: 15px 0;
        font-size: 12px;
        font-family: var(--font-light);
        text-align: center;
        background-color: #960000;
        transition: all 0.3s ease 0s;
    }
    #dealer .btn_dealer a {
        color: #fff;
        display: block;
    }
    #dealer .btn_dealer a:before {
        position: relative;
        left: -10px;
        top: 2px;
        content: '';
        width: 12px;
        height: 12px;
        background-image: url(../common/image_common/parts_ico_detail_arrow.png);
        background-repeat: no-repeat;
        background-position: left center;
        background-size: 12px 12px;
        display: inline-block;
    }
    .dealer_logo {
        text-align: center;
    }
    .dealer_logo img {
        width: 50%;
        height: auto;
    }
    .btn_top a {
        margin: 20px auto 80px;
        padding: 10px 0;
        width: 78.5%;
        color: #fff !important;
        font-size: 13px;
        font-family: var(--font-light);
        text-align: center;
        display: block;
        border: 1px solid #fff;
    }
    /* ------------------------------
    #section_caution
------------------------------ */
    #section_caution {
        margin-top: -20px;
        padding: 0;
        margin-bottom: 0;
    }
}
