        /* CSS変数定義 (アップロードファイル参照) */
        :root {
            --trucklp-color-bg: #c3eb78;
            --trucklp-color-light: #1BB31B;
            --trucklp-color-gray: #D2D5DD;
            --trucklp-color-text: #313131;
            --trucklp-color-main: #138013;
            --trucklp-font-family: "Zen Kaku Gothic New", sans-serif;
            --trucklp-font-size-base: 16px;
            --trucklp-font-size-20: 20px;
            --trucklp-font-size-30: 32px;
        }

        /* 全体設定 */
        body {
            margin: 0;
            padding: 0;
            font-family: var(--trucklp-font-family);
            color: var(--trucklp-color-text);
            line-height: 1.6;
            background-color: #f7f7f7;
        }
        img { max-width: 100%; height: auto; display: inline-block;}

        .container {
             width: 100%;
             max-width: 1180px;
             margin: 0 auto;
             padding: 80px 20px;
             position: relative;
            }

        .container.sm{
            padding: 0;
        }

        .tri::after{
            content: "";
                width: 0;
                height: 0;
                border-right: 20px solid transparent;
                border-left: 20px solid transparent;
                border-top: 30px solid #f7f7f7;
                position: absolute;
                left: 0;
                right: 0;
                bottom: -30px;
                margin: 0 auto;
            }

        .tel-link{
            pointer-events: none;
        }

        p a{
            color: var(--trucklp-color-light);
            transition: .3s ease;

            &:hover{
                text-decoration: none;
            }
        }

        /* キャラクタースタイル適用 */
        .style-header-text {
            font-weight: 600;
            font-size: 27px;
            margin-top: 0;
        }
        .style-main-title {
            font-size: 40px;
            letter-spacing: 2px;
            color: var(--trucklp-color-main);
            font-weight: 700;
            line-height: 1.5;
            margin-top: 0;

            span{
            display: block;
            font-size: 85%;
            }
        }

        .style-main-text{
            font-weight: 600;
            font-size: 22px;
            text-shadow: 0 0 3px #666;
            color: #fff;
        }

        .style-body-text {
            line-height: 1.8;
            letter-spacing: 0px;
            color: var(--trucklp-color-text);
            text-align: center;
            max-width: 840px;
            margin: 0 auto;
            font-size: 105%;

            .lead{
                font-weight: 600;
                display: block;
                padding-bottom: 40px;
                font-size: 105%;
            }
        }

        /* ヘッダー */
        .lp-header {
            padding: 10px 25px;
            max-width: 100%;
            height: 60px;
            display: flex;
            justify-content: space-between;
            align-items: center;
            position: fixed;
            top: 0;
            left: 0;
            right: 0;
            z-index: 900;
            overflow: hidden;
            transition: .4s ease-in-out;


            img.logo-gr{
                display: none;
            }

            &.is-scrolled{
                background-color: rgba(248, 248, 248, 0.9);

                 img.logo-gr{
                    display: block;
                }

            img.logo-wh{
                display: none;
            }

            }
        }
        .tel-link {

            img{
                display: inline-block;
                vertical-align: middle;
                padding-right: 5px;
            }

        }

        .lp-header.is-scrolled {

            .tel-link{
                color: var(--trucklp-color-bg);
            }

        }
        /* MVセクション */
        .mv {
            position: relative;
            background: url('img/img-top-trucklp.jpg') center/cover no-repeat;
            height: 820px;
            display: flex;
            align-items: center;
            justify-content: center;
            text-align: center;
            z-index: 1;

            &::after{
                content: "";
                display: block;
                width: 100%;
                height: 100%;
                display: block;
                background-color: rgba(222,222,222, 0.3);
                position: absolute;
                z-index: 100;
                top: 0;
                left: 0;
            }
        }
        .mv-content {
             position: relative;
             z-index: 900;
            }

        /* ステータスバッジ */
        .status-badge {
            background: var(--trucklp-color-light);
            color: #fff;
            padding: 20px;
            text-align: center;
            width: 300px;
            margin: -50px auto 40px;
            position: relative;
            font-weight: 600;
            z-index: 500;
            font-size: var(--trucklp-font-size-20);
        }

        .status-badge.tri::after{

                border-top: 30px solid var(--trucklp-color-light);

            }

        /* コンテンツセクション */

        .section-title {
            text-align: center;
            margin-bottom: 40px;
            color: var(--trucklp-color-main);
            font-size: var(--trucklp-font-size-30);
            font-weight: bold;
            position: relative;
            padding-bottom: 15px;
            letter-spacing: .05em;
            margin-top: 0;

            &::after{
                content: "";
                display: block;
                background-color: var(--trucklp-color-main);
                height: 3px;
                width: 48px;
                position: absolute;
                bottom: 0;
                left: 0;
                right: 0;
                margin: 0 auto;
            }
        }

        .section-title:has(span){
            span {
                display: block;
                font-size: 50%;
                font-weight: 400;
                letter-spacing: .15em;
            }

            &::after{
                content: none;
            }
        }

        .white-box {
            background: #fff;
            border: 1px solid #a7a7a7;
            padding: 40px 30px;
            margin-bottom: 10px;
            text-align: center;
            overflow-x: scroll;

            & + p{
                margin-bottom: 60px;
            }
        }

        /* 空き情報テーブル */

        table.table-truckinfo{
            border-collapse: collapse;
            width: 100%;
            counter-reset: newCount;

            tbody tr{
                counter-increment: newCount;
            }

            td.num::before{
                content: counter(newCount);
            }

            tr:nth-of-type(even){
                background-color: #eeeeee;
            }

            th,td{
            border-top: 1px solid var(--trucklp-color-gray);
            border-bottom: 1px solid var(--trucklp-color-gray);
	        border-collapse: collapse;
            font-size: 0.95rem;
            padding: 4px 18px;
            white-space: nowrap;
            }

            th{
                background-color: var(--trucklp-color-bg);
            }

            th.type{
                background-color: #edffcd;
            }
        }


        /* CTAエリア */
        .cta-area {
            background: var(--trucklp-color-main);
            color: #fff;
            text-align: center;

            .tel-link{
                color:var(--trucklp-color-text);
            }
        }

        .cta-area .container{
            position: relative;
        }

        .cta-area .container::after{
            position: relative;
        }


        .cta-buttons  {

            margin: 30px 10% 0;
            background-color: #fff;
            border-radius: 20px;
            padding: 40px 20px;
            text-align: center;
            color:var(--trucklp-color-text);

            .inner{
                display: flex;
                justify-content: center;
                gap: 40px;
                padding-bottom: 10px;
            }

            p{
                font-weight: 600;
            }

            .btn-green{
                background: #d77d25;
            }
        }

        .btn-green {
            background: var(--trucklp-color-light);
            color: #fff;
            padding: 15px 40px;
            text-decoration: none;
            font-weight: bold;
            font-size: 110%;
            display: inline-block;
            transition: .3s ease;

            img{
                vertical-align: sub;
                display: inline-block;
                margin-right: 0.5rem;
            }

            &:hover{
                opacity: 0.8;
            }
        }

        .access-ttl{
            margin: 40px 0 0;
            font-size: 1.5rem;
            color: var(--trucklp-color-main);

            &+p{
                margin-top: 0;
            }
        }

        .gmap-area{
            width: 100%;
            height: 400px;

            iframe{
                 width: 100%;
                height: 100%
            }

            p{
                margin: 0;

            }
        }

        /* 三喜産業について */
        .about{
            background-image: url(img/img-lp-bg.jpg);
            background-repeat: no-repeat;
            background-size: cover;
            background-position: center center;
            background-color:#ffffffb6 ;
            background-blend-mode: lighten;
        }

        /* 特徴セクション */
        .features-grid { display: grid; grid-template-columns: repeat(3, 1fr); gap: 24px; }
        .feature-card {
            background: #fff;
            padding: 30px 20px;
            border-radius: 20px;
            text-align: center;
        }

        .feature-card-ttl{
            color: var(--trucklp-color-main);
            font-weight: 600;

        }

        .feature-num {
            color: var(--trucklp-color-main);
            font-size: 2.3rem;
            font-weight: bold;
            margin-bottom: 10px;
            padding-left: 10px;
            text-align: left;
            line-height: 1.4;
        }

        .feature-icon{
            width: 90px;
        }

        #contact{
            background: url(img/img-bg-truck.png) no-repeat right center;
            background-color: #fff;

            h4{
                font-size: 1.6rem;
                color: var(--trucklp-color-light);
                margin-top: 0;
                margin-bottom: 1rem;
            }

            .tel-link{
                color: var(--trucklp-color-text);
                text-decoration: none;
                font-size: 34px;
                font-weight: 600;

                img{
                    width: 36px;
                }

            }
        }

        .flex-wrap{
            display: flex;
            padding-top: 1rem;
            padding-bottom: 1rem;

            .btn-green{
                font-size: 1rem;
                margin-right: 1rem;
                padding: 15px 24px;
            }
        }

        /* 車両ラインアップ */
        .lineup-box{

            padding: 0 20px 30px;

            img{
                border-radius: 20px;
                height: 300px;
                width: 100%;
                object-fit: cover;
            }

            h3{
                font-size: 1.2rem;
                color: var(--trucklp-color-main);
            }

            dl{
                display: flex;
                flex-wrap: wrap;
                justify-content: space-between;

            }

            dt{
                width: 20%;
                font-weight: 600;
                padding-bottom: 5px;

            }

            dd{
                width: 66%;
                margin-left: 0;
                padding-bottom: 5px;

            }

        }

        /* フッター */
        .lp-footer {
            background: #f8f8f8;
            padding: 40px 0;
            text-align: center;
            font-size: 14px;
            color: var(--trucklp-color-text);

             .btn-green{
                background: #d77d25;
            }
        }

        /* レスポンシブ */
        @media (max-width: 768px) {

            .container{
                width: auto;
            }

            .mv{
                height: 84vh;
            }

            .mv-content{
                padding: 0 10px;
            }
            .style-main-title { font-size: 24px; line-height: 1.4; }

            .style-main-text{
                font-size: 20px;
            }

            .cta-buttons{
                margin: 30px 0 0;
            }
            .cta-buttons .inner{
                flex-direction: column;
                align-items: center;
                gap: 20px;
            }
            .features-grid { grid-template-columns: 1fr; }

            .style-body-text{
                text-align: left;
            }

            .flex-wrap{
                flex-direction: column;
                gap: 15px;
            }

            .lp-header{
                .tel-link{
                    display: none;
                }
            }

            .tel-link{
                pointer-events: visible;
            }

            #contact{
                background-size: cover;
                background-color: #ffffff93;
                background-blend-mode: lighten;
            }
        }
