SELECT 
  pfv.feature_id, 
  pfv.product_id, 
  pfv.variant_id, 
  gp.group_id 
FROM 
  cscart_product_features_values AS pfv 
  INNER JOIN cscart_product_variation_group_products AS gp ON pfv.product_id = gp.product_id 
  INNER JOIN cscart_product_variation_group_features AS gpf ON gpf.group_id = gp.group_id 
  AND gpf.feature_id = pfv.feature_id 
WHERE 
  pfv.lang_code = 'en' 
  AND gp.group_id IN (10781, 10787, 10789)

Query time 0.00097

JSON explain

{
  "query_block": {
    "select_id": 1,
    "cost_info": {
      "query_cost": "28.09"
    },
    "nested_loop": [
      {
        "table": {
          "table_name": "gp",
          "access_type": "range",
          "possible_keys": [
            "PRIMARY",
            "idx_group_id"
          ],
          "key": "idx_group_id",
          "used_key_parts": [
            "group_id"
          ],
          "key_length": "3",
          "rows_examined_per_scan": 8,
          "rows_produced_per_join": 8,
          "filtered": "100.00",
          "using_index": true,
          "cost_info": {
            "read_cost": "2.62",
            "eval_cost": "1.60",
            "prefix_cost": "4.22",
            "data_read_per_join": "128"
          },
          "used_columns": [
            "product_id",
            "group_id"
          ],
          "attached_condition": "(`webmarco`.`gp`.`group_id` in (10781,10787,10789))"
        }
      },
      {
        "table": {
          "table_name": "gpf",
          "access_type": "ref",
          "possible_keys": [
            "PRIMARY",
            "idx_group_id"
          ],
          "key": "idx_group_id",
          "used_key_parts": [
            "group_id"
          ],
          "key_length": "3",
          "ref": [
            "webmarco.gp.group_id"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 11,
          "filtered": "100.00",
          "using_index": true,
          "cost_info": {
            "read_cost": "8.00",
            "eval_cost": "2.27",
            "prefix_cost": "14.49",
            "data_read_per_join": "1K"
          },
          "used_columns": [
            "feature_id",
            "group_id"
          ]
        }
      },
      {
        "table": {
          "table_name": "pfv",
          "access_type": "ref",
          "possible_keys": [
            "PRIMARY",
            "fl",
            "lang_code",
            "product_id",
            "fpl",
            "idx_product_feature_variant_id"
          ],
          "key": "fpl",
          "used_key_parts": [
            "feature_id",
            "product_id",
            "lang_code"
          ],
          "key_length": "12",
          "ref": [
            "webmarco.gpf.feature_id",
            "webmarco.gp.product_id",
            "const"
          ],
          "rows_examined_per_scan": 1,
          "rows_produced_per_join": 11,
          "filtered": "100.00",
          "using_index": true,
          "cost_info": {
            "read_cost": "11.34",
            "eval_cost": "2.27",
            "prefix_cost": "28.09",
            "data_read_per_join": "8K"
          },
          "used_columns": [
            "feature_id",
            "product_id",
            "variant_id",
            "lang_code"
          ]
        }
      }
    ]
  }
}

Result

feature_id product_id variant_id group_id
860 432668 64545 10781
1013 432668 67603 10781
860 432669 64545 10781
1013 432669 64560 10781
860 432670 64545 10781
1013 432670 64561 10781
860 432671 64545 10781
1013 432671 64563 10781
860 432688 64475 10787
1128 432688 67642 10787
860 432689 64475 10787
1128 432689 67643 10787
860 432694 64475 10789
1128 432694 67642 10789
860 432695 64475 10789
1128 432695 67643 10789