/* Custom CSS for LP */
        body {
            font-family: 'Noto Sans JP', 'Inter', sans-serif;
        }
        .problem-card {
            background-color: #FEFCE8;  /* yellow-50相当 */
            border: 1px solid #FDE6A;  /* yellow-200相当 */
        }
        .problem-card .future-risk {
            background-color: #FFFBEB;  /* yellow-100相当 */
            border-top: 1px dashed #FACC15;  /* yellow-400相当 */
            padding: 0.75rem;
            margin-top: 1rem;
            border-radius: 0 0 0.75rem 0.75rem;
        }
        .usp-item {  /* 選ばれる理由のUSPアイテム用 */
            border-left: 3px solid #F97316;  /* orange-500相当 */
            padding-left: 1.5rem;
            margin-bottom: 2rem;
        }
        .testimonial-card {  /* お客様の声・導入事例カード用 */
            border-left: 4px solid #10B981;  /* emerald-500相当 */
            background-color: #F0FDF4; /* green-50相当 */
        }
        .hero-bg {
            /* LP用画像URLリストより「製造現場で悩んでいるお客様」を代替使用 */
            background-image: url('image/factoryman.jpeg');
            background-size: cover;
            background-position: center;
        }
        .fade-in-section {
            /* Animation disabled for stability. Content is now visible by default. */
        }        .fade-in-section.is-visible {
            opacity: 1;
            transform: translateY(0);
        }
        .cta-button {
            transition: all 0.3s ease;
        }
        .cta-button:hover {
            transform: translateY(-3px);
            box-shadow: 0 12px 20px -3px rgba(0, 0, 0, 0.15), 0 6px 8px -2px rgba(0, 0, 0, 0.1);;
        }
        .service-card {
            position: relative;
            background-color: #fff;
            border-radius: 12px;
            box-shadow: 0 4px 12px rgba(0,0,0,0.08);
            transition: all 0.3s ease;
            cursor: pointer;
        }
        .service-card:hover {
            transform: translateY(-5px);
            box-shadow: 0 8px 24px rgba(0,0,0,0.12);
        }
        .service-icon {
            position: absolute;
            top: 2rem;
            left: 2rem;
            width: 4rem;
            height: 4rem;
            background-color: #fff;
            border-radius: 50%;
            display: flex;
            align-items: center;
            justify-content: center;
            box-shadow: 0 4px 12px rgba(0,0,0,0.1);
        }
        .service-card-title {
            padding-left: 7rem;
        }
        .service-card-content {
            padding: 1rem 2rem 2rem;
        }
        .pricing-table-container {
            overflow-x: auto;
        }
        .pricing-table {
            min-width: 600px;
        }
        .pricing-table th, .pricing-table td {
            padding: 1rem;
            border: 1px solid #e2e8f0;
            text-align: center;
        }
        .pricing-table th {
            font-weight: bold;
        }
        .pricing-table td {
            font-size: 0.875rem;
        }
        .pricing-table .text-check {
            color: #10B981;
            font-weight: bold;
        }
        .pricing-table .text-cross {
            color: #EF4444;
            font-weight: bold;
        }
