SELECT 
  pfv.feature_id, 
  pfv.product_id, 
  pfv.variant_id, 
  fv.position, 
  fvd.variant 
FROM 
  cscart_product_features_values AS pfv 
  INNER JOIN cscart_product_feature_variants AS fv ON pfv.feature_id = fv.feature_id 
  AND pfv.variant_id = fv.variant_id 
  INNER JOIN cscart_product_feature_variant_descriptions AS fvd ON pfv.variant_id = fvd.variant_id 
  AND fvd.lang_code = 'en' 
WHERE 
  pfv.feature_id IN (1004, 1038, 1131) 
  AND pfv.product_id IN (
    282971, 286602, 283081, 283125, 286561, 
    282507, 283098, 279396, 286611, 282889, 
    282945, 286621, 277944, 286500, 286533, 
    284472, 286574, 279355, 278025, 278209, 
    285797, 279438, 277872, 286557, 278250, 
    278190
  ) 
  AND pfv.lang_code = 'en'

Query time 0.00524

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "130.69"
    },
    "nested_loop": [
      {
        "table": {
          "table_name": "pfv",
          "access_type": "range",
          "possible_keys": [
            "PRIMARY",
            "fl",
            "variant_id",
            "lang_code",
            "product_id",
            "fpl",
            "idx_product_feature_variant_id"
          ],
          "key": "lang_code",
          "used_key_parts": [
            "lang_code",
            "feature_id",
            "product_id"
          ],
          "key_length": "12",
          "rows_examined_per_scan": 78,
          "rows_produced_per_join": 78,
          "filtered": "100.00",
          "using_index": true,
          "cost_info": {
            "read_cost": "16.81",
            "eval_cost": "15.60",
            "prefix_cost": "32.41",
            "data_read_per_join": "60K"
          },
          "used_columns": [
            "feature_id",
            "product_id",
            "variant_id",
            "lang_code"
          ],
          "attached_condition": "((`webmarco`.`pfv`.`feature_id` in (1004,1038,1131)) and (`webmarco`.`pfv`.`product_id` in (282971,286602,283081,283125,286561,282507,283098,279396,286611,282889,282945,286621,277944,286500,286533,284472,286574,279355,278025,278209,285797,279438,277872,286557,278250,278190)) and (`webmarco`.`pfv`.`lang_code` = 'en'))"
        }
      },
      {
        "table": {
          "table_name": "fv",
          "access_type": "eq_ref",
          "possible_keys": [
            "PRIMARY",
            "feature_id"
          ],
          "key": "PRIMARY",
          "used_key_parts": [
            "variant_id"
          ],
          "key_length": "3",
          "ref": [
            "webmarco.pfv.variant_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 3,
          "filtered": "5.00",
          "cost_info": {
            "read_cost": "78.00",
            "eval_cost": "0.78",
            "prefix_cost": "126.01",
            "data_read_per_join": "4K"
          },
          "used_columns": [
            "variant_id",
            "feature_id",
            "position"
          ],
          "attached_condition": "(`webmarco`.`fv`.`feature_id` = `webmarco`.`pfv`.`feature_id`)"
        }
      },
      {
        "table": {
          "table_name": "fvd",
          "access_type": "eq_ref",
          "possible_keys": [
            "PRIMARY"
          ],
          "key": "PRIMARY",
          "used_key_parts": [
            "variant_id",
            "lang_code"
          ],
          "key_length": "9",
          "ref": [
            "webmarco.pfv.variant_id",
            "const"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 3,
          "filtered": "100.00",
          "cost_info": {
            "read_cost": "3.90",
            "eval_cost": "0.78",
            "prefix_cost": "130.69",
            "data_read_per_join": "17K"
          },
          "used_columns": [
            "variant_id",
            "variant",
            "lang_code"
          ]
        }
      }
    ]
  }
}

Result

feature_id product_id variant_id position variant
1004 277872 64496 290 03 - 10 September
1004 277944 64492 230 20 - 27 August
1004 278025 64492 230 20 - 27 August
1004 278190 64496 290 03 - 10 September
1004 278209 64495 270 31 - 07 August / September
1004 278250 64496 290 03 - 10 September
1004 279355 64491 0 17 - 23 August
1004 279396 64491 0 17 - 23 August
1004 279438 64494 260 27 - 03 August / September
1004 282507 64492 230 20 - 27 August
1004 282889 64583 0 04 - 11 July
1004 282945 64585 0 04 - 11 August
1004 282971 64583 0 04 - 11 July
1004 283081 64583 0 04 - 11 July
1004 283098 64583 0 04 - 11 July
1004 283125 64583 0 04 - 11 July
1004 284472 64493 240 24 - 30 August
1004 286500 64491 0 17 - 23 August
1004 286533 64493 240 24 - 30 August
1004 286557 64831 0 10 - 16 September
1004 286561 64827 0 27 - 2 August / September
1004 286574 64830 0 7 - 13 September
1004 286602 64828 0 31 - 6 August / September
1004 286611 64828 0 31 - 6 August / September
1004 286621 64829 0 3 - 9 September
1038 286533 64813 0 Included
1131 285797 67656 0 2 Adults